
:root{--bg-fallback:linear-gradient(135deg,#1b2230,#0b0d11);
--bg:#0f1115;--panel:#151a22;--line:#e9eef7;--muted:#9aa7bd;--stroke:#273145;--accent:#5176bd;--stage:#0b0d11;--stageGrad1:#1b2230;--stageGrad2:#0b0d11;--dialogueBg:rgba(15,17,21,.78);--chipBg:#0f141d;--msgBg:#101621;--sysBg:#0f141d;--inputBg:#0f141d;--headerBg:#101621;--tabBg:#151a22;--tabBarBg:#101621;--btnBg:#0f141d;--btnText:#e9eef7;--hoverBg:rgba(255,255,255,0.10);--roomItemBg:var(--msgBg);
--splitterBg:var(--btnBg);
}



*{box-sizing:border-box;}
html,body{height:100%;margin:0;overflow:hidden;background:var(--bg);color:var(--line);font-family:system-ui,-apple-system,Segoe UI,Roboto,Apple SD Gothic Neo,Malgun Gothic,sans-serif;}
.app{height:100%;display:grid;grid-template-columns:1.6fr 1fr;gap:10px;padding:10px;}
.stage{position:relative;border:1px solid var(--stroke);border-radius:12px;overflow:hidden;background:var(--stage);min-height:0;}


.bg{position:absolute;inset:0;background-size:cover;background-position:center;background-image:linear-gradient(135deg,var(--stageGrad1),var(--stageGrad2));}

.stands{position:absolute;inset:0;display:flex;justify-content:space-between;align-items:flex-end;padding:14px 14px 160px 14px;pointer-events:none;}
@media (max-width:980px) and (pointer:coarse){
  .stands{padding:8px 8px 24px 8px !important;}
  .stand{max-width:49% !important;max-height:88% !important;object-position:center bottom !important;}
  .dialogue{left:8px !important;right:8px !important;bottom:8px !important;min-height:150px !important;padding:12px 12px 14px !important;gap:8px !important;}
  .speaker{min-height:22px !important;font-size:15px !important;line-height:1.25 !important;}
  .line{font-size:16px !important;line-height:1.45 !important;min-height:58px !important;}
}
.stand{max-height:92%;max-width:48%;object-fit:contain;filter:drop-shadow(0 12px 18px rgba(0,0,0,.45));opacity:0;transition:opacity .12s;}
.stand.on{opacity:1;}
.dialogue{position:absolute;left:12px;right:12px;bottom:12px;border:1px solid var(--stroke);border-radius:12px;background:var(--dialogueBg);backdrop-filter:blur(6px);padding:10px 12px;min-height:160px;display:flex;flex-direction:column;gap:6px;}


.speaker{font-weight:700;color:var(--accent);min-height:20px;}
.line{font-size:15px;line-height:1.4;white-space:pre-wrap;word-break:break-word;min-height:42px;}
.line img,
#line img,
.dialogue .line img,
.dialogue #line img{
display:block;
max-width:220px;
max-height:140px;
width:auto;
height:auto;
object-fit:contain;
border-radius:10px;
margin-top:6px;
}
.chat{border:1px solid var(--stroke);border-radius:12px;background:var(--panel);display:flex;flex-direction:column;min-height:0;overflow:hidden;}
.chatTop{padding:10px;border-bottom:1px solid var(--stroke);display:flex;flex-direction:column;gap:10px;}
.roomRow{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);flex-wrap:nowrap;}
.badge{padding:2px 8px;border:1px solid var(--stroke);border-radius:999px;color:var(--line);background:var(--chipBg);}
.usersBox{display:flex;flex-direction:column;gap:6px;}
.usersTitle{font-size:12px;color:var(--muted);}
.users{display:flex;flex-wrap:wrap;gap:6px;}
.userChip{font-size:12px;padding:4px 8px;border:1px solid var(--stroke);border-radius:999px;background:var(--chipBg);color:var(--line);}
.log{flex:1;min-height:0;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:8px;}
.msg{border:1px solid var(--stroke);border-radius:10px;padding:8px;background:var(--msgBg);}
.meta {
    display: flex;
    gap: 8px;
    align-items: center; 
    font-size: 12px;
    color: var(--muted);
}
.name {
    color: var(--line);
    font-weight: 700;
    margin-right: auto; 
}
.time {
    margin-left: 0;
    white-space: nowrap; 
}
.text{margin-top:6px;white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.35;}
.chatImg{max-width:100%;height:auto;display:block;margin-top:6px;border-radius:10px;border:1px solid var(--stroke);}
.chatPastePreview{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:8px;
  border:1px solid var(--stroke);
  border-radius:12px;
  background:var(--chipBg);
}
.chatPastePreview.hidden{
  display:none;
}
.chatPasteThumb{
  width:72px;
  height:72px;
  object-fit:cover;
  border-radius:10px;
  border:1px solid var(--stroke);
  background:#000;
  flex:0 0 auto;
}
.chatPasteInfo{
  min-width:0;
  flex:1;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.chatPasteTitle{
  font-size:12px;
  font-weight:700;
  color:var(--line);
}
.chatPasteMeta{
  font-size:12px;
  color:var(--muted);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.chatPasteClear{
  flex:0 0 auto;
}

.sys{border-style:dashed;color:var(--muted);background:var(--sysBg);}



.form{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:10px;
  border-top:1px solid var(--stroke);
}
.formMain{
  display:flex;
  gap:8px;
  align-items:flex-end;
}
.formMain .input{
  flex:1;
}
.input{flex:1;border:1px solid var(--stroke);border-radius:10px;padding:10px 10px;background:var(--inputBg);color:var(--line);outline:none;}
.input:focus{border-color:#3b5a92;}
#input{height:40px;min-height:40px;max-height:220px;resize:vertical;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;font-family:inherit;scrollbar-width:none;-ms-overflow-style:none;}
#input::-webkit-scrollbar{width:8px;height:8px;}
#input::-webkit-scrollbar-thumb{background:transparent;border:0;}
#input::-webkit-scrollbar-track{background:transparent;}
#input::-webkit-scrollbar-corner{background:transparent;}


.send{border:1px solid #2f4f86;background:#173058;color:#e9eef7;border-radius:10px;padding:10px 14px;cursor:pointer;}
.send:hover{filter:brightness(1.08);}
.hint{padding:0 10px 10px 10px;color:var(--muted);font-size:12px;}
@media (max-width:980px){.app:not(.splitApp){grid-template-columns:1fr;grid-template-rows:1.1fr .9fr;}.app:not(.splitApp) .stage{min-height:260px;}}

.lobbyWrap{min-height:100%;height:100vh;height:100dvh;overflow:auto;-webkit-overflow-scrolling:touch;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));box-sizing:border-box;}

.lobbyTop{max-width:920px;margin:6px auto 12px auto;}
.lobbyTitle{font-size:22px;font-weight:800;margin:0 0 6px 0;}
.lobbyDesc{color:var(--muted);font-size:13px;}
.lobbyDesc.lobbyBar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.lobbyUser{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;}
.lobbyNick{font-weight:900;color:var(--line);max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.lobbyActions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end;}
.avatar{width:24px;height:24px;border-radius:8px;border:1px solid var(--stroke);object-fit:cover;vertical-align:middle;}
.badgeBtn{padding:2px 8px;border:1px solid var(--stroke);border-radius:999px;color:var(--line);background:var(--btnBg);cursor:pointer;font-size:12px;line-height:1;display:inline-flex;align-items:center;gap:6px;}
.badgeBtn:hover{filter:brightness(1.08);}
.palBody .palHint{font-size:12px;color:var(--muted);}
.palGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.palTextarea{min-height:160px;}
.palRow{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.palOpts{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;}
.palOpt{display:flex;gap:6px;align-items:center;}
.palOptLabel{font-size:12px;color:var(--muted);font-weight:700;}
.palPrefix{width:90px;min-width:90px;}
@media (max-width:980px){.palGrid{grid-template-columns:1fr;}}

.lobbyGrid{max-width:920px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:12px;}

.lobbyCard{border:1px solid var(--stroke);border-radius:12px;background:var(--panel);padding:12px;display:flex;flex-direction:column;gap:10px;}
.cardTitle{font-weight:800;}
.field{display:flex;flex-direction:column;gap:6px;}
.field label{font-size:12px;color:var(--muted);}
.hintSmall{font-size:12px;color:var(--muted);}
.roomList{display:flex;flex-direction:column;gap:8px;max-height:min(70vh,640px);overflow:auto;padding-right:4px;}
@media (max-width:560px){
.roomList{max-height:none;overflow:visible;padding-right:0;}
}

.roomItem{border:1px solid var(--stroke);border-radius:12px;background:var(--roomItemBg);padding:10px;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;justify-content:flex-start;}
.roomThumb{width:64px;height:64px;border-radius:12px;border:1px solid var(--stroke);background:#0b0d11;background-size:cover;background-position:center;flex:0 0 auto;}
.roomThumb.empty{background:var(--chipBg);}
.roomMain{min-width:0;display:flex;flex-direction:column;gap:6px;text-align:left;}
.roomTitle{font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;word-break:normal;}
.roomPeopleRow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted);min-width:0;}
.roomSide{display:flex;flex-direction:column;align-items:flex-end;gap:6px;min-width:0;}
.roomBtns{flex:0 0 auto;display:flex;gap:6px;flex-wrap:nowrap;justify-content:flex-end;align-items:center;}
.roomMetaRight{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);white-space:nowrap;max-width:360px;}
.roomMetaRight .roomId{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:normal;}
.roomMetaRight .roomMeta{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:normal;}

@media (max-width:560px){
.roomItem{grid-template-columns:44px minmax(0,1fr);}
.roomBtns{grid-column:1 / -1;justify-content:flex-end;margin-top:6px;}
}

.btnMini{border:1px solid var(--stroke);background:var(--btnBg);color:var(--btnText);border-radius:6px;padding:4px 8px;cursor:pointer;font-size:11px;}
.cardHead{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.btnMini.primary{border-color:#2f4f86;background:#173058;color:#e9eef7;}
.roomLeft{min-width:180px;max-width:260px;display:flex;flex-direction:column;gap:6px;}
.roomPeople{font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:2px;word-break:break-word;}
.roomId{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;word-break:normal;}

.modal{position:fixed;inset:0;display:grid;place-items:center;z-index:11000;}
.modal.hidden{display:none;}
.modalBackdrop{position:absolute;inset:0;background:rgba(0,0,0,.55);}
.modalCard{position:relative;width:min(560px,calc(100% - 24px));border:1px solid var(--stroke);border-radius:14px;background:var(--panel);box-shadow:0 18px 60px rgba(0,0,0,.35);padding:12px;display:flex;flex-direction:column;gap:10px;}
.modalHead{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.modalTitle{font-weight:900;}
.modalBody{display:flex;flex-direction:column;gap:10px;}
.stageRoomTitle{white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;}
#stageRoomTitle {
    display: inline-block; 
    transform: translateY(-1px); 
}
.btnMini:hover{filter:brightness(1.08);}
.btnMini.danger{border-color:#5a2a2a;}
.badgeLink{padding:2px 8px;border:1px solid var(--stroke);border-radius:999px;color:var(--line);background:var(--btnBg);text-decoration:none;}

.badgeLink:hover{filter:brightness(1.08);}
.roomEmpty{color:var(--muted);font-size:13px;padding:10px;border:1px dashed var(--stroke);border-radius:12px;background:#0f141d;}
@media (max-width:980px){.lobbyGrid{grid-template-columns:1fr;}}
.authBody{min-height:100vh;background:radial-gradient(1100px 600px at 50% 0%,#f4ecff 0%,#eef3ff 45%,#f7f1ff 100%);color:#2a1c44;}
.authWrap{max-width:860px;margin:0 auto;padding:28px 16px 48px;}
.authHero{text-align:center;margin:0 0 18px 0;}
.authHeroTop{font-weight:900;font-size:26px;letter-spacing:.5px;}
.authHeroSub{margin-top:8px;font-size:14px;opacity:.8;}
.authStack{display:flex;flex-direction:column;gap:14px;}
.authCard{border:1px solid rgba(155,120,255,.35);border-radius:18px;background:rgba(255,255,255,.70);box-shadow:0 14px 40px rgba(0,0,0,.08);padding:18px;}
.authTitle{font-weight:900;font-size:18px;text-align:center;margin-bottom:12px;text-decoration:underline;text-underline-offset:8px;text-decoration-color:rgba(155,120,255,.45);}
.authForm{display:flex;flex-direction:column;gap:10px;}
.authErr{border:1px dashed rgba(155,120,255,.45);border-radius:14px;padding:12px;background:rgba(255,255,255,.60);color:#40245f;font-size:13px;margin-bottom:12px;}
.authBody .field{display:flex;flex-direction:column;gap:6px;}
.authBody .field label{font-size:12px;opacity:.75;}
.authBody .input,.authBody .textarea{border:1px solid rgba(155,120,255,.45);border-radius:12px;padding:12px;background:rgba(255,255,255,.85);color:#2a1c44;outline:none;}
.authBody .input:focus,.authBody .textarea:focus{border-color:rgba(155,120,255,.85);box-shadow:0 0 0 4px rgba(155,120,255,.18);}
.authBody .textarea{min-height:92px;resize:vertical;}
.authBody .authBtn{border:none;border-radius:14px;padding:12px 14px;color:#fff;font-weight:900;cursor:pointer;background:linear-gradient(90deg,#caa6ff,#bda1ff,#d8b8ff);}
.authBody .authBtn:hover{filter:brightness(1.02);}

.authWrapDark{min-height:100vh;padding:18px;max-width:900px;margin:0 auto;}
.authHeroDark{text-align:center;margin:6px 0 14px 0;}
.authHeroTopDark{font-size:28px;font-weight:900;color:var(--line);}

.authHeroSubDark{font-size:13px;color:var(--muted);margin-top:6px;}
.authStackDark{display:flex;flex-direction:column;gap:12px;}
.authCardDark{border:1px solid var(--stroke);border-radius:12px;background:var(--panel);padding:12px;display:flex;flex-direction:column;gap:10px;}
.authTitleDark{font-weight:900;font-size:16px;text-align:center;}
.authForm{display:flex;flex-direction:column;gap:10px;}
.authWrapDark .field{display:flex;flex-direction:column;gap:6px;}
.authWrapDark .field label{font-size:12px;color:var(--muted);}
.authWrapDark .textarea{border:1px solid var(--stroke);border-radius:10px;padding:10px;background:#0f141d;color:var(--line);outline:none;min-height:90px;resize:vertical;}
.authWrapDark .textarea:focus{border-color:#3b5a92;}
.adminLink{border-color:#ff5fa2!important;color:#ff9fc7!important;}
.adminLink:hover{filter:brightness(1.08);}
.adminActRow{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;align-items:center;}
.adminInline{display:flex;gap:6px;align-items:center;flex-wrap:wrap;}
.adminPw{width:140px;min-width:120px;}


.adminShell{height:100vh;height:100dvh;min-height:100vh;max-width:1180px;margin:0 auto;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));overflow:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;}
.adminShell{scrollbar-width:none;-ms-overflow-style:none;}
.adminShell::-webkit-scrollbar{width:0;height:0;}

.adminHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;}
.adminBrand{font-size:20px;font-weight:900;color:var(--line);}
.adminHeaderRight{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.adminStats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;}
.statCard{border:1px solid var(--stroke);border-radius:12px;background:var(--panel);padding:12px;}
.statLabel{font-size:12px;color:var(--muted);}
.statValue{font-size:22px;font-weight:900;color:var(--line);margin-top:4px;}
.statSub{font-size:12px;color:var(--muted);margin-top:2px;}
.adminTabs{display:flex;gap:8px;align-items:center;margin:10px 0;}
.tabBtn{border:1px solid var(--stroke);background:#0f141d;color:var(--line);border-radius:999px;padding:8px 12px;font-weight:900;cursor:pointer;}
.tabBtn.on{background:var(--panel);border-color:#3b5a92;}
.adminPanel{border:1px solid var(--stroke);border-radius:12px;background:var(--panel);padding:12px;}
.hidden{display:none;}
.adminToolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap;}
.toolTitle{font-weight:900;color:var(--line);}
.toolHint{font-size:12px;color:var(--muted);margin-top:4px;}
.adminSearch{min-width:260px;}
.adminTableWrap{border:1px solid var(--stroke);border-radius:12px;overflow:auto;background:#0f141d;}
.adminTable{width:100%;border-collapse:collapse;min-width:760px;}
.adminTable th,.adminTable td{padding:10px;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:top;}
.adminTable th{font-size:12px;color:var(--muted);text-align:left;background:#101621;position:sticky;top:0;z-index:1;}
.colAct{width:320px;}

.userCell{display:flex;gap:10px;align-items:center;}
.avatarBox{width:38px;height:38px;border-radius:12px;overflow:hidden;border:1px solid var(--stroke);background:#0b0d11;flex:0 0 auto;}
.avatarBox img{width:100%;height:100%;object-fit:cover;display:block;}
.avatarPh{width:100%;height:100%;background:linear-gradient(135deg,#1b2230,#0b0d11);}
.userText{min-width:0;}
.userTopLine{display:flex;gap:6px;align-items:center;flex-wrap:wrap;}
.userNick{font-weight:900;color:var(--line);max-width:360px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.userSub{font-size:12px;color:var(--muted);margin-top:2px;}
.pill{border:1px solid var(--stroke);border-radius:999px;padding:2px 8px;font-size:11px;background:#0b0d11;color:var(--line);}
.adminPill{border-color:#ff5fa2;color:#ff9fc7;}
.mePill{border-color:#6bdcff;color:#b6f3ff;}
.metaCell{font-size:12px;color:var(--muted);line-height:1.4;}
.miniLink{color:var(--line);text-decoration:underline;text-underline-offset:3px;opacity:.9;}
.roomCell{display:flex;flex-direction:column;gap:2px;}
.roomTopLine{display:flex;gap:6px;align-items:center;min-width:0;}
.roomTitle{font-weight:900;color:var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:460px;}
.roomSub{font-size:12px;color:var(--muted);}
.roomActions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end;}
.muted{color:var(--muted);}
@media (max-width:980px){.adminStats{grid-template-columns:1fr;}.adminTable{min-width:680px;}.adminSearch{min-width:220px;}}



.stageRoomId{font-size:12px;color:var(--muted);opacity:.95;}
.chatResizable{width:360px;flex:0 0 auto;min-width:280px;max-width:60vw;resize:horizontal;overflow:auto;}

.splitApp{--chatW:360px;--chatH:320px;position:fixed;inset:0;overflow:hidden;display:grid;grid-template-columns:1fr 8px var(--chatW);grid-template-rows:1fr;height:100dvh;min-height:0;background:var(--bg);}
.splitApp>.stage,.splitApp>.splitter,.splitApp>.chat{grid-row:1;min-height:0;height:100%;}
.splitApp>.stage{grid-column:1;}
.splitApp>.splitter{grid-column:2;}
.splitApp>.chat{grid-column:3;}
.splitApp.chatLeft{grid-template-columns:var(--chatW) 8px 1fr;}
.splitApp.chatLeft>.stage{grid-column:3;}
.splitApp.chatLeft>.splitter{grid-column:2;}
.splitApp.chatLeft>.chat{grid-column:1;}
.splitApp.chatBottom{grid-template-columns:1fr;grid-template-rows:1fr 8px var(--chatH);}
.splitApp.chatBottom>.stage{grid-column:1;grid-row:1;}
.splitApp.chatBottom>.splitter{grid-column:1;grid-row:2;cursor:row-resize;border-left:none;border-right:none;border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke);}
.splitApp.chatBottom>.chat{grid-column:1;grid-row:3;min-width:0;max-width:none;}
.splitter{touch-action:none;}


.splitter:hover{filter:brightness(1.1);}
body.draggingCol{cursor:col-resize;user-select:none;}
body.draggingRow{cursor:row-resize;user-select:none;}

.chat{min-width:260px;max-width:70vw;}
.stage{min-width:320px;}
.chatResizable{resize:none!important;overflow:visible!important;}

.stageTop{
  position:absolute;
  left:12px;
  right:12px;
  top:12px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  z-index:30030 !important;
  pointer-events:auto;
}
.stageTopLeft{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-width:0;}
.stageTopLeft.toolsWrap{flex-wrap:wrap;}
.stageRoomTitle{font-weight:900;color:var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:520px;min-width:0;flex:1 1 auto;}

.stageTopRight{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.stageUsersLabel{font-size:12px;color:var(--muted);padding-top:2px;}
.stageUsers{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:520px;}
.userChip{border:1px solid var(--stroke);border-radius:999px;padding:3px 8px;background:var(--chipBg);color:var(--line);font-size:12px;white-space:nowrap;}






html,body{height:100%;}
.splitter{cursor:col-resize;background:var(--splitterBg);border-left:1px solid var(--stroke);border-right:1px solid var(--stroke);}
body[data-theme="christmas"] .splitter{
  background:#c63d32 !important;
  border-left:1px solid #da5b47 !important;
  border-right:1px solid #da5b47 !important;
  box-shadow:
    inset 1px 0 0 rgba(255,255,255,0.14),
    inset -1px 0 0 rgba(0,0,0,0.18),
    0 0 0 1px rgba(198,61,50,0.18) !important;
}

body[data-theme="christmas"] .splitApp.chatBottom>.splitter{
  background:#c63d32 !important;
  border-left:none !important;
  border-right:none !important;
  border-top:1px solid #f3d2c8 !important;
  border-bottom:1px solid #f3d2c8 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.14),
    inset 0 -1px 0 rgba(0,0,0,0.18),
    0 0 0 1px rgba(198,61,50,0.18) !important;
}

body[data-theme="christmas"] .splitter:hover{
  filter:none !important;
  background:#d64a3f !important;
}

body[data-theme="christmas"].draggingCol .splitter,
body[data-theme="christmas"].draggingRow .splitter{
  filter:none !important;
  background:#d64a3f !important;
}



.stageTokens{position:absolute;inset:0;z-index:4;pointer-events:none;}
.stageTokensBack{z-index:2;}
.token{
position:absolute;
transform:translate(-50%,-50%);
pointer-events:auto;
user-select:none;
touch-action:none;
overflow:visible;
}
.tokenImg {
    width: 100%;
    height: 100%;
    border-radius: 0; 
    border: none;     
    background: transparent; 
    object-fit: contain; 
    display: block;
    pointer-events: none; 
}
.tokenName{
position:absolute;
left:50%;
top:calc(100% + 4px);
transform:translateX(-50%);
font-size:12px;
text-align:center;
color:var(--line);
text-shadow:0 2px 8px rgba(0,0,0,.75);
max-width:220px;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
pointer-events:none;
}
.tokenX{
position:absolute;
top:-8px;
right:-8px;
width:22px;
height:22px;
border-radius:999px;
border:1px solid var(--stroke);
background:#0f141d;
color:var(--line);
cursor:pointer;
display:none;
align-items:center;
justify-content:center;
font-size:12px;
line-height:1;
}
.tokenSpeech{
position:absolute;
left:50%;
bottom:calc(100% + 10px);
transform:translateX(-50%);
min-width:44px;
max-width:220px;
padding:8px 10px;
border-radius:12px;
background:rgba(255,255,255,96);
color:#111;
font-size:12px;
line-height:1.35;
text-align:center;
white-space:pre-wrap;
word-break:keep-all;
overflow-wrap:break-word;
box-shadow:0 4px 10px rgba(0,0,0,0.12);
pointer-events:none;
z-index:2;
}
.tokenSpeech.isShort{
display:block;
width:max-content !important;
max-width:none !important;
min-width:0 !important;
white-space:nowrap !important;
word-break:keep-all !important;
overflow-wrap:normal !important;
}
.tokenSpeech::after{
content:'';
position:absolute;
left:50%;
top:calc(100% - 1px);
transform:translateX(-50%);
border-left:7px solid transparent;
border-right:7px solid transparent;
border-top:8px solid rgba(255,255,255,.96);
}
.token:hover .tokenX,
.token.showTokenX .tokenX{
display:flex;
}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;z-index:9999;padding:14px;}
.modal.hidden{display:none;}
.modalBox{width:min(1080px,100%);max-height:92vh;overflow:auto;border:1px solid var(--stroke);border-radius:14px;background:var(--panel);}
.modalHead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border-bottom:1px solid var(--stroke);position:sticky;top:0;background:var(--panel);z-index:2;}
.modalTitle{font-weight:900;color:var(--line);}
.modalBtns{display:flex;gap:8px;flex-wrap:wrap;}
.modalBody{padding:12px;}
.charLayout{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.charList{display:flex;flex-direction:column;gap:8px;min-height:220px;}
.charItem{border:1px solid var(--stroke);border-radius:12px;background:#101621;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.charLeft{display:flex;gap:10px;align-items:center;min-width:0;}
.charThumb{width:50px;height:50px;border-radius:12px;border:1px solid var(--stroke);object-fit:cover;background:#0f141d;flex:0 0 auto;}
.charThumb.thumbBroken{background:#000 !important;}

.charText{min-width:0;display:flex;flex-direction:column;gap:4px;}
.charName{font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:320px;}
.charNameRow{display:flex;align-items:center;gap:6px;}
.charNameRow .charName{min-width:0;}
.charLock{flex:0 0 auto;opacity:0.85;}

.charSub{font-size:12px;color:var(--muted);}
.charBtns{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;}
.charEdit{border:1px solid var(--stroke);border-radius:12px;background:#0f141d;padding:10px;display:flex;flex-direction:column;gap:10px;}
.editTitle{font-weight:900;}
.sectionTitle{font-size:12px;color:var(--muted);margin-top:4px;}
.miniList{display:flex;flex-direction:column;gap:6px;}
.miniRow{display:grid;grid-template-columns:1fr 1.6fr 44px;gap:6px;align-items:center;}

.miniRow.miniRowStat{
  grid-template-columns: 1fr 1fr 1fr 44px !important;
}
.miniRow.miniRowStat .input{
  min-width: 0;
  width: 100%;
}
.miniRow.miniRowStat .btnMini{
  width: 44px;
  min-width: 44px;
  justify-self: end;
}

.subHint{font-size:11px;color:var(--muted);font-weight:700;margin-left:6px;}
.fill-EXT { background: #888; }

.miniIn{padding:8px;border-radius:10px;}
.statGrid{display:grid;grid-template-columns:1fr 1fr;gap: 3px 16px;}
.statPair{display:grid;grid-template-columns:1fr 1fr;gap:6px;}
.statPair .input{min-width:0;}

.textareaDark{border:1px solid var(--stroke);border-radius:10px;padding:10px;background:var(--btnBg);color:var(--line);outline:none;min-height:100px;resize:vertical;}
.textareaDark:focus{border-color:var(--accent);}

.editActions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;}
@media (max-width:980px){.charLayout{grid-template-columns:1fr;}.charName{max-width:220px;}}

.modal{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;z-index:9999;padding:14px;}
.modal.hidden{display:none;}
.modalBox{width:min(1080px,100%);max-height:92vh;overflow:auto;border:1px solid var(--stroke);border-radius:14px;background:var(--panel);}
.modalHead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border-bottom:1px solid var(--stroke);position:sticky;top:0;background:var(--panel);z-index:2;}
.modalTitle{font-weight:900;color:var(--line);}
.modalBtns{display:flex;gap:8px;flex-wrap:wrap;}
.modalBody{padding:12px;}
.charLayout{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
#charModal[data-view="list"] .charLayout{grid-template-columns:1fr;}
#charModal[data-view="list"] .charEdit{display:none;}
#charModal[data-view="edit"] .charLayout{grid-template-columns:1fr;}
#charModal[data-view="edit"] .charList{display:none;}

#charModal .modalBox{
  width: 560px;
  max-width: calc(100vw - 24px);
}

.charList{display:flex;flex-direction:column;gap:8px;min-height:220px;}
.charEdit{border:1px solid var(--stroke);border-radius:12px;background:#0f141d;padding:10px;display:flex;flex-direction:column;gap:10px;}
.sectionTitle{font-size:12px;color:var(--muted);margin-top:4px;}
.miniList{display:flex;flex-direction:column;gap:6px;}
.miniRow{display:grid;grid-template-columns:1fr 1.6fr 44px;gap:6px;align-items:center;}
.statGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.textareaDark{border:1px solid var(--stroke);border-radius:10px;padding:10px;background:#0f141d;color:var(--line);outline:none;min-height:100px;resize:vertical;}
.textareaDark:focus{border-color:#3b5a92;}
.editActions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;}
@media (max-width:980px){.charLayout{grid-template-columns:1fr;}}

.log,.roomList,.adminTableWrap,.adminPanel,.modalBox,.modalBody,.sceneBody,.charList,.charEdit,.chatTabs,.tabLog{scrollbar-width:thin;scrollbar-color:var(--accent) var(--btnBg);}
.log::-webkit-scrollbar,.roomList::-webkit-scrollbar,.adminTableWrap::-webkit-scrollbar,.adminPanel::-webkit-scrollbar,.modalBox::-webkit-scrollbar,.modalBody::-webkit-scrollbar,.sceneBody::-webkit-scrollbar,.charList::-webkit-scrollbar,.charEdit::-webkit-scrollbar,.chatTabs::-webkit-scrollbar,.tabLog::-webkit-scrollbar{width:10px;height:10px;}
.log::-webkit-scrollbar-track,.roomList::-webkit-scrollbar-track,.adminTableWrap::-webkit-scrollbar-track,.adminPanel::-webkit-scrollbar-track,.modalBox::-webkit-scrollbar-track,.modalBody::-webkit-scrollbar-track,.sceneBody::-webkit-scrollbar-track,.charList::-webkit-scrollbar-track,.charEdit::-webkit-scrollbar-track,.chatTabs::-webkit-scrollbar-track,.tabLog::-webkit-scrollbar-track{background:var(--btnBg);border:1px solid var(--stroke);border-radius:999px;}
.log::-webkit-scrollbar-thumb,.roomList::-webkit-scrollbar-thumb,.adminTableWrap::-webkit-scrollbar-thumb,.adminPanel::-webkit-scrollbar-thumb,.modalBox::-webkit-scrollbar-thumb,.modalBody::-webkit-scrollbar-thumb,.sceneBody::-webkit-scrollbar-thumb,.charList::-webkit-scrollbar-thumb,.charEdit::-webkit-scrollbar-thumb,.chatTabs::-webkit-scrollbar-thumb,.tabLog::-webkit-scrollbar-thumb{background:var(--accent);border:1px solid var(--stroke);border-radius:999px;}
.log::-webkit-scrollbar-thumb:hover,.roomList::-webkit-scrollbar-thumb:hover,.adminTableWrap::-webkit-scrollbar-thumb:hover,.adminPanel::-webkit-scrollbar-thumb:hover,.modalBox::-webkit-scrollbar-thumb:hover,.modalBody::-webkit-scrollbar-thumb:hover,.sceneBody::-webkit-scrollbar-thumb:hover,.charList::-webkit-scrollbar-thumb:hover,.charEdit::-webkit-scrollbar-thumb:hover,.chatTabs::-webkit-scrollbar-thumb:hover,.tabLog::-webkit-scrollbar-thumb:hover{filter:brightness(1.08);}
.log::-webkit-scrollbar-corner,.roomList::-webkit-scrollbar-corner,.adminTableWrap::-webkit-scrollbar-corner,.adminPanel::-webkit-scrollbar-corner,.modalBox::-webkit-scrollbar-corner,.modalBody::-webkit-scrollbar-corner,.sceneBody::-webkit-scrollbar-corner,.charList::-webkit-scrollbar-corner,.charEdit::-webkit-scrollbar-corner,.chatTabs::-webkit-scrollbar-corner,.tabLog::-webkit-scrollbar-corner{background:var(--btnBg);}
body[data-theme="party"],
body[data-theme="party"] *{
  scrollbar-width:thin;
  scrollbar-color:#45e3ff rgba(255,255,255,0.62);
}
body[data-theme="party"]::-webkit-scrollbar,
body[data-theme="party"] *::-webkit-scrollbar{
  width:10px;
  height:10px;
}
body[data-theme="party"]::-webkit-scrollbar-track,
body[data-theme="party"] *::-webkit-scrollbar-track{
  background:linear-gradient(135deg,rgba(255,255,255,0.72),rgba(255,244,140,0.48),rgba(255,255,255,0.72));
  border:1px solid rgba(255,255,255,0.82);
  border-radius:999px;
}
body[data-theme="party"]::-webkit-scrollbar-thumb,
body[data-theme="party"] *::-webkit-scrollbar-thumb{
  background:linear-gradient(135deg,#ff4fd8 0%,#45e3ff 45%,#fff261 100%);
  border:1px solid rgba(255,255,255,0.92);
  border-radius:999px;
  box-shadow:0 0 8px rgba(255,79,216,0.28),0 0 10px rgba(69,227,255,0.24);
}
body[data-theme="party"]::-webkit-scrollbar-thumb:hover,
body[data-theme="party"] *::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(135deg,#ff78e1 0%,#6ceaff 45%,#fff58a 100%);
}
body[data-theme="party"]::-webkit-scrollbar-corner,
body[data-theme="party"] *::-webkit-scrollbar-corner{
  background:rgba(255,255,255,0.62);
}

body[data-theme="wedding"],
body[data-theme="wedding"] *{
  scrollbar-width:thin;
  scrollbar-color:#d8b982 rgba(255,252,245,0.76);
}
body[data-theme="wedding"]::-webkit-scrollbar,
body[data-theme="wedding"] *::-webkit-scrollbar{
  width:10px;
  height:10px;
}
body[data-theme="wedding"]::-webkit-scrollbar-track,
body[data-theme="wedding"] *::-webkit-scrollbar-track{
  background:linear-gradient(135deg,rgba(255,255,255,0.92),rgba(255,249,238,0.84),rgba(241,230,204,0.58));
  border:1px solid rgba(205,185,145,0.42);
  border-radius:999px;
}
body[data-theme="wedding"]::-webkit-scrollbar-thumb,
body[data-theme="wedding"] *::-webkit-scrollbar-thumb{
  background:linear-gradient(135deg,#ffffff 0%,#f2d9df 35%,#d8b982 100%);
  border:1px solid rgba(199,163,77,0.52);
  border-radius:999px;
  box-shadow:0 0 8px rgba(255,255,255,0.62),0 0 10px rgba(199,163,77,0.18);
}
body[data-theme="wedding"]::-webkit-scrollbar-thumb:hover,
body[data-theme="wedding"] *::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(135deg,#ffffff 0%,#f8e8ec 35%,#e5c995 100%);
}
body[data-theme="wedding"]::-webkit-scrollbar-corner,
body[data-theme="wedding"] *::-webkit-scrollbar-corner{
  background:rgba(255,252,245,0.76);
}
.contextMenu {
    position: fixed;
    z-index: 99999;
    background: #151a22; 
    border: 1px solid #273145; 
    border-radius: 8px;
    padding: 6px 0;
    box-shadow: 0 4px 16px rgba(0,0,0,0.6);
    display: none;
    min-width: 140px;
    backdrop-filter: blur(8px);
}
.contextMenu.show { display: block; }
.contextItem {
    padding: 10px 16px;
    font-size: 13px;
    color: #e9eef7; 
    cursor: pointer;
    transition: background 0.1s;
    user-select: none;
}
.contextItem:hover { background: #1b2230; color: #5176bd;  }
.contextItem.danger { color: #ff9fc7; border-top: 1px solid #273145; margin-top: 4px; padding-top: 12px;}
.contextItem.danger:hover { background: rgba(255, 95, 162, 0.15); color: #ff5fa2; }
.chatCharSelect {
  width: 100%;
  padding: 10px 12px;
  background: #151a22; 
  border: none;
  border-top: 1px solid var(--stroke);
  color: var(--line);
  font-size: 14px;
  font-weight: 700;
  outline: none;
  cursor: pointer;
  appearance: none; 
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%236aa8ff%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: right 12px top 50%;
  background-size: 10px auto;
}
.chatCharSelect:hover {
  background-color: #1b2230;
}
.chatCharSelect option {
  background: #151a22;
  color: var(--line);
  padding: 8px;
}

.msg { display: flex; gap: 10px; align-items: flex-start; }
.msgProfile {
  width: 42px; height: 42px; border-radius: 10px; overflow: hidden;
  flex-shrink: 0; border: 1px solid var(--stroke); background: #0b0d11; margin-top: 2px;
}
.msgProfile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center; 
}
.msgContent { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.msg .meta { margin-bottom: 2px; }

.msg .text { margin-top: 0; }

.chatHeader{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:5px 10px;
  border-bottom:1px solid var(--stroke);
  background:#101621;
  min-height:28px;
}
.chatHeader .iconBtn{padding:2px 4px;font-size:15px;}

.chatNotice{
  border-bottom:1px solid var(--stroke);
  background:rgba(255,255,255,.04);
  padding:8px 10px;
}
.chatNotice.hidden{display:none;}
.chatNoticeInner{
  display:flex;
  align-items:flex-start;
  gap:8px;
  min-width:0;
}
.chatNoticeAvatar{
  width:28px;
  height:28px;
  border-radius:8px;
  overflow:hidden;
  border:1px solid var(--stroke);
  background:#0b0d11;
  flex:0 0 auto;
}
.chatNoticeAvatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:top center;
}
.chatNoticeBody{
  flex:1;
  min-width:0;
}
.chatNoticeHead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-width:0;
}
.chatNoticeHead .chatNoticeMeta{
  min-width:0;
  flex:1;
}
.chatNoticeMeta{
  font-size:12px;
  color:var(--muted);
  margin-bottom:3px;
  font-weight:700;
}
.chatNoticeText{
  white-space:pre-wrap;
  word-break:break-word;
  font-size:13px;
  line-height:1.4;
}
.chatNoticeTools{
  display:flex;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
}
.chatNoticeDel{
  opacity:0;
  pointer-events:none;
  transition:opacity .2s, border-color .2s, color .2s, background .2s;
  background:transparent;
  border:1px solid #444;
  color:#9aa7bd;
  border-radius:5px;
  font-size:10px;
  padding:1px 5px;
  cursor:pointer;
  flex:0 0 auto;
}
.chatNotice:hover .chatNoticeDel{
  opacity:1;
  pointer-events:auto;
}
.chatNoticeDel:hover{
  border-color:#ff5555;
  color:#ff5555;
  background:#273145;
}
.chatNoticeToggle{
  opacity:1;
  pointer-events:auto;
  width:16px;
  height:16px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:0px solid #444;
  border-radius:6px;
  cursor:pointer;
  flex:0 0 auto;
  transition:border-color .2s, background .2s, transform .2s;
}
.chatNoticeToggle:hover{
  border-color:#7aa2ff;
  background:#273145;
}
.chatNoticeChevron{
  width:6px;
  height:6px;
  display:block;
  border-right:1px solid #9aa7bd;
  border-bottom:1px solid #9aa7bd;
  transform:rotate(45deg);
  margin-top:-1px;
  transition:transform .2s, border-color .2s;
}
.chatNoticeToggle:hover .chatNoticeChevron{
  border-color:#c9dcff;
}
.chatNoticeToggle.is-collapsed .chatNoticeChevron{
  transform:rotate(45deg);
}
.chatNoticeToggle.is-open .chatNoticeChevron{
  transform:rotate(225deg);
  margin-top:2px;
}
.chatNotice.is-collapsed .chatNoticeInner{
  align-items:center;
}
.chatNotice.is-collapsed .chatNoticeHead{
  align-items:center;
}
.chatNotice.is-collapsed .chatNoticeMeta{
  margin-bottom:0;
}
.chatNotice.is-collapsed .chatNoticeText{
  white-space:normal;
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:1;
  -webkit-box-orient:vertical;
  line-height:1.35;
  max-height:1.35em;
}
.pinBtn:hover{
  border-color:#e3b341;
  color:#e3b341;
}
.chatTitle{
flex:1;
min-width:0;
display:flex;
align-items:center;
}

.iconBtn {
    background: transparent;
    border: none;
    cursor: pointer;
    font-size: 16px;
    padding: 4px;
    border-radius: 4px;
    transition: background 0.2s;
}
.iconBtn:hover{background:var(--hoverBg);}
.iconBtn:disabled,.iconBtn.uiBtnLocked{opacity:.35;cursor:not-allowed;filter:grayscale(1);}
.iconBtn:disabled:hover,.iconBtn.uiBtnLocked:hover{background:transparent;filter:grayscale(1);}


.settingMenu {
    position: absolute;
    top: 40px; 
    right: 10px;
    background: var(--panel);
    border: 1px solid var(--stroke);
    border-radius: 8px;
    padding: 6px 0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.5);
    display: none;
    z-index: 100;
    min-width: 140px;
}
.settingMenu.show { display: block; }
.settingItem {
    padding: 10px 14px;
    font-size: 13px;
    color: var(--line);
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
}
.settingItem:hover { background: #1b2230; color: var(--accent); }
.settingItem.danger { color: #ff9fc7; border-top: 1px solid var(--stroke); margin-top: 4px; padding-top: 12px; }
.settingItem.danger:hover { background: rgba(255, 95, 162, 0.15); color: #ff5fa2; }

.chatCharBar{display:flex;gap:4px;align-items:center;margin:10px 10px 8px 10px;}

.chatCharSelect {
    flex: 1;
    min-width: 0;
    border: 1px solid var(--stroke);
    border-radius: 10px;
    padding: 10px 32px 10px 12px; 
    background-color: #0f141d;
    color: var(--line);
    outline: none;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239aa7bd' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 16px;
    transition: border-color 0.2s;
}

.chatCharSelect:hover {
    border-color: #5176bd; 
}

.chatCharSelect:focus {
    border-color: #5176bd;
    box-shadow: 0 0 0 2px rgba(106,168,255,0.18);
}

.chatCharSelect option {
    background: #151a22;
    color: var(--line);
    padding: 8px;
}

.chatNameColorBtn{position:absolute;inset:0;border:1px solid var(--stroke);border-radius:10px;background:#0f141d;color:var(--line);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1;}
.chatNameColorWrap:hover .chatNameColorBtn{filter:brightness(1.08);}
.chatNameColorPicker{position:absolute;inset:0;opacity:0;cursor:pointer;border:none;padding:0;margin:0;z-index:2;}


.faceMenu{
    position:absolute;
    bottom:50px;
    left:10px;
    width:300px;
    max-height:340px;
    background:var(--panel);
    border:1px solid var(--stroke);
    border-radius:12px;
    padding:0;
    display:none;
    flex-direction:column;
    overflow:hidden;
    z-index:100;
    box-shadow:0 8px 24px rgba(0,0,0,.45);
}
.faceMenu.show{display:flex;}

.faceMenuTabs{
    display:flex;
    align-items:flex-end;
    gap:0;
    padding:8px 8px 0 8px;
    background:var(--tabBarBg);
    border-bottom:1px solid var(--stroke);
    flex:0 0 auto;
}

.faceMenuTab{
    appearance:none;
    border:1px solid var(--stroke);
    border-bottom:none;
    background:var(--tabBg);
    color:var(--muted);
    padding:8px 12px;
    min-width:76px;
    border-top-left-radius:10px;
    border-top-right-radius:10px;
    cursor:pointer;
    font-size:12px;
    font-weight:700;
    margin-right:4px;
}
.faceMenuTab:hover{
    background:var(--hoverBg);
    color:var(--line);
}
.faceMenuTab.active{
    background:var(--panel);
    color:var(--accent);
    border-color:var(--stroke);
    position:relative;
    top:1px;
}

.faceMenuBody{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    padding:8px;
}

.faceItem{
    display:flex;
    flex-direction:column;
    align-items:center;
    cursor:pointer;
    background:var(--btnBg);
    border:1px solid transparent;
    border-radius:8px;
    padding:6px;
    transition:.2s;
}
.faceItem:hover{
    background:var(--hoverBg);
    border-color:var(--accent);
}
.faceItem.active{
    border-color:var(--accent);
    background:rgba(106,168,255,0.1);
}

.faceImg{
    width:100%;
    aspect-ratio:1;
    object-fit:contain;
    margin-bottom:4px;
    border-radius:6px;
    background:rgba(0,0,0,0.2);
}
.faceName{
    font-size:11px;
    color:var(--muted);
    text-align:center;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    width:100%;
}

.chatBtn {
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
    border: 1px solid #273145;
    border-radius: 10px;
    background: #0f141d;
    color: #e9eef7;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}
.chatBtn:hover { filter: brightness(1.1); }


.chatBtn{
  width:40px;
  height:40px;
  flex:0 0 auto;
  border:1px solid #273145;
  border-radius:10px;
  background:#0f141d;
  color:#e9eef7;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
}
.chatBtn:hover{filter:brightness(1.1);}

.diceToolbar{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(36px,1fr));
  gap:3px;
  padding:0 2px 0px 2px;
}

.diceBtn{
  height:30px;
  border:1px solid #273145;
  border-radius:10px;
  background:linear-gradient(180deg,#121a28 0%,#0b0f18 100%);
  color:#9aa7bd;
  cursor:pointer;
  font-size:11px;
  font-weight:800;
  letter-spacing:.2px;
  box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 14px rgba(0,0,0,.35);
  transition:transform .08s ease,filter .12s ease,box-shadow .12s ease,border-color .12s ease,color .12s ease,background .12s ease;
  user-select:none;
}

.diceBtn:hover{
  border-color:#5176bd;
  color:#e9eef7;
  filter:brightness(1.08);
}
.diceBtn:active{
  transform:translateY(1px);
  box-shadow:0 1px 0 rgba(255,255,255,.05) inset,0 3px 10px rgba(0,0,0,.35);
}
.diceBtn:focus-visible{
  outline:0;
  box-shadow:0 0 0 2px rgba(106,168,255,.35),0 1px 0 rgba(255,255,255,.06) inset,0 6px 14px rgba(0,0,0,.35);
}
.diceBtn.on{
  border-color:#5176bd;
  background:linear-gradient(180deg,#1b2b4a 0%,#12223a 100%);
  color:#e9eef7;
}

.onScreenStats {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 15;
overflow: hidden;
--statScale: 0.85;
}


.statBarBox {
    background: rgba(15, 20, 29, 0.85);
    border: 1px solid var(--stroke);
    border-radius: 6px;
    padding: 4px 8px;
    cursor: pointer;
    transition: transform 0.1s, border-color 0.2s;
    user-select: none;
}
.statBarBox:hover {
    transform: scale(1.02);
    border-color: var(--accent);
}
.statLabelRow {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    color: var(--line);
    margin-bottom: 4px;
    font-weight: 700;
}
.statTrack {
    height: 6px;
    background: rgba(255,255,255,0.1);
    border-radius: 3px;
    overflow: hidden;
}
.statFill {
    height: 100%;
    background: var(--accent);
    transition: width 0.3s ease;
}

.statBarBox[data-stat="HP"] .statFill { background: #ff5f5f; }
.statBarBox[data-stat="MP"] .statFill { background: #5fafff; }
.statBarBox[data-stat="SAN"] .statFill { background: #c07fff; }

.chkField {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    font-size: 13px;
    color: var(--line);
    cursor: pointer;
}
.chkInput {
    width: 16px;
    height: 16px;
    cursor: pointer;
    accent-color: var(--accent);
}
.bgmControls .chkInput{width:12px;height:12px;}
.bgmControls .chkField{gap:6px;font-size:12px;}


.onScreenStats {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.statWidget {
    display: flex;
    align-items: center;
    background: rgba(20, 24, 30, 0.85); 
    border: 1px solid #444;
    border-radius: 6px;
    padding: 6px;
    backdrop-filter: blur(4px);
    box-shadow: 0 4px 6px rgba(0,0,0,0.3);
}

.statAvatar {
    width: 64px;
    height: 64px;
    border-radius: 4px;
    overflow: hidden;
    margin-right: 10px;
    background: #000;
    border: 1px solid #555;
    flex-shrink: 0;
}
.statAvatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none; 
    user-select: none;    
    -webkit-user-drag: none; 
    object-position: top center;
}

.statGrid {
    display: grid;
    grid-template-columns: 1fr 1fr; 
    gap: 4px 12px; 
}

.miniStat {
    display: flex;
    flex-direction: column;
    min-width: 80px;
    cursor: pointer;
    user-select: none;
}
.miniStat:hover .miniStatLabel {
    color: #fff;
    text-shadow: 0 0 4px rgba(255,255,255,0.5);
}

.miniStatLabel {
    font-size: 12px;
    font-weight: bold;
    color: #ccc;
    display: flex;
    justify-content: space-between;
    margin-bottom: 2px;
}
.miniStatLabel span:last-child {
    font-family: monospace; 
    font-size: 13px;
}

.miniStatBar {
    width: 100%;
    height: 4px;
    background: #222;
    border-radius: 2px;
    overflow: hidden;
    border: 1px solid #333;
}
.miniStatFill {
    height: 100%;
    transition: width 0.3s ease;
}

.fill-HP { background: #ff5555; }
.fill-MP { background: #55aaff; }
.fill-SAN { background: #aa55ff; }
.fill-LUK { background: #55ffaa; }

.onScreenStats {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none; 
    z-index: 15; 
    overflow: hidden;
}

.statWidget {
    position: absolute; 
    pointer-events: auto; 
    
    display: flex;
    align-items: center;
    background: rgba(10, 12, 15, 0.9);
    border: 1px solid #555;
    border-radius: 6px;
    padding: 4px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.5);
    transform: scale(clamp(0.7, var(--statScale, 0.85), 1));
    transform-origin: top left;
    transition: box-shadow 0.2s;
}

.statWidget.dragging {
    box-shadow: 0 0 15px rgba(255, 255, 100, 0.5);
    border-color: #aaa;
    cursor: grabbing;
    z-index: 100;
}

.statAvatar {
    width: 48px; 
    height: 48px;
    border-radius: 4px;
    overflow: hidden;
    margin-right: 8px;
    background: #000;
    flex-shrink: 0;
}
.statAvatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none; 
    user-select: none; 
    -webkit-user-drag: none;
}


.statGrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3px 8px;
}

.miniStat {
    display: flex;
    flex-direction: column;
    min-width: 95px;
    cursor: pointer;
}
.miniStatLabel {
    font-size: 11px;
    color: #ccc;
    display: flex;
    justify-content: space-between;
    margin-bottom: 1px;
}
.miniStatBar {
    width: 100%;
    height: 3px;
    background: #333;
    border-radius: 1px;
}
.miniStatFill {
    height: 100%;
}
.fill-HP { background: #ff5555; }
.fill-MP { background: #55aaff; }
.fill-SAN { background: #aa55ff; }
.fill-LUK { background: #55ffaa; }


.statAvatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    
    -webkit-user-drag: none; 
    user-drag: none;         
    pointer-events: none;     
    user-select: none;      
}


.chat {
    padding-bottom: 24px;
    position: relative;
}

.typingIndicator {
    position: absolute;
    bottom: 3px;
    left: 0;
    width: 100%;
    padding: 4px 12px 6px 12px;
    font-size: 11px;
    color: #9aa7bd; 
    background: transparent;
    display: none;
    pointer-events: none;
    animation: fadeIn 0.2s ease;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}




.chatSuggestion {
    position: fixed; 
    z-index: 2000;   
    background: #151a22;
    border: 1px solid #273145; 
    border-radius: 8px 8px 0 0; 
    max-height: 200px;
    overflow-y: auto;
    box-shadow: 0 -4px 12px rgba(0,0,0,0.5);
    display: none; 
}

.suggItem {
    padding: 10px 14px;
    border-bottom: 1px solid rgba(255,255,255,0.05);
    cursor: pointer;
    font-size: 13px;
    color: #e9eef7;
}

.suggItem:hover {
    background: #1b2230;
    color: #5176bd;
}

.res-critical { color: #e99c01; font-weight: bold; text-shadow: 0 0 5px rgba(255, 215, 0, 0.5); }
.res-extreme { color: #01afe4; font-weight: bold; }
.res-hard { color: #01ca01; font-weight: bold; }
.res-success { color: #30c333; }
.res-fail { color: #aaaaaa; }
.res-fumble { color: #ff4444; font-weight: bold; text-shadow: 0 0 5px rgba(255, 0, 0, 0.5); }


.msgActions {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    margin-left: 4px;
    opacity: 0;
    transition: opacity 0.2s;
    pointer-events: none;
    flex: 0 0 auto;
}

.msg:hover .msgActions {
    opacity: 1;
    pointer-events: auto;
}

.msg.show-actions .msgActions {
    opacity: 1;
    pointer-events: auto;
}

.msgActBtn {
    background: transparent;
    border: 1px solid #444;
    color: #9aa7bd;
    border-radius: 4px;
    font-size: 8px;
    line-height: 1;
    padding: 1px 3px;
    min-height: 16px;
    cursor: pointer;
    flex: 0 0 auto;
}

.msgActBtn:hover {
    background: #273145;
    color: #fff;
}

.delBtn:hover {
    border-color: #ff5555;
    color: #ff5555;
}

.editedLabel {
    font-size: 11px;
    color: #666; 
    margin-left: 4px;
}

.sceneWindow {
    position: fixed;
    width: 320px;
    background: #151a22;
    border: 1px solid #273145;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.6);
    z-index: 10000;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    will-change: left, top;
    transform: translateZ(0);
}
.sceneWindow.hidden { display: none; }
@media (hover:none), (pointer:coarse){
  .sceneWindow{
    max-width:calc(100vw - 16px) !important;
    max-height:calc(100vh - 16px) !important;
    will-change:auto;
    transform:none;
  }
  .modalBox,
  .sceneBody,
  #voteWin .voteBody,
  #rouletteWin .rouletteBody,
  #onecardWin .onecardBody{
    -webkit-overflow-scrolling:touch;
  }
  .btnMini,
  .iconBtn,
  .send,
  .winClose{
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
  }
}
.winHead {
    padding: 10px 14px;
    background: #101621;
    border-bottom: 1px solid #273145;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: grab;
    user-select: none;
    -webkit-user-select: none;
    touch-action: none;
    -webkit-tap-highlight-color: transparent;
}
.winHead:active { cursor: grabbing; }
.winTitle { font-weight: 700; color: #e9eef7; }
.winClose { background: none; border: none; color: #9aa7bd; cursor: pointer; font-size: 18px; }

.sceneBody { padding: 12px; display: flex; flex-direction: column; gap: 10px; max-height: 400px; overflow-y: auto; }
.handoutDescModal{
  position:fixed;
  inset:0;
  z-index:30050;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:14px;
  background:rgba(0,0,0,.62);
}

.handoutDescBox{
  width:min(560px, calc(100vw - 32px));
  max-height:min(82vh, 720px);
  display:flex;
  flex-direction:column;
  background:var(--panel);
  border:1px solid var(--stroke);
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 18px 40px rgba(0,0,0,.45);
}

.handoutDescBody{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:14px 16px;
  white-space:pre-wrap;
  word-break:break-word;
  overflow-wrap:anywhere;
  line-height:1.6;
  font-size:13px;
  color:var(--line);
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:var(--accent) var(--btnBg);
}

.handoutDescBody::-webkit-scrollbar{
  width:10px;
  height:10px;
}

.handoutDescBody::-webkit-scrollbar-track{
  background:var(--btnBg);
  border:1px solid var(--stroke);
  border-radius:999px;
}

.handoutDescBody::-webkit-scrollbar-thumb{
  background:var(--accent);
  border:1px solid var(--stroke);
  border-radius:999px;
}

.handoutDescBody::-webkit-scrollbar-thumb:hover{
  filter:brightness(1.1);
}

.handoutDescBody::-webkit-scrollbar-corner{
  background:var(--btnBg);
}
.sceneInputs {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-bottom: 10px;
    border-bottom: 1px dashed #273145;
}

.sceneList { display: flex; flex-direction: column; gap: 6px; }

.sceneItem {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #0f141d;
    border: 1px solid #273145;
    border-radius: 8px;
    padding: 8px 10px;
    transition: 0.2s;
}
.sceneItem:hover { border-color: #5176bd; }

.sceneInfo { flex: 1; cursor: pointer; }
.sceneName { font-weight: 700; font-size: 13px; color: var(--line); }
.sceneMeta { font-size: 11px; color: var(--muted); margin-top: 2px; }
.sceneLeft{display:flex;align-items:center;gap:8px;flex:1;min-width:0;}
.sceneLeft .sceneInfo{min-width:0;}
.sceneDragHandle{width:24px;display:flex;align-items:center;justify-content:center;cursor:grab;user-select:none;color:#9aa7bd;}
.sceneDragHandle:active{cursor:grabbing;}
.sceneItem.dragging{opacity:.55;}
.hoThumbWrap{width:56px;height:56px;flex:0 0 auto;border-radius:4px;overflow:hidden;border:1px solid #273145;background:#0f141d;display:flex;align-items:center;justify-content:center;}
.hoThumb{width:100%;height:100%;object-fit:cover;display:block;}
.hoThumbWrap.empty{opacity:.65;}
.hoThumbEmpty{font-size:14px;color:#9aa7bd;}

.sceneThumbWrap{width:70px;height:52px;flex:0 0 auto;border-radius:0px;overflow:hidden;border:1px solid #273145;background:#0f141d;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.sceneThumb{width:100%;height:100%;object-fit:cover;display:block;}
.sceneThumbWrap.empty{opacity:.65;}
.sceneThumbEmpty{font-size:14px;color:#9aa7bd;}

.cutinThumbWrap{width:56px;height:56px;flex:0 0 auto;border-radius:4px;overflow:hidden;border:1px solid var(--stroke);background:var(--btnBg);}
.cutinThumb{width:100%;height:100%;object-fit:cover;display:block;}
.iconBtn{width: 28px; height: 28px; background:transparent;border:none;cursor:pointer;font-size:16px;padding:4px;border-radius:6px;transition:background .2s,filter .2s;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;}
.iconBtn:hover{background:var(--hoverBg);}
.iconBtn:disabled,.iconBtn.uiBtnLocked{opacity:.35;cursor:not-allowed;filter:grayscale(1);}
.iconBtn:disabled:hover,.iconBtn.uiBtnLocked:hover{background:transparent;filter:grayscale(1);}
#stageTopTools .iconBtn{width:auto;min-width:0;height:28px;padding:0 10px;border:1px solid var(--stroke);border-radius:8px;background:var(--btnBg);color:var(--line);font-size:12px;font-weight:600;letter-spacing:-0.2px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:3px;line-height:1;white-space:nowrap;appearance:none;-webkit-appearance:none;transition:background .15s,border-color .15s,transform .12s;}
#stageTopTools .iconBtn svg{color:inherit;fill:currentColor;stroke:currentColor;}
#stageTopTools .iconBtn:hover{background:var(--hoverBg);border-color:var(--stroke);transform:translateY(-1px);filter:none;}
#stageTopTools .iconBtn:active{transform:translateY(0px);}


.bgmControls {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px;
    background: var(--msgBg); 
    border: 1px solid var(--stroke);
    border-radius: 8px;
    margin-bottom: 6px;
}

.bgmRow {
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: space-between;
}

.bgmRow.bgmRowCtrl {
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.bgmRow.bgmRowCtrl .bgmChecks {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: nowrap;
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
}

.bgmRow.bgmRowCtrl .bgmBtns {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    margin-left: 8px;
    padding: 4px 6px;
    
    border: 1px solid var(--stroke);
    background: var(--bg);
    border-radius: 10px;
    justify-content: flex-end;
    min-width: 180px;
}

.bgmRow.bgmRowCtrl .btnMini {
    height: 28px;
    min-width: 58px;
    padding: 0 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bgmRow.bgmRowCtrl .bgmBtns .btnMini {
    flex: 1 1 0;
}

.bgmRow.bgmRowCtrl .chkField {
    margin: 0;
    flex: 0 0 auto;
    white-space: nowrap;
}

.bgmRow.bgmRowCtrl .chkField span {
    white-space: nowrap;
}

.bgmControls .chkField {
    gap: 4px;
    font-size: 12px;
    color: var(--line); 
}

.bgmRow.bgmRowCtrl .bgmChecks {
    justify-content: center;
}

input[type=range] {
    accent-color: var(--accent); 
    cursor: pointer;
}

.soundTabs {
    display: flex;
    margin-bottom: 10px;
    border-bottom: 1px solid var(--stroke); 
}

.tabBtn {
    flex: 1;
    background: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    
    color: var(--muted); 
    
    padding: 8px;
    cursor: pointer;
    font-weight: 700;
    transition: 0.2s;
}

.tabBtn:hover {
    color: var(--line); 
}

.tabBtn.active {
    color: var(--accent); 
    border-bottom-color: var(--accent);
}
.chatTabs {
    display: flex;
    gap: 4px;
    padding: 6px 10px 0 10px;
    background: #101621;
    border-bottom: 1px solid #273145;
overflow-x: auto;     
    overflow-y: hidden;   
}
.chatTab {
    background: #151a22;
    border: 1px solid #273145;
    border-bottom: none;
    border-radius: 8px 8px 0 0;
    padding: 6px 12px;
    color: #9aa7bd;
    font-size: 12px;
    cursor: pointer;
    white-space: nowrap;
    position: relative;
}
.chatTab:hover { background: #1b2230; color: #e9eef7; }
.chatTab.active {
    background: #151a22; 
    color: #5176bd;
    font-weight: 700;
    border-bottom: 1px solid #151a22;
    margin-bottom: -1px;
    z-index: 1;
}
.chatTab.new{
border-color:#ff5f5f;
color:#ffd0d0;
background:rgba(255,95,95,0.14);
}
.chatTab.new:hover{
background:rgba(255,95,95,0.20);
color:#fff0f0;
}
.chatTab.new::after{content:none;}

.chatTab.whisper { color: #d8b8ff; }

.logContainer {
    flex: 1;
    min-height: 0;
    position: relative;
    background: var(--panel);
}
.tabLog {
    position: absolute;
    inset: 0;
    padding: 10px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
    display: none; 
}
.tabLog.active { display: flex; }


.btnTabAdd {
    width: 24px;
    height: 24px;
    display: flex; align-items: center; justify-content: center;
    border: 1px dashed #273145;
    background: transparent;
    color: #9aa7bd;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    margin-top: 2px;
}
.btnTabAdd:hover { border-color: #5176bd; color: #5176bd; }

.userSelectBox{
display:flex;
flex-direction:column;
gap:6px;
max-height:200px;
overflow-y:auto;
background:var(--inputBg);
border:1px solid var(--stroke);
border-radius:8px;
padding:8px;
}
.userSelectItem{
display:flex;
align-items:center;
gap:8px;
padding:6px;
border-radius:4px;
cursor:pointer;
transition:background 0.2s,border-color 0.2s,box-shadow 0.2s;
background:var(--tabBg);
border:1px solid var(--stroke);
}
.userSelectItem:hover{
background:var(--hoverBg);
border-color:var(--accent);
box-shadow:0 0 0 1px var(--accent);
}
.userSelectItem input[type="checkbox"]{
accent-color:var(--accent);
width:16px;height:16px;
}
.userSelectItem span{
font-size:13px;
color:var(--line);
}
.chatGroupInfo{
background:var(--chipBg);
border-bottom:1px solid var(--stroke);
padding:6px 12px;
font-size:12px;
color:var(--muted);
display:none;
align-items:center;
gap:6px;
}
.chatGroupInfo.show{display:flex;}
.groupMemberLabel{font-weight:700;color:var(--accent);margin-right:4px;}
.groupMemberList{color:var(--line);}


body.theme-light{--bg:#f6f7fb;--panel:#ffffff;--line:#111827;--muted:#4b5563;--stroke:#d1d5db;--accent:#2563eb;--stage:#eef2ff;--stageGrad1:#f7f7ff;--stageGrad2:#e8ecff;--dialogueBg:rgba(255,255,255,.82);--chipBg:#f3f4f6;--msgBg:#ffffff;--sysBg:#f3f4f6;--inputBg:#ffffff;--headerBg:#ffffff;--tabBg:#ffffff;--tabBarBg:#ffffff;--btnBg:#f3f4f6;--btnText:#111827;--hoverBg:rgba(0,0,0,0.06);}
body[data-theme="light"]{background:#f6f7fb;color:#111827;}
body[data-theme="light"] .stage{background:#ffffff;border-color:rgba(0,0,0,.12);color:#111827;}
body[data-theme="light"] .topbar,body[data-theme="light"] .chatHeader,body[data-theme="light"] .chatTop{background:#ffffff;color:#111827;border-color:rgba(0,0,0,.12);}
body[data-theme="light"] .panel,body[data-theme="light"] .chat,body[data-theme="light"] .lobbyCard,body[data-theme="light"] .roomItem,body[data-theme="light"] .charItem,body[data-theme="light"] .charEdit,body[data-theme="light"] .adminTableWrap{background:#ffffff;border-color:rgba(0,0,0,.12);color:#111827;}
body[data-theme="light"] .chatTabs{background:#ffffff;border-bottom-color:rgba(0,0,0,.12);}
body[data-theme="light"] .chatTab{background:#f3f4f6;border-color:rgba(0,0,0,.12);color:#4b5563;}
body[data-theme="light"] .chatTab:hover{background:#e9eefb;color:#111827;}
body[data-theme="light"] .chatTab.active{background:#ffffff;color:#2563eb;border-bottom-color:#ffffff;}

body[data-theme="light"] .msg,body[data-theme="light"] .bubble{background:#f3f4f6;border-color:rgba(0,0,0,.12);color:#111827;}
body[data-theme="light"] .sys{background:#eef2ff;border-color:rgba(0,0,0,.12);color:#4b5563;}
body[data-theme="light"] .input{background:#ffffff;border-color:rgba(0,0,0,.18);color:#111827;}
body[data-theme="light"] .send,body[data-theme="light"] .btnMini,body[data-theme="light"] .iconBtn{background:#f3f4f6;border-color:rgba(0,0,0,.12);color:#111827;}
body[data-theme="light"] .send:hover,body[data-theme="light"] .btnMini:hover,body[data-theme="light"] .iconBtn:hover{background:#e9eefb;}
body[data-theme="light"] .sceneWindow,body[data-theme="light"] .contextMenu,body[data-theme="light"] .settingMenu,body[data-theme="light"] .modalBox{background:#ffffff;border-color:rgba(0,0,0,.12);color:#111827;}
body[data-theme="light"] .winHead,body[data-theme="light"] .modalHead{background:#ffffff;border-bottom-color:rgba(0,0,0,.12);color:#111827;}
body[data-theme="light"] .splitter{background:#ffffff;border-left-color:rgba(0,0,0,.12);border-right-color:rgba(0,0,0,.12);}
body[data-theme="light"] a{color:#779ed8;}

body[data-theme="light"] .bg{background-image:linear-gradient(135deg,var(--stageGrad1),var(--stageGrad2));}
body[data-theme="light"] .dialogue{background:var(--dialogueBg);border-color:var(--stroke);color:var(--line);}

body[data-theme="light"] .speaker{color:var(--accent);}
body[data-theme="light"] .stageRoomTitle{color:var(--line);}
body[data-theme="light"] .stageUsersLabel{color:var(--muted);}
body[data-theme="light"] .badge{background:var(--chipBg);color:var(--line);border-color:var(--stroke);}
body[data-theme="light"] .badgeLink{background:var(--chipBg);color:var(--line);border-color:var(--stroke);}
body[data-theme="light"] .userChip{background:var(--chipBg)!important;color:var(--line)!important;border-color:var(--stroke)!important;}
body[data-theme="light"] .roomItem{background:var(--panel)!important;border-color:var(--stroke)!important;color:var(--line)!important;}
body[data-theme="light"] .btnMini{background:var(--btnBg)!important;color:var(--btnText)!important;border-color:var(--stroke)!important;}
body[data-theme="light"] .chatHeader{background:var(--headerBg)!important;}
body[data-theme="light"] .chatCharSelect{background:var(--panel)!important;color:var(--line)!important;border-color:var(--stroke)!important;}
body[data-theme="light"] .chatCharSelect option{background:var(--panel)!important;color:var(--line)!important;}
body[data-theme="light"] .chatNameColorBtn{background:var(--btnBg)!important;color:var(--btnText)!important;border-color:var(--stroke)!important;}
body[data-theme="light"] .faceMenu{background:var(--panel)!important;border-color:var(--stroke)!important;}
body[data-theme="light"] .faceItem{background:var(--btnBg)!important;border-color:transparent!important;}
body[data-theme="light"] .faceItem:hover{background:rgba(0,0,0,.04)!important;border-color:var(--accent)!important;}
body[data-theme="light"] .faceName{color:var(--muted)!important;}
body[data-theme="light"] .chatBtn{background:var(--btnBg)!important;color:var(--btnText)!important;border-color:var(--stroke)!important;}
body[data-theme="light"] .diceBtn{background:var(--btnBg)!important;color:var(--btnText)!important;border-color:var(--stroke)!important;box-shadow:none!important;}
body[data-theme="light"] .diceBtn:hover{border-color:var(--accent)!important;color:var(--line)!important;filter:none!important;}
body[data-theme="light"] .diceBtn.on{background:rgba(37,99,235,.12)!important;border-color:var(--accent)!important;color:var(--line)!important;}


body[data-theme="light"]{
  --bg:#f3f5f9;
  --panel:#ffffff;
  --line:#121826;
  --muted:#5b6475;
  --stroke:#cfd6e4;
  --accent:#2b6cff;
  --stage:#ffffff;
  --stageGrad1:#f2f4f8;
  --stageGrad2:#e7ebf3;
  --dialogueBg:rgba(255,255,255,.86);
  --chipBg:#ffffff;
  --msgBg:#ffffff;
  --sysBg:#f5f7fb;
  --inputBg:#ffffff;
  --headerBg:#ffffff;
  --tabBg:#ffffff;
  --tabBarBg:#ffffff;
  --btnBg:#ffffff;
  --btnText:#121826;
  --hoverBg:rgba(0,0,0,0.06);
  --roomItemBg:#ffffff;
  --splitterBg:#eef2f8;
}

body[data-theme="light"]{--bg:#f6f7fb;--panel:#ffffff;--line:#111111;--muted:#586174;--stroke:rgba(0,0,0,.15);--accent:#779ed8;--bg-fallback:linear-gradient(135deg,#ffffff,#e9eef7);}
body[data-theme="light"] .badgeLink{color:var(--accent);border-color:var(--stroke);background:rgba(0,0,0,.02);}
body[data-theme="light"] .badgeLink:hover{background:rgba(0,0,0,.06);}
body[data-theme="light"] .stageRoomTitle{color:var(--line);}
body[data-theme="light"] .stageUsersLabel{color:var(--muted);}
body[data-theme="light"] .stageUsers{color:var(--line);}
body[data-theme="light"] .dialogue{background:rgba(255,255,255,.88);color:var(--line);border-color:var(--stroke);}
body[data-theme="light"] .chatHeader{background:var(--panel);color:var(--line);border-color:var(--stroke);}
body[data-theme="light"] .log{background:var(--panel);color:var(--line);}
body[data-theme="light"] .btnMini,body[data-theme="light"] .iconBtn{background:rgba(0,0,0,.04);color:var(--line);border-color:var(--stroke);filter:none;}
body[data-theme="light"] .btnMini:hover,body[data-theme="light"] .iconBtn:hover{background:rgba(0,0,0,.08);filter:none;}
body[data-theme="light"] .diceBtn{border-color:var(--stroke);background:rgba(0,0,0,.06);color:var(--line);}
body[data-theme="light"] .diceBtn:hover{background:rgba(0,0,0,.10);}
body[data-theme="light"] .diceBtn.on{background:rgba(11,91,211,.12);border-color:rgba(11,91,211,.35);}

body[data-theme="light"] .textareaDark {
    background: var(--inputBg);   
    border-color: var(--stroke);
    color: var(--line);       
}
body[data-theme="light"] .miniIn {
    background: var(--inputBg);
    border-color: var(--stroke);
    color: var(--line);
}

body[data-theme="light"] .winTitle,
body[data-theme="light"] .modalTitle {
    color: var(--line); 
}

body[data-theme="light"] .sectionTitle {
    color: var(--muted);
}

body[data-theme="light"] .winMuted {
    color: var(--muted);
}

body[data-theme="light"] .winHead,
body[data-theme="light"] .modalHead {
    background: var(--headerBg);
    border-bottom-color: var(--stroke);
}


body[data-theme="light"] .bgmControls {
    background: var(--btnBg);    
    border-color: var(--stroke); 
    color: var(--line);    
}
body[data-theme="light"] .bgmControls span[style*="color"] {
    color: var(--muted) !important;
}

body[data-theme="light"] .contextMenu {
    background: var(--panel);   
    border-color: var(--stroke);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15); 
}
body[data-theme="light"] .contextItem {
    color: var(--line);         
}
body[data-theme="light"] .contextItem:hover {
    background: var(--hoverBg); 
    color: var(--accent);       
}
body[data-theme="light"] .contextItem.danger {
    border-top-color: var(--stroke);
}
body[data-theme="light"] .contextItem.danger:hover {
    background: #ffeef5;         
}

body[data-theme="light"] .msgProfile {
    background: #e1e4e8;        
    border-color: var(--stroke);
}

body[data-theme="light"] .log,
body[data-theme="light"] .roomList,
body[data-theme="light"] .adminTableWrap,
body[data-theme="light"] .adminPanel,
body[data-theme="light"] .modalBody,
body[data-theme="light"] .charList,
body[data-theme="light"] .charEdit,
body[data-theme="light"] .chatTabs,
body[data-theme="light"] .tabLog {
  scrollbar-color: rgba(0,0,0,0.2) rgba(0,0,0,0.05);
}

body[data-theme="light"] .log::-webkit-scrollbar-track,
body[data-theme="light"] .roomList::-webkit-scrollbar-track,
body[data-theme="light"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="light"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="light"] .modalBody::-webkit-scrollbar-track,
body[data-theme="light"] .charList::-webkit-scrollbar-track,
body[data-theme="light"] .charEdit::-webkit-scrollbar-track,
body[data-theme="light"] .chatTabs::-webkit-scrollbar-track,
body[data-theme="light"] .tabLog::-webkit-scrollbar-track {
  background: rgba(0,0,0,0.03); 
  border: 1px solid rgba(0,0,0,0.05);
}

body[data-theme="light"] .log::-webkit-scrollbar-thumb,
body[data-theme="light"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="light"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="light"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="light"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="light"] .charList::-webkit-scrollbar-thumb,
body[data-theme="light"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="light"] .chatTabs::-webkit-scrollbar-thumb,
body[data-theme="light"] .tabLog::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,0.15);
  border: 1px solid rgba(255,255,255,0.8); 
}

body[data-theme="light"] .log::-webkit-scrollbar-thumb:hover,
body[data-theme="light"] .roomList::-webkit-scrollbar-thumb:hover,
body[data-theme="light"] .adminTableWrap::-webkit-scrollbar-thumb:hover,
body[data-theme="light"] .adminPanel::-webkit-scrollbar-thumb:hover,
body[data-theme="light"] .modalBody::-webkit-scrollbar-thumb:hover,
body[data-theme="light"] .charList::-webkit-scrollbar-thumb:hover,
body[data-theme="light"] .charEdit::-webkit-scrollbar-thumb:hover,
body[data-theme="light"] .chatTabs::-webkit-scrollbar-thumb:hover,
body[data-theme="light"] .tabLog::-webkit-scrollbar-thumb:hover {
  background: rgba(0,0,0,0.25); 
}

.msg.statMsg {
    background: #111926; 
    border: 1px solid #233552;
    border-left: 3px solid #4a7fc7;
    color: #dbeafe; 
}

body[data-theme="light"] .msg.statMsg {
    background: #f0f7ff;
    border: 1px solid #bfdbfe;
    border-left: 3px solid #779ed8;
    color: #1e3a8a;
}

body[data-theme="light"] .statWidget {
    background: rgba(255, 255, 255, 0.92); 
    border-color: rgba(0,0,0,0.15);       
    box-shadow: 0 4px 12px rgba(0,0,0,0.1); 
}

body[data-theme="light"] .statAvatar, 
body[data-theme="light"] .charThumb {
    background: #e2e5e9;   
    border-color: rgba(0,0,0,0.1);
}

body[data-theme="light"] .miniStatLabel {
    color: #4b5563; 
}
body[data-theme="light"] .miniStatLabel span:last-child {
    color: #111827; 
}

body[data-theme="light"] .miniStatBar {
    background: #e5e7eb;
    border: 1px solid #d1d5db;
}

body[data-theme="light"] .statBarBox {
    background: rgba(255, 255, 255, 0.9);
    border-color: rgba(0,0,0,0.15);
    color: #111827;
}
body[data-theme="gold"] .miniStatLabel{color:var(--muted);}
body[data-theme="gold"] .miniStatLabel span:last-child{color:var(--line);}
body[data-theme="vintage"] .miniStatLabel{color:var(--muted);}
body[data-theme="vintage"] .miniStatLabel span:last-child{color:var(--line);}


body[data-theme="horror"] {
    --bg: #0f0202;
    --panel: #1a0505;
    --line: #e8cdd0;
    --muted: #8a5a5a;
    --stroke: #4a1a1a;
    --accent: #ff3333;
    --stage: #000000;
    --stageGrad1: #2a0a0a;
    --stageGrad2: #0f0202;
    --dialogueBg: rgba(20, 5, 5, 0.9);
    --chipBg: #2b0e0e;
    --msgBg: #180505;
    --sysBg: #2b0e0e;
    --inputBg: #0a0202;
    --headerBg: #150303;
    --tabBg: #220808;
    --tabBarBg: #150303;
    --btnBg: #2b0e0e;
    --btnText: #e8cdd0;
    --hoverBg: rgba(255, 50, 50, 0.15);
    --roomItemBg: var(--msgBg);
    --splitterBg: #1a0505;
    --bg-fallback: linear-gradient(135deg, #2a0a0a, #000000);
}

body[data-theme="horror"] .statWidget,
body[data-theme="horror"] .statBarBox,
body[data-theme="horror"] .hoDesc {
    background: rgba(20, 0, 0, 0.95) !important;
    border-color: #4a1a1a !important;
    color: #e8cdd0 !important;
    border: 1px solid #5a1a1a;
}

body[data-theme="horror"] .miniStatBar {
    background: #1a0505;
    border-color: #4a1a1a;
}

body[data-theme="horror"] .sceneWindow,
body[data-theme="horror"] .modalBox,
body[data-theme="horror"] .contextMenu,
body[data-theme="horror"] .bgmControls,
body[data-theme="horror"] .chatSuggestion,
body[data-theme="horror"] .userSelectBox,
body[data-theme="horror"] .charEdit {
    background: var(--panel) !important;
    border-color: var(--stroke) !important;
}

body[data-theme="horror"] .winHead,
body[data-theme="horror"] .modalHead {
    background: #150303 !important;
    border-bottom-color: var(--stroke) !important;
}

body[data-theme="horror"] .chatHeader,
body[data-theme="horror"] .chatTabs,
body[data-theme="horror"] .chatGroupInfo {
    background: #100202 !important;
    border-bottom-color: var(--stroke) !important;
}

body[data-theme="horror"] .winTitle,
body[data-theme="horror"] .modalTitle,
body[data-theme="horror"] .sceneName {
    color: #ff3333 !important;
}

body[data-theme="horror"] .chatTab {
    background: #1a0505;
    color: #8a5a5a;
    border-color: var(--stroke);
}

body[data-theme="horror"] .chatTab.active {
    background: var(--panel);
    color: #ff3333;
    border-bottom-color: var(--panel);
}

body[data-theme="horror"] .chatCharSelect,
body[data-theme="horror"] .chatBtn,
body[data-theme="horror"] .chatNameColorBtn,
body[data-theme="horror"] .iconBtn,
body[data-theme="horror"] .diceBtn,
body[data-theme="horror"] .btnMini {
    background: #2b0e0e !important;
    border-color: #4a1a1a !important;
    color: #e8cdd0 !important;
}

body[data-theme="horror"] .chatCharSelect option,
body[data-theme="horror"] .charItem,
body[data-theme="horror"] .textareaDark,
body[data-theme="horror"] .sceneItem,
body[data-theme="horror"] .faceItem {
    background: #1a0505 !important;
    border-color: #4a1a1a !important;
    color: #e8cdd0 !important;
}

body[data-theme="horror"] .msgProfile {
    background: #2b0e0e;
    border-color: #4a1a1a;
}

[data-theme="horror"] .msg.sys,
[data-theme="horror"] .msg.statMsg{
    border-left: 3px solid #ff3333 !important;
    background: rgba(60, 0, 0, 0.4) !important;
}

[data-theme="horror"] .msg[style*="border-left"]{
    border-left-width: 3px !important;
    border-left-style: solid !important;
}


body[data-theme="horror"] .send {
    background: #2b0e0e !important;
    border: 1px solid #5a1a1a !important;
    color: #ff3333 !important;
}

body[data-theme="horror"] .send:hover {
    background: #4a1a1a !important;
    box-shadow: 0 0 10px rgba(255, 0, 0, 0.2);
}

body[data-theme="horror"] * {
    scrollbar-color: #5a2a2a #1a0505;
}

body[data-theme="horror"] ::-webkit-scrollbar-track {
    background: #1a0505;
    border: 1px solid #2b0e0e;
}

body[data-theme="horror"] ::-webkit-scrollbar-thumb {
    background: #5a2a2a;
    border: 1px solid #1a0505;
}

body[data-theme="horror"] ::-webkit-scrollbar-thumb:hover {
    background: #8a3a3a;
}

body[data-theme="pink"] {
    --bg: #ffffff;
    --panel: #fff0f5;
    --line: #5e3a48;
    --muted: #a87ca0;
    --stroke: #f3d0d8;
    --accent: #ff69b4;
    --stage: #ffffff;
    --stageGrad1: #ffffff;
    --stageGrad2: #fffafa;
    --dialogueBg: rgba(255, 235, 240, 0.92);
    --chipBg: #ffffff;
    --msgBg: #ffffff;
    --sysBg: #fff0f5;
    --inputBg: #ffffff;
    --headerBg: #fff5f8;
    --tabBg: #fff0f5;
    --tabBarBg: #fff5f8;
    --btnBg: #ffffff;
    --btnText: #5e3a48;
    --hoverBg: rgba(255, 105, 180, 0.08);
    --roomItemBg: #ffffff;
    --splitterBg: #fff0f5;
    --bg-fallback: linear-gradient(135deg, #ffffff, #ffe4e1);


body[data-theme="pink"] {
    --bg: #ffffff;
    --stage: #ffffff;
    --stageGrad1: #ffffff;
    --stageGrad2: #fffafa; 
}

body[data-theme="pink"] .stage {
    background: var(--bg-fallback) !important;
    border-color: #f3d0d8 !important;
}
}

body[data-theme="pink"] .statWidget,
body[data-theme="pink"] .statBarBox,
body[data-theme="pink"] .hoDesc {
    background: rgba(255, 255, 255, 0.95) !important;
    border-color: #f3d0d8 !important;
    box-shadow: 0 4px 12px rgba(255, 182, 193, 0.3);
    color: #5e3a48 !important;
}

body[data-theme="pink"] .miniStatLabel {
    color: #885566 !important;
}

body[data-theme="pink"] .miniStatBar {
    background: #ffeef2;
    border-color: #f3d0d8;
}

body[data-theme="pink"] .sceneWindow,
body[data-theme="pink"] .modalBox,
body[data-theme="pink"] .contextMenu,
body[data-theme="pink"] .bgmControls,
body[data-theme="pink"] .faceMenu,
body[data-theme="pink"] .chatSuggestion,
body[data-theme="pink"] .userSelectBox,
body[data-theme="pink"] .charEdit {
    background: #ffffff !important;
    border-color: var(--stroke) !important;
    color: var(--line) !important;
}

body[data-theme="pink"] .winHead,
body[data-theme="pink"] .modalHead,
body[data-theme="pink"] .chatHeader,
body[data-theme="pink"] .chatTabs,
body[data-theme="pink"] .chatGroupInfo {
    background: #fff0f5 !important;
    border-bottom-color: var(--stroke) !important;
}

body[data-theme="pink"] .winTitle,
body[data-theme="pink"] .modalTitle {
    color: #d65a8d !important;
}

body[data-theme="pink"] .chatTab {
    background: #ffffff;
    color: #a87ca0;
    border-color: var(--stroke);
}

body[data-theme="pink"] .chatTab.active {
    background: #fff0f5;
    color: #ff69b4;
    border-bottom-color: #fff0f5;
}

body[data-theme="pink"] .chatCharSelect,
body[data-theme="pink"] .chatBtn,
body[data-theme="pink"] .chatNameColorBtn,
body[data-theme="pink"] .iconBtn,
body[data-theme="pink"] .diceBtn,
body[data-theme="pink"] .btnMini,
body[data-theme="pink"] .badgeLink {
    background: #ffffff !important;
    border-color: #f3d0d8 !important;
    color: #5e3a48 !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.03);
}

body[data-theme="pink"] .chatCharSelect option {
    background: #ffffff;
    color: #5e3a48;
}

body[data-theme="pink"] .btnMini:hover,
body[data-theme="pink"] .iconBtn:hover,
body[data-theme="pink"] .chatBtn:hover {
    background: #fff5f8 !important;
    border-color: #ff69b4 !important;
}

body[data-theme="pink"] .send {
    background: #ffb6c1 !important;
    color: #ffffff !important;
    border: 1px solid #ff69b4 !important;
}

body[data-theme="pink"] .send:hover {
    background: #ff69b4 !important;
}

body[data-theme="pink"] .msg.sys {
    background: #fffafc !important;
    border: 1px dashed #ffd1dc !important;
    color: #b08090 !important;
}

body[data-theme="pink"] .msg.statMsg {
    background: #fffafc !important;
    border: 1px solid #ffc0cb !important;
    border-left: 3px solid #ff69b4 !important;
    color: #5e3a48 !important;
}

body[data-theme="pink"] .msgProfile {
    background: #ffeef2;
    border-color: #f3d0d8;
}

body[data-theme="pink"] .charItem {
    background: #ffffff !important;
    border-color: var(--stroke) !important;
}

body[data-theme="pink"] .charThumb,
body[data-theme="pink"] .statAvatar {
    background: #fff0f5;
    border-color: #f3d0d8;
}

body[data-theme="pink"] .faceImg {
    background: #fff0f5 !important;
    border: 1px solid #f3d0d8;
    border-radius: 6px;
}

body[data-theme="pink"] .sceneItem,
body[data-theme="pink"] .faceItem {
    background: #ffffff !important;
    border-color: #f3d0d8 !important;
    color: #5e3a48 !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.03);
}

body[data-theme="pink"] .sceneName {
    color: #5e3a48 !important;
    font-weight: bold;
}

body[data-theme="pink"] .faceItem:hover,
body[data-theme="pink"] .sceneItem:hover {
    background: #fff5f8 !important;
    border-color: #ff69b4 !important;
}

body[data-theme="pink"] .textareaDark,
body[data-theme="pink"] .miniIn,
body[data-theme="light"] .textareaDark,
body[data-theme="light"] .miniIn,
body[data-theme="pink"] .input {
    background: #ffffff !important;
    border-color: var(--stroke) !important;
    color: var(--line) !important;
}

body[data-theme="pink"] .winMuted,
body[data-theme="pink"] .sectionTitle,
body[data-theme="pink"] .contextItem,
body[data-theme="pink"] .userSelectItem span,
body[data-theme="pink"] .chkField span,
body[data-theme="light"] .winMuted,
body[data-theme="light"] .sectionTitle {
    color: #5e3a48 !important;
}

body[data-theme="pink"] .contextItem:hover {
    background: #fff0f5 !important;
    color: #ff69b4 !important;
}

body[data-theme="pink"] * {
    scrollbar-color: #ffc0cb #fff0f5;
}

body[data-theme="pink"] ::-webkit-scrollbar-track {
    background: #fff0f5;
    border: 1px solid #fff;
}

body[data-theme="pink"] ::-webkit-scrollbar-thumb {
    background: #ffb6c1;
    border: 1px solid #fff;
    border-radius: 10px;
}

body[data-theme="pink"] ::-webkit-scrollbar-thumb:hover {
    background: #ff69b4;
}


body[data-theme="pink"] .statWidget,
body[data-theme="pink"] .statBarBox {
    background: rgba(255, 255, 255, 0.95) !important; 
    border-color: #f3d0d8 !important;     
    color: #5e3a48 !important;           
    box-shadow: 0 4px 12px rgba(255, 182, 193, 0.3) !important; 
}

body[data-theme="pink"] .miniStatLabel {
    color: #885566 !important;
}
body[data-theme="pink"] .miniStatBar {
    background: #ffeef2 !important;
    border: 1px solid #f3d0d8 !important;
}

body[data-theme="pink"] {
    --bg-fallback: linear-gradient(135deg, #fff7fb, #ffe4ee) !important;
}

body[data-theme="pink"] .bg {
    background-color: transparent !important;
}


.winTabHead { display: flex; border-bottom: 1px solid var(--stroke); background: var(--headerBg); }
.winTabBtn { flex: 1; padding: 10px; border: none; background: transparent; color: var(--muted); cursor: pointer; font-weight: 700; transition: 0.2s; border-bottom: 2px solid transparent; }
.winTabBtn:hover { color: var(--line); background: var(--hoverBg); }
.winTabBtn.active { color: var(--accent); border-bottom-color: var(--accent); background: var(--panel); }
.winTabContent { display: none; padding: 12px; }
.winTabContent.active { display: block; }

.decoContainer { position: absolute; inset: 0; overflow: visible; pointer-events: none; z-index: 4; }
.decoItem {
    position: absolute;
    pointer-events: none;
    user-select: none;
    transform-origin: center center;
}
.decoItem img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    pointer-events: none;
    display: block;
}

.decoRotateHandle{
    position:absolute;
    width:20px;
    height:20px;
    margin-left:-10px;
    margin-top:-10px;
    border-radius:999px;
    border:1px solid var(--accent);
    background:rgba(15,20,29,0.92);
    box-shadow:0 4px 10px rgba(0,0,0,0.28);
    display:flex;
    align-items:center;
    justify-content:center;
    pointer-events:none;
    z-index:2;
    opacity:0;
    visibility:hidden;
}
.decoRotateHandle::before{
    content:'↻';
    font-size:11px;
    line-height:1;
    color:var(--accent);
    font-weight:700;
}
.decoRotateHandle[data-corner="nw"]{ left:0; top:0; }
.decoRotateHandle[data-corner="ne"]{ left:100%; top:0; }
.decoRotateHandle[data-corner="sw"]{ left:0; top:100%; }
.decoRotateHandle[data-corner="se"]{ left:100%; top:100%; }

.decoContainer.editing { pointer-events: auto; }
.decoItem.editing { pointer-events: auto; cursor: grab; border: 1px dashed rgba(255,255,255,0.3); }
.decoItem.editing:hover { border-color: var(--accent); background: rgba(106,168,255,0.1); }
.decoContainer.hasSelectedDeco .decoItem.editing:not(.selected):hover { border-color: rgba(255,255,255,0.3); background: transparent; }
.decoItem.editing.dragging { cursor: grabbing; opacity: 0.9; }
.decoItem.editing.rotating { cursor: grabbing; opacity: 0.98; }
.decoItem.editing.selected { border: 1px solid var(--accent); }

.decoItem.editing[data-rotate-corner="nw"] .decoRotateHandle[data-corner="nw"],
.decoItem.editing[data-rotate-corner="ne"] .decoRotateHandle[data-corner="ne"],
.decoItem.editing[data-rotate-corner="sw"] .decoRotateHandle[data-corner="sw"],
.decoItem.editing[data-rotate-corner="se"] .decoRotateHandle[data-corner="se"]{
    opacity:1;
    visibility:visible;
}


.decoListItem { display: flex; align-items: center; justify-content: space-between; padding: 6px; border: 1px solid var(--stroke); background: var(--msgBg); margin-bottom: 4px; border-radius: 6px; cursor: grab; transition: background 0.2s, transform 0.2s, border-color 0.2s, box-shadow 0.2s; }
.decoListItem.selected { border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent); background: rgba(106,168,255,0.08); }
.decoListItem.dragging { opacity: 0.5; background: var(--accent); transform: scale(0.98); }
.decoListItem.drag-over { border-bottom: 2px solid var(--accent); }
.decoThumb { width: 32px; height: 32px; object-fit: cover; border-radius: 4px; background: #000; margin-right: 8px; }
.decoName { font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 120px; }

#tokens.stageTokens { z-index: 500 !important; }
#tokensBack.stageTokens { z-index: 1 !important; }
#handouts { z-index: 600 !important; }
.stands { z-index: 700 !important; position: absolute !important; inset: 0 !important; display: flex !important; align-items: flex-end !important; justify-content: space-between !important; padding: 14px 14px 160px 14px !important; pointer-events: none !important; }
@media (max-width:980px) and (pointer:coarse){
  .stands{
    padding:6px 8px 16px 8px !important;
  }
  .stand{
    max-width:49% !important;
    max-height:88% !important;
    object-position:center bottom !important;
  }
  .dialogue{
    left:8px !important;
    right:8px !important;
    bottom:8px !important;
    min-height:150px !important;
    padding:12px 12px 14px !important;
    gap:8px !important;
  }
  .speaker{
    min-height:22px !important;
    font-size:15px !important;
    line-height:1.25 !important;
  }
  .line{
    font-size:16px !important;
    line-height:1.45 !important;
    min-height:58px !important;
  }
}
body[data-standpos="left"] .stands,.stands[data-standpos="left"]{justify-content:flex-start !important;}
body[data-standpos="center"] .stands,.stands[data-standpos="center"]{justify-content:center !important;}
body[data-standpos="right"] .stands,.stands[data-standpos="right"]{justify-content:flex-end !important;}

.dialogue { z-index: 800 !important; position: absolute !important; }
.onScreenStats { z-index: 900 !important; }

.invWin {
    position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 340px; max-height: 80vh;
    background: var(--panel); border: 1px solid var(--stroke);
    border-radius: 12px; z-index: 10050; display: flex; flex-direction: column;
    box-shadow: 0 10px 30px rgba(0,0,0,0.5);
}
.invBody { padding: 10px; overflow-y: auto; flex: 1; display: flex; flex-direction: column; gap: 6px; }
.invItem {
    display: flex; gap: 8px; padding: 8px;
    background: var(--btnBg); border: 1px solid var(--stroke);
    border-radius: 8px; align-items: center;
}
.invItemImg {
    width: 40px; height: 40px; border-radius: 6px; background: #000;
    object-fit: cover; border: 1px solid var(--stroke); flex-shrink: 0;
}
.invItemInfo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.invItemName { font-weight: bold; font-size: 13px; color: var(--line); }
.invItemEffect { font-size: 11px; color: var(--accent); }
.invItemDesc { font-size: 11px; color: var(--muted); }
.invActions { display: flex; flex-direction: column; gap: 4px; }
#skillWin .invActions{display:flex;flex-direction:row;gap:6px;flex-wrap:wrap;align-items:center}
#skillWin .invActions .btnMini{padding:4px 8px;font-size:11px;line-height:1}
#skillWin .skillHint{font-size:11px;color:var(--muted);opacity:.85;margin-top:2px}


.invWin {
    position: fixed;          
    top: 50%; 
    left: 50%; 
    transform: translate(-50%, -50%); 
    
    width: 360px; 
    max-height: 80vh;    
    
    background: var(--panel);  
    border: 1px solid var(--stroke);
    border-radius: 12px; 
    
    z-index: 20000 !important; 
    
    display: flex; 
    flex-direction: column;
    box-shadow: 0 10px 40px rgba(0,0,0,0.6); 
    overflow: hidden;
}

.invWin.hidden {
    display: none !important;
}

.invBody { 
    padding: 10px; 
    overflow-y: auto; 
    flex: 1; 
    display: flex; 
    flex-direction: column; 
    gap: 6px; 
}

.invItem {
    display: flex; 
    gap: 8px; 
    padding: 8px;
    background: var(--btnBg); 
    border: 1px solid var(--stroke);
    border-radius: 8px; 
    align-items: center;
}
.invItemImg {
    width: 40px; 
    height: 40px; 
    border-radius: 6px; 
    background: #000;
    object-fit: cover; 
    border: 1px solid var(--stroke); 
    flex-shrink: 0;
}
.invItemInfo { 
    flex: 1; 
    min-width: 0; 
    display: flex; 
    flex-direction: column; 
    gap: 2px; 
}
.invItemName { font-weight: bold; font-size: 13px; color: var(--line); }
.invItemEffect { font-size: 11px; color: var(--accent); }
.invItemDesc { font-size: 11px; color: var(--muted); }
.invActions { display: flex; flex-direction: column; gap: 4px; }

.invItemImg {
    background-color: var(--inputBg) !important; 
    border-color: var(--stroke) !important;
}

.sceneItem, .invItem {
    background-color: var(--btnBg) !important;
    border-color: var(--stroke) !important;
    color: var(--line) !important;
}

.roomEmpty {
    background: transparent !important;
    color: var(--muted) !important;
    border: none !important;
}


.tokenX {
    background-color: var(--btnBg) !important;
    color: var(--line) !important;
    border: 1px solid var(--stroke) !important;
}
.tokenX:hover {
    background-color: var(--hoverBg) !important;
    color: #ff5555 !important; 
}

.hoDesc {
    background-color: var(--panel) !important;
    color: var(--line) !important;
    border: 1px solid var(--stroke) !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.5);
}

#diceLayer {
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    pointer-events: none;
    z-index: 9000;
    perspective: 800px; 
    display: flex;
    align-items: center;
    justify-content: center;
}

.dice-cube {
    width: 100px; height: 100px;
    position: relative;
    transform-style: preserve-3d;
  
    animation: dice-tumble 1.2s cubic-bezier(0.1, 0.7, 0.1, 1) forwards;
}

.dice-face {
    position: absolute;
    width: 100%; height: 100%;
    background: linear-gradient(135deg, var(--panel) 0%, var(--bg) 100%);
    border: 3px solid var(--stroke);
    color: var(--line);
    font-size: 42px;
    font-weight: 900; 
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px; 
    box-shadow: inset 0 0 20px rgba(0,0,0,0.5); 
    backface-visibility: hidden; 
}

.dice-face.front { 
    transform: translateZ(50px);
    background: linear-gradient(135deg, var(--btnBg) 0%, var(--panel) 100%);
    color: var(--accent);
    text-shadow: 0 0 10px var(--accent);
}

.dice-face.back   { transform: rotateY(180deg) translateZ(50px); filter: brightness(0.7); }
.dice-face.right  { transform: rotateY(90deg) translateZ(50px);  filter: brightness(0.8); }
.dice-face.left   { transform: rotateY(-90deg) translateZ(50px); filter: brightness(0.8); }
.dice-face.top    { transform: rotateX(90deg) translateZ(50px);  filter: brightness(0.9); }
.dice-face.bottom { transform: rotateX(-90deg) translateZ(50px); filter: brightness(0.6); }

@keyframes dice-tumble {
    0% {
        opacity: 0;
        transform: translate3d(0, -500px, -2000px) rotateX(720deg) rotateY(1080deg) rotateZ(-360deg);
    }
    20% { opacity: 1; }
    80% {
        transform: translate3d(0, 0, -200px) rotateX(40deg) rotateY(60deg);
    }
    100% {
        transform: translate3d(0, 0, 0) rotateX(0deg) rotateY(0deg) rotateZ(0deg);
    }
}

.dice-fadeout {
    transition: opacity 0.5s ease-out, transform 0.5s ease-in;
    opacity: 0 !important;
    transform: scale(0.8) translateY(50px) !important; 
}
.msg.skillSay{
  position: relative;
  overflow: visible;

  border: 1px solid rgba(255, 214, 120, 0.82) !important;
  background: linear-gradient(135deg,
    rgba(255, 214, 120, 0.18),
    rgba(255, 160,  20, 0.10)
  ) !important;

  box-shadow:
    0 10px 22px rgba(0,0,0,0.25),
    0 0 0 1px rgba(0,0,0,0.10) inset
  !important;
}

.msg.skillSay{
  position: relative;
  overflow: visible;
  border-left: 0 !important;
  outline: 0 !important;
  border: 1px solid rgba(255, 214, 120, 0.82) !important;
  background: linear-gradient(135deg, rgba(255,214,120,0.18), rgba(255,160,20,0.10)) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,0.25), 0 0 0 1px rgba(0,0,0,0.10) inset !important;
}

.msg.skillSay .msgContent .text{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  font-weight: 700;
}

.msg.skillSay .msgContent .text::before{
  content: none !important;
}


.tabLog,
.log,
.logContainer{
  scroll-behavior: auto !important;
}

.skillLineBig{
  font-size: 22px !important;
  font-weight: 900 !important;
  letter-spacing: 0.2px;
  text-shadow:
    0 0 12px rgba(255,210,120,0.22),
    0 2px 16px rgba(0,0,0,0.35);
}

.fxSkillLine{
  animation: fxSkillLinePulse 0.65s ease-out 1;
}
@keyframes fxSkillLinePulse{
  0%   { transform: translateY(2px) scale(0.98); opacity: 0.92; filter: blur(0.2px); }
  40%  { transform: translateY(-1px) scale(1.06); opacity: 1;   filter: blur(0px);   }
  100% { transform: translateY(0px) scale(1.00); opacity: 1;   filter: blur(0px);   }
}

.fxSkillStand{
  transform-origin: 50% 85%;
  will-change: transform, filter;
  animation:
    fxSkillStandJolt 0.55s cubic-bezier(.2,.85,.25,1) 1,
    fxSkillStandGhost 0.75s ease-out 1;
}
@keyframes fxSkillStandJolt{
  0%   { transform: translate(0,0) rotate(0deg) scale(1); }
  18%  { transform: translate(-3px, 3px) rotate(-0.1deg) scale(1.05); }
  42%  { transform: translate( 3px,-3px) rotate( 0.1deg) scale(1.05); }
  100% { transform: translate(0,0) rotate(0deg) scale(1); }
}

@keyframes fxSkillStandGhost{
  0%{
    filter:
      drop-shadow(0 0 0 rgba(255,210,120,0))
      drop-shadow(0 0 0 rgba(255,210,120,0))
      drop-shadow(0 0 0 rgba(255,210,120,0));
  }
  35%{
    filter:
      drop-shadow(14px 0 20px rgba(255,210,120,0.26))
      drop-shadow(-14px 0 20px rgba(255,210,120,0.22))
      drop-shadow(0 0 26px rgba(255,210,120,0.16));
  }
  70%{
    filter:
      drop-shadow(20px 0 26px rgba(255,210,120,0.14))
      drop-shadow(-20px 0 26px rgba(255,210,120,0.12))
      drop-shadow(0 0 18px rgba(255,210,120,0.10));
  }
  100%{
    filter:
      drop-shadow(0 0 0 rgba(255,210,120,0))
      drop-shadow(0 0 0 rgba(255,210,120,0))
      drop-shadow(0 0 0 rgba(255,210,120,0));
  }
}


.fxScreenShake{
  will-change: transform;
  animation: fxScreenShake 0.38s ease-in-out 1;
}

@keyframes fxScreenShake{
  0%   { transform: translate3d(0,0,0); }
  12%  { transform: translate3d(-2px, 1px, 0); }
  24%  { transform: translate3d( 2px,-1px, 0); }
  36%  { transform: translate3d(-3px, 2px, 0); }
  52%  { transform: translate3d( 2px, 1px, 0); }
  68%  { transform: translate3d(-1px,-1px, 0); }
  84%  { transform: translate3d( 1px, 0px, 0); }
  100% { transform: translate3d(0,0,0); }
}

@media (prefers-reduced-motion: reduce){
  .fxScreenShake{ animation: none !important; }
}

.hostDelegateBox{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:12px;
  border:1px dashed var(--stroke);
  border-radius:12px;
  background:rgba(0,0,0,.08);
}
.hostDelegateTitle{
  font-weight:700;
  color:var(--line);
  font-size:13px;
}
.hostDelegateRow{
  display:flex;
  gap:8px;
  align-items:center;
}
.hostDelegateRow select{
  flex:1;
  min-width:0;
  padding:10px;
  border-radius:10px;
  border:1px solid var(--stroke);
  background:var(--panel);
  color:var(--line);
}
.hostDelegateHint{
  opacity:.65;
  font-size:12px;
  color:var(--muted);
  text-align:center;
}


.chatFxBar{
  display:flex;
  gap:4px 2px;
  align-items:center;
  flex-wrap:wrap;
  margin:4px 8px 4px 8px;
  padding:4px 0 0 0;
  background:transparent;
  border:none;
  border-radius:0;
  border-top:1px solid var(--stroke);
}
.chatFxBtn{
  padding:4px 6px;
  border-radius:8px;
  border:1px solid var(--stroke);
  background:transparent;
  color:var(--line);
  font-weight:800;
  font-size:10px;
  cursor:pointer;
  line-height:1;
  opacity:.9;
}

.chatFxBtn:hover{filter:brightness(1.08);opacity:1;}
.chatFxBtn:active{transform:scale(.98);}

.chatFxBtn.active{border-color:rgba(106,168,255,.9);box-shadow:0 0 0 2px rgba(106,168,255,.18) inset;}
.chatGmLabel{
  display:inline-flex;
  align-items:center;
  padding:0 6px 0 0;
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}
.chatFmtBar{border-top:none;margin-top:0;padding-top:0;position:relative;}
.chatFmtToggleBtn{margin-left:auto;}

.chatSizeMenu{position:absolute;right:8px;bottom:calc(100% + 6px);display:flex;gap:4px;align-items:center;padding:6px;background:var(--panel);border:1px solid var(--stroke);border-radius:12px;box-shadow:0 10px 24px rgba(0,0,0,.25);z-index:50;}
.chatSizeBtn{min-width:30px;}
.fs-12{font-size:12px;}
.fs-14{font-size:14px;}
.fs-16{font-size:16px;}
.fs-18{font-size:18px;}
.fs-20{font-size:20px;}
.fs-24{font-size:24px;}


.msg.narrSay .msgContent .text,.msg.thinkSay .msgContent .text,.msg.noteSay .msgContent .text,.msg.shoutSay .msgContent .text,.msg.skillSay .msgContent .text{background:transparent!important;border:none!important;box-shadow:none!important;}
.msg.skillSay .msgContent .text::before{content:none!important;display:none!important;}
.msg.skillSay{border:1px solid rgba(255,220,120,.55)!important;background:rgba(255,220,120,.14)!important;border-radius:12px!important;padding:10px 12px!important;box-shadow:0 10px 24px rgba(0,0,0,.18),0 0 0 1px rgba(0,0,0,.10) inset;}

.msg.narrSay{border:1px solid rgba(255,255,255,.22)!important;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(0,0,0,.22))!important;border-radius:14px!important;padding:12px 14px!important;box-shadow:0 12px 26px rgba(0,0,0,.18),0 0 0 1px rgba(0,0,0,.10) inset;backdrop-filter:blur(8px);}
.msg.narrSay .msgContent .text{font-style:italic;opacity:.96;}

.msg.thinkSay{border:2px dotted rgba(180,220,255,.55)!important;background:rgba(180,220,255,.10)!important;border-radius:999px!important;padding:12px 16px!important;box-shadow:0 12px 22px rgba(0,0,0,.16);}
.msg.thinkSay .msgContent .text{font-style:italic;}

.msg.noteSay{
  position:relative;
  border:1px solid rgba(0,0,0,0.18) !important;

  background:
    repeating-linear-gradient(
  180deg,
  rgba(0,0,0,0) 0px,
  rgba(0,0,0,0) 21px,
rgba(0,0,0,0.12) 21px,
rgba(0,0,0,0.12) 22px

),

    linear-gradient(180deg, rgba(255,252,220,0.98), rgba(255,245,200,0.95)) !important;

  border-radius:12px !important;
  padding:12px 14px !important;
  box-shadow:0 12px 22px rgba(0,0,0,0.14),0 0 0 1px rgba(0,0,0,0.08) inset;
}

.msg.noteSay::before{
  content:'';
  position:absolute;
  top:8px;
  bottom:8px;
  left:56px;
  width:2px;
  background:rgba(255,80,80,0.55);
  border-radius:2px;
  pointer-events:none;
}

.msg.noteSay .meta,
.msg.noteSay .name,
.msg.noteSay .time,
.msg.noteSay .text{
  color:#111 !important;
}

.msg.noteSay .msgContent .text{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  font-size:13px;
line-height:17px;

  padding-top:0px; 
  white-space:pre-wrap;
}



.msg.shoutSay::before,
.msg.shoutSay::after{
  content:none !important;
  display:none !important;
}

.msg.shoutSay{
  position:relative;
  background: url("msg.png") center/100% 100% no-repeat !important;
  border:none !important;
  
  padding: 22px 26px !important;

  overflow: visible;
}

.msg.shoutSay .msgContent,
.msg.shoutSay .msgContent .text{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

.msg.shoutSay .meta,
.msg.shoutSay .name,
.msg.shoutSay .time,
.msg.shoutSay .text{
  color:#111 !important;
}

.msg.shoutSay .msgContent .text{
  font-size:15px;
  font-weight:900;
  letter-spacing:.2px;
  line-height:1.35;
}

.msg.phoneSay {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 10px !important; 
    position: relative !important;
   
    width: auto !important;
    min-width: 140px !important; 
    max-width: 100% !important;
    margin-top: 15px !important; 
    margin-bottom: 8px !important; 
    
    background-color: #f8f8f8 !important; 
    background-image: radial-gradient(#d0d0d0 1px, transparent 1px) !important;
    background-size: 4px 4px !important;

    border: 3px double #444 !important; 
    border-radius: 6px !important;   

    padding: 18px 12px 10px 12px !important;
    
    box-shadow: 2px 2px 0px rgba(0,0,0,0.1) !important; 
    box-sizing: border-box !important;
}

.msg.phoneSay::before {
    content: '🔊 AUDIO TRANSMISSION'; 
    display: block;
    position: absolute;
    top: -10px; 
    left: 50%;
    transform: translateX(-50%);

    background: #222; 
    color: #ccff00 !important; 
    
    font-size: 9px !important; 
    font-weight: bold;
    padding: 2px 8px !important; 
    border-radius: 10px;
    font-family: 'Courier New', monospace;
    letter-spacing: 0px; 
    border: 1px solid #000;
    z-index: 1;
    
    white-space: nowrap !important; 
}

.msg.phoneSay .content {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
}

.msg.phoneSay .meta {
    margin-bottom: 4px !important;
    border-bottom: 1px solid #bbb !important;
    padding-bottom: 2px !important;
    width: 100% !important;
}
.msg.phoneSay .name {
    color: #333 !important;
    font-weight: 900 !important;
    font-size: 13px !important; 
    font-family: 'Courier New', monospace !important;
}
.msg.phoneSay .time {
    color: #777 !important;
    font-size: 10px !important; 
    font-family: 'Courier New', monospace !important;
}

.msg.phoneSay .text {
    color: #111 !important;
    font-family: 'Courier New', monospace !important;
    font-size: 13.5px !important; 
    line-height: 1.4 !important;
    
    background: none !important;
    border: none !important;
    padding: 0 !important;
    font-weight: 600 !important;
    width: 100% !important;
    white-space: pre-wrap !important;
}
.msg.hackerSay {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 15px !important;
    
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-bottom: 12px !important;

    background-color: #000 !important;
    border: 2px solid #00eaff !important;
    border-radius: 6px !important;
    
    padding: 40px 15px 15px 15px !important;
    
    position: relative !important;
    
    background-image: repeating-linear-gradient(
        to bottom,
        transparent 0px,
        transparent 2px,
        rgba(0, 234, 255, 0.05) 2px,
        rgba(0, 234, 255, 0.05) 4px
    ) !important;
    box-shadow: 0 0 15px rgba(0, 234, 255, 0.2), inset 0 0 20px rgba(0, 234, 255, 0.05) !important;
    box-sizing: border-box !important;
}

.msg.hackerSay::after {
    content: '📶 ENCRYPTED TRANSMISSION';
    position: absolute;
    top: 5px;
    left: 8px;
    font-family: 'Courier New', monospace;
    font-size: 10px;
    color: rgba(0, 234, 255, 0.5);
    letter-spacing: 1px;
    pointer-events: none;
}

.msg.hackerSay::before {
    content: '';
    position: absolute;
    top: 28px;         
    left: 10px;         
    right: 10px;       
    height: 1px;
    border-top: 1px dashed rgba(0, 234, 255, 0.4); 
    pointer-events: none;
}

.msg.hackerSay .avatar-box,
.msg.hackerSay .msgProfile {
    margin: 0 !important; 
    flex-shrink: 0;
    width: 50px !important;
    height: 50px !important;
    border: 1px solid #00eaff !important;
    border-radius: 0 !important;
    box-shadow: 0 0 5px rgba(0, 234, 255, 0.5);
    background: #000 !important;
}
.msg.hackerSay img { opacity: 0.9; }

.msg.hackerSay .content, 
.msg.hackerSay .msgContent {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
}

.msg.hackerSay .content > div:first-child,
.msg.hackerSay .msgContent .meta {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    
    border-bottom: none !important; 
    padding-bottom: 0 !important;  
    
    margin-bottom: 8px !important;
    width: 100% !important;
}

.msg.hackerSay .name {
    font-family: 'Courier New', monospace !important;
    color: #00eaff !important;
    font-weight: bold !important;
    text-shadow: 0 0 5px rgba(0, 234, 255, 0.5);
}
.msg.hackerSay .time {
    font-family: 'Courier New', monospace !important;
    color: rgba(0, 234, 255, 0.6) !important;
}
.msg.hackerSay .text {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    font-family: 'Courier New', monospace !important;
    color: #00eaff !important; 
    font-size: 15px !important;
    line-height: 1.5 !important;
    text-shadow: 0 0 2px rgba(0, 234, 255, 0.3);
    width: 100% !important;
    white-space: pre-wrap !important;
}

.msg .content > div:first-child {
    display: flex !important;
    flex-wrap: nowrap !important;   
    align-items: center !important;
    width: 100% !important;
    gap: 4px !important;        
}

.msg .name,
.msg .time {
    white-space: nowrap !important;
    overflow: visible !important;   
    text-overflow: clip !important; 
    flex-shrink: 0 !important;      
    max-width: none !important;
}
.msg .name:empty{display:none!important;}

.msg .time {
    margin-left: auto !important;  
    margin-right: 2px !important;  
    flex-shrink: 0 !important;
}


.msg button {
    white-space: nowrap !important; 
    flex-shrink: 0 !important;      
   
    font-size: 9px !important;      
    padding: 0px 4px !important;    
    height: 18px !important;        
    line-height: 16px !important;   
    min-width: 24px !important;    
    letter-spacing: -0.5px !important;
    border-width: 1px !important;
    
    margin: 0 !important;
    vertical-align: middle !important;
}

.msg .menu {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 2px !important;
    align-items: center !important;
}


body[data-theme="pink"] .msg.narrSay {
    background: rgba(255, 245, 250, 0.95) !important;

    border: 1px solid #ffc0cb !important;

    box-shadow:
        0 12px 24px rgba(255, 105, 180, 0.25),  
        0 0 0 1px rgba(255, 192, 203, 0.4) inset 
        !important;
    
    color: #5e3a48 !important;
}

body[data-theme="pink"] .msg.narrSay .text {
    opacity: 1 !important;
}

body[data-theme="light"] .chatSuggestion {
    background: #ffffff !important;       
    border-color: rgba(0,0,0,0.15) !important;
    box-shadow: 0 -4px 15px rgba(0,0,0,0.1) !important;
}

body[data-theme="light"] .suggItem {
    color: #111111 !important;          
    border-bottom: 1px solid #f0f0f0 !important; 
}

body[data-theme="light"] .suggItem:hover {
    background: #f3f4f6 !important;       
    color: #0055ff !important;         
}
body[data-theme="pink"] .chatSuggestion {
    background: #ffffff !important;     
    border: 1px solid #f3d0d8 !important; 
    box-shadow: 0 4px 12px rgba(255, 182, 193, 0.4) !important;
}

body[data-theme="pink"] .suggItem {
    color: #5e3a48 !important;      
    border-bottom: 1px solid #fff0f5 !important; 
}

body[data-theme="pink"] .suggItem:hover {
    background: #fff0f5 !important;    
    color: #ff69b4 !important; 
}

.miniGameList{display:flex;flex-direction:column;gap:8px;}
.miniGameHint{margin-top:10px;font-size:12px;opacity:.8;}
.rpsStatus{font-size:12px;opacity:.9;margin-bottom:10px;}
.rpsUI .rpsBlock{display:flex;flex-direction:column;gap:10px;}
.rpsUI .rpsRow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.rpsUI .inputMini{padding:8px 10px;border:1px solid var(--stroke);border-radius:10px;background:var(--panel);color:var(--line);min-width:160px;}
.rpsUI .rpsNote{font-size:12px;opacity:.75;}
.rpsUI .rpsResult{font-size:16px;font-weight:800;}

.gmkStatus{font-size:12px;opacity:.9;margin-bottom:8px;}
.gmkUI .gmkBlock{display:flex;flex-direction:column;gap:8px;margin-bottom:10px;}
.gmkUI .gmkRow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.gmkUI .gmkLine{font-size:12px;opacity:.95;}
.gmkUI .gmkResult{font-size:16px;font-weight:800;}
.gmkBoard{position:relative;width:481px;height:481px;background:url('board.png') center/481px 481px no-repeat;border-radius:8px;box-shadow:0 0 12px rgba(200,150,255,0.4);user-select:none;margin:0 auto;}
.gmkStone{position:absolute;width:24px;height:24px;border-radius:50%;box-shadow:0 2px 6px rgba(0,0,0,0.25);}
.gmkStone.black{background:#111;}
.gmkStone.white{background:#f7f7f7;border:1px solid rgba(0,0,0,0.2);}
#gomokuWin{width:540px;}
#gomokuWin .sceneBody{max-height:none;overflow:visible;}
#gomokuWin .winHead{touch-action:none;cursor:move;}

#gmkBoard.gmkBoard{
  position:relative;
  width:481px;
  height:481px;
  background:url('board.png') no-repeat;
  background-size:100% 100%;
  background-position:center;
  user-select:none;
  touch-action:manipulation;
}
.gmkStone{
  position:absolute;
  width:28px;
  height:28px;
  border-radius:50%;
  transform:translate(-50%,-50%);
  box-shadow:0 1px 2px rgba(0,0,0,.35);
}
.gmkStone.black{background:#111;}
.gmkStone.white{background:#f4f4f4;border:1px solid rgba(0,0,0,.35);}
.gmkStone.last{z-index:3;}
.gmkStone.last::after{content:'';position:absolute;left:-4px;top:-4px;right:-4px;bottom:-4px;border:2px solid var(--accent);border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.35);pointer-events:none;}


#slotWin{width:500px;max-width:calc(100vw - 40px);}
#slotWin .sceneBody{overflow-x:hidden;}
#slotWin .slotBetsTable{grid-template-columns:minmax(0,1fr) 70px 70px 60px 70px 80px; column-gap:6px;}

#slotWin .slotBetsTable>div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}


.slotStatus{font-size:12px;opacity:.92;margin:0 0 8px 0;}
.slotReels{display:flex;justify-content:center;gap:10px;margin:6px 0 10px 0;}
.slotReel{width:60px;height:60px;display:flex;align-items:center;justify-content:center;font-size:38px;background:rgba(0,0,0,0.25);border:1px solid var(--stroke);border-radius:12px;box-shadow:inset 0 6px 16px rgba(0,0,0,0.25);}
.slotCtrl{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center;margin-top:6px;}
.slotCtrl .slotLabel{font-size:12px;opacity:.92;}
.slotMsg{margin-top:8px;text-align:center;font-size:12px;opacity:.95;}


.slotReelsWrap{display:flex;align-items:center;justify-content:center;gap:14px;margin:6px 0 10px 0;flex-wrap:nowrap;}
.slotLever{display:inline-flex;align-items:center;justify-content:center;font-size:40px;line-height:1;cursor:pointer;user-select:none;transform-origin:center center;}
.slotLever.spinning{transform:rotate(-15deg) scale(1.05);}
.slotLever.finished{opacity:.55;filter:grayscale(1);}

.slotBetsWrap{margin:10px 0 0 0;padding:10px;border:1px solid var(--stroke);border-radius:12px;background:rgba(0,0,0,0.10);}
.slotBetsTitle{font-size:12px;opacity:.92;margin:0 0 6px 0;}
.slotBetsTable{display:grid;grid-template-columns:1fr 70px 70px 70px 70px 90px;gap:4px 6px;font-size:12px;align-items:center;}
.slotBetsHead{margin-bottom:6px;opacity:.8;}
.slotBetsTable .h{font-weight:600;}

#slotWin{box-sizing:border-box;overflow-x:hidden;}
#slotWin .sceneBody{overflow-x:hidden;}
#slotWin .slotBetsTable{overflow-x:hidden;display:grid;grid-template-columns:minmax(0,1fr) 70px 70px 60px 70px 80px;column-gap:6px;}

#slotWin .slotBetsTable>div{min-width:0;overflow:hidden;text-overflow:ellipsis;}
.slotBetsTable>div:nth-child(6n+1){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#slotWin .slotResultsTable>div:nth-child(4n+2){white-space:nowrap;}

.slotBetsTable>div{min-width:0;}
.slotBetsTable>div:nth-child(6n+1){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.slotBetsTable .h{white-space:nowrap;}

.slotGmCtrl{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.slotResults{margin-top:10px;padding:10px;border:1px solid var(--stroke);border-radius:12px;background:rgba(0,0,0,0.10);}
.slotResults.hidden{display:none;}
.slotResultsTitle{font-size:12px;font-weight:700;opacity:.95;margin:0 0 6px 0;}
.slotResultsEmpty{font-size:12px;opacity:.75;}
.slotResultsTable{display:grid;grid-template-columns:60px minmax(0,1fr) 110px 110px;gap:4px 10px;font-size:12px;align-items:center;opacity:.95;}
.slotResultsTable .h{font-weight:600;opacity:.8;}
.slotResultsTable>div{min-width:0;}
.slotResultsTable>div:nth-child(4n+2){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.slotResultsTable .h{white-space:nowrap;}

.roomTitle{font-weight:800;white-space:normal;overflow:visible;max-width:520px;word-break:break-word;}
.stageRoomTitle{font-weight:900;color:var(--line);white-space:normal;overflow:visible;max-width:420px;word-break:break-word;}

.lobbyTitle{font-size:28px;font-weight:900;margin:0 0 10px 0;text-align:center;}
.roomList{max-height:min(78vh,760px);}
@media (max-width:560px){
.roomItem{grid-template-columns:64px minmax(0,1fr);align-items:center;}
.roomSide{grid-column:1 / -1;flex-direction:row;justify-content:space-between;align-items:center;gap:10px;}
.roomBtns{justify-content:flex-end;}
.roomMetaRight{max-width:none;}
}



body[data-theme="gold"]{
--bg-fallback:linear-gradient(135deg,#fff7e1,#f2e4bf);
--bg:#fbf6e6;
--panel:#ffffffcc;
--line:#141414;
--muted:#6b6254;
--stroke:rgba(80,60,10,0.20);
--accent:#d4af37;
--stage:#fffdf5;
--stageGrad1:#fff7e1;
--stageGrad2:#f2e4bf;
--dialogueBg:rgba(255,255,255,0.86);
--chipBg:rgba(212,175,55,0.12);
--msgBg:rgba(0,0,0,0.04);
--sysBg:rgba(0,0,0,0.03);
--inputBg:rgba(0,0,0,0.03);
--headerBg:rgba(0,0,0,0.03);
--tabBg:rgba(0,0,0,0.03);
--tabBarBg:rgba(255,255,255,0.70);
--btnBg:rgba(0,0,0,0.04);
--btnText:#141414;
--hoverBg:rgba(212,175,55,0.18);
--roomItemBg:rgba(0,0,0,0.03);
--splitterBg:rgba(0,0,0,0.05);
}
body[data-theme="black"]{
--bg-fallback:linear-gradient(135deg,#000000,#0a0a0a);
--bg:#000000;
--panel:#0b0b0bcc;
--line:#ffffff;
--muted:#b8b8b8;
--stroke:rgba(255,255,255,0.18);
--accent:#ffffff;
--stage:#000000;
--stageGrad1:#050505;
--stageGrad2:#000000;
--dialogueBg:rgba(0,0,0,0.70);
--chipBg:rgba(255,255,255,0.10);
--msgBg:rgba(255,255,255,0.06);
--sysBg:rgba(255,255,255,0.05);
--inputBg:rgba(255,255,255,0.06);
--headerBg:rgba(255,255,255,0.05);
--tabBg:rgba(255,255,255,0.06);
--tabBarBg:rgba(0,0,0,0.60);
--btnBg:rgba(255,255,255,0.08);
--btnText:#ffffff;
--hoverBg:rgba(255,255,255,0.12);
--roomItemBg:rgba(255,255,255,0.05);
--splitterBg:rgba(255,255,255,0.06);
}


:root{--accentText:#ffffff;--accentSoft:rgba(106,168,255,0.18);}
body[data-theme="gold"]{--accentText:#141414;--accentSoft:rgba(212,175,55,0.22);}
body[data-theme="black"]{--accentText:#000000;--accentSoft:rgba(255,255,255,0.16);}

.input:focus,.authWrapDark .textarea:focus,.textareaDark:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accentSoft);}
.authWrapDark .textarea{background:var(--inputBg);color:var(--line);border-color:var(--stroke);}

.send,.btnMini.primary{border-color:var(--accent);background:var(--accent);color:var(--accentText);}
.send:hover,.btnMini.primary:hover{filter:brightness(1.05);}
.roomEmpty{background:var(--btnBg);}

.tabBtn{background:var(--btnBg);color:var(--line);}
.tabBtn.on{border-color:var(--accent);}
.adminTableWrap{background:var(--btnBg);}
.adminTable th{background:var(--headerBg);border-bottom:1px solid var(--stroke);}
.avatarBox{background:var(--stage);}
.pill{background:var(--chipBg);}

.contextMenu{background:var(--panel);border:1px solid var(--stroke);}
.contextItem{color:var(--line);}
.contextItem:hover{background:var(--hoverBg);color:var(--accent);}
.contextItem.danger{border-top:1px solid var(--stroke);}

.chatHeader{background:var(--headerBg);}
.typingIndicator{color:var(--muted);}
.msgProfile{background:var(--stage);}

.chatNameColorBtn{background:var(--btnBg);border:1px solid var(--stroke);color:var(--btnText);}
.chatCharSelect{background-color:var(--inputBg);border-color:var(--stroke);color:var(--line);}
.chatCharSelect:hover,.chatCharSelect:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accentSoft);}
.chatCharSelect option{background:var(--panel);color:var(--line);}

.faceMenu{background:var(--panel);border:1px solid var(--stroke);}
.faceItem{background:var(--btnBg);border:1px solid transparent;}
.faceItem:hover{background:var(--hoverBg);border-color:var(--accent);}
.faceItem.active{border-color:var(--accent);background:var(--accentSoft);}
.faceName{color:var(--muted);}

.chatBtn{border:1px solid var(--stroke);background:var(--btnBg);color:var(--btnText);}
.chatBtn:hover{filter:brightness(1.08);}

.diceBtn{border:1px solid var(--stroke);background:linear-gradient(180deg,rgba(255,255,255,0.06),rgba(0,0,0,0.22)),var(--btnBg);color:var(--muted);}
.diceBtn:hover{border-color:var(--accent);color:var(--line);}
.diceBtn:focus-visible{outline:0;box-shadow:0 0 0 2px var(--accentSoft),0 1px 0 rgba(255,255,255,.06) inset,0 6px 14px rgba(0,0,0,.35);}
.diceBtn.on{border-color:var(--accent);background:linear-gradient(180deg,rgba(255,255,255,0.10),rgba(0,0,0,0.25)),var(--accentSoft);color:var(--line);}

.chatSuggestion{background:var(--panel);border:1px solid var(--stroke);}
.suggItem{color:var(--line);border-bottom:1px solid rgba(255,255,255,0.06);}
.suggItem:hover{background:var(--hoverBg);color:var(--accent);}

.msgActBtn{border:1px solid var(--stroke);color:var(--muted);}
.msgActBtn:hover{background:var(--hoverBg);color:var(--line);}
.editedLabel{color:var(--muted);opacity:.8;}



.sceneWindow{background:var(--panel);border:1px solid var(--stroke);}
.winHead{background:var(--headerBg);border-bottom:1px solid var(--stroke);}
.winTitle{color:var(--line);}
.winClose{color:var(--muted);}
.sceneInputs{border-bottom:1px dashed var(--stroke);}
.sceneItem{background:var(--btnBg);border:1px solid var(--stroke);}
.sceneItem:hover{border-color:var(--accent);}

.tokenX{background:var(--btnBg);color:var(--line);}

.charItem{background:var(--msgBg);}
.charThumb{background:var(--btnBg);}
.charEdit{background:var(--btnBg);}
.textareaDark{background:var(--inputBg);}

.statBarBox{background:var(--dialogueBg);border-color:var(--stroke);}
.statWidget{background:var(--dialogueBg);border:1px solid var(--stroke);}
.statAvatar{background:var(--btnBg);border:1px solid var(--stroke);}

.log,.roomList,.adminTableWrap,.adminPanel,.modalBody,.charList,.charEdit,.chatTabs,.tabLog{scrollbar-width:thin;scrollbar-color:var(--accent) var(--btnBg);}
.log::-webkit-scrollbar,.roomList::-webkit-scrollbar,.adminTableWrap::-webkit-scrollbar,.adminPanel::-webkit-scrollbar,.modalBody::-webkit-scrollbar,.charList::-webkit-scrollbar,.charEdit::-webkit-scrollbar,.chatTabs::-webkit-scrollbar,.tabLog::-webkit-scrollbar{width:10px;height:10px;}
.log::-webkit-scrollbar-track,.roomList::-webkit-scrollbar-track,.adminTableWrap::-webkit-scrollbar-track,.adminPanel::-webkit-scrollbar-track,.modalBody::-webkit-scrollbar-track,.charList::-webkit-scrollbar-track,.charEdit::-webkit-scrollbar-track,.chatTabs::-webkit-scrollbar-track,.tabLog::-webkit-scrollbar-track{background:var(--btnBg);border:1px solid var(--stroke);border-radius:999px;}
.log::-webkit-scrollbar-thumb,.roomList::-webkit-scrollbar-thumb,.adminTableWrap::-webkit-scrollbar-thumb,.adminPanel::-webkit-scrollbar-thumb,.modalBody::-webkit-scrollbar-thumb,.charList::-webkit-scrollbar-thumb,.charEdit::-webkit-scrollbar-thumb,.chatTabs::-webkit-scrollbar-thumb,.tabLog::-webkit-scrollbar-thumb{background:var(--accent);border:1px solid var(--stroke);border-radius:999px;}
.log::-webkit-scrollbar-thumb:hover,.roomList::-webkit-scrollbar-thumb:hover,.adminTableWrap::-webkit-scrollbar-thumb:hover,.adminPanel::-webkit-scrollbar-thumb:hover,.modalBody::-webkit-scrollbar-thumb:hover,.charList::-webkit-scrollbar-thumb:hover,.charEdit::-webkit-scrollbar-thumb:hover,.chatTabs::-webkit-scrollbar-thumb:hover,.tabLog::-webkit-scrollbar-thumb:hover{filter:brightness(1.1);}
.log::-webkit-scrollbar-corner,.roomList::-webkit-scrollbar-corner,.adminTableWrap::-webkit-scrollbar-corner,.adminPanel::-webkit-scrollbar-corner,.modalBody::-webkit-scrollbar-corner,.charList::-webkit-scrollbar-corner,.charEdit::-webkit-scrollbar-corner,.chatTabs::-webkit-scrollbar-corner,.tabLog::-webkit-scrollbar-corner{background:var(--btnBg);}


body[data-theme="gold"]{--bg:#ffffff;--panel:rgba(255,255,255,0.86);--headerBg:rgba(0,0,0,0.03);--tabBarBg:rgba(0,0,0,0.02);--btnBg:rgba(0,0,0,0.03);--inputBg:rgba(0,0,0,0.03);--chipBg:rgba(212,175,55,0.10);--msgBg:rgba(0,0,0,0.02);--sysBg:rgba(0,0,0,0.02);--stroke:rgba(80,60,10,0.22);--line:#141414;--muted:#6b6254;--btnText:#141414;--hoverBg:rgba(212,175,55,0.16);--accent:#d4af37;}
body[data-theme="gold"] .bgmControls{background:var(--btnBg);border-color:var(--stroke);color:var(--line);}
body[data-theme="gold"] .bgmControls span{color:var(--muted)!important;}
body[data-theme="gold"] input[type=range]{accent-color:var(--accent);}
body[data-theme="gold"] .stageTopRight .iconBtn,body[data-theme="gold"] .stageTopRight .btnMini,body[data-theme="gold"] .stageTopRight .chatBtn{background:var(--btnBg)!important;border-color:var(--stroke)!important;color:var(--btnText)!important;}
body[data-theme="gold"] .stageTopRight .iconBtn:hover,body[data-theme="gold"] .stageTopRight .btnMini:hover,body[data-theme="gold"] .stageTopRight .chatBtn:hover{background:var(--hoverBg)!important;filter:none!important;}
body[data-theme="gold"] .chatCharSelect{background-color:var(--inputBg);border-color:var(--stroke);color:var(--line);}
body[data-theme="gold"] .chatCharSelect:hover{background-color:rgba(0,0,0,0.05);border-color:var(--accent);}
body[data-theme="gold"] .chatCharSelect:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(212,175,55,0.22);}
body[data-theme="gold"] .chatCharSelect option{background:#ffffff;color:#141414;}
body[data-theme="gold"] .sceneBody{scrollbar-width:thin;scrollbar-color:var(--accent) rgba(0,0,0,0.06);}
body[data-theme="gold"] .sceneBody::-webkit-scrollbar{width:10px;height:10px;}
body[data-theme="gold"] .sceneBody::-webkit-scrollbar-track{background:rgba(0,0,0,0.05);border:1px solid var(--stroke);border-radius:999px;}
body[data-theme="gold"] .sceneBody::-webkit-scrollbar-thumb{background:var(--accent);border:1px solid var(--stroke);border-radius:999px;}
body[data-theme="gold"] .sceneBody::-webkit-scrollbar-thumb:hover{filter:brightness(1.08);}
body[data-theme="gold"] .chatTabs{background:var(--tabBarBg);border-bottom:1px solid var(--stroke);}
body[data-theme="gold"] .chatTab{background:var(--btnBg);border-color:var(--stroke);color:var(--muted);}
body[data-theme="gold"] .chatTab:hover{background:var(--hoverBg);color:var(--line);}
body[data-theme="gold"] .chatTab.active{background:rgba(255,255,255,0.92);color:#7a5b00;border-bottom:1px solid rgba(255,255,255,0.92);}
body[data-theme="gold"] .dialogue{position:absolute;left:12px;right:12px;bottom:12px;border-radius:12px;border:1px solid rgba(212,175,55,0.55);background:linear-gradient(135deg,#fff7d6 0%,#d4af37 38%,#fff3bf 68%,#c89f2d 100%);box-shadow:0 10px 26px rgba(212,175,55,0.18),0 0 0 1px rgba(255,255,255,0.35) inset;backdrop-filter:none;}
body[data-theme="gold"] .dialogue::before{content:'';position:absolute;inset:0;border-radius:12px;background-size:220% 100%;animation:goldShine 5.5s ease-in-out infinite;pointer-events:none;mix-blend-mode:screen;opacity:0.55;}
body[data-theme="gold"] .dialogue>*{position:relative;}
body[data-theme="gold"] .speaker{color:#3c2c00;text-shadow:0 1px 0 rgba(255,255,255,0.45);}
body[data-theme="gold"] .line{color:#141414;text-shadow:0 1px 0 rgba(255,255,255,0.35);}
@keyframes goldShine{0%{background-position:-120% 0;}50%{background-position:60% 0;}100%{background-position:180% 0;}}


body[data-theme="gold"] .bgmControls,
body[data-theme="black"] .bgmControls{background:var(--btnBg)!important;border:1px solid var(--stroke)!important;color:var(--line)!important;}
body[data-theme="gold"] .soundTabs,
body[data-theme="black"] .soundTabs{border-bottom:1px solid var(--stroke)!important;}
body[data-theme="gold"] .tabBtn,
body[data-theme="black"] .tabBtn{color:var(--muted)!important;}
body[data-theme="gold"] .tabBtn:hover,
body[data-theme="black"] .tabBtn:hover{color:var(--line)!important;}
body[data-theme="gold"] .tabBtn.active,
body[data-theme="black"] .tabBtn.active{color:var(--accent)!important;border-bottom-color:var(--accent)!important;}
body[data-theme="gold"] input[type=range],
body[data-theme="black"] input[type=range]{accent-color:var(--accent)!important;}
body[data-theme="gold"] .chatHeader,
body[data-theme="black"] .chatHeader{background:var(--headerBg)!important;}
body[data-theme="gold"] .stageTopRight .iconBtn,
body[data-theme="black"] .stageTopRight .iconBtn,
body[data-theme="gold"] .stageTopRight .btnMini,
body[data-theme="black"] .stageTopRight .btnMini{background:var(--btnBg)!important;border:1px solid var(--stroke)!important;color:var(--btnText)!important;border-radius:10px;}
body[data-theme="gold"] .stageTopRight .iconBtn:hover,
body[data-theme="black"] .stageTopRight .iconBtn:hover,
body[data-theme="gold"] .stageTopRight .btnMini:hover,
body[data-theme="black"] .stageTopRight .btnMini:hover{background:var(--hoverBg)!important;filter:none!important;}
body[data-theme="gold"] .chatCharSelect,
body[data-theme="black"] .chatCharSelect{background:var(--inputBg)!important;border-color:var(--stroke)!important;color:var(--line)!important;}
body[data-theme="gold"] .chatCharSelect:hover,
body[data-theme="black"] .chatCharSelect:hover{background:var(--hoverBg)!important;border-color:var(--accent)!important;}
body[data-theme="gold"] .chatCharSelect:focus,
body[data-theme="black"] .chatCharSelect:focus{border-color:var(--accent)!important;box-shadow:0 0 0 2px rgba(255,255,255,0.0),0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)!important;}
body[data-theme="gold"] .chatCharSelect option,
body[data-theme="black"] .chatCharSelect option{background:var(--panel)!important;color:var(--line)!important;}
body[data-theme="gold"] .chatTabs,
body[data-theme="black"] .chatTabs{background:var(--tabBarBg)!important;border-bottom:1px solid var(--stroke)!important;}
body[data-theme="gold"] .chatTab,
body[data-theme="black"] .chatTab{background:var(--btnBg)!important;border:1px solid var(--stroke)!important;color:var(--muted)!important;}
body[data-theme="gold"] .chatTab:hover,
body[data-theme="black"] .chatTab:hover{background:var(--hoverBg)!important;color:var(--line)!important;}
body[data-theme="gold"] .chatTab.active,
body[data-theme="black"] .chatTab.active{background:var(--panel)!important;border-color:var(--accent)!important;color:var(--line)!important;border-bottom-color:var(--panel)!important;}
body[data-theme="gold"] .btnTabAdd,
body[data-theme="black"] .btnTabAdd{border-color:var(--stroke)!important;color:var(--muted)!important;}
body[data-theme="gold"] .btnTabAdd:hover,
body[data-theme="black"] .btnTabAdd:hover{border-color:var(--accent)!important;color:var(--accent)!important;}
body[data-theme="gold"] .sceneBody,
body[data-theme="black"] .sceneBody{scrollbar-width:thin;scrollbar-color:var(--accent) var(--btnBg);}
body[data-theme="gold"] .sceneBody::-webkit-scrollbar,
body[data-theme="black"] .sceneBody::-webkit-scrollbar{width:10px;height:10px;}
body[data-theme="gold"] .sceneBody::-webkit-scrollbar-track,
body[data-theme="black"] .sceneBody::-webkit-scrollbar-track{background:var(--btnBg);border:1px solid var(--stroke);border-radius:999px;}
body[data-theme="gold"] .sceneBody::-webkit-scrollbar-thumb,
body[data-theme="black"] .sceneBody::-webkit-scrollbar-thumb{background:var(--accent);border:1px solid var(--stroke);border-radius:999px;}
body[data-theme="gold"] .sceneBody::-webkit-scrollbar-thumb:hover,
body[data-theme="black"] .sceneBody::-webkit-scrollbar-thumb:hover{filter:brightness(1.08);}
body[data-theme="gold"] .stageTopLeft .iconBtn,body[data-theme="black"] .stageTopLeft .iconBtn{background:var(--btnBg)!important;border:1px solid var(--stroke)!important;color:var(--btnText)!important;border-radius:10px!important;padding:6px 8px!important;line-height:1!important;}
body[data-theme="gold"] .stageTopLeft .iconBtn:hover,body[data-theme="black"] .stageTopLeft .iconBtn:hover{background:var(--hoverBg)!important;filter:none!important;}
body[data-theme="gold"] .stageTopLeft .iconBtn:active,body[data-theme="black"] .stageTopLeft .iconBtn:active{transform:translateY(1px);}

body[data-theme="gold"] .diceBtn{border:1px solid rgba(212,175,55,0.75)!important;border-radius:10px!important;background:linear-gradient(180deg,#fff7d6 0%,#d4af37 55%,#b88b18 100%)!important;color:#3c2c00!important;text-shadow:0 1px 0 rgba(255,255,255,0.35)!important;box-shadow:0 1px 0 rgba(255,255,255,0.35) inset,0 10px 18px rgba(212,175,55,0.12)!important;}
body[data-theme="gold"] .diceBtn:hover{filter:none!important;border-color:#d4af37!important;box-shadow:0 1px 0 rgba(255,255,255,0.45) inset,0 14px 26px rgba(212,175,55,0.16)!important;}
body[data-theme="gold"] .diceBtn.on{border-color:#d4af37!important;background:linear-gradient(180deg,#fff2c2 0%,#d4af37 45%,#a97b12 100%)!important;color:#2e2100!important;}
body[data-theme="gold"] .send{border:1px solid rgba(212,175,55,0.78)!important;border-radius:12px!important;background:linear-gradient(180deg,#fff7d6 0%,#d4af37 55%,#b88b18 100%)!important;color:#2e2100!important;font-weight:900!important;letter-spacing:.2px!important;text-shadow:0 1px 0 rgba(255,255,255,0.35)!important;box-shadow:0 1px 0 rgba(255,255,255,0.40) inset,0 12px 22px rgba(212,175,55,0.14)!important;}
body[data-theme="gold"] .send:hover{filter:none!important;border-color:#d4af37!important;box-shadow:0 1px 0 rgba(255,255,255,0.50) inset,0 16px 28px rgba(212,175,55,0.18)!important;}
body[data-theme="gold"] .send:active{transform:translateY(1px);box-shadow:0 1px 0 rgba(255,255,255,0.30) inset,0 10px 18px rgba(212,175,55,0.12)!important;}


body[data-theme="gold"] .stageTopLeft .badgeLink,
body[data-theme="gold"] .stageTopLeft .btnMini,
body[data-theme="black"] .stageTopLeft .badgeLink,
body[data-theme="black"] .stageTopLeft .btnMini{
background:var(--btnBg)!important;
border:1px solid var(--stroke)!important;
color:var(--btnText)!important;
border-radius:10px!important;
}
body[data-theme="gold"] .stageTopLeft .badgeLink:hover,
body[data-theme="gold"] .stageTopLeft .btnMini:hover,
body[data-theme="black"] .stageTopLeft .badgeLink:hover,
body[data-theme="black"] .stageTopLeft .btnMini:hover{
background:var(--hoverBg)!important;
filter:none!important;
}

body[data-theme="gold"] .stageTopLeft .iconBtn,
body[data-theme="black"] .stageTopLeft .iconBtn{
background:var(--btnBg)!important;
border:1px solid var(--stroke)!important;
color:var(--btnText)!important;
border-radius:10px!important;
}
body[data-theme="gold"] .stageTopLeft .iconBtn:hover,
body[data-theme="black"] .stageTopLeft .iconBtn:hover{
background:var(--hoverBg)!important;
filter:none!important;
}


  --splitterBg: rgba(212,175,55,0.45);

  --bg:#ffffff;
  --stage:#ffffff;
  --stageGrad1:#ffffff;
  --stageGrad2:#ffffff;
}

body[data-theme="gold"] .bg{
  background-color:#ffffff !important;
}

body[data-theme="gold"] .splitter{
  background: var(--splitterBg) !important;
  border-left-color: rgba(212,175,55,0.40) !important;
  border-right-color: rgba(212,175,55,0.40) !important;
}
body[data-theme="gold"] .diceBtn,body[data-theme="black"] .diceBtn{opacity:1!important;filter:none!important;}
body[data-theme="gold"] .diceBtn{background:linear-gradient(180deg,#fff7d6 0%,#d4af37 55%,#b88b18 100%)!important;border:1px solid rgba(212,175,55,0.85)!important;color:#2e2100!important;}
body[data-theme="black"] .diceBtn{background:linear-gradient(180deg,#2a2a2a 0%,#000000 100%)!important;border:1px solid rgba(255,255,255,0.28)!important;color:#ffffff!important;}
body[data-theme="black"] .diceBtn.on{border-color:#ffffff!important;}
#uiSettingsModal button[data-theme]{padding:10px!important;min-height:38px!important;line-height:1.1!important;display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;}
body:not([data-theme="wizard"]) .dialogue,
body:not([data-theme="wizard"]) .dialogue::before,
body:not([data-theme="wizard"]) .dialogue::after{animation:none!important;}


body[data-theme="gold"] .msg.sys,
body[data-theme="black"] .msg.sys{
  background: var(--sysBg) !important;
  border-color: var(--stroke) !important;
  color: var(--line) !important;
}
body[data-theme="gold"] .msg.sys .text,
body[data-theme="black"] .msg.sys .text{
  color: var(--line) !important;
}
body[data-theme="gold"] .msg.statMsg,
body[data-theme="black"] .msg.statMsg{
  background: var(--sysBg) !important;
  border: 1px solid var(--stroke) !important;
  border-left: 3px solid var(--accent) !important;
  color: var(--line) !important;
  font-weight: 600;
}

body[data-theme="wizard"] .msg.sys{
  background:
    linear-gradient(180deg, rgba(34,14,66,0.94), rgba(12,6,28,0.96)) !important;
  border: 1px solid rgba(185,131,255,0.34) !important;
  color: var(--line) !important;
  box-shadow:
    inset 0 0 0 1px rgba(247,233,138,0.08),
    0 0 18px rgba(185,131,255,0.18) !important;
}
body[data-theme="wizard"] .msg.sys .name,
body[data-theme="wizard"] .msg.sys .text{
  color: var(--line) !important;
}
body[data-theme="wizard"] .msg.sys .time{
  color: #d7c3ff !important;
}

body[data-theme="wizard"] .msg.statMsg{
  background:
    linear-gradient(180deg, rgba(46,20,86,0.96), rgba(18,8,40,0.98)) !important;
  border: 1px solid rgba(185,131,255,0.38) !important;
  border-left: 3px solid #f7e98a !important;
  color: var(--line) !important;
  font-weight: 700 !important;
  box-shadow:
    inset 0 0 0 1px rgba(247,233,138,0.10),
    0 0 18px rgba(185,131,255,0.22) !important;
}
body[data-theme="wizard"] .msg.statMsg .name,
body[data-theme="wizard"] .msg.statMsg .text{
  color: var(--line) !important;
}
body[data-theme="wizard"] .msg.statMsg .time{
  color: #d7c3ff !important;
}

body[data-theme="wizard"] .msg.sys.eventSysMsg .msgContent{
  background:
    linear-gradient(180deg, rgba(46,20,86,0.96), rgba(18,8,40,0.98)) !important;
  border: 1px solid rgba(185,131,255,0.38) !important;
  box-shadow:
    inset 0 0 0 1px rgba(247,233,138,0.10),
    0 0 18px rgba(185,131,255,0.22) !important;
}
body[data-theme="wizard"] .msg.sys.eventSysMsg .name{
  color: #f7e98a !important;
}
body[data-theme="wizard"] .msg.sys.eventSysMsg .time{
  color: #d7c3ff !important;
}

body[data-theme="gold"]{
  --panel:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(255,250,236,0.94))!important;
  --headerBg:linear-gradient(180deg,rgba(255,248,225,0.98),rgba(245,230,183,0.90))!important;
  --tabBarBg:linear-gradient(180deg,rgba(255,249,229,0.96),rgba(246,232,188,0.86))!important;
  --btnBg:linear-gradient(180deg,rgba(255,251,235,0.98),rgba(245,229,178,0.92))!important;
  --inputBg:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(255,247,220,0.88))!important;
  --chipBg:rgba(212,175,55,0.18)!important;
  --msgBg:linear-gradient(180deg,rgba(255,252,242,0.98),rgba(250,241,210,0.92))!important;
  --sysBg:linear-gradient(180deg,rgba(255,247,220,0.92),rgba(242,226,172,0.84))!important;
  --hoverBg:rgba(212,175,55,0.24)!important;
  --stroke:rgba(140,106,18,0.34)!important;
  --accent:#cfa42a!important;
}

body[data-theme="gold"] .chatHeader{
  background:linear-gradient(180deg,rgba(255,248,225,0.98),rgba(244,228,176,0.90))!important;
  border-bottom:1px solid rgba(186,145,27,0.32)!important;
  box-shadow:0 1px 0 rgba(255,255,255,0.65) inset!important;
}

body[data-theme="gold"] .chatTabs{
  background:linear-gradient(180deg,rgba(255,249,229,0.96),rgba(246,232,188,0.86))!important;
}

body[data-theme="gold"] .chatTab{
  background:linear-gradient(180deg,rgba(255,255,255,0.92),rgba(248,238,204,0.88))!important;
  border-color:rgba(186,145,27,0.24)!important;
  color:#7a6630!important;
}

body[data-theme="gold"] .chatTab:hover{
  background:linear-gradient(180deg,rgba(255,250,233,0.98),rgba(244,226,171,0.92))!important;
  color:#4d3904!important;
}

body[data-theme="gold"] .chatTab.active,
body[data-theme="gold"] .tabBtn.on,
body[data-theme="gold"] .tabBtn.active{
  background:linear-gradient(180deg,#fff7d8 0%,#e9c65b 56%,#c9971f 100%)!important;
  border-color:rgba(186,145,27,0.48)!important;
  color:#2f2200!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.34)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.55),
    0 8px 18px rgba(212,175,55,0.16)!important;
}

body[data-theme="gold"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay){
  background:linear-gradient(180deg,rgba(255,253,245,0.98),rgba(250,241,210,0.92))!important;
  border:1px solid rgba(186,145,27,0.20)!important;
  box-shadow:
    0 8px 18px rgba(212,175,55,0.08),
    inset 0 1px 0 rgba(255,255,255,0.62)!important;
}

body[data-theme="gold"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay) .name{
  color:#8a6508!important;
}



body[data-theme="gold"] .badge,
body[data-theme="gold"] .userChip,
body[data-theme="gold"] .badgeLink{
  background:linear-gradient(180deg,rgba(255,252,241,0.96),rgba(245,231,184,0.88))!important;
  border-color:rgba(186,145,27,0.26)!important;
  color:#5c4403!important;
}

body[data-theme="gold"] .input,
body[data-theme="gold"] .textareaDark,
body[data-theme="gold"] .chatCharSelect{
  background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(255,247,220,0.90))!important;
  border-color:rgba(186,145,27,0.26)!important;
}

body[data-theme="gold"] .input:focus,
body[data-theme="gold"] .textareaDark:focus,
body[data-theme="gold"] .chatCharSelect:focus{
  border-color:#cfa42a!important;
  box-shadow:0 0 0 3px rgba(212,175,55,0.18)!important;
}

body[data-theme="gold"] .msg.narrSay{
  border:1px solid rgba(186,145,27,0.34)!important;
  border-radius:18px!important;
  background:
    linear-gradient(180deg,rgba(255,248,220,0.99) 0%,rgba(242,213,112,0.95) 52%,rgba(203,157,34,0.96) 100%)!important;
  box-shadow:
    0 14px 28px rgba(212,175,55,0.18),
    inset 0 1px 0 rgba(255,255,255,0.58),
    inset 0 -1px 0 rgba(120,85,8,0.12)!important;
  backdrop-filter:none!important;
}
body[data-theme="gold"] .msg.narrSay .msgContent .text{
  color:#3b2b00!important;
  font-style:italic!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.34);
}

.msg.shoutSay .name{color:inherit!important;}


body[data-theme="vintage"]{
  --bg:#e9dfcf;
  --panel:#f5efe5;
  --line:#2f241a;
  --muted:#6a5b49;
  --stroke:rgba(88,68,46,0.25);
  --accent:#b07d3c;
  --stage:#efe3d0;
  --stageGrad1:#f6f0e6;
  --stageGrad2:#e2d2b9;
  --dialogueBg:rgba(245,239,229,0.84);
  --chipBg:rgba(176,125,60,0.10);
  --msgBg:rgba(255,255,255,0.55);
  --sysBg:rgba(176,125,60,0.08);
  --inputBg:rgba(255,255,255,0.70);
  --headerBg:rgba(255,255,255,0.60);
  --tabBg:rgba(255,255,255,0.55);
  --tabBarBg:rgba(255,255,255,0.60);
  --btnBg:rgba(176,125,60,0.10);
  --btnText:#2f241a;
  --hoverBg:rgba(176,125,60,0.16);
  --roomItemBg:rgba(255,255,255,0.55);
  --splitterBg:rgba(176,125,60,0.10);
  --bg-fallback:linear-gradient(135deg,#f6f0e6,#d9c6aa);
  --accentText:#2f241a;
  --accentSoft:rgba(176,125,60,0.18);
}
body[data-theme="vintage"] .msg.sys,
body[data-theme="vintage"] .msg.statMsg{
  background: var(--sysBg) !important;
  border-color: var(--stroke) !important;
  color: var(--line) !important;
}

body[data-theme="wizard"]{
  --bg:#070411;
  --panel:#100826;
  --line:#f7e98a;
  --muted:#b8a8d8;
  --stroke:rgba(255,255,255,0.14);
  --accent:#b983ff;
  --stage:#05030b;
  --stageGrad1:#1a0b33;
  --stageGrad2:#05030b;
  --dialogueBg:rgba(16,8,38,0.82);
  --chipBg:rgba(185,131,255,0.10);
  --msgBg:rgba(255,255,255,0.03);
  --sysBg:rgba(185,131,255,0.10);
  --inputBg:rgba(255,255,255,0.04);
  --headerBg:rgba(0,0,0,0.25);
  --tabBg:rgba(255,255,255,0.03);
  --tabBarBg:rgba(0,0,0,0.25);
  --btnBg:rgba(185,131,255,0.12);
  --btnText:var(--line);
  --hoverBg:rgba(255,215,80,0.10);
  --roomItemBg:var(--msgBg);
  --splitterBg:rgba(185,131,255,0.10);
  --bg-fallback:linear-gradient(135deg,#1a0b33,#05030b);
  --accentText:#f7e98a;
  --accentSoft:rgba(185,131,255,0.26);
}
body[data-theme="wizard"] .btnMini:hover,
body[data-theme="wizard"] .iconBtn:hover,
body[data-theme="wizard"] .send:hover,
body[data-theme="wizard"] .diceBtn:hover,
body[data-theme="wizard"] .tabBtn:hover{
  box-shadow: 0 0 12px rgba(255,220,120,0.55), 0 0 22px rgba(185,131,255,0.35);
  filter: brightness(1.08);
}
body[data-theme="wizard"] .btnMini:focus,
body[data-theme="wizard"] .iconBtn:focus,
body[data-theme="wizard"] .send:focus,
body[data-theme="wizard"] .diceBtn:focus,
body[data-theme="wizard"] .tabBtn:focus{
  box-shadow: 0 0 0 3px rgba(255,220,120,0.22), 0 0 0 5px rgba(185,131,255,0.18);
  outline: none;
}



body[data-theme="light"] #log,body[data-theme="light"] .log,body[data-theme="light"] .tabLog,body[data-theme="light"] .logContainer{scrollbar-width:thin;scrollbar-color:var(--accent) var(--btnBg);}
body[data-theme="light"] #log::-webkit-scrollbar,body[data-theme="light"] .log::-webkit-scrollbar,body[data-theme="light"] .tabLog::-webkit-scrollbar,body[data-theme="light"] .logContainer::-webkit-scrollbar{width:10px;height:10px;}
body[data-theme="light"] #log::-webkit-scrollbar-track,body[data-theme="light"] .log::-webkit-scrollbar-track,body[data-theme="light"] .tabLog::-webkit-scrollbar-track,body[data-theme="light"] .logContainer::-webkit-scrollbar-track{background:var(--btnBg);border:1px solid var(--stroke);border-radius:999px;}
body[data-theme="light"] #log::-webkit-scrollbar-thumb,body[data-theme="light"] .log::-webkit-scrollbar-thumb,body[data-theme="light"] .tabLog::-webkit-scrollbar-thumb,body[data-theme="light"] .logContainer::-webkit-scrollbar-thumb{background:var(--accent);border:1px solid var(--stroke);border-radius:999px;}
body[data-theme="light"] #log::-webkit-scrollbar-thumb:hover,body[data-theme="light"] .log::-webkit-scrollbar-thumb:hover,body[data-theme="light"] .tabLog::-webkit-scrollbar-thumb:hover,body[data-theme="light"] .logContainer::-webkit-scrollbar-thumb:hover{filter:brightness(1.08);}
body[data-theme="light"] #log::-webkit-scrollbar-corner,body[data-theme="light"] .log::-webkit-scrollbar-corner,body[data-theme="light"] .tabLog::-webkit-scrollbar-corner,body[data-theme="light"] .logContainer::-webkit-scrollbar-corner{background:var(--btnBg);}

body[data-theme="vintage"]{
  --bg:#e7ddcd;--panel:#f3eadc;--line:#2a2118;--muted:#6a5b49;--stroke:rgba(88,68,46,0.28);
  --accent:#8a6a45;--chipBg:rgba(138,106,69,0.10);--msgBg:rgba(255,255,255,0.55);--sysBg:rgba(138,106,69,0.08);
  --inputBg:rgba(255,255,255,0.72);--headerBg:rgba(255,255,255,0.62);--tabBg:rgba(255,255,255,0.55);--tabBarBg:rgba(255,255,255,0.64);
  --btnBg:rgba(138,106,69,0.12);--btnText:#2a2118;--hoverBg:rgba(138,106,69,0.18);--roomItemBg:rgba(255,255,255,0.58);
  --splitterBg:rgba(138,106,69,0.12);--bg-fallback:linear-gradient(135deg,#f3eadc,#d7c0a3);
}
body[data-theme="wizard"]{
  --bg:#070411;--panel:#100826;--line:#f7e98a;--muted:#c1b2dd;--stroke:rgba(255,255,255,0.14);
  --accent:#b983ff;--chipBg:rgba(185,131,255,0.10);--msgBg:rgba(255,255,255,0.03);--sysBg:rgba(185,131,255,0.10);
  --inputBg:rgba(255,255,255,0.04);--headerBg:rgba(0,0,0,0.25);--tabBg:rgba(255,255,255,0.03);--tabBarBg:rgba(0,0,0,0.25);
  --btnBg:rgba(185,131,255,0.12);--btnText:var(--line);--hoverBg:rgba(255,215,80,0.10);--roomItemBg:var(--msgBg);
  --splitterBg:rgba(185,131,255,0.10);--bg-fallback:linear-gradient(135deg,#1a0b33,#05030b);
}

body[data-theme="vintage"] .stageTopLeft .iconBtn,
body[data-theme="vintage"] .stageTopRight .iconBtn,
body[data-theme="vintage"] .chatHeader .iconBtn,
body[data-theme="wizard"] .stageTopLeft .iconBtn,
body[data-theme="wizard"] .stageTopRight .iconBtn,
body[data-theme="wizard"] .chatHeader .iconBtn{
  background:var(--btnBg)!important;border:1px solid var(--stroke)!important;color:var(--btnText)!important;
  border-radius:10px!important;padding:6px 8px!important;line-height:1!important;filter:none!important;
}
body[data-theme="vintage"] .stageTopLeft .iconBtn:hover,
body[data-theme="vintage"] .stageTopRight .iconBtn:hover,
body[data-theme="vintage"] .chatHeader .iconBtn:hover,
body[data-theme="wizard"] .stageTopLeft .iconBtn:hover,
body[data-theme="wizard"] .stageTopRight .iconBtn:hover,
body[data-theme="wizard"] .chatHeader .iconBtn:hover{background:var(--hoverBg)!important;}

body[data-theme="vintage"] .chatHeader,
body[data-theme="wizard"] .chatHeader{background:var(--headerBg)!important;border-bottom-color:var(--stroke)!important;}

body[data-theme="vintage"] .settingItem:hover,
body[data-theme="wizard"] .settingItem:hover{background:var(--hoverBg)!important;color:var(--accent)!important;}

body[data-theme="vintage"] .chatTabs,
body[data-theme="wizard"] .chatTabs{background:var(--tabBarBg)!important;border-bottom:1px solid var(--stroke)!important;}
body[data-theme="vintage"] .chatTab,
body[data-theme="wizard"] .chatTab{background:var(--tabBg)!important;border:1px solid var(--stroke)!important;border-bottom:none!important;color:var(--muted)!important;}
body[data-theme="vintage"] .chatTab:hover,
body[data-theme="wizard"] .chatTab:hover{background:var(--hoverBg)!important;color:var(--line)!important;}
body[data-theme="vintage"] .chatTab.active,
body[data-theme="wizard"] .chatTab.active{background:var(--panel)!important;color:var(--accent)!important;border-bottom-color:var(--panel)!important;}

body[data-theme="vintage"] .bgmControls,
body[data-theme="wizard"] .bgmControls{background:var(--inputBg)!important;border:1px solid var(--stroke)!important;}
body[data-theme="vintage"] .soundTabs,
body[data-theme="wizard"] .soundTabs{border-bottom:1px solid var(--stroke)!important;}
body[data-theme="vintage"] .bgmControls .bgmRow span,
body[data-theme="wizard"] .bgmControls .bgmRow span,
body[data-theme="vintage"] .bgmControls label,
body[data-theme="wizard"] .bgmControls label{color:var(--muted)!important;}
body[data-theme="vintage"] input[type=range],
body[data-theme="wizard"] input[type=range]{accent-color:var(--accent)!important;}

body[data-theme="vintage"] .tabBtn,
body[data-theme="wizard"] .tabBtn{background:var(--btnBg)!important;border-color:var(--stroke)!important;color:var(--muted)!important;}
body[data-theme="vintage"] .tabBtn:hover,
body[data-theme="wizard"] .tabBtn:hover{background:var(--hoverBg)!important;color:var(--line)!important;}
body[data-theme="vintage"] .tabBtn.on,
body[data-theme="wizard"] .tabBtn.on{background:var(--panel)!important;border-color:var(--accent)!important;color:var(--accent)!important;}

body[data-theme="vintage"] .chatCharSelect,
body[data-theme="wizard"] .chatCharSelect{background-color:var(--inputBg)!important;border-color:var(--stroke)!important;color:var(--line)!important;}
body[data-theme="vintage"] .chatCharSelect:hover,
body[data-theme="wizard"] .chatCharSelect:hover{background-color:var(--hoverBg)!important;}
body[data-theme="vintage"] .chatCharSelect option,
body[data-theme="wizard"] .chatCharSelect option{background:var(--panel)!important;color:var(--line)!important;}

body[data-theme="vintage"] .sceneWindow,
body[data-theme="wizard"] .sceneWindow{background:var(--panel)!important;border-color:var(--stroke)!important;}
body[data-theme="vintage"] .winHead,
body[data-theme="wizard"] .winHead{background:var(--headerBg)!important;border-bottom-color:var(--stroke)!important;}
body[data-theme="vintage"] .winTitle,
body[data-theme="wizard"] .winTitle{color:var(--line)!important;}
body[data-theme="vintage"] .sceneInputs,
body[data-theme="wizard"] .sceneInputs{border-bottom-color:var(--stroke)!important;}
body[data-theme="vintage"] .sceneItem,
body[data-theme="wizard"] .sceneItem{background:var(--msgBg)!important;border-color:var(--stroke)!important;}
body[data-theme="vintage"] .sceneItem .sceneName,
body[data-theme="wizard"] .sceneItem .sceneName{color:var(--line)!important;}
body[data-theme="vintage"] .sceneItem .sceneDesc,
body[data-theme="wizard"] .sceneItem .sceneDesc{color:var(--muted)!important;}

body[data-theme="vintage"] .log,
body[data-theme="vintage"] .roomList,
body[data-theme="vintage"] .adminTableWrap,
body[data-theme="vintage"] .adminPanel,
body[data-theme="vintage"] .modalBody,
body[data-theme="vintage"] .charList,
body[data-theme="vintage"] .charEdit,
body[data-theme="vintage"] .tabLog{
  scrollbar-color: rgba(120,92,60,0.70) rgba(0,0,0,0.06) !important;
}
body[data-theme="vintage"] .log::-webkit-scrollbar-thumb,
body[data-theme="vintage"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="vintage"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="vintage"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="vintage"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="vintage"] .charList::-webkit-scrollbar-thumb,
body[data-theme="vintage"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="vintage"] .tabLog::-webkit-scrollbar-thumb{background:rgba(120,92,60,0.62)!important;border-color:rgba(255,255,255,0.45)!important;}
body[data-theme="vintage"] .log::-webkit-scrollbar-track,
body[data-theme="vintage"] .roomList::-webkit-scrollbar-track,
body[data-theme="vintage"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="vintage"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="vintage"] .modalBody::-webkit-scrollbar-track,
body[data-theme="vintage"] .charList::-webkit-scrollbar-track,
body[data-theme="vintage"] .charEdit::-webkit-scrollbar-track,
body[data-theme="vintage"] .tabLog::-webkit-scrollbar-track{background:rgba(138,106,69,0.08)!important;border-color:rgba(138,106,69,0.18)!important;}

body[data-theme="vintage"] .send{background:rgba(138,106,69,0.18)!important;border:1px solid rgba(88,68,46,0.34)!important;color:var(--line)!important;}
body[data-theme="vintage"] .send:hover{background:rgba(138,106,69,0.24)!important;}

body[data-theme="vintage"] .msg.narrSay,
body[data-theme="vintage"] .msg.sys{
  background:linear-gradient(180deg,rgba(255,247,231,0.92),rgba(237,221,193,0.90)),repeating-linear-gradient(45deg,rgba(0,0,0,0.018) 0 2px,rgba(255,255,255,0.018) 2px 4px)!important;
  border:1px solid rgba(138,106,69,0.38)!important;
  box-shadow:0 10px 24px rgba(0,0,0,0.12),0 0 0 1px rgba(255,255,255,0.22) inset!important;
  backdrop-filter:none!important;
}
body[data-theme="vintage"] .msg.sys{border-left:3px solid rgba(138,106,69,0.55)!important;}
body[data-theme="vintage"] .msg.narrSay .msgContent .text{font-style:italic!important;color:rgba(42,33,24,0.92)!important;}
body[data-theme="vintage"] .msg.sys .msgContent .text{color:rgba(42,33,24,0.90)!important;}

body[data-theme="wizard"] .dialogue{
  background:linear-gradient(180deg,rgba(16,8,38,0.86),rgba(8,4,18,0.82))!important;
  border:1px solid rgba(185,131,255,0.55)!important;
  box-shadow:0 0 18px rgba(185,131,255,0.38),0 0 30px rgba(255,220,120,0.20),0 12px 30px rgba(0,0,0,0.55)!important;
  color:var(--line)!important;
}
body[data-theme="wizard"] .speaker{
  color:var(--accent)!important;
  text-shadow:0 0 10px rgba(185,131,255,0.55),0 0 14px rgba(255,220,120,0.25);
}
body[data-theme="wizard"] .line{text-shadow:0 0 10px rgba(255,220,120,0.18),0 0 14px rgba(185,131,255,0.14);}
body[data-theme="wizard"] .chat,
body[data-theme="wizard"] .sceneWindow{
  box-shadow:0 0 14px rgba(185,131,255,0.18),0 8px 24px rgba(0,0,0,0.55)!important;
}
body[data-theme="wizard"] .chatTab.active{box-shadow:0 0 14px rgba(185,131,255,0.20),0 0 22px rgba(255,220,120,0.12)!important;}
body[data-theme="wizard"] .send:hover,
body[data-theme="wizard"] .btnMini:hover,
body[data-theme="wizard"] .iconBtn:hover,
body[data-theme="wizard"] .tabBtn:hover{
  box-shadow:0 0 12px rgba(255,220,120,0.55),0 0 22px rgba(185,131,255,0.35)!important;
  filter:brightness(1.08)!important;
}

body[data-theme="vintage"]{
--bg:#e7ddcd;--panel:#f3eadc;--line:#2a2118;--muted:#6a5b49;--stroke:rgba(88,68,46,0.28);
--accent:#7a6248;--chipBg:rgba(122,98,72,0.10);--msgBg:rgba(255,255,255,0.55);--sysBg:rgba(122,98,72,0.08);
--inputBg:rgba(255,255,255,0.72);--headerBg:rgba(255,255,255,0.62);--tabBg:rgba(255,255,255,0.55);--tabBarBg:rgba(255,255,255,0.64);
--btnBg:rgba(122,98,72,0.11);--btnText:#2a2118;--hoverBg:rgba(122,98,72,0.17);--roomItemBg:rgba(255,255,255,0.58);
--splitterBg:rgba(122,98,72,0.12);--bg-fallback:linear-gradient(135deg,#f3eadc,#d7c0a3);
}
body[data-theme="wizard"]{
--bg:#070411;--panel:#100826;--line:#f7e98a;--muted:#c7b9e2;--stroke:rgba(255,255,255,0.14);
--accent:#b983ff;--chipBg:rgba(185,131,255,0.10);--msgBg:rgba(255,255,255,0.03);--sysBg:rgba(185,131,255,0.10);
--inputBg:rgba(255,255,255,0.04);--headerBg:rgba(0,0,0,0.25);--tabBg:rgba(255,255,255,0.03);--tabBarBg:rgba(0,0,0,0.25);
--btnBg:rgba(185,131,255,0.12);--btnText:var(--line);--hoverBg:rgba(255,215,80,0.10);--roomItemBg:var(--msgBg);
--splitterBg:rgba(185,131,255,0.10);--bg-fallback:linear-gradient(135deg,#1a0b33,#05030b);
}

body[data-theme="vintage"] .stageTopLeft .iconBtn,
body[data-theme="vintage"] .stageTopRight .iconBtn,
body[data-theme="vintage"] .chatHeader .iconBtn,
body[data-theme="wizard"] .stageTopLeft .iconBtn,
body[data-theme="wizard"] .stageTopRight .iconBtn,
body[data-theme="wizard"] .chatHeader .iconBtn{
background:var(--btnBg)!important;border:1px solid var(--stroke)!important;color:var(--btnText)!important;
}
body[data-theme="vintage"] .chatTabs,body[data-theme="wizard"] .chatTabs{background:var(--tabBarBg)!important;border-bottom:1px solid var(--stroke)!important;}
body[data-theme="vintage"] .chatTab,body[data-theme="wizard"] .chatTab{background:var(--tabBg)!important;border:1px solid var(--stroke)!important;border-bottom:none!important;color:var(--muted)!important;}
body[data-theme="vintage"] .chatTab:hover,body[data-theme="wizard"] .chatTab:hover{background:var(--hoverBg)!important;color:var(--line)!important;}
body[data-theme="vintage"] .chatTab.active,body[data-theme="wizard"] .chatTab.active{background:var(--panel)!important;color:var(--accent)!important;border-color:var(--stroke)!important;border-bottom-color:var(--panel)!important;}
body[data-theme="vintage"] .bgmControls,body[data-theme="wizard"] .bgmControls{background:var(--inputBg)!important;border:1px solid var(--stroke)!important;}
body[data-theme="vintage"] .soundTabs,body[data-theme="wizard"] .soundTabs{border-bottom:1px solid var(--stroke)!important;}
body[data-theme="vintage"] .tabBtn,body[data-theme="wizard"] .tabBtn{background:var(--btnBg)!important;border-color:var(--stroke)!important;color:var(--muted)!important;}
body[data-theme="vintage"] .tabBtn:hover,body[data-theme="wizard"] .tabBtn:hover{background:var(--hoverBg)!important;color:var(--line)!important;}
body[data-theme="vintage"] .tabBtn.on,body[data-theme="wizard"] .tabBtn.on{background:var(--panel)!important;border-color:var(--accent)!important;color:var(--accent)!important;}
body[data-theme="vintage"] .chatCharSelect,body[data-theme="wizard"] .chatCharSelect{background:var(--inputBg)!important;border-color:var(--stroke)!important;color:var(--line)!important;}
body[data-theme="vintage"] .chatCharSelect:hover,body[data-theme="wizard"] .chatCharSelect:hover{background:var(--hoverBg)!important;}
body[data-theme="vintage"] .sceneWindow,body[data-theme="wizard"] .sceneWindow{background:var(--panel)!important;border-color:var(--stroke)!important;}
body[data-theme="vintage"] .winHead,body[data-theme="wizard"] .winHead{background:var(--headerBg)!important;border-bottom:1px solid var(--stroke)!important;}
body[data-theme="vintage"] .winTitle,body[data-theme="wizard"] .winTitle{color:var(--line)!important;}
body[data-theme="vintage"] .sceneBody,body[data-theme="wizard"] .sceneBody{color:var(--line)!important;}
body[data-theme="vintage"] .sceneBody *{color:inherit;}
body[data-theme="wizard"] .sceneBody *{color:inherit;}

body[data-theme="vintage"] .log,body[data-theme="vintage"] .roomList,body[data-theme="vintage"] .adminTableWrap,body[data-theme="vintage"] .adminPanel,body[data-theme="vintage"] .modalBody,body[data-theme="vintage"] .charList,body[data-theme="vintage"] .charEdit,body[data-theme="vintage"] .tabLog{
scrollbar-color:rgba(110,92,70,0.55) rgba(0,0,0,0.06)!important;
}
body[data-theme="vintage"] .log::-webkit-scrollbar-thumb,body[data-theme="vintage"] .roomList::-webkit-scrollbar-thumb,body[data-theme="vintage"] .adminTableWrap::-webkit-scrollbar-thumb,body[data-theme="vintage"] .adminPanel::-webkit-scrollbar-thumb,body[data-theme="vintage"] .modalBody::-webkit-scrollbar-thumb,body[data-theme="vintage"] .charList::-webkit-scrollbar-thumb,body[data-theme="vintage"] .charEdit::-webkit-scrollbar-thumb,body[data-theme="vintage"] .tabLog::-webkit-scrollbar-thumb{
background:rgba(110,92,70,0.50)!important;border-color:rgba(255,255,255,0.42)!important;
}
body[data-theme="vintage"] .send{background:rgba(122,98,72,0.16)!important;border:1px solid rgba(88,68,46,0.30)!important;color:var(--line)!important;}
body[data-theme="vintage"] .send:hover{background:rgba(122,98,72,0.21)!important;}

#wizSparkLayer{position:fixed;inset:0;pointer-events:none;z-index:200000;}
#wizSparkLayer .wizSparkle{position:absolute;transform:translate(-50%,-50%);width:1px;height:1px;}
@keyframes wizardSparkDot{0%{transform:translate(0,0) scale(0.25);opacity:0;}12%{opacity:1;}100%{transform:translate(var(--dx),var(--dy)) scale(var(--sc));opacity:0;}}
#wizSparkLayer .wizSparkDot{
position:absolute;left:0;top:0;width:3px;height:3px;border-radius:999px;
background:radial-gradient(circle, rgba(255,255,255,0.95) 0 28%, rgba(255,220,120,0.85) 36%, rgba(185,131,255,0.62) 62%, transparent 72%);
filter:drop-shadow(0 0 10px rgba(255,220,120,0.55)) drop-shadow(0 0 14px rgba(185,131,255,0.35));
animation:wizardSparkDot 500ms ease-out var(--dly) 1 both;
}
#wizSparkLayer .wizSparkle::before{
content:'';position:absolute;left:-20px;top:-20px;width:40px;height:40px;border-radius:999px;
background:radial-gradient(circle, rgba(255,255,255,0.80) 0 20%, rgba(255,220,120,0.35) 45%, transparent 70%);
filter:blur(0.2px);
opacity:0.9;
}

#pixelSparkLayer{position:fixed;inset:0;pointer-events:none;z-index:200000;}
#pixelSparkLayer .pixelSparkle{position:absolute;transform:translate(-50%,-50%);width:1px;height:1px;}
@keyframes pixelSparkDot{0%{transform:translate(0,0) scale(0.7);opacity:0;}10%{opacity:1;}100%{transform:translate(var(--dx),var(--dy)) scale(var(--sc));opacity:0;}}
#pixelSparkLayer .pixelSparkDot{
position:absolute;
left:0;
top:0;
width:1px;
height:1px;
border-radius:0;
background:linear-gradient(180deg,#ffd36c 0%,#ff9d2a 58%,#c95a12 100%);
box-shadow:0 0 0 2px #6e3e19,0 0 0 3px rgba(255,225,160,0.14);
image-rendering:pixelated;
animation:pixelSparkDot 420ms steps(8,end) var(--dly) 1 both;
}
#pixelSparkLayer .pixelSparkle::before{
content:'';
position:absolute;
left:-12px;
top:-12px;
width:24px;
height:24px;
background:radial-gradient(circle, rgba(255,214,108,0.65) 0 24%, rgba(255,145,36,0.34) 46%, transparent 72%);
opacity:0.95;
image-rendering:pixelated;
}

body[data-theme="vintage"] .msg.narrSay,
body[data-theme="vintage"] .msg.sys{
  border-radius:4px!important;
  border:1px solid rgba(122,98,72,0.42)!important;
  background:
    linear-gradient(90deg, rgba(90,64,40,0.22) 0px, rgba(255,255,255,0.00) 26px),
    linear-gradient(270deg, rgba(90,64,40,0.22) 0px, rgba(255,255,255,0.00) 26px),
    repeating-linear-gradient(45deg, rgba(0,0,0,0.018) 0 2px, rgba(255,255,255,0.018) 2px 4px),
    radial-gradient(circle at 22% 28%, rgba(0,0,0,0.035), transparent 42%),
    radial-gradient(circle at 78% 72%, rgba(0,0,0,0.028), transparent 44%),
    linear-gradient(180deg, rgba(255,248,233,0.96), rgba(235,215,183,0.92))!important;
  box-shadow:
    inset 18px 0 18px rgba(0,0,0,0.08),
    inset -18px 0 18px rgba(0,0,0,0.08),
    0 10px 26px rgba(0,0,0,0.16),
    0 0 0 1px rgba(255,255,255,0.18) inset!important;

  backdrop-filter:none!important;
}
body[data-theme="vintage"] .msg.narrSay .msgContent .text{
  font-style:italic!important;
  color:rgba(42,33,24,0.92)!important;
}
body[data-theme="vintage"] .msg.sys .msgContent .text{
  color:rgba(42,33,24,0.90)!important;
}
@keyframes wizPulse{
  0%,100%{box-shadow:0 0 18px rgba(185,131,255,0.28),0 0 36px rgba(255,220,120,0.14),0 14px 32px rgba(0,0,0,0.62);}
  50%{box-shadow:0 0 34px rgba(185,131,255,0.60),0 0 64px rgba(255,220,120,0.28),0 18px 36px rgba(0,0,0,0.68);}
}
@keyframes wizAura{
  0%,100%{transform:scale(1.00);opacity:0.55;filter:blur(14px);}
  50%{transform:scale(1.035);opacity:0.95;filter:blur(18px);}
}
@keyframes wizSpin{to{transform:rotate(360deg);}}
body[data-theme="wizard"] .dialogue{
  overflow:visible!important;              
  isolation:isolate!important;            
  border:1px solid rgba(185,131,255,0.62)!important;
  animation:wizPulse 5.0s ease-in-out infinite!important;  
}
body[data-theme="wizard"] .dialogue::before{
  content:'';
  position:absolute;
  inset:-10px;
  border-radius:18px;
  pointer-events:none;
  z-index:0;
  background:conic-gradient(
    from 0deg,
    rgba(185,131,255,0.00),
    rgba(185,131,255,0.45),
    rgba(255,220,120,0.35),
    rgba(185,131,255,0.10),
    rgba(185,131,255,0.00)
  );
  mix-blend-mode:screen;
  animation:wizAura 3.6s ease-in-out infinite, wizSpin 10s linear infinite!important;
}

body[data-theme="wizard"] .dialogue::after{
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  z-index:1;

  background-size:220% 100%;
  animation:goldShine 5.0s ease-in-out infinite!important; 
  opacity:0.70;
}


body[data-theme="wizard"] .dialogue>*{position:relative;z-index:2;}


body[data-theme="wizard"]{--wizPulseSec:40s;--wizAuraSec:7.2s;--wizSpinSec:60s;--wizShineSec:10s;}

body[data-theme="wizard"] .dialogue{animation:wizPulse var(--wizPulseSec) ease-in-out infinite!important;}
body[data-theme="wizard"] .dialogue::before{animation:wizAura var(--wizAuraSec) ease-in-out infinite,wizSpin var(--wizSpinSec) linear infinite!important;}
body[data-theme="wizard"] .dialogue::after{animation:goldShine var(--wizShineSec) ease-in-out infinite!important;}

:root{--wizTypeMs:22;--wizPopMs:160ms;}
.fxWizPop{animation:wizPop var(--wizPopMs) ease-out 1;}
@keyframes wizPop{0%{transform:translateY(6px);opacity:.25;}100%{transform:translateY(0);opacity:1;}}


body[data-theme="wizard"]{
  --bg:#070411;
  --panel:#100826;
  --line:#f7e98a;
  --muted:#b8a8d8;
  --stroke:rgba(255,255,255,0.14);
  --accent:#b983ff;
  --stage:#05030b;
  --stageGrad1:#1a0b33;
  --stageGrad2:#05030b;
  --dialogueBg:rgba(16,8,38,0.82);
  --chipBg:rgba(185,131,255,0.10);
  --msgBg:rgba(255,255,255,0.03);
  --sysBg:rgba(185,131,255,0.10);
  --inputBg:rgba(255,255,255,0.04);
  --headerBg:rgba(0,0,0,0.25);
  --tabBg:rgba(255,255,255,0.03);
  --tabBarBg:rgba(0,0,0,0.25);
  --btnBg:rgba(185,131,255,0.12);
  --btnText:var(--line);
  --hoverBg:rgba(255,215,80,0.10);
  --roomItemBg:var(--msgBg);
  --splitterBg:rgba(185,131,255,0.10);
  --bg-fallback:linear-gradient(135deg,#1a0b33,#05030b);
  --accentText:#f7e98a;
  --accentSoft:rgba(185,131,255,0.26);
  cursor:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2732%27%20height%3D%2732%27%20viewBox%3D%270%200%2032%2032%27%3E%3Cline%20x1%3D%274%27%20y1%3D%274%27%20x2%3D%2729%27%20y2%3D%2729%27%20stroke%3D%27%238b5a2b%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27%2F%3E%3Cline%20x1%3D%275%27%20y1%3D%275%27%20x2%3D%2728%27%20y2%3D%2728%27%20stroke%3D%27%23c68642%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20opacity%3D%270.85%27%2F%3E%3Ccircle%20cx%3D%274%27%20cy%3D%274%27%20r%3D%273%27%20fill%3D%27%238b5a2b%27%20stroke%3D%27%23c68642%27%20stroke-width%3D%271%27%2F%3E%3Ccircle%20cx%3D%274%27%20cy%3D%274%27%20r%3D%271.2%27%20fill%3D%27%23f7e98a%27%20opacity%3D%270.85%27%2F%3E%3C%2Fsvg%3E") 4 4, auto;
}
body[data-theme="wizard"] .contextItem,
body[data-theme="wizard"] .chatCharSelect,
body[data-theme="wizard"] button,
body[data-theme="wizard"] .iconBtn,
body[data-theme="wizard"] .btnMini,
body[data-theme="wizard"] .send,
body[data-theme="wizard"] .diceBtn,
body[data-theme="wizard"] .tabBtn,
body[data-theme="wizard"] a{cursor:inherit;}
body[data-theme="wizard"] input,
body[data-theme="wizard"] textarea,
body[data-theme="wizard"] [contenteditable="true"]{cursor:text;}
body[data-theme="wizard"] .btnMini:hover,
body[data-theme="wizard"] .iconBtn:hover,
body[data-theme="wizard"] .send:hover,
body[data-theme="wizard"] .diceBtn:hover,
body[data-theme="wizard"] .tabBtn:hover{
  box-shadow: 0 0 12px rgba(255,220,120,0.55), 0 0 22px rgba(185,131,255,0.35);
  filter: brightness(1.08);
}

.skillToolRow{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
#turnTrackerWin {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    
    width: 640px;
    max-width: calc(100vw - 40px);

    background: var(--panel);
    border: 1px solid var(--stroke);
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.5);
    display: flex;
    flex-direction: column;
    z-index: 2000;
    max-height: 80vh; 
}
#turnTrackerWin .winHead{touch-action:none;cursor:move}
#turnTrackerWin .invBody{display:flex;flex-direction:column;gap:10px}
.turnTrackerStatus{font-size:12px;opacity:.92}
.turnTrackerTop{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.turnTrackerAdd{display:flex;gap:8px;flex-wrap:wrap;align-items:center;border:1px solid var(--stroke);border-radius:12px;padding:10px;background:rgba(0,0,0,0.10)}
.turnTrackerHint{font-size:11px;color:var(--muted);opacity:.85}
.turnTrackerTable{display:flex;flex-direction:column;gap:6px}
.ttRow{display:grid;grid-template-columns:18px 1fr 54px 88px 1.2fr 150px;gap:6px;align-items:center;padding:8px;border:1px solid var(--stroke);border-radius:12px;background:rgba(0,0,0,0.10)}
.ttRow.current{border-color:var(--accent)}
.ttHead{font-size:11px;opacity:.85;font-weight:800}
.ttCell{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ttActs{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.ttMark{font-weight:900;text-align:center}
@media (max-width:720px){.ttRow{grid-template-columns:18px 1fr 48px 76px 1fr 130px;}}

.turnTrackerTable {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 600px; 
}

.ttRow {
    display: grid;

    grid-template-columns: 25px 1fr 70px 140px 1.8fr 130px;
    gap: 6px;
    align-items: center;
    padding: 6px;
    border-bottom: 1px solid rgba(255,255,255,0.05);
}

.ttHead {
    font-weight: bold;
    background: rgba(0,0,0,0.2);
    font-size: 12px;
    text-align: center;
}

.ttCell {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis; 
}

.ttHpArea {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px; 
    width: 100%;
}

.ttActs {
    display: flex;
    flex-direction: column; 
    gap: 2px;
    justify-content: center;
    align-items: flex-end; 
}

.ttBtnRow {
    display: flex;
    gap: 2px;
}

.turn-active {
    transition: all 0.3s ease;
}

.tokenItem.turn-active .tokenImg {
    border-color: var(--accent) !important;
    box-shadow: 0 0 15px var(--accent), 0 0 30px var(--accent) !important;
    transform: scale(1.1); 
    z-index: 100; 
}

.charItem.turn-active {
    border: 1px solid var(--accent) !important;
    box-shadow: inset 0 0 15px rgba(100, 168, 255, 0.3);
    background: rgba(100, 168, 255, 0.1);
}


select, #importCharSelect {
    background-color: var(--inputBg) !important;
    color: var(--line) !important;
    border: 1px solid var(--stroke) !important;
    padding: 5px;
}


select option {
    background-color: #151a22 !important;
    color: #e9eef7 !important;
}

#pingLayer{position:absolute;inset:0;pointer-events:none;z-index:90;overflow:visible;}
.pingMark{position:absolute;transform:translate(-50%,-50%);pointer-events:none;}
.pingMark::before{content:'';position:absolute;left:0;top:0;width:18px;height:18px;border:2px solid var(--accent);border-radius:999px;transform:translate(-50%,-50%) scale(0.7);opacity:1;animation:pingPulse 1.2s ease-out forwards;}
.pingMark::after{content:'';position:absolute;left:0;top:0;width:18px;height:18px;border:2px solid var(--accent);border-radius:999px;transform:translate(-50%,-50%) scale(0.2);opacity:0.8;animation:pingPulse2 1.2s ease-out forwards;}
.pingMark span{position:absolute;left:0;top:18px;transform:translateX(-50%);font-size:12px;padding:2px 6px;border-radius:999px;background:var(--panel);border:1px solid var(--stroke);color:var(--text);white-space:nowrap;box-shadow:0 6px 18px rgba(0,0,0,0.35);}
@keyframes pingPulse{0%{opacity:1;transform:translate(-50%,-50%) scale(0.7);}100%{opacity:0;transform:translate(-50%,-50%) scale(3.2);}}
@keyframes pingPulse2{0%{opacity:0.8;transform:translate(-50%,-50%) scale(0.2);}100%{opacity:0;transform:translate(-50%,-50%) scale(2.2);}}


#mafiaSettingsModal{width:540px;max-width:calc(100vw - 40px);}
#mafiaSettingsModal .winHead{touch-action:none;cursor:move;}
#mafiaSettingsModal .mafiaCfgBody{padding:12px;max-height:70vh;overflow:auto;}
#mafiaSettingsModal .mafiaCfgSection{padding:10px;border:1px solid var(--stroke);border-radius:12px;margin-bottom:10px;background:rgba(0,0,0,0.10);}
body[data-theme="light"] #mafiaSettingsModal .mafiaCfgSection{background:rgba(0,0,0,0.03);}
#mafiaSettingsModal .mafiaCfgTitle{font-weight:800;margin-bottom:8px;opacity:.95;}
#mafiaSettingsModal .mafiaCfgRows{display:flex;flex-direction:column;gap:8px;}
#mafiaSettingsModal .mafiaRow{display:flex;align-items:center;justify-content:space-between;gap:10px;}
#mafiaSettingsModal .mafiaRow input[type="number"]{width:90px;max-width:90px;}
#mafiaSettingsModal .mafiaChk{display:flex;align-items:center;gap:8px;}
#mafiaSettingsModal .mafiaCfgBtns{display:flex;gap:8px;justify-content:flex-end;margin-top:12px;}
#mafiaGameWin{width:540px;max-width:calc(100vw - 40px);}
#mafiaGameWin .winHead{touch-action:none;cursor:move;}
#mafiaGameWin .mafiaCfgBody{padding:12px;max-height:70vh;overflow:auto;}
#mafiaGameWin #mgActionBox{display:flex;flex-direction:column;gap:6px;margin-top:6px;}
#mafiaGameWin #mgActionBox select{width:100%;}
#mafiaGameWin .winHeadBtns{display:flex;gap:8px;align-items:center;}
#mafiaGameWin .btnMini.isConfirmed{outline:2px solid currentColor;}
#mafiaGameWin #mgChatLog{height:180px;overflow:auto;padding:8px;border:1px solid var(--stroke);border-radius:12px;background:rgba(0,0,0,0.08);}
body[data-theme="light"] #mafiaGameWin #mgChatLog{background:rgba(0,0,0,0.03);}
#mafiaGameWin .mgChatRow{display:flex;gap:8px;align-items:center;margin-top:8px;}
#mafiaGameWin #mgChatInput{flex:1;min-width:0;}
#mafiaGameWin .mgChatMsg{padding:2px 0;white-space:pre-wrap;word-break:break-word;}
.chatTabs{gap:4px;padding:4px 10px 0 10px;align-items:flex-end;}
.chatTab{height:30px;padding:0 12px;display:flex;align-items:center;justify-content:center;line-height:1;box-sizing:border-box;}
.chatTab.new::after{content:none;}
.btnTabAdd{width:28px;height:28px;margin-top:0;display:flex;align-items:center;justify-content:center;align-self:flex-end;box-sizing:border-box;}
.chatCharBar{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin:8px 10px 8px 10px;}
.chatCharRow{display:flex;align-items:center;gap:4px;}
.chatCharRow1{flex-wrap:nowrap;}
.chatCharLabel{font-size:12px;opacity:.85;white-space:nowrap;flex:0 0 auto;}
.chatCharRow1 .chatCharSelect{flex:1 1 auto;min-width:0;}
.chatCharRow2{flex-wrap:wrap;2px;}
.chatCharSelect{height:34px;padding:0 32px 0 12px;font-size:13px;box-sizing:border-box;}
.chatBtn{width:34px;height:34px;font-size:17px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;}
.chatBtn.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;}

.chatCharBar{margin-bottom:6px;}
.diceToolbar{padding-top:0;margin-top:0;}

:root{
  --mg-red:#ff3b3b;
  --mg-green:#00c103;
  --mg-blue:#3aa0ff;
  --mg-gray:#b7b7b7;
  --mg-brown:#b87333;
  --mg-yellow:#e99f01;
}

.mafiaGameBody{ padding:12px; }
.mafiaGameWin .winHead{
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 12px;
}
.mafiaGameWin .winTitle{ font-weight:800; letter-spacing:.2px; }
.mafiaGameWin .winBtns{ display:flex; gap:8px; }

.mgLayout{
  display:grid;
  grid-template-columns: 360px 1fr;
  gap:12px;
}
@media (max-width: 860px){
  .mgLayout{ grid-template-columns: 1fr; }
}

.mgCard{
  background: rgba(0,0,0,.25);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 12px;
  padding: 12px;
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
}
.mgCardTitle{
  font-weight:800;
  margin-bottom:10px;
  opacity:.9;
}

.mgRow2{ display:grid; grid-template-columns: 1fr 1fr; gap:10px; }
.mgStat{ padding:8px 10px; border-radius:10px; background: rgba(255,255,255,.06); }
.mgLabel{ font-size:12px; opacity:.75; margin-bottom:4px; }
.mgValue{ font-size:18px; font-weight:900; }

.mgLine{ margin-top:8px; font-size:14px; }
.mgDead{ color: var(--mg-gray); font-weight:800; }

.mgPlayers{ max-height: 280px; overflow:auto; padding-right:4px; }
.mgActions{ display:flex; flex-wrap:wrap; gap:8px; }
.mgActions button{ border-radius:10px; padding:8px 10px; }

.mgChatHint{ font-size:12px; opacity:.7; margin-bottom:8px; }
.mgChatBar{ display:flex; gap:8px; }
.mgChatInput{
  flex:1;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.25);
  color:#fff;
  outline:none;
}
.mgBtn{
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.08);
  color:#fff;
  cursor:pointer;
  font-weight:800;
}
.mgBtn:hover{ filter:brightness(1.08); }
.mgBtnStop{ background: rgba(255,59,59,.18); border-color: rgba(255,59,59,.35); }
.mgBtnClose{ background: rgba(255,255,255,.10); }
.mgBtnSend{ background: rgba(58,160,255,.18); border-color: rgba(58,160,255,.35); }

.mgRole{ font-weight:900; }
.mgRole-mafia{ color: var(--mg-red); }
.mgRole-doctor{ color: var(--mg-green); }
.mgRole-police{ color: var(--mg-blue); }
.mgRole-citizen{ color: var(--mg-gray); }
.mgRole-stalker{ color: var(--mg-brown); }
.mgRole-unknown{ color:#fff; opacity:.85; }


.msg.mgSysRed .text, .mgSysRed{ color: var(--mg-red) !important; }
.msg.mgSysBlue .text, .mgSysBlue{ color: var(--mg-blue) !important; }
.msg.mgSysGreen .text, .mgSysGreen{ color: var(--mg-green) !important; }
.msg.mgSysYellow .text, .mgSysYellow{ color: var(--mg-yellow) !important; }

#mafiaGameWin.mafiaGameWin{width:460px;max-width:calc(100vw - 20px);max-height:86vh;overflow:hidden;}
#mafiaGameWin.mafiaGameWin .mafiaGameBody{padding:10px;max-height:calc(86vh - 46px);overflow:auto;}
#mafiaGameWin.mafiaGameWin .mgStack{display:flex;flex-direction:column;gap:10px;min-height:0;}
#mafiaGameWin.mafiaGameWin .mgCard{background:var(--panel);border:1px solid var(--stroke);border-radius:12px;padding:10px;box-shadow:0 10px 24px rgba(0,0,0,.16);}
#mafiaGameWin.mafiaGameWin .mgCardTitle{font-weight:800;font-size:13px;margin-bottom:8px;color:var(--line);}
#mafiaGameWin.mafiaGameWin .mgRow2{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
#mafiaGameWin.mafiaGameWin .mgStat{background:var(--btnBg);border:1px solid var(--stroke);border-radius:10px;padding:8px;}
#mafiaGameWin.mafiaGameWin .mgLabel{font-size:11px;color:var(--muted);margin-bottom:4px;}
#mafiaGameWin.mafiaGameWin .mgValue{font-size:13px;color:var(--line);font-weight:700;word-break:break-word;}
#mafiaGameWin.mafiaGameWin .mgLine{margin-top:8px;color:var(--muted);font-size:12px;line-height:1.35;}
#mafiaGameWin.mafiaGameWin .mgLine.mgHasPolice{color:var(--line);border:1px dashed var(--stroke);padding:8px;border-radius:10px;background:var(--msgBg);}
#mafiaGameWin.mafiaGameWin .mgPlayers{max-height:min(28vh,240px);overflow:auto;padding-right:4px;}
#mafiaGameWin.mafiaGameWin .mgPlayerRow{display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid var(--stroke);border-radius:10px;background:var(--btnBg);margin:6px 0;}
#mafiaGameWin.mafiaGameWin .mgPlayerRow.dead{opacity:.65;}
#mafiaGameWin.mafiaGameWin .mgPlayerIcon{width:18px;text-align:center;opacity:.85;font-size:12px;}
#mafiaGameWin.mafiaGameWin .mgPlayerName{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--line);font-weight:800;font-size:13px;}
#mafiaGameWin.mafiaGameWin .mgBadges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;}
#mafiaGameWin.mafiaGameWin .mgBadge{font-size:11px;padding:2px 7px;border-radius:999px;border:1px solid var(--stroke);background:var(--msgBg);color:var(--line);white-space:nowrap;}
#mafiaGameWin.mafiaGameWin .mgBadge.me{border-color:var(--accent);}
#mafiaGameWin.mafiaGameWin .mgBadge.ally{border-color:rgba(106,168,255,.45);background:rgba(106,168,255,.12);}
#mafiaGameWin.mafiaGameWin .mgBadge.dead{border-color:rgba(255,80,80,.45);background:rgba(255,80,80,.10);}
#mafiaGameWin.mafiaGameWin .mgNotice{padding:9px 10px;border:1px dashed var(--stroke);border-radius:12px;background:var(--msgBg);color:var(--muted);line-height:1.35;font-size:12px;}
#mafiaGameWin.mafiaGameWin .mgVoteInfo{margin-top:8px;color:var(--muted);font-size:12px;line-height:1.35;}
#mafiaGameWin.mafiaGameWin .mgSelect{width:100%;border:1px solid var(--stroke);border-radius:10px;background:var(--inputBg);color:var(--line);padding:9px;outline:none;font-size:13px;}
#mafiaGameWin.mafiaGameWin .mgSelect:focus{border-color:var(--accent);}
#mafiaGameWin.mafiaGameWin .mgBtn{border:1px solid var(--stroke);background:var(--btnBg);color:var(--btnText);border-radius:10px;padding:8px 10px;cursor:pointer;font-size:13px;}
#mafiaGameWin.mafiaGameWin .mgBtn:hover{filter:brightness(1.06);}
#mafiaGameWin.mafiaGameWin .mgBtnSend{border-color:rgba(106,168,255,.55);background:rgba(106,168,255,.16);color:var(--line);}
#mafiaGameWin.mafiaGameWin .mgBtnClose{opacity:.9;}
#mafiaGameWin.mafiaGameWin .mgBtnStop{border-color:rgba(255,80,80,.55);background:rgba(255,80,80,.16);color:var(--line);}
#mafiaGameWin.mafiaGameWin .mgBtn.isConfirmed{border-color:rgba(70,205,255,.75);box-shadow:0 0 0 2px rgba(70,205,255,.18) inset;}
#mafiaGameWin.mafiaGameWin .mgUrgent{color:rgba(255,80,80,1)!important;}
#mafiaGameWin.mafiaGameWin .mgDead{color:var(--muted);font-weight:700;}
@media (max-width:560px){
#mafiaGameWin.mafiaGameWin{width:calc(100vw - 20px);}
#mafiaGameWin.mafiaGameWin .mgPlayers{max-height:min(30vh,220px);}
}

.chatCharBar .chatNameColorBtn{width:100%;height:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:center;font-size:inherit;line-height:1;}
.chatCharBar .chatNameColorPicker{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;}

.chatCharRow2{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(36px,1fr)) !important;align-items:stretch;}
.chatCharRow2 > .chatBtn{width:100% !important;min-width:0 !important;padding:0 !important;font-size:18px !important;}
.chatCharRow2 > .chatNameColorWrap{width:100% !important;min-width:0 !important;height:34px !important;position:relative !important;}
.chatCharRow2 > .chatNameColorWrap .chatNameColorBtn{width:100% !important;height:100% !important;padding:0 !important;display:flex !important;align-items:center !important;justify-content:center !important;font-size:18px !important;line-height:1 !important;}
.chatCharRow2 > .chatNameColorWrap .chatNameColorPicker{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;opacity:0 !important;}

.chatNameColorWrap{flex:1 1 0 !important;width:auto !important;min-width:0 !important;}
.chatNameColorWrap .chatNameColorBtn{width:100% !important;height:100% !important;}


#stageTopTools{display:inline-flex;align-items:center;gap:4px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;white-space:nowrap;max-width:100%;min-width:0;flex:0 1 auto;opacity:1;transform:translateX(0);transition:max-width .4s cubic-bezier(.25,1,.5,1),opacity .3s ease-out,transform .4s cubic-bezier(.34,1.56,.64,1);scrollbar-width:none;-ms-overflow-style:none;}
#stageTopTools::-webkit-scrollbar{width:0;height:0;}
#stageTopTools::-webkit-scrollbar-track{background:transparent;border:0;}
#stageTopTools::-webkit-scrollbar-thumb{background:transparent;border:0;}
.stageTopLeft.toolsWrap #stageTopTools{flex-basis:100%;width:100%;max-width:100%;white-space:normal;flex-wrap:wrap;overflow:visible;}
#stageTopTools.compact .iconBtn{padding:0 8px;min-width:34px;}




#stageTopTools.collapsed {
    max-width: 0; 
    opacity: 0;   
    transform: translateX(-20px); 
    
    pointer-events: none; 
    margin: 0; 
    padding: 0;
}
#btnTopToolsToggle {
    width: 32px; 
    height: 32px;
    border-radius: 50%; 
    
    display: inline-flex;
    align-items: center;
    justify-content: center;
    
    margin-left: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    padding: 0;

    background: transparent !important;   
    border: none !important;           
    box-shadow: none !important;      

    color: var(--muted); 
}

#btnTopToolsToggle:hover {
    background-color: var(--hoverBg) !important; 
    color: var(--accent) !important; 
    transform: scale(1.1);
}

#btnTopToolsToggle svg {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

#btnTopToolsToggle.closed svg {
    transform: rotate(180deg);
}

.badgeLink {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    
    height: 24px;        
    font-size: 12px;      
    padding: 0 8px;      
    
    background-color: var(--chipBg); 
    border: 1px solid var(--stroke); 
    border-radius: 40px;  
    color: var(--muted);  
    text-decoration: none; 
    white-space: nowrap;  
    
    transition: all 0.2s;
}

.badgeLink:hover {
    background-color: var(--hoverBg);
    color: var(--line);
    border-color: var(--muted);
}


.btnMini.danger {

    color: #ff4d4f !important;
    border-color: #ff4d4f !important;
}

body[data-theme="gold"] .chatTools .iconBtn,
body[data-theme="black"] .chatTools .iconBtn {
    background: var(--btnBg) !important;
    border: 1px solid var(--stroke) !important;
    color: var(--muted) !important; 
    
    border-radius: 8px; 
}

body[data-theme="gold"] .chatTools .iconBtn:hover,
body[data-theme="black"] .chatTools .iconBtn:hover {
    background: var(--hoverBg) !important;
    color: var(--accent) !important; 
    border-color: var(--accent) !important;
    filter: none !important;
}
.authWrapDark {
 
    height: 100%;          
    overflow-y: auto;        
    -webkit-overflow-scrolling: touch;

    scrollbar-width: none;    
    -ms-overflow-style: none; 

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;  
    
    background: var(--bg-fallback); 
    background: var(--bg);
}

.authWrapDark::-webkit-scrollbar {
    display: none;
}

@media (max-width: 768px) {
    .authWrapDark {
        justify-content: flex-start;
        
        padding-top: 40px;
        padding-bottom: 80px; 
    }
    
    .authStackDark {
        margin-bottom: 20px;
        width: 90%; 
        max-width: 400px;
    }
}

@media (min-width: 769px) {
    .authWrapDark {
        justify-content: flex-start; 
        padding: 60px 0;          
        overflow-y: auto;       
    }

    .authHeroDark {
        margin-bottom: 30px; 
        transform: scale(1.1);     
    }

    .authStackDark {
        display: flex;
        flex-direction: column;  
        align-items: center;    
        gap: 24px;             
        
        width: 100%;
        max-width: 480px;      
    }

    .authCardDark {
        width: 100%;            
        padding: 36px 40px;     
        
        border: 1px solid var(--stroke);
    }

    .authForm .field {
        margin-bottom: 18px;
    }
    .authForm .input {
        padding: 12px 14px;   
        font-size: 15px;     
        height: auto;
    }
    .authForm label {
        font-size: 14px;
        margin-bottom: 6px;
    }
    .authForm .send {
        padding: 14px;         
        font-size: 16px;
        margin-top: 12px;
        font-weight: bold;
    }

    .authCardDark:nth-child(2) .authTitleDark {
        margin-top: 5px;
    }
}

.chatHeader #chatTabsHost{flex:1;min-width:0;}
.chatHeader #chatTabsHost .chatTabs{padding:0;background:transparent;border-bottom:none;align-items:flex-end;height:100%;}
.chatHeader #chatTabsHost .chatTab.active{margin-bottom:0;border-bottom:none;}
.chatHeader{align-items:center!important;padding-bottom:0!important;}
.chatHeader .chatTitle{align-items:flex-end!important;}
.chatHeader #chatTabsHost{align-self:stretch;display:flex;align-items:flex-end;}
.chatHeader #chatTabsHost .chatTabs{width:100%;align-items:flex-end;height:100%;}
.chatHeader #chatTabsHost .chatTab{margin-bottom:-1px;}

.chatHeader #chatTabsHost .btnTabAdd{align-self:center;margin-top:0;}
.chatHeader .chatTools .iconBtn{position:relative;top:-2px;}

.chatTabs .chatTab.new::after{content:none!important;}
.chatTabs .chatTab.new:not(.active){
border-color:var(--accent)!important;
color:var(--accent)!important;
background:var(--accentSoft, rgba(106,168,255,0.18))!important;
box-shadow:0 0 0 1px var(--accentSoft, rgba(106,168,255,0.18)) inset!important;
font-weight:800!important;
}
.chatTabs .chatTab.new:not(.active):hover{
background:var(--hoverBg)!important;
filter:brightness(1.05);
}
@supports (background:color-mix(in srgb,#fff 50%,#000)){
.chatTabs .chatTab.new:not(.active){
border-color:color-mix(in srgb,var(--accent) 72%,var(--stroke))!important;
color:color-mix(in srgb,var(--accent) 92%,var(--line))!important;
background:color-mix(in srgb,var(--accent) 18%,var(--btnBg))!important;
box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent) inset!important;
}
.chatTabs .chatTab.new:not(.active):hover{
background:color-mix(in srgb,var(--accent) 26%,var(--btnBg))!important;
}
}
@keyframes tabNewPulse{
0%{transform:translateY(0) scale(1);filter:brightness(1);}
50%{transform:translateY(-1px) scale(1.03);filter:brightness(1.25);}
100%{transform:translateY(0) scale(1);filter:brightness(1);}
}
.chatTabs .chatTab.new:not(.active){
animation:tabNewPulse 0.9s ease-in-out infinite!important;
}
.cutinOverlay{position:fixed;left:0;top:0;width:100vw;height:100vh;z-index:300000;display:flex;align-items:center;justify-content:center;background:transparent;backdrop-filter:blur(1px);}

.cutinOverlay.hidden{display:none;}
.cutinOverlay img{max-width:80vw;max-height:80vh;object-fit:contain;filter:drop-shadow(0 10px 24px rgba(0,0,0,0.55));transform:scale(0.95);opacity:0;transition:transform .18s ease,opacity .18s ease;}
.cutinOverlay.show img{transform:scale(1);opacity:1;}
.cutinOverlay.mode-cover img{width:100vw;height:100vh;max-width:none;max-height:none;object-fit:cover;}
.cutinOverlay.mode-contain img{width:100vw;height:100vh;max-width:none;max-height:none;object-fit:contain;}
.cutinOverlay.mode-original{overflow:auto;}
.cutinOverlay.mode-original img{width:auto;height:auto;max-width:none;max-height:none;object-fit:none;margin:auto;}

.stageTopLeft{flex-wrap:nowrap!important;min-width:0!important;}
.stageTopLeft.toolsWrap{flex-wrap:wrap!important;}
.stageRoomTitle{min-width:0!important;flex:1 1 auto!important;}
#stageTopTools{max-width:100%!important;min-width:0!important;flex:0 1 auto!important;white-space:nowrap!important;}
.stageTopLeft.toolsWrap #stageTopTools{flex-basis:100%!important;width:100%!important;max-width:100%!important;display:flex!important;flex-wrap:wrap!important;white-space:normal!important;overflow:visible!important;}

#stageTopTools .ttEmoji{display:inline-flex;align-items:center;}
#stageTopTools .ttLabel{display:inline-flex;align-items:center;}
#stageTopTools.compact .ttLabel{display:none!important;}
#stageTopTools.compact .ttEmoji{margin-right:0!important;}
#stageTopTools.compact .iconBtn{padding:0 8px;min-width:34px;}
#stageTopTools.compact .btnMini{padding:0 8px;min-width:34px;}

body[data-dlgshape="round"] .dialogue{border-radius:999px !important;padding:14px 58px !important;}
body[data-dlgshape="square"] .dialogue{left:0 !important;right:0 !important;bottom:0 !important;border:0 !important;border-radius:0 !important;}


body[data-dlgshape="gradient"]{--dlgGrad0:var(--dialogueBg);--dlgGrad1:color-mix(in srgb,var(--dialogueBg) 58%,transparent);--dlgGrad2:color-mix(in srgb,var(--dialogueBg) 30%,transparent);--dlgGradStrongTo:67%;--dlgGradMidTo:80%;--dlgGradTopTo:90%;--dlgGradPadB:78px;}
body[data-dlgshape="gradient"] .dialogue{left:0 !important;right:0 !important;bottom:0 !important;border:0 !important;border-radius:0 !important;outline:0 !important;box-shadow:none !important;backdrop-filter:none !important;min-height:240px !important;justify-content:flex-end !important;padding:24px 16px var(--dlgGradPadB) !important;background:linear-gradient(to top,var(--dlgGrad0) 0%,var(--dlgGrad0) var(--dlgGradStrongTo),var(--dlgGrad1) var(--dlgGradMidTo),var(--dlgGrad2) var(--dlgGradTopTo),transparent 100%) !important;}
body[data-theme="dark"][data-dlgshape="gradient"],body:not([data-theme])[data-dlgshape="gradient"]{--dlgGrad0:color-mix(in srgb,var(--dialogueBg) 55%,#000);}
body[data-theme="black"][data-dlgshape="gradient"]{--dlgGrad0:color-mix(in srgb,var(--dialogueBg) 45%,#000);}


#videoContainer{background:var(--panel)!important;border:1px solid var(--stroke)!important;box-shadow:0 12px 32px rgba(0,0,0,.45)!important;border-radius:12px!important;overflow:hidden!important;}
#videoContainer::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:var(--accent);pointer-events:none;}
#videoContainer .winHead{background:var(--headerBg)!important;color:var(--text)!important;border-bottom:1px solid var(--stroke)!important;}
#videoContainer .winTitle{font-weight:700;}
#videoContainer .winClose{color:var(--muted)!important;padding:2px 8px;}
#videoContainer .winClose:hover{background:var(--hoverBg)!important;border-radius:8px;}
#videoContainer .sceneBody{background:#000!important;padding:0!important;max-height:none!important;overflow:hidden!important;}

#videoContainer{box-shadow:none!important;}
#videoContainer::before{content:none!important;display:none!important;}
#videoContainer .winHead{box-shadow:none!important;}

#videoContainer .winHead button.btnMini{
width:26px!important;
height:22px!important;
min-width:26px!important;
min-height:22px!important;
padding:0!important;
display:inline-flex!important;
align-items:center!important;
justify-content:center!important;
line-height:1!important;
font-size:12px!important;
}
#videoContainer .winHead button.btnMini.danger{
width:26px!important;
height:22px!important;
min-width:26px!important;
min-height:22px!important;
padding:0!important;
}

.chatFmtBar{border-top:none;margin-top:0;padding-top:0;position:relative;}
.chatSizeMenu{position:absolute;right:8px;bottom:calc(100% + 6px);display:flex;gap:4px;align-items:center;padding:6px;background:var(--panel);border:1px solid var(--stroke);border-radius:12px;box-shadow:0 10px 24px rgba(0,0,0,.25);z-index:50;}
.chatFmtBtn{min-width:28px;text-align:center;}
.chatSizeBtn,.chatImgBtn{min-width:30px;}
.fs-12{font-size:12px;}
.fs-14{font-size:14px;}
.fs-16{font-size:16px;}
.fs-18{font-size:18px;}
.fs-20{font-size:20px;}
.fs-24{font-size:24px;}



.msg.textOnlyMsg .msgContent{align-items:center!important;justify-content:center!important;width:100%!important;position:relative!important;padding:0!important;margin:0!important;}
.msg.textOnlyMsg .text{text-align:center!important;margin:0!important;padding:0!important;line-height:1.35!important;}
.msg.textOnlyMsg .msgActions{position:absolute;right:10px;top:-8px;margin-left:0;}
.tabLog .msg.textOnlyMsg .msgContent{text-align:center!important;}
.tabLog .msg.textOnlyMsg .text{text-align:center!important;}
.msg.narrSay.textOnlyMsg{
  justify-content:flex-start!important;
  align-items:flex-start!important;
}
.msg.narrSay.textOnlyMsg .msgContent{
  align-items:stretch!important;
  justify-content:flex-start!important;
  width:100%!important;
}
.msg.narrSay.textOnlyMsg .msgContent .text{
  display:block!important;
  width:100%!important;
  text-align:left!important;
  white-space:pre-wrap!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  line-height:1.55!important;
}


body[data-theme="christmas"],
body[data-theme="green"]{
  --bg:#1f3b2d;
  --panel:#315945;
  --line:#fff8f0;
  --muted:#e4ddd2;
  --stroke:rgba(255,244,232,0.16);
  --accent:#c94a3c;
  --stage:#21392d;
  --stageGrad1:#628b72;
  --stageGrad2:#2f5140;
  --dialogueBg:rgba(49,89,69,0.90);
  --chipBg:rgba(201,74,60,0.18);
  --msgBg:rgba(255,255,255,0.07);
  --sysBg:rgba(201,74,60,0.16);
  --inputBg:rgba(255,255,255,0.08);
  --headerBg:rgba(22,37,30,0.34);
  --tabBg:rgba(255,255,255,0.06);
  --tabBarBg:rgba(22,37,30,0.34);
  --btnBg:#c94a3c;
  --btnText:#fff8f1;
  --hoverBg:#db5f4f;
  --roomItemBg:var(--msgBg);
  --splitterBg:rgba(201,74,60,0.18);
  --bg-fallback:linear-gradient(135deg,#6f9b80,#2f5140);
  --accentText:#fff6ef;
  --accentSoft:rgba(201,74,60,0.32);
}

body[data-theme="halloween"],
body[data-theme="orange"]{
  --bg:#fff1de;
  --panel:#fff7ef;
  --line:#5b2300;
  --muted:#9a5a2a;
  --stroke:rgba(255,145,40,0.20);
  --accent:#ff7a00;
  --stage:#ffe2bf;
  --stageGrad1:#ffb158;
  --stageGrad2:#ffd09a;
  --dialogueBg:rgba(255,165,72,0.88);
  --chipBg:rgba(255,122,0,0.16);
  --msgBg:rgba(255,255,255,0.72);
  --sysBg:rgba(255,122,0,0.14);
  --inputBg:rgba(255,255,255,0.74);
  --headerBg:rgba(255,233,208,0.92);
  --tabBg:rgba(255,255,255,0.78);
  --tabBarBg:rgba(255,236,214,0.90);
  --btnBg:#ff7a00;
  --btnText:#fff8f0;
  --hoverBg:#ff9226;
  --roomItemBg:rgba(255,255,255,0.72);
  --splitterBg:rgba(255,122,0,0.14);
  --bg-fallback:linear-gradient(135deg,#ffbf72,#ffe9c9);
  --accentText:#fff8f1;
  --accentSoft:rgba(255,122,0,0.28);
}

body[data-theme="christmas"] .miniStatLabel,
body[data-theme="green"] .miniStatLabel,
body[data-theme="halloween"] .miniStatLabel,
body[data-theme="orange"] .miniStatLabel{
  color:var(--muted);
}
body[data-theme="christmas"] .miniStatLabel span:last-child,
body[data-theme="green"] .miniStatLabel span:last-child,
body[data-theme="halloween"] .miniStatLabel span:last-child,
body[data-theme="orange"] .miniStatLabel span:last-child{
  color:var(--line);
}

body[data-theme="christmas"] .msg.sys,
body[data-theme="christmas"] .msg.statMsg,
body[data-theme="green"] .msg.sys,
body[data-theme="green"] .msg.statMsg{
  background:rgba(217,31,58,0.14)!important;
  border-color:rgba(255,240,230,0.18)!important;
  color:var(--line)!important;
}
body[data-theme="halloween"] .msg.sys,
body[data-theme="halloween"] .msg.statMsg,
body[data-theme="orange"] .msg.sys,
body[data-theme="orange"] .msg.statMsg{
  background:rgba(255,122,0,0.12)!important;
  border-color:rgba(255,145,40,0.20)!important;
  color:var(--line)!important;
}

body[data-theme="christmas"]:not([data-dlgshape="gradient"]) .dialogue,
body[data-theme="green"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(36,94,70,0.95),rgba(23,55,43,0.92))!important;
  border:1px solid rgba(217,31,58,0.52)!important;
  box-shadow:0 12px 28px rgba(0,0,0,0.34),0 0 22px rgba(217,31,58,0.22)!important;
  color:var(--line)!important;
}
body[data-theme="halloween"]:not([data-dlgshape="gradient"]) .dialogue,
body[data-theme="orange"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(255,186,110,0.96),rgba(255,146,46,0.90))!important;
  border:1px solid rgba(255,122,0,0.42)!important;
  box-shadow:0 12px 28px rgba(255,122,0,0.14),0 0 16px rgba(255,150,60,0.14)!important;
  color:#4e1d00!important;
}

body[data-theme="christmas"] .msg.narrSay,
body[data-theme="green"] .msg.narrSay{
  border:1px solid rgba(255,244,232,0.18)!important;
  border-radius:16px!important;
  background:
    linear-gradient(180deg,rgba(53,95,73,0.96) 0%,rgba(39,71,54,0.95) 52%,rgba(28,49,38,0.96) 100%)!important;
  box-shadow:
    0 14px 28px rgba(0,0,0,0.26),
    0 0 18px rgba(201,74,60,0.12),
    inset 0 1px 0 rgba(255,255,255,0.08)!important;
  backdrop-filter:none!important;
}
body[data-theme="christmas"] .msg.narrSay .msgContent .text,
body[data-theme="green"] .msg.narrSay .msgContent .text{
  color:#fff7ee!important;
  font-style:italic!important;
  text-shadow:0 1px 0 rgba(0,0,0,0.22);
}

body[data-theme="halloween"] .msg.narrSay,
body[data-theme="orange"] .msg.narrSay{
  border:1px solid rgba(255,146,46,0.34)!important;
  border-radius:16px!important;
  background:
    linear-gradient(180deg,rgba(255,194,120,0.97) 0%,rgba(255,154,56,0.94) 54%,rgba(236,118,22,0.95) 100%)!important;
  box-shadow:
    0 14px 28px rgba(0,0,0,0.22),
    0 0 18px rgba(255,122,0,0.16),
    inset 0 1px 0 rgba(255,248,232,0.22)!important;
  backdrop-filter:none!important;
}
body[data-theme="halloween"] .msg.narrSay .msgContent .text,
body[data-theme="orange"] .msg.narrSay .msgContent .text{
  color:#4a1b00!important;
  font-style:italic!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.16);
}

body[data-theme="pixel"] .msg.narrSay{
  border:2px solid #f0c66f!important;
  background:
    repeating-linear-gradient(
      180deg,
      rgba(72,49,24,0.96) 0px,
      rgba(72,49,24,0.96) 3px,
      rgba(55,37,18,0.96) 3px,
      rgba(55,37,18,0.96) 6px
    )!important;
  box-shadow:
    0 0 0 2px #5d3919,
    inset 0 1px 0 rgba(255,232,176,0.18),
    inset 0 -1px 0 rgba(0,0,0,0.28)!important;
  color:#fff1cf!important;
  backdrop-filter:none!important;
}

body[data-theme="pixel"] .msg.narrSay .meta{
  color:#f0d7a1!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.4)!important;
}

body[data-theme="pixel"] .msg.narrSay .name{
  color:#ffd36c!important;
  font-weight:800!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.45)!important;
}

body[data-theme="pixel"] .msg.narrSay .time{
  color:#ffe6ae!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.45)!important;
}

body[data-theme="pixel"] .msg.narrSay .msgContent .text,
body[data-theme="pixel"] .msg.narrSay .text{
  color:#fff7e3!important;
  font-style:italic!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.35)!important;
}
  font-style:italic!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.16);
}

body[data-theme="christmas"][data-dlgshape="gradient"],
body[data-theme="green"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(24,56,42,0.96);
  --dlgGrad1:rgba(24,56,42,0.62);
  --dlgGrad2:rgba(24,56,42,0.22);
}
body[data-theme="halloween"][data-dlgshape="gradient"],
body[data-theme="orange"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(255,138,34,0.96);
  --dlgGrad1:rgba(255,138,34,0.54);
  --dlgGrad2:rgba(255,138,34,0.16);
}

body[data-theme="christmas"][data-dlgshape="gradient"] .dialogue,
body[data-theme="green"][data-dlgshape="gradient"] .dialogue,
body[data-theme="halloween"][data-dlgshape="gradient"] .dialogue,
body[data-theme="orange"][data-dlgshape="gradient"] .dialogue{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  background:linear-gradient(to top,var(--dlgGrad0) 0%,var(--dlgGrad0) var(--dlgGradStrongTo),var(--dlgGrad1) var(--dlgGradMidTo),var(--dlgGrad2) var(--dlgGradTopTo),transparent 100%) !important;
}

body[data-theme="christmas"] .speaker,
body[data-theme="green"] .speaker{
  color:#ff5f78!important;
  text-shadow:0 0 12px rgba(217,31,58,0.30);
}
body[data-theme="halloween"] .speaker,
body[data-theme="orange"] .speaker{
  color:#8a3300!important;
  text-shadow:0 0 10px rgba(255,170,70,0.18);
}

body[data-theme="christmas"] .stageTopLeft .iconBtn,
body[data-theme="christmas"] .stageTopRight .iconBtn,
body[data-theme="christmas"] .chatHeader .iconBtn,
body[data-theme="green"] .stageTopLeft .iconBtn,
body[data-theme="green"] .stageTopRight .iconBtn,
body[data-theme="green"] .chatHeader .iconBtn,
body[data-theme="halloween"] .stageTopLeft .iconBtn,
body[data-theme="halloween"] .stageTopRight .iconBtn,
body[data-theme="halloween"] .chatHeader .iconBtn,
body[data-theme="orange"] .stageTopLeft .iconBtn,
body[data-theme="orange"] .stageTopRight .iconBtn,
body[data-theme="orange"] .chatHeader .iconBtn{
  background:var(--btnBg)!important;
  border:1px solid color-mix(in srgb,var(--btnBg) 68%,#ffffff 12%)!important;
  color:var(--btnText)!important;
  border-radius:10px!important;
  padding:6px 8px!important;
  line-height:1!important;
  filter:none!important;
}

body[data-theme="christmas"] .stageTopLeft .iconBtn:hover,
body[data-theme="christmas"] .stageTopRight .iconBtn:hover,
body[data-theme="christmas"] .chatHeader .iconBtn:hover,
body[data-theme="green"] .stageTopLeft .iconBtn:hover,
body[data-theme="green"] .stageTopRight .iconBtn:hover,
body[data-theme="green"] .chatHeader .iconBtn:hover{
  background:var(--hoverBg)!important;
  box-shadow:0 0 18px rgba(217,31,58,0.28)!important;
}
body[data-theme="halloween"] .stageTopLeft .iconBtn:hover,
body[data-theme="halloween"] .stageTopRight .iconBtn:hover,
body[data-theme="halloween"] .chatHeader .iconBtn:hover,
body[data-theme="orange"] .stageTopLeft .iconBtn:hover,
body[data-theme="orange"] .stageTopRight .iconBtn:hover,
body[data-theme="orange"] .chatHeader .iconBtn:hover{
  background:var(--hoverBg)!important;
  box-shadow:0 0 16px rgba(255,122,0,0.24)!important;
}

body[data-theme="christmas"] .chatHeader,
body[data-theme="green"] .chatHeader,
body[data-theme="halloween"] .chatHeader,
body[data-theme="orange"] .chatHeader{
  background:var(--headerBg)!important;
  border-bottom-color:var(--stroke)!important;
}

body[data-theme="christmas"] .settingItem:hover,
body[data-theme="green"] .settingItem:hover{
  background:rgba(217,31,58,0.12)!important;
  color:#ff6b83!important;
}
body[data-theme="halloween"] .settingItem:hover,
body[data-theme="orange"] .settingItem:hover{
  background:rgba(255,122,0,0.12)!important;
  color:#ff7a00!important;
}

body[data-theme="christmas"] .chatTabs,
body[data-theme="green"] .chatTabs{
  background:transparent!important;
  border-bottom:none!important;
}

body[data-theme="halloween"] .chatTabs,
body[data-theme="orange"] .chatTabs{
  background:var(--tabBarBg)!important;
  border-bottom:1px solid var(--stroke)!important;
}

body[data-theme="christmas"] .chatTab,
body[data-theme="green"] .chatTab,
body[data-theme="halloween"] .chatTab,
body[data-theme="orange"] .chatTab{
  background:var(--tabBg)!important;
  border:1px solid var(--stroke)!important;
  border-bottom:none!important;
  color:var(--muted)!important;
}

body[data-theme="christmas"] .chatTab:hover,
body[data-theme="green"] .chatTab:hover{
  background:rgba(217,31,58,0.12)!important;
  color:var(--line)!important;
}
body[data-theme="halloween"] .chatTab:hover,
body[data-theme="orange"] .chatTab:hover{
  background:rgba(255,122,0,0.10)!important;
  color:var(--line)!important;
}

body[data-theme="christmas"] .chatTab.active,
body[data-theme="green"] .chatTab.active,
body[data-theme="halloween"] .chatTab.active,
body[data-theme="orange"] .chatTab.active{
  background:var(--panel)!important;
  color:var(--accent)!important;
  border-color:var(--stroke)!important;
  border-bottom-color:var(--panel)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,0.06);
}

body[data-theme="christmas"] .bgmControls,
body[data-theme="green"] .bgmControls,
body[data-theme="halloween"] .bgmControls,
body[data-theme="orange"] .bgmControls{
  background:var(--inputBg)!important;
  border:1px solid var(--stroke)!important;
}
body[data-theme="christmas"] .soundTabs,
body[data-theme="green"] .soundTabs,
body[data-theme="halloween"] .soundTabs,
body[data-theme="orange"] .soundTabs{
  border-bottom:1px solid var(--stroke)!important;
}

body[data-theme="christmas"] .tabBtn,
body[data-theme="green"] .tabBtn,
body[data-theme="halloween"] .tabBtn,
body[data-theme="orange"] .tabBtn{
  background:var(--btnBg)!important;
  border-color:color-mix(in srgb,var(--btnBg) 68%,#ffffff 12%)!important;
  color:var(--btnText)!important;
}

body[data-theme="christmas"] .tabBtn:hover,
body[data-theme="green"] .tabBtn:hover{
  background:var(--hoverBg)!important;
  color:#fffaf5!important;
}
body[data-theme="halloween"] .tabBtn:hover,
body[data-theme="orange"] .tabBtn:hover{
  background:var(--hoverBg)!important;
  color:#fff8f1!important;
}

body[data-theme="christmas"] .tabBtn.on,
body[data-theme="green"] .tabBtn.on{
  background:#b71931!important;
  border-color:#f46b82!important;
  color:#fff9f3!important;
  box-shadow:0 0 16px rgba(217,31,58,0.26)!important;
}
body[data-theme="halloween"] .tabBtn.on,
body[data-theme="orange"] .tabBtn.on{
  background:#ff8c1a!important;
  border-color:#ffb163!important;
  color:#fffaf3!important;
  box-shadow:0 0 14px rgba(255,122,0,0.22)!important;
}

body[data-theme="christmas"] .chatCharSelect,
body[data-theme="green"] .chatCharSelect,
body[data-theme="halloween"] .chatCharSelect,
body[data-theme="orange"] .chatCharSelect{
  background:var(--inputBg)!important;
  border-color:var(--stroke)!important;
  color:var(--line)!important;
}
body[data-theme="christmas"] .chatCharSelect:hover,
body[data-theme="green"] .chatCharSelect:hover{
  background:rgba(217,31,58,0.10)!important;
}
body[data-theme="halloween"] .chatCharSelect:hover,
body[data-theme="orange"] .chatCharSelect:hover{
  background:rgba(255,122,0,0.08)!important;
}
body[data-theme="christmas"] .chatCharSelect option,
body[data-theme="green"] .chatCharSelect option{
  background:#245440!important;
  color:#fffaf2!important;
}
body[data-theme="halloween"] .chatCharSelect option,
body[data-theme="orange"] .chatCharSelect option{
  background:#fff3e5!important;
  color:#5b2300!important;
}

body[data-theme="christmas"] .sceneWindow,
body[data-theme="green"] .sceneWindow,
body[data-theme="halloween"] .sceneWindow,
body[data-theme="orange"] .sceneWindow{
  background:var(--panel)!important;
  border-color:var(--stroke)!important;
}
body[data-theme="christmas"] .winHead,
body[data-theme="green"] .winHead,
body[data-theme="halloween"] .winHead,
body[data-theme="orange"] .winHead{
  background:var(--headerBg)!important;
  border-bottom:1px solid var(--stroke)!important;
}
body[data-theme="christmas"] .winTitle,
body[data-theme="green"] .winTitle,
body[data-theme="halloween"] .winTitle,
body[data-theme="orange"] .winTitle{
  color:var(--line)!important;
}
body[data-theme="christmas"] .sceneBody,
body[data-theme="green"] .sceneBody,
body[data-theme="halloween"] .sceneBody,
body[data-theme="orange"] .sceneBody{
  color:var(--line)!important;
}
body[data-theme="christmas"] .sceneBody *,
body[data-theme="green"] .sceneBody *,
body[data-theme="halloween"] .sceneBody *,
body[data-theme="orange"] .sceneBody *{
  color:inherit;
}

body[data-theme="christmas"] .send,
body[data-theme="christmas"] .btnMini,
body[data-theme="christmas"] .iconBtn,
body[data-theme="christmas"] .diceBtn,
body[data-theme="green"] .send,
body[data-theme="green"] .btnMini,
body[data-theme="green"] .iconBtn,
body[data-theme="green"] .diceBtn{
  background:#cf213d!important;
  border-color:#f0657d!important;
  color:#fff8f2!important;
}
body[data-theme="halloween"] .send,
body[data-theme="halloween"] .btnMini,
body[data-theme="halloween"] .iconBtn,
body[data-theme="halloween"] .diceBtn,
body[data-theme="orange"] .send,
body[data-theme="orange"] .btnMini,
body[data-theme="orange"] .iconBtn,
body[data-theme="orange"] .diceBtn{
  background:#ff7a00!important;
  border-color:#ffb163!important;
  color:#fff8f0!important;
}

body[data-theme="christmas"] .send:hover,
body[data-theme="christmas"] .btnMini:hover,
body[data-theme="christmas"] .iconBtn:hover,
body[data-theme="christmas"] .diceBtn:hover,
body[data-theme="green"] .send:hover,
body[data-theme="green"] .btnMini:hover,
body[data-theme="green"] .iconBtn:hover,
body[data-theme="green"] .diceBtn:hover{
  background:#e72d4b!important;
  box-shadow:0 0 18px rgba(217,31,58,0.28)!important;
}
body[data-theme="halloween"] .send:hover,
body[data-theme="halloween"] .btnMini:hover,
body[data-theme="halloween"] .iconBtn:hover,
body[data-theme="halloween"] .diceBtn:hover,
body[data-theme="orange"] .send:hover,
body[data-theme="orange"] .btnMini:hover,
body[data-theme="orange"] .iconBtn:hover,
body[data-theme="orange"] .diceBtn:hover{
  background:#ff9226!important;
  box-shadow:0 0 16px rgba(255,122,0,0.24)!important;
}

body[data-theme="christmas"] .log,
body[data-theme="christmas"] .roomList,
body[data-theme="christmas"] .adminTableWrap,
body[data-theme="christmas"] .adminPanel,
body[data-theme="christmas"] .modalBody,
body[data-theme="christmas"] .charList,
body[data-theme="christmas"] .charEdit,
body[data-theme="christmas"] .tabLog,
body[data-theme="green"] .log,
body[data-theme="green"] .roomList,
body[data-theme="green"] .adminTableWrap,
body[data-theme="green"] .adminPanel,
body[data-theme="green"] .modalBody,
body[data-theme="green"] .charList,
body[data-theme="green"] .charEdit,
body[data-theme="green"] .tabLog{
  scrollbar-color:rgba(217,31,58,0.78) rgba(255,255,255,0.06)!important;
}
body[data-theme="halloween"] .log,
body[data-theme="halloween"] .roomList,
body[data-theme="halloween"] .adminTableWrap,
body[data-theme="halloween"] .adminPanel,
body[data-theme="halloween"] .modalBody,
body[data-theme="halloween"] .charList,
body[data-theme="halloween"] .charEdit,
body[data-theme="halloween"] .tabLog,
body[data-theme="orange"] .log,
body[data-theme="orange"] .roomList,
body[data-theme="orange"] .adminTableWrap,
body[data-theme="orange"] .adminPanel,
body[data-theme="orange"] .modalBody,
body[data-theme="orange"] .charList,
body[data-theme="orange"] .charEdit,
body[data-theme="orange"] .tabLog{
  scrollbar-color:rgba(255,122,0,0.74) rgba(255,255,255,0.20)!important;
}

body[data-theme="christmas"] .log::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .charList::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .tabLog::-webkit-scrollbar-thumb,
body[data-theme="green"] .log::-webkit-scrollbar-thumb,
body[data-theme="green"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="green"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="green"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="green"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="green"] .charList::-webkit-scrollbar-thumb,
body[data-theme="green"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="green"] .tabLog::-webkit-scrollbar-thumb{
  background:rgba(217,31,58,0.68)!important;
  border-color:rgba(255,255,255,0.18)!important;
}
body[data-theme="halloween"] .log::-webkit-scrollbar-thumb,
body[data-theme="halloween"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="halloween"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="halloween"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="halloween"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="halloween"] .charList::-webkit-scrollbar-thumb,
body[data-theme="halloween"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="halloween"] .tabLog::-webkit-scrollbar-thumb,
body[data-theme="orange"] .log::-webkit-scrollbar-thumb,
body[data-theme="orange"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="orange"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="orange"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="orange"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="orange"] .charList::-webkit-scrollbar-thumb,
body[data-theme="orange"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="orange"] .tabLog::-webkit-scrollbar-thumb{
  background:rgba(255,122,0,0.58)!important;
  border-color:rgba(255,255,255,0.24)!important;
}

body[data-theme="christmas"] .log::-webkit-scrollbar-track,
body[data-theme="christmas"] .roomList::-webkit-scrollbar-track,
body[data-theme="christmas"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="christmas"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="christmas"] .modalBody::-webkit-scrollbar-track,
body[data-theme="christmas"] .charList::-webkit-scrollbar-track,
body[data-theme="christmas"] .charEdit::-webkit-scrollbar-track,
body[data-theme="christmas"] .tabLog::-webkit-scrollbar-track,
body[data-theme="green"] .log::-webkit-scrollbar-track,
body[data-theme="green"] .roomList::-webkit-scrollbar-track,
body[data-theme="green"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="green"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="green"] .modalBody::-webkit-scrollbar-track,
body[data-theme="green"] .charList::-webkit-scrollbar-track,
body[data-theme="green"] .charEdit::-webkit-scrollbar-track,
body[data-theme="green"] .tabLog::-webkit-scrollbar-track{
  background:rgba(255,255,255,0.05)!important;
  border-color:rgba(217,31,58,0.18)!important;
}
body[data-theme="halloween"] .log::-webkit-scrollbar-track,
body[data-theme="halloween"] .roomList::-webkit-scrollbar-track,
body[data-theme="halloween"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="halloween"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="halloween"] .modalBody::-webkit-scrollbar-track,
body[data-theme="halloween"] .charList::-webkit-scrollbar-track,
body[data-theme="halloween"] .charEdit::-webkit-scrollbar-track,
body[data-theme="halloween"] .tabLog::-webkit-scrollbar-track,
body[data-theme="orange"] .log::-webkit-scrollbar-track,
body[data-theme="orange"] .roomList::-webkit-scrollbar-track,
body[data-theme="orange"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="orange"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="orange"] .modalBody::-webkit-scrollbar-track,
body[data-theme="orange"] .charList::-webkit-scrollbar-track,
body[data-theme="orange"] .charEdit::-webkit-scrollbar-track,
body[data-theme="orange"] .tabLog::-webkit-scrollbar-track{
  background:rgba(255,255,255,0.32)!important;
  border-color:rgba(255,122,0,0.16)!important;
}

body[data-theme="christmas"],
body[data-theme="green"]{
  --bg:#183227;
  --panel:#294c3a;
  --line:#f7f1e8;
  --muted:#d8ddd4;
  --stroke:rgba(255,242,228,0.14);
  --accent:#c63d32;
  --stage:#193126;
  --stageGrad1:#4c8667;
  --stageGrad2:#274736;
  --dialogueBg:rgba(41,76,58,0.92);
  --chipBg:rgba(198,61,50,0.20);
  --msgBg:rgba(255,255,255,0.05);
  --sysBg:rgba(198,61,50,0.16);
  --inputBg:rgba(255,255,255,0.06);
  --headerBg:rgba(18,32,25,0.38);
  --tabBg:rgba(255,255,255,0.05);
  --tabBarBg:rgba(18,32,25,0.38);
  --btnBg:#c63d32;
  --btnText:#fff8f0;
  --hoverBg:#da5145;
  --roomItemBg:var(--msgBg);
  --splitterBg:rgba(198,61,50,0.18);
  --bg-fallback:linear-gradient(135deg,#4f8869,#244232);
  --accentText:#fff6ef;
  --accentSoft:rgba(198,61,50,0.34);
}

body[data-theme="christmas"] .msg.sys,
body[data-theme="christmas"] .msg.statMsg{
  background:linear-gradient(180deg,rgba(78,20,29,0.96),rgba(34,72,55,0.94))!important;
  border:1px solid rgba(255,238,224,0.30)!important;
  border-left:4px solid #d94b57!important;
  color:var(--line)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 8px 20px rgba(198,61,50,0.22)!important;
}
body[data-theme="christmas"] .msg.sys .name,
body[data-theme="christmas"] .msg.statMsg .name{
  color:#ffd7dc!important;
}
body[data-theme="christmas"] .msg.sys .time,
body[data-theme="christmas"] .msg.statMsg .time{
  color:#ffe7cc!important;
}
body[data-theme="christmas"] .msg.sys .text,
body[data-theme="christmas"] .msg.statMsg .text{
  color:#fffaf6!important;
}

body[data-theme="green"] .msg.sys,
body[data-theme="green"] .msg.statMsg{
  background:rgba(198,61,50,0.15)!important;
  border-color:rgba(255,238,224,0.18)!important;
  color:var(--line)!important;
}

body[data-theme="christmas"]:not([data-dlgshape="gradient"]) .dialogue,
body[data-theme="green"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(49,88,68,0.95),rgba(24,50,39,0.93))!important;
  border:1px solid rgba(198,61,50,0.44)!important;
  box-shadow:0 12px 28px rgba(0,0,0,0.32),0 0 18px rgba(198,61,50,0.16)!important;
  color:var(--line)!important;
}

body[data-theme="christmas"][data-dlgshape="gradient"],
body[data-theme="green"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(26,51,40,0.96);
  --dlgGrad1:rgba(26,51,40,0.64);
  --dlgGrad2:rgba(26,51,40,0.20);
}

body[data-theme="christmas"] .speaker,
body[data-theme="green"] .speaker{
  color:#df6a59!important;
  text-shadow:0 0 12px rgba(198,61,50,0.24);
}

body[data-theme="christmas"] .settingItem:hover,
body[data-theme="green"] .settingItem:hover{
  background:rgba(198,61,50,0.12)!important;
  color:#e17363!important;
}

body[data-theme="christmas"] .chatTab:hover,
body[data-theme="green"] .chatTab:hover{
  background:rgba(198,61,50,0.12)!important;
  color:var(--line)!important;
}

body[data-theme="christmas"] .tabBtn.on,
body[data-theme="green"] .tabBtn.on{
  background:#b5362c!important;
  border-color:#df8a7d!important;
  color:#fff8f2!important;
  box-shadow:0 0 14px rgba(198,61,50,0.20)!important;
}

body[data-theme="christmas"] .send,
body[data-theme="christmas"] .btnMini,
body[data-theme="christmas"] .iconBtn,
body[data-theme="christmas"] .diceBtn,
body[data-theme="green"] .send,
body[data-theme="green"] .btnMini,
body[data-theme="green"] .iconBtn,
body[data-theme="green"] .diceBtn{
  background:#c63d32!important;
  border-color:#dd8a7e!important;
  color:#fff8f1!important;
}

body[data-theme="christmas"] .send:hover,
body[data-theme="christmas"] .btnMini:hover,
body[data-theme="christmas"] .iconBtn:hover,
body[data-theme="christmas"] .diceBtn:hover,
body[data-theme="green"] .send:hover,
body[data-theme="green"] .btnMini:hover,
body[data-theme="green"] .iconBtn:hover,
body[data-theme="green"] .diceBtn:hover{
  background:#da5145!important;
  box-shadow:0 0 16px rgba(198,61,50,0.22)!important;
}

body[data-theme="christmas"] .stageTopLeft .iconBtn:hover,
body[data-theme="christmas"] .stageTopRight .iconBtn:hover,
body[data-theme="christmas"] .chatHeader .iconBtn:hover,
body[data-theme="green"] .stageTopLeft .iconBtn:hover,
body[data-theme="green"] .stageTopRight .iconBtn:hover,
body[data-theme="green"] .chatHeader .iconBtn:hover{
  background:#da5145!important;
  box-shadow:0 0 16px rgba(198,61,50,0.22)!important;
}

body[data-theme="christmas"] .log,
body[data-theme="christmas"] .roomList,
body[data-theme="christmas"] .adminTableWrap,
body[data-theme="christmas"] .adminPanel,
body[data-theme="christmas"] .modalBody,
body[data-theme="christmas"] .charList,
body[data-theme="christmas"] .charEdit,
body[data-theme="christmas"] .tabLog,
body[data-theme="green"] .log,
body[data-theme="green"] .roomList,
body[data-theme="green"] .adminTableWrap,
body[data-theme="green"] .adminPanel,
body[data-theme="green"] .modalBody,
body[data-theme="green"] .charList,
body[data-theme="green"] .charEdit,
body[data-theme="green"] .tabLog{
  scrollbar-color:rgba(198,61,50,0.72) rgba(255,255,255,0.05)!important;
}

body[data-theme="christmas"] .log::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .charList::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="christmas"] .tabLog::-webkit-scrollbar-thumb,
body[data-theme="green"] .log::-webkit-scrollbar-thumb,
body[data-theme="green"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="green"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="green"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="green"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="green"] .charList::-webkit-scrollbar-thumb,
body[data-theme="green"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="green"] .tabLog::-webkit-scrollbar-thumb{
  background:rgba(198,61,50,0.64)!important;
  border-color:rgba(255,255,255,0.16)!important;
}

body[data-theme="christmas"] .log::-webkit-scrollbar-track,
body[data-theme="christmas"] .roomList::-webkit-scrollbar-track,
body[data-theme="christmas"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="christmas"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="christmas"] .modalBody::-webkit-scrollbar-track,
body[data-theme="christmas"] .charList::-webkit-scrollbar-track,
body[data-theme="christmas"] .charEdit::-webkit-scrollbar-track,
body[data-theme="christmas"] .tabLog::-webkit-scrollbar-track,
body[data-theme="green"] .log::-webkit-scrollbar-track,
body[data-theme="green"] .roomList::-webkit-scrollbar-track,
body[data-theme="green"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="green"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="green"] .modalBody::-webkit-scrollbar-track,
body[data-theme="green"] .charList::-webkit-scrollbar-track,
body[data-theme="green"] .charEdit::-webkit-scrollbar-track,
body[data-theme="green"] .tabLog::-webkit-scrollbar-track{
  background:rgba(255,255,255,0.04)!important;
  border-color:rgba(198,61,50,0.15)!important;
}


body[data-theme="chocolate"]{
  --bg:#2a1c16;
  --panel:#3b281f;
  --line:#fff4ea;
  --muted:#d9c0b1;
  --stroke:rgba(255,235,222,0.14);
  --accent:#b87344;
  --stage:#221713;
  --stageGrad1:#5a3c2d;
  --stageGrad2:#2a1c16;
  --dialogueBg:rgba(59,40,31,0.92);
  --chipBg:rgba(184,115,68,0.16);
  --msgBg:rgba(255,255,255,0.05);
  --sysBg:rgba(184,115,68,0.13);
  --inputBg:rgba(255,255,255,0.06);
  --headerBg:rgba(28,18,14,0.36);
  --tabBg:rgba(255,255,255,0.05);
  --tabBarBg:rgba(28,18,14,0.36);
  --btnBg:#8f5a37;
  --btnText:#fff7f1;
  --hoverBg:#a96940;
  --roomItemBg:var(--msgBg);
  --splitterBg:rgba(184,115,68,0.14);
  --bg-fallback:linear-gradient(135deg,#5a3c2d,#2a1c16);
  --accentText:#fff7f0;
  --accentSoft:rgba(184,115,68,0.28);
}

body[data-theme="chocolate"] .miniStatLabel{color:var(--muted);}
body[data-theme="chocolate"] .miniStatLabel span:last-child{color:var(--line);}

body[data-theme="chocolate"] .msg.sys,
body[data-theme="chocolate"] .msg.statMsg{
  background:rgba(184,115,68,0.13)!important;
  border-color:rgba(255,233,221,0.14)!important;
  color:var(--line)!important;
}

body[data-theme="chocolate"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(74,49,37,0.95),rgba(42,28,22,0.92))!important;
  border:1px solid rgba(184,115,68,0.34)!important;
  box-shadow:0 12px 28px rgba(0,0,0,0.34),0 0 18px rgba(184,115,68,0.12)!important;
  color:var(--line)!important;
}

body[data-theme="chocolate"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(46,30,23,0.96);
  --dlgGrad1:rgba(46,30,23,0.62);
  --dlgGrad2:rgba(46,30,23,0.18);
}
body[data-theme="chocolate"][data-dlgshape="gradient"] .dialogue{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  background:linear-gradient(to top,var(--dlgGrad0) 0%,var(--dlgGrad0) var(--dlgGradStrongTo),var(--dlgGrad1) var(--dlgGradMidTo),var(--dlgGrad2) var(--dlgGradTopTo),transparent 100%)!important;
}

body[data-theme="chocolate"] .speaker{
  color:#e0a36c!important;
  text-shadow:0 0 10px rgba(184,115,68,0.22);
}

body[data-theme="chocolate"] .stageTopLeft .iconBtn,
body[data-theme="chocolate"] .stageTopRight .iconBtn,
body[data-theme="chocolate"] .chatHeader .iconBtn{
  background:var(--btnBg)!important;
  border:1px solid rgba(255,225,207,0.16)!important;
  color:var(--btnText)!important;
  border-radius:10px!important;
  padding:6px 8px!important;
  line-height:1!important;
  filter:none!important;
}
body[data-theme="chocolate"] .stageTopLeft .iconBtn:hover,
body[data-theme="chocolate"] .stageTopRight .iconBtn:hover,
body[data-theme="chocolate"] .chatHeader .iconBtn:hover{
  background:var(--hoverBg)!important;
  box-shadow:0 0 16px rgba(184,115,68,0.18)!important;
}

body[data-theme="chocolate"] .chatHeader{
  background:var(--headerBg)!important;
  border-bottom-color:var(--stroke)!important;
}
body[data-theme="chocolate"] .settingItem:hover{
  background:rgba(184,115,68,0.10)!important;
  color:#efb27e!important;
}

body[data-theme="chocolate"] .chatTabs{
  background:var(--tabBarBg)!important;
  border-bottom:1px solid var(--stroke)!important;
}
body[data-theme="chocolate"] .chatTab{
  background:var(--tabBg)!important;
  border:1px solid var(--stroke)!important;
  border-bottom:none!important;
  color:var(--muted)!important;
}
body[data-theme="chocolate"] .chatTab:hover{
  background:rgba(184,115,68,0.10)!important;
  color:var(--line)!important;
}
body[data-theme="chocolate"] .chatTab.active{
  background:var(--panel)!important;
  color:var(--accent)!important;
  border-color:var(--stroke)!important;
  border-bottom-color:var(--panel)!important;
}

body[data-theme="chocolate"] .bgmControls{
  background:var(--inputBg)!important;
  border:1px solid var(--stroke)!important;
}
body[data-theme="chocolate"] .soundTabs{
  border-bottom:1px solid var(--stroke)!important;
}
body[data-theme="chocolate"] .tabBtn{
  background:var(--btnBg)!important;
  border-color:rgba(255,225,207,0.16)!important;
  color:var(--btnText)!important;
}
body[data-theme="chocolate"] .tabBtn:hover{
  background:var(--hoverBg)!important;
  color:var(--btnText)!important;
}
body[data-theme="chocolate"] .tabBtn.on{
  background:#774828!important;
  border-color:#dfac82!important;
  color:#fff8f2!important;
  box-shadow:0 0 14px rgba(184,115,68,0.16)!important;
}

body[data-theme="chocolate"] .chatCharSelect{
  background:var(--inputBg)!important;
  border-color:var(--stroke)!important;
  color:var(--line)!important;
}
body[data-theme="chocolate"] .chatCharSelect:hover{
  background:rgba(184,115,68,0.08)!important;
}
body[data-theme="chocolate"] .chatCharSelect option{
  background:#3b281f!important;
  color:#fff4ea!important;
}

body[data-theme="chocolate"] .sceneWindow{
  background:var(--panel)!important;
  border-color:var(--stroke)!important;
}
body[data-theme="chocolate"] .winHead{
  background:var(--headerBg)!important;
  border-bottom:1px solid var(--stroke)!important;
}
body[data-theme="chocolate"] .winTitle{color:var(--line)!important;}
body[data-theme="chocolate"] .sceneBody{color:var(--line)!important;}
body[data-theme="chocolate"] .sceneBody *{color:inherit;}

body[data-theme="chocolate"] .send,
body[data-theme="chocolate"] .btnMini,
body[data-theme="chocolate"] .iconBtn,
body[data-theme="chocolate"] .diceBtn{
  background:#8f5a37!important;
  border-color:#d5a581!important;
  color:#fff7f1!important;
}
body[data-theme="chocolate"] .send:hover,
body[data-theme="chocolate"] .btnMini:hover,
body[data-theme="chocolate"] .iconBtn:hover,
body[data-theme="chocolate"] .diceBtn:hover{
  background:#a96940!important;
  box-shadow:0 0 16px rgba(184,115,68,0.18)!important;
}

body[data-theme="chocolate"] .log,
body[data-theme="chocolate"] .roomList,
body[data-theme="chocolate"] .adminTableWrap,
body[data-theme="chocolate"] .adminPanel,
body[data-theme="chocolate"] .modalBody,
body[data-theme="chocolate"] .charList,
body[data-theme="chocolate"] .charEdit,
body[data-theme="chocolate"] .tabLog{
  scrollbar-color:rgba(184,115,68,0.66) rgba(255,255,255,0.05)!important;
}
body[data-theme="chocolate"] .log::-webkit-scrollbar-thumb,
body[data-theme="chocolate"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="chocolate"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="chocolate"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="chocolate"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="chocolate"] .charList::-webkit-scrollbar-thumb,
body[data-theme="chocolate"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="chocolate"] .tabLog::-webkit-scrollbar-thumb{
  background:rgba(184,115,68,0.58)!important;
  border-color:rgba(255,255,255,0.16)!important;
}
body[data-theme="chocolate"] .log::-webkit-scrollbar-track,
body[data-theme="chocolate"] .roomList::-webkit-scrollbar-track,
body[data-theme="chocolate"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="chocolate"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="chocolate"] .modalBody::-webkit-scrollbar-track,
body[data-theme="chocolate"] .charList::-webkit-scrollbar-track,
body[data-theme="chocolate"] .charEdit::-webkit-scrollbar-track,
body[data-theme="chocolate"] .tabLog::-webkit-scrollbar-track{
  background:rgba(255,255,255,0.04)!important;
  border-color:rgba(184,115,68,0.14)!important;
}


body[data-theme="candy"]{
  --bg:#f4edff;
  --panel:#fbf7ff;
  --line:#5c467e;
  --muted:#947db8;
  --stroke:rgba(183,156,235,0.20);
  --accent:#b58cff;
  --stage:#ede2ff;
  --stageGrad1:#d6b7ff;
  --stageGrad2:#f7efff;
  --dialogueBg:rgba(234,220,255,0.92);
  --chipBg:rgba(181,140,255,0.18);
  --msgBg:rgba(255,255,255,0.76);
  --sysBg:rgba(181,140,255,0.14);
  --inputBg:rgba(255,255,255,0.82);
  --headerBg:rgba(247,240,255,0.94);
  --tabBg:rgba(255,255,255,0.84);
  --tabBarBg:rgba(243,232,255,0.92);
  --btnBg:#c59cff;
  --btnText:#fffaff;
  --hoverBg:#d5b3ff;
  --roomItemBg:rgba(255,255,255,0.78);
  --splitterBg:rgba(181,140,255,0.14);
  --bg-fallback:linear-gradient(135deg,#d9beff,#f9f1ff);
  --accentText:#fffaff;
  --accentSoft:rgba(181,140,255,0.28);
}

body[data-theme="candy"] .miniStatLabel{color:var(--muted);}
body[data-theme="candy"] .miniStatLabel span:last-child{color:var(--line);}

body[data-theme="candy"] .msg.sys,
body[data-theme="candy"] .msg.statMsg{
  background:rgba(181,140,255,0.12)!important;
  border-color:rgba(183,156,235,0.18)!important;
  color:var(--line)!important;
}

body[data-theme="candy"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(240,228,255,0.96),rgba(224,206,255,0.90))!important;
  border:1px solid rgba(181,140,255,0.32)!important;
  box-shadow:0 10px 24px rgba(181,140,255,0.14),0 0 14px rgba(213,179,255,0.18)!important;
  color:#5c467e!important;
}

body[data-theme="candy"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(209,178,255,0.96);
  --dlgGrad1:rgba(209,178,255,0.54);
  --dlgGrad2:rgba(209,178,255,0.14);
}
body[data-theme="candy"][data-dlgshape="gradient"] .dialogue{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  background:linear-gradient(to top,var(--dlgGrad0) 0%,var(--dlgGrad0) var(--dlgGradStrongTo),var(--dlgGrad1) var(--dlgGradMidTo),var(--dlgGrad2) var(--dlgGradTopTo),transparent 100%)!important;
}

body[data-theme="candy"] .speaker{
  color:#9c70ef!important;
  text-shadow:0 0 10px rgba(181,140,255,0.24);
}

body[data-theme="candy"] .stageTopLeft .iconBtn,
body[data-theme="candy"] .stageTopRight .iconBtn,
body[data-theme="candy"] .chatHeader .iconBtn{
  background:var(--btnBg)!important;
  border:1px solid rgba(181,140,255,0.20)!important;
  color:var(--btnText)!important;
  border-radius:10px!important;
  padding:6px 8px!important;
  line-height:1!important;
  filter:none!important;
}
body[data-theme="candy"] .stageTopLeft .iconBtn:hover,
body[data-theme="candy"] .stageTopRight .iconBtn:hover,
body[data-theme="candy"] .chatHeader .iconBtn:hover{
  background:var(--hoverBg)!important;
  box-shadow:0 0 14px rgba(181,140,255,0.22)!important;
}

body[data-theme="candy"] .chatHeader{
  background:var(--headerBg)!important;
  border-bottom-color:var(--stroke)!important;
}
body[data-theme="candy"] .settingItem:hover{
  background:rgba(181,140,255,0.10)!important;
  color:#9c70ef!important;
}

body[data-theme="candy"] .chatTabs{
  background:var(--tabBarBg)!important;
  border-bottom:1px solid var(--stroke)!important;
}
body[data-theme="candy"] .chatTab{
  background:var(--tabBg)!important;
  border:1px solid var(--stroke)!important;
  border-bottom:none!important;
  color:var(--muted)!important;
}
body[data-theme="candy"] .chatTab:hover{
  background:rgba(181,140,255,0.10)!important;
  color:var(--line)!important;
}
body[data-theme="candy"] .chatTab.active{
  background:var(--panel)!important;
  color:var(--accent)!important;
  border-color:var(--stroke)!important;
  border-bottom-color:var(--panel)!important;
}

body[data-theme="candy"] .bgmControls{
  background:var(--inputBg)!important;
  border:1px solid var(--stroke)!important;
}
body[data-theme="candy"] .soundTabs{
  border-bottom:1px solid var(--stroke)!important;
}
body[data-theme="candy"] .tabBtn{
  background:var(--btnBg)!important;
  border-color:rgba(181,140,255,0.20)!important;
  color:var(--btnText)!important;
}
body[data-theme="candy"] .tabBtn:hover{
  background:var(--hoverBg)!important;
  color:var(--btnText)!important;
}
body[data-theme="candy"] .tabBtn.on{
  background:#af82f8!important;
  border-color:#e1cbff!important;
  color:#fffaff!important;
  box-shadow:0 0 14px rgba(181,140,255,0.18)!important;
}

body[data-theme="candy"] .chatCharSelect{
  background:var(--inputBg)!important;
  border-color:var(--stroke)!important;
  color:var(--line)!important;
}
body[data-theme="candy"] .chatCharSelect:hover{
  background:rgba(181,140,255,0.08)!important;
}
body[data-theme="candy"] .chatCharSelect option{
  background:#fbf7ff!important;
  color:#5c467e!important;
}

body[data-theme="candy"] .sceneWindow{
  background:var(--panel)!important;
  border-color:var(--stroke)!important;
}
body[data-theme="candy"] .winHead{
  background:var(--headerBg)!important;
  border-bottom:1px solid var(--stroke)!important;
}
body[data-theme="candy"] .winTitle{color:var(--line)!important;}
body[data-theme="candy"] .sceneBody{color:var(--line)!important;}
body[data-theme="candy"] .sceneBody *{color:inherit;}

body[data-theme="candy"] .send,
body[data-theme="candy"] .btnMini,
body[data-theme="candy"] .iconBtn,
body[data-theme="candy"] .diceBtn{
  background:#c59cff!important;
  border-color:#e1cbff!important;
  color:#fffaff!important;
}
body[data-theme="candy"] .send:hover,
body[data-theme="candy"] .btnMini:hover,
body[data-theme="candy"] .iconBtn:hover,
body[data-theme="candy"] .diceBtn:hover{
  background:#d5b3ff!important;
  box-shadow:0 0 14px rgba(181,140,255,0.22)!important;
}

body[data-theme="candy"] .log,
body[data-theme="candy"] .roomList,
body[data-theme="candy"] .adminTableWrap,
body[data-theme="candy"] .adminPanel,
body[data-theme="candy"] .modalBody,
body[data-theme="candy"] .charList,
body[data-theme="candy"] .charEdit,
body[data-theme="candy"] .tabLog{
  scrollbar-color:rgba(181,140,255,0.54) rgba(255,255,255,0.50)!important;
}
body[data-theme="candy"] .log::-webkit-scrollbar-thumb,
body[data-theme="candy"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="candy"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="candy"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="candy"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="candy"] .charList::-webkit-scrollbar-thumb,
body[data-theme="candy"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="candy"] .tabLog::-webkit-scrollbar-thumb{
  background:rgba(181,140,255,0.48)!important;
  border-color:rgba(255,255,255,0.50)!important;
}
body[data-theme="candy"] .log::-webkit-scrollbar-track,
body[data-theme="candy"] .roomList::-webkit-scrollbar-track,
body[data-theme="candy"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="candy"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="candy"] .modalBody::-webkit-scrollbar-track,
body[data-theme="candy"] .charList::-webkit-scrollbar-track,
body[data-theme="candy"] .charEdit::-webkit-scrollbar-track,
body[data-theme="candy"] .tabLog::-webkit-scrollbar-track{
  background:rgba(255,255,255,0.48)!important;
  border-color:rgba(181,140,255,0.16)!important;
}

body[data-theme="chocolate"]{
  --bg:#1b120f;
  --panel:#281b16;
  --line:#fff4ea;
  --muted:#cbb5a8;
  --stroke:rgba(255,231,214,0.12);
  --accent:#c79062;
  --stage:#140d0a;
  --stageGrad1:#3d2a23;
  --stageGrad2:#1b120f;
  --dialogueBg:rgba(40,27,22,0.94);
  --chipBg:rgba(199,144,98,0.14);
  --msgBg:rgba(255,255,255,0.04);
  --sysBg:rgba(199,144,98,0.11);
  --inputBg:rgba(255,255,255,0.05);
  --headerBg:rgba(19,12,10,0.42);
  --tabBg:rgba(255,255,255,0.04);
  --tabBarBg:rgba(19,12,10,0.42);
  --btnBg:#8f603f;
  --btnText:#fff7f1;
  --hoverBg:#a9754f;
  --roomItemBg:var(--msgBg);
  --splitterBg:rgba(199,144,98,0.12);
  --bg-fallback:linear-gradient(135deg,#3d2a23,#1b120f);
  --accentText:#fff6ef;
  --accentSoft:rgba(199,144,98,0.22);
}

body[data-theme="chocolate"] .msg.sys,
body[data-theme="chocolate"] .msg.statMsg{
  background:rgba(199,144,98,0.10)!important;
  border-color:rgba(255,228,210,0.12)!important;
  color:var(--line)!important;
}

body[data-theme="chocolate"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(53,37,30,0.96),rgba(27,18,15,0.94))!important;
  border:1px solid rgba(199,144,98,0.24)!important;
  box-shadow:0 12px 28px rgba(0,0,0,0.44),0 0 14px rgba(199,144,98,0.10)!important;
  color:var(--line)!important;
}

body[data-theme="chocolate"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(29,19,16,0.97);
  --dlgGrad1:rgba(29,19,16,0.66);
  --dlgGrad2:rgba(29,19,16,0.18);
}

body[data-theme="chocolate"] .speaker{
  color:#e0b089!important;
  text-shadow:0 0 10px rgba(199,144,98,0.18);
}

body[data-theme="chocolate"] .stageTopLeft .iconBtn,
body[data-theme="chocolate"] .stageTopRight .iconBtn,
body[data-theme="chocolate"] .chatHeader .iconBtn,
body[data-theme="chocolate"] .send,
body[data-theme="chocolate"] .btnMini,
body[data-theme="chocolate"] .iconBtn,
body[data-theme="chocolate"] .diceBtn{
  background:#8f603f!important;
  border-color:#d4ab8b!important;
  color:#fff7f1!important;
}

body[data-theme="chocolate"] .stageTopLeft .iconBtn:hover,
body[data-theme="chocolate"] .stageTopRight .iconBtn:hover,
body[data-theme="chocolate"] .chatHeader .iconBtn:hover,
body[data-theme="chocolate"] .send:hover,
body[data-theme="chocolate"] .btnMini:hover,
body[data-theme="chocolate"] .iconBtn:hover,
body[data-theme="chocolate"] .diceBtn:hover{
  background:#a9754f!important;
  box-shadow:0 0 14px rgba(199,144,98,0.16)!important;
}

body[data-theme="chocolate"] .tabBtn{
  background:#8f603f!important;
  border-color:#d4ab8b!important;
  color:#fff7f1!important;
}
body[data-theme="chocolate"] .tabBtn:hover{
  background:#a9754f!important;
  color:#fff7f1!important;
}
body[data-theme="chocolate"] .tabBtn.on{
  background:#6f4528!important;
  border-color:#e2b997!important;
  color:#fff8f2!important;
  box-shadow:0 0 12px rgba(199,144,98,0.16)!important;
}

body[data-theme="chocolate"] .settingItem:hover{
  background:rgba(199,144,98,0.10)!important;
  color:#efc09a!important;
}

body[data-theme="chocolate"] .chatTab:hover{
  background:rgba(199,144,98,0.10)!important;
  color:var(--line)!important;
}

body[data-theme="chocolate"] .chatTab.active{
  color:#d9a57b!important;
}

body[data-theme="chocolate"] .chatCharSelect option{
  background:#281b16!important;
  color:#fff4ea!important;
}

body[data-theme="chocolate"] .log,
body[data-theme="chocolate"] .roomList,
body[data-theme="chocolate"] .adminTableWrap,
body[data-theme="chocolate"] .adminPanel,
body[data-theme="chocolate"] .modalBody,
body[data-theme="chocolate"] .charList,
body[data-theme="chocolate"] .charEdit,
body[data-theme="chocolate"] .tabLog{
  scrollbar-color:rgba(199,144,98,0.56) rgba(255,255,255,0.04)!important;
}

body[data-theme="candy"]{
  --bg:#f7efff;
  --panel:#fff8ff;
  --line:#63498a;
  --muted:#9a7fbe;
  --stroke:rgba(206,167,255,0.20);
  --accent:#d784ff;
  --stage:#efe4ff;
  --stageGrad1:#e4c6ff;
  --stageGrad2:#ffd7ef;
  --dialogueBg:rgba(245,229,255,0.92);
  --chipBg:rgba(232,142,206,0.18);
  --msgBg:rgba(255,255,255,0.80);
  --sysBg:rgba(215,132,255,0.12);
  --inputBg:rgba(255,255,255,0.84);
  --headerBg:rgba(250,241,255,0.94);
  --tabBg:rgba(255,255,255,0.86);
  --tabBarBg:linear-gradient(90deg,rgba(239,224,255,0.94),rgba(255,230,243,0.94));
  --btnBg:linear-gradient(90deg,#d7a8ff,#ffb6df);
  --btnText:#fffaff;
  --hoverBg:linear-gradient(90deg,#e2bcff,#ffc6e6);
  --roomItemBg:rgba(255,255,255,0.82);
  --splitterBg:rgba(215,132,255,0.14);
  --bg-fallback:linear-gradient(135deg,#e3c5ff,#ffd8ee);
  --accentText:#fffaff;
  --accentSoft:rgba(215,132,255,0.30);
}

body[data-theme="candy"] .msg.sys,
body[data-theme="candy"] .msg.statMsg{
  background:linear-gradient(90deg,rgba(215,168,255,0.14),rgba(255,182,223,0.14))!important;
  border-color:rgba(206,167,255,0.18)!important;
  color:var(--line)!important;
}

body[data-theme="candy"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(246,233,255,0.97),rgba(255,236,246,0.92))!important;
  border:1px solid rgba(215,132,255,0.26)!important;
  box-shadow:0 10px 24px rgba(215,132,255,0.10),0 0 14px rgba(255,182,223,0.18)!important;
  color:#63498a!important;
}

body[data-theme="candy"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(224,183,255,0.96);
  --dlgGrad1:rgba(255,191,226,0.48);
  --dlgGrad2:rgba(255,191,226,0.12);
}

body[data-theme="candy"] .speaker{
  color:#b76df1!important;
  text-shadow:0 0 10px rgba(232,142,206,0.22);
}

body[data-theme="candy"] .stageTopLeft .iconBtn,
body[data-theme="candy"] .stageTopRight .iconBtn,
body[data-theme="candy"] .chatHeader .iconBtn,
body[data-theme="candy"] .send,
body[data-theme="candy"] .btnMini,
body[data-theme="candy"] .iconBtn,
body[data-theme="candy"] .diceBtn{
  background:linear-gradient(90deg,#d7a8ff,#ffb6df)!important;
  border-color:#f3e1ff!important;
  color:#fffaff!important;
}

body[data-theme="candy"] .stageTopLeft .iconBtn:hover,
body[data-theme="candy"] .stageTopRight .iconBtn:hover,
body[data-theme="candy"] .chatHeader .iconBtn:hover,
body[data-theme="candy"] .send:hover,
body[data-theme="candy"] .btnMini:hover,
body[data-theme="candy"] .iconBtn:hover,
body[data-theme="candy"] .diceBtn:hover{
  background:linear-gradient(90deg,#e2bcff,#ffc6e6)!important;
  box-shadow:0 0 14px rgba(215,132,255,0.18)!important;
}

body[data-theme="candy"] .tabBtn{
  background:linear-gradient(90deg,#d7a8ff,#ffb6df)!important;
  border-color:#f3e1ff!important;
  color:#fffaff!important;
}
body[data-theme="candy"] .tabBtn:hover{
  background:linear-gradient(90deg,#e2bcff,#ffc6e6)!important;
  color:#fffaff!important;
}
body[data-theme="candy"] .tabBtn.on{
  background:linear-gradient(90deg,#c78eff,#f79ed1)!important;
  border-color:#f6e7ff!important;
  color:#fffaff!important;
  box-shadow:0 0 14px rgba(215,132,255,0.18)!important;
}

body[data-theme="candy"] .settingItem:hover{
  background:linear-gradient(90deg,rgba(215,168,255,0.10),rgba(255,182,223,0.10))!important;
  color:#b76df1!important;
}

body[data-theme="candy"] .chatTabs{
  background:linear-gradient(90deg,rgba(239,224,255,0.94),rgba(255,230,243,0.94))!important;
}

body[data-theme="candy"] .chatTab:hover{
  background:linear-gradient(90deg,rgba(215,168,255,0.10),rgba(255,182,223,0.10))!important;
  color:var(--line)!important;
}
body[data-theme="candy"] .chatTab.active{
  color:#cf78f0!important;
}

body[data-theme="candy"] .chatCharSelect option{
  background:#fff8ff!important;
  color:#63498a!important;
}

body[data-theme="candy"] .log,
body[data-theme="candy"] .roomList,
body[data-theme="candy"] .adminTableWrap,
body[data-theme="candy"] .adminPanel,
body[data-theme="candy"] .modalBody,
body[data-theme="candy"] .charList,
body[data-theme="candy"] .charEdit,
body[data-theme="candy"] .tabLog{
  scrollbar-color:rgba(215,132,255,0.48) rgba(255,255,255,0.52)!important;
}

body[data-theme="chocolate"]{
  --bg:#160f0d;
  --panel:#231813;
  --line:#fff2e7;
  --muted:#c6aa97;
  --stroke:rgba(255,227,205,0.10);
  --accent:#c58b5d;
  --stage:#120c0a;
  --stageGrad1:#34231d;
  --stageGrad2:#160f0d;
  --dialogueBg:rgba(35,24,19,0.95);
  --chipBg:rgba(197,139,93,0.12);
  --msgBg:rgba(255,255,255,0.035);
  --sysBg:rgba(197,139,93,0.10);
  --inputBg:rgba(255,255,255,0.045);
  --headerBg:rgba(17,11,9,0.44);
  --tabBg:rgba(255,255,255,0.04);
  --tabBarBg:rgba(17,11,9,0.44);
  --btnBg:#5e3926;
  --btnText:#fff7f1;
  --hoverBg:#75472e;
  --roomItemBg:var(--msgBg);
  --splitterBg:rgba(197,139,93,0.10);
  --bg-fallback:linear-gradient(135deg,#34231d,#160f0d);
  --accentText:#fff6ef;
  --accentSoft:rgba(197,139,93,0.20);
}

body[data-theme="chocolate"] .msg.sys,
body[data-theme="chocolate"] .msg.statMsg{
  background:rgba(197,139,93,0.08)!important;
  border-color:rgba(255,225,203,0.10)!important;
  color:var(--line)!important;
}

body[data-theme="chocolate"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(48,32,26,0.97),rgba(22,15,13,0.95))!important;
  border:1px solid rgba(197,139,93,0.18)!important;
  box-shadow:0 14px 30px rgba(0,0,0,0.46),0 0 14px rgba(197,139,93,0.08)!important;
  color:var(--line)!important;
}

body[data-theme="chocolate"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(24,16,13,0.97);
  --dlgGrad1:rgba(24,16,13,0.68);
  --dlgGrad2:rgba(24,16,13,0.18);
}

body[data-theme="chocolate"] .speaker{
  color:#dfb28d!important;
  text-shadow:0 0 10px rgba(197,139,93,0.16);
}

body[data-theme="chocolate"] .stageTopLeft .iconBtn,
body[data-theme="chocolate"] .stageTopRight .iconBtn,
body[data-theme="chocolate"] .chatHeader .iconBtn,
body[data-theme="chocolate"] .send,
body[data-theme="chocolate"] .btnMini,
body[data-theme="chocolate"] .iconBtn,
body[data-theme="chocolate"] .diceBtn,
body[data-theme="chocolate"] .tabBtn{
  background:
    linear-gradient(180deg,#8b6145 0%,#6f452f 16%,#522f22 55%,#2b1813 100%)!important;
  border:1px solid #bb8c68!important;
  color:#fff7f1!important;
  text-shadow:0 1px 0 rgba(0,0,0,0.28)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,234,214,0.16),
    inset 0 -2px 0 rgba(32,17,12,0.48),
    0 10px 18px rgba(0,0,0,0.22)!important;
}

body[data-theme="chocolate"] .stageTopLeft .iconBtn:hover,
body[data-theme="chocolate"] .stageTopRight .iconBtn:hover,
body[data-theme="chocolate"] .chatHeader .iconBtn:hover,
body[data-theme="chocolate"] .send:hover,
body[data-theme="chocolate"] .btnMini:hover,
body[data-theme="chocolate"] .iconBtn:hover,
body[data-theme="chocolate"] .diceBtn:hover,
body[data-theme="chocolate"] .tabBtn:hover{
  background:
    linear-gradient(180deg,#9a6d4e 0%,#7c4c33 18%,#5d3525 58%,#321b14 100%)!important;
  border-color:#d2a784!important;
  box-shadow:
    inset 0 1px 0 rgba(255,239,222,0.18),
    inset 0 -2px 0 rgba(27,14,10,0.52),
    0 12px 20px rgba(0,0,0,0.24)!important;
}

body[data-theme="chocolate"] .send:active,
body[data-theme="chocolate"] .btnMini:active,
body[data-theme="chocolate"] .iconBtn:active,
body[data-theme="chocolate"] .diceBtn:active,
body[data-theme="chocolate"] .tabBtn:active{
  transform:translateY(1px);
}

body[data-theme="chocolate"] .tabBtn.on,
body[data-theme="chocolate"] .tabBtn.active{
  background:
    linear-gradient(180deg,#74452f 0%,#5a3324 45%,#2b1813 100%)!important;
  border-color:#e0b392!important;
  color:#fff8f3!important;
  box-shadow:
    inset 0 1px 0 rgba(255,240,223,0.14),
    inset 0 -2px 0 rgba(23,11,8,0.58),
    0 0 0 1px rgba(255,210,175,0.05),
    0 12px 20px rgba(0,0,0,0.24)!important;
}

body[data-theme="chocolate"] .settingItem:hover{
  background:rgba(197,139,93,0.08)!important;
  color:#efc29f!important;
}

body[data-theme="chocolate"] .chatTab:hover{
  background:rgba(197,139,93,0.08)!important;
  color:var(--line)!important;
}
body[data-theme="chocolate"] .chatTab.active{
  color:#ddb08a!important;
}

body[data-theme="chocolate"] .chatCharSelect option{
  background:#231813!important;
  color:#fff2e7!important;
}

body[data-theme="chocolate"] .msg.narrSay{
  border:1px solid rgba(201,145,100,0.22)!important;
  border-radius:16px!important;
  background:
    linear-gradient(180deg,rgba(104,67,47,0.96) 0%,rgba(67,41,29,0.95) 42%,rgba(31,19,15,0.96) 100%)!important;
  box-shadow:
    0 14px 28px rgba(0,0,0,0.30),
    inset 0 1px 0 rgba(255,233,214,0.12),
    inset 0 -2px 0 rgba(22,12,9,0.40)!important;
  backdrop-filter:none!important;
}
body[data-theme="chocolate"] .msg.narrSay .msgContent .text{
  color:#fff1e5!important;
  font-style:italic!important;
  text-shadow:0 1px 0 rgba(0,0,0,0.24);
}

body[data-theme="candy"]{
  --bg:#f8efff;
  --panel:#fff8ff;
  --line:#684a91;
  --muted:#9d80c3;
  --stroke:rgba(214,174,255,0.20);
  --accent:#df8eff;
  --stage:#f1e4ff;
  --stageGrad1:#ead2ff;
  --stageGrad2:#ffdcee;
  --dialogueBg:rgba(246,233,255,0.92);
  --chipBg:rgba(238,150,215,0.20);
  --msgBg:rgba(255,255,255,0.82);
  --sysBg:rgba(223,142,255,0.12);
  --inputBg:rgba(255,255,255,0.86);
  --headerBg:rgba(251,241,255,0.95);
  --tabBg:rgba(255,255,255,0.88);
  --tabBarBg:linear-gradient(180deg,rgba(241,225,255,0.95),rgba(255,231,243,0.95));
  --btnBg:linear-gradient(180deg,#ffd6ee 0%,#efcbff 52%,#ddb9ff 100%);
  --btnText:#fffaff;
  --hoverBg:linear-gradient(180deg,#ffe0f2 0%,#f4d7ff 52%,#e5c6ff 100%);
  --roomItemBg:rgba(255,255,255,0.84);
  --splitterBg:rgba(223,142,255,0.14);
  --bg-fallback:linear-gradient(180deg,#ecd3ff,#ffdced);
  --accentText:#fffaff;
  --accentSoft:rgba(223,142,255,0.30);
}

body[data-theme="candy"] .msg.sys,
body[data-theme="candy"] .msg.statMsg{
  background:linear-gradient(180deg,rgba(232,180,255,0.14),rgba(255,197,228,0.14))!important;
  border-color:rgba(214,174,255,0.18)!important;
  color:var(--line)!important;
}

body[data-theme="candy"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(247,234,255,0.97),rgba(255,238,247,0.93))!important;
  border:1px solid rgba(223,142,255,0.22)!important;
  box-shadow:0 10px 24px rgba(223,142,255,0.10),0 0 14px rgba(255,188,225,0.16)!important;
  color:#684a91!important;
}

body[data-theme="candy"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(230,189,255,0.96);
  --dlgGrad1:rgba(255,198,228,0.52);
  --dlgGrad2:rgba(255,198,228,0.12);
}

body[data-theme="candy"] .speaker{
  color:#c16df1!important;
  text-shadow:0 0 10px rgba(238,150,215,0.20);
}

body[data-theme="candy"] .stageTopLeft .iconBtn,
body[data-theme="candy"] .stageTopRight .iconBtn,
body[data-theme="candy"] .chatHeader .iconBtn,
body[data-theme="candy"] .send,
body[data-theme="candy"] .btnMini,
body[data-theme="candy"] .iconBtn,
body[data-theme="candy"] .diceBtn,
body[data-theme="candy"] .tabBtn{
  background:linear-gradient(180deg,#ffe3f4 0%,#f6d8ff 48%,#e7c7ff 100%)!important;
  border:1px solid #f4e4ff!important;
  color:#fffaff!important;
  text-shadow:0 1px 0 rgba(185,120,220,0.26)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.55),
    0 8px 16px rgba(223,142,255,0.14)!important;
}

body[data-theme="candy"] .stageTopLeft .iconBtn:hover,
body[data-theme="candy"] .stageTopRight .iconBtn:hover,
body[data-theme="candy"] .chatHeader .iconBtn:hover,
body[data-theme="candy"] .send:hover,
body[data-theme="candy"] .btnMini:hover,
body[data-theme="candy"] .iconBtn:hover,
body[data-theme="candy"] .diceBtn:hover,
body[data-theme="candy"] .tabBtn:hover{
  background:linear-gradient(180deg,#ffeafb 0%,#fae0ff 48%,#efd3ff 100%)!important;
  border-color:#f8edff!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.62),
    0 10px 18px rgba(223,142,255,0.16)!important;
}

body[data-theme="candy"] .tabBtn.on,
body[data-theme="candy"] .tabBtn.active{
  background:linear-gradient(180deg,#ffd3ee 0%,#efbfff 50%,#dcaeff 100%)!important;
  border-color:#faecff!important;
  color:#fffaff!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.45),
    0 10px 16px rgba(223,142,255,0.18)!important;
}

body[data-theme="candy"] .settingItem:hover{
  background:linear-gradient(180deg,rgba(232,180,255,0.10),rgba(255,197,228,0.10))!important;
  color:#c16df1!important;
}

body[data-theme="candy"] .chatTabs{
  background:transparent!important;
  border-bottom:none!important;
}

body[data-theme="candy"] .chatTab:hover{
  background:linear-gradient(180deg,rgba(232,180,255,0.10),rgba(255,197,228,0.10))!important;
  color:var(--line)!important;
}
body[data-theme="candy"] .chatTab.active{
  color:#d07af1!important;
}

body[data-theme="candy"] .chatCharSelect option{
  background:#fff8ff!important;
  color:#684a91!important;
}

body[data-theme="candy"] .msg.narrSay{
  border:1px solid rgba(223,142,255,0.22)!important;
  border-radius:18px!important;
  background:
    linear-gradient(180deg,rgba(255,236,247,0.98) 0%,rgba(245,223,255,0.96) 54%,rgba(232,205,255,0.94) 100%)!important;
  box-shadow:
    0 10px 22px rgba(223,142,255,0.12),
    inset 0 1px 0 rgba(255,255,255,0.66)!important;
  backdrop-filter:none!important;
}
body[data-theme="candy"] .msg.narrSay .msgContent .text{
  color:#8b5bc2!important;
  font-style:italic!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.42);
}



body[data-theme="soda"]{
  --bg:#eefbff;
  --panel:#fbfeff;
  --line:#466579;
  --muted:#85aabd;
  --stroke:rgba(135,206,235,0.24);
  --accent:#67c9ee;
  --stage:#e8faff;
  --stageGrad1:#d9f5ff;
  --stageGrad2:#f4fffd;
  --dialogueBg:rgba(246,253,255,0.94);
  --chipBg:rgba(103,201,238,0.16);
  --msgBg:rgba(255,255,255,0.90);
  --sysBg:rgba(103,201,238,0.14);
  --inputBg:rgba(255,255,255,0.96);
  --headerBg:rgba(245,252,255,0.96);
  --tabBg:rgba(255,255,255,0.90);
  --tabBarBg:rgba(225,246,255,0.92);
  --btnBg:linear-gradient(180deg,#e7fbff 0%,#bff1ff 54%,#8ddff7 100%);
  --btnText:#416b7e;
  --hoverBg:linear-gradient(180deg,#f2fdff 0%,#d3f6ff 54%,#a8eafb 100%);
  --roomItemBg:rgba(255,255,255,0.90);
  --splitterBg:rgba(103,201,238,0.14);
  --bg-fallback:linear-gradient(180deg,#daf5ff,#f3fffc);
  --accentText:#416b7e;
  --accentSoft:rgba(103,201,238,0.24);
}

body[data-theme="soda"] .msg.sys,
body[data-theme="soda"] .msg.statMsg{
  background:linear-gradient(180deg,rgba(175,234,255,0.18),rgba(207,247,255,0.16))!important;
  border-color:rgba(135,206,235,0.22)!important;
  color:var(--line)!important;
}

body[data-theme="soda"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(245,253,255,0.98),rgba(225,247,255,0.94))!important;
  border:1px solid rgba(103,201,238,0.24)!important;
  box-shadow:0 10px 24px rgba(103,201,238,0.10),0 0 14px rgba(166,237,255,0.18)!important;
  color:var(--line)!important;
}

body[data-theme="soda"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(173,233,255,0.96);
  --dlgGrad1:rgba(214,246,255,0.56);
  --dlgGrad2:rgba(235,252,255,0.14);
}

body[data-theme="soda"] .speaker{
  color:#56bde6!important;
  text-shadow:0 0 10px rgba(103,201,238,0.18);
}

body[data-theme="soda"] .send,
body[data-theme="soda"] .btnMini,
body[data-theme="soda"] .iconBtn,
body[data-theme="soda"] .diceBtn,
body[data-theme="soda"] .tabBtn{
  background:linear-gradient(180deg,#e8fbff 0%,#c4f3ff 50%,#94e2f8 100%)!important;
  border:1px solid #e4f8ff!important;
  color:#416b7e!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.58)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.62),
    0 8px 16px rgba(103,201,238,0.12)!important;
}

body[data-theme="soda"] .send:hover,
body[data-theme="soda"] .btnMini:hover,
body[data-theme="soda"] .iconBtn:hover,
body[data-theme="soda"] .diceBtn:hover,
body[data-theme="soda"] .tabBtn:hover,
body[data-theme="soda"] .stageTopLeft .iconBtn:hover,
body[data-theme="soda"] .stageTopRight .iconBtn:hover,
body[data-theme="soda"] .chatHeader .iconBtn:hover{
  background:linear-gradient(180deg,#f4feff 0%,#daf8ff 50%,#adebfd 100%)!important;
  border-color:#edfaff!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.70),
    0 10px 18px rgba(103,201,238,0.15)!important;
}

body[data-theme="soda"] .tabBtn.on,
body[data-theme="soda"] .tabBtn.active{
  background:linear-gradient(180deg,#d8f8ff 0%,#a9ebff 50%,#74d5f2 100%)!important;
  border-color:#eefcff!important;
  color:#2f6177!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.62)!important;
}

body[data-theme="soda"] .settingItem:hover{
  background:linear-gradient(180deg,rgba(175,234,255,0.14),rgba(207,247,255,0.14))!important;
  color:#56bde6!important;
}

body[data-theme="soda"] .chatTabs{
  background:transparent!important;
  border-bottom:none!important;
}

body[data-theme="soda"] .chatTab{
  background:linear-gradient(180deg,rgba(244,253,255,0.98),rgba(221,246,255,0.94))!important;
  border:1px solid rgba(103,201,238,0.26)!important;
  border-bottom:none!important;
  color:#51788c!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.68)!important;
}

body[data-theme="soda"] .chatTab:hover{
  background:linear-gradient(180deg,rgba(235,251,255,0.99),rgba(206,241,255,0.96))!important;
  color:#3f6e82!important;
}

body[data-theme="soda"] .chatTab.active{
  background:linear-gradient(180deg,rgba(225,248,255,1),rgba(184,233,250,0.98))!important;
  border-color:rgba(103,201,238,0.34)!important;
  border-bottom:none!important;
  color:#2f6177!important;
  font-weight:700!important;
  box-shadow:
    0 6px 14px rgba(103,201,238,0.10),
    inset 0 1px 0 rgba(255,255,255,0.74)!important;
}

body[data-theme="soda"] .chatCharSelect option{
  background:#fbfeff!important;
  color:#466579!important;
}

body[data-theme="soda"] .log,
body[data-theme="soda"] .roomList,
body[data-theme="soda"] .adminTableWrap,
body[data-theme="soda"] .adminPanel,
body[data-theme="soda"] .modalBox,
body[data-theme="soda"] .modalBody,
body[data-theme="soda"] .sceneBody,
body[data-theme="soda"] .charList,
body[data-theme="soda"] .charEdit,
body[data-theme="soda"] .chatTabs,
body[data-theme="soda"] .tabLog{
  scrollbar-color:rgba(103,201,238,0.60) rgba(255,255,255,0.70)!important;
}

body[data-theme="soda"] .log::-webkit-scrollbar-thumb,
body[data-theme="soda"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="soda"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="soda"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="soda"] .modalBox::-webkit-scrollbar-thumb,
body[data-theme="soda"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="soda"] .sceneBody::-webkit-scrollbar-thumb,
body[data-theme="soda"] .charList::-webkit-scrollbar-thumb,
body[data-theme="soda"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="soda"] .chatTabs::-webkit-scrollbar-thumb,
body[data-theme="soda"] .tabLog::-webkit-scrollbar-thumb{
  background:rgba(103,201,238,0.56)!important;
  border-color:rgba(255,255,255,0.50)!important;
}

body[data-theme="soda"] .log::-webkit-scrollbar-track,
body[data-theme="soda"] .roomList::-webkit-scrollbar-track,
body[data-theme="soda"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="soda"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="soda"] .modalBox::-webkit-scrollbar-track,
body[data-theme="soda"] .modalBody::-webkit-scrollbar-track,
body[data-theme="soda"] .sceneBody::-webkit-scrollbar-track,
body[data-theme="soda"] .charList::-webkit-scrollbar-track,
body[data-theme="soda"] .charEdit::-webkit-scrollbar-track,
body[data-theme="soda"] .chatTabs::-webkit-scrollbar-track,
body[data-theme="soda"] .tabLog::-webkit-scrollbar-track{
  background:rgba(255,255,255,0.60)!important;
  border-color:rgba(103,201,238,0.12)!important;
}

body[data-theme="soda"] .msg.narrSay{
  border:1px solid rgba(103,201,238,0.22)!important;
  border-radius:18px!important;
  background:
    linear-gradient(180deg,rgba(247,254,255,0.99) 0%,rgba(221,246,255,0.96) 54%,rgba(191,235,250,0.94) 100%)!important;
  box-shadow:
    0 10px 22px rgba(103,201,238,0.10),
    inset 0 1px 0 rgba(255,255,255,0.72)!important;
  backdrop-filter:none!important;
}
body[data-theme="soda"] .msg.narrSay .msgContent .text{
  color:#5a8aa1!important;
  font-style:italic!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.46);
}

body[data-theme="green"]{
  --bg:#f5fff0;
  --panel:#fcfff8;
  --line:#526b43;
  --muted:#8ba57a;
  --stroke:rgba(156,214,112,0.24);
  --accent:#92cf5c;
  --stage:#efffe7;
  --stageGrad1:#ddf8c4;
  --stageGrad2:#f9ffe9;
  --dialogueBg:rgba(249,255,243,0.94);
  --chipBg:rgba(146,207,92,0.16);
  --msgBg:rgba(255,255,255,0.90);
  --sysBg:rgba(146,207,92,0.14);
  --inputBg:rgba(255,255,255,0.96);
  --headerBg:rgba(248,255,243,0.96);
  --tabBg:rgba(255,255,255,0.90);
  --tabBarBg:rgba(235,250,223,0.92);
  --btnBg:linear-gradient(180deg,#f4ffd8 0%,#d3f0a7 54%,#a8dc73 100%);
  --btnText:#4b6336;
  --hoverBg:linear-gradient(180deg,#f9ffe7 0%,#def5ba 54%,#bae78b 100%);
  --roomItemBg:rgba(255,255,255,0.90);
  --splitterBg:rgba(146,207,92,0.14);
  --bg-fallback:linear-gradient(180deg,#e3f8cf,#fbffed);
  --accentText:#4b6336;
  --accentSoft:rgba(146,207,92,0.24);
}

body[data-theme="green"] .msg.sys,
body[data-theme="green"] .msg.statMsg{
  background:linear-gradient(180deg,rgba(213,244,177,0.18),rgba(240,255,214,0.16))!important;
  border-color:rgba(156,214,112,0.22)!important;
  color:var(--line)!important;
}

body[data-theme="green"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(250,255,244,0.98),rgba(232,249,212,0.94))!important;
  border:1px solid rgba(146,207,92,0.24)!important;
  box-shadow:0 10px 24px rgba(146,207,92,0.10),0 0 14px rgba(203,241,156,0.18)!important;
  color:var(--line)!important;
}

body[data-theme="green"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(213,243,175,0.96);
  --dlgGrad1:rgba(238,252,212,0.56);
  --dlgGrad2:rgba(248,255,236,0.14);
}

body[data-theme="green"] .speaker{
  color:#86c456!important;
  text-shadow:0 0 10px rgba(146,207,92,0.18);
}

body[data-theme="green"] .send,
body[data-theme="green"] .btnMini,
body[data-theme="green"] .iconBtn,
body[data-theme="green"] .diceBtn,
body[data-theme="green"] .tabBtn{
  background:linear-gradient(180deg,#f4ffd9 0%,#daf3b4 50%,#aedc79 100%)!important;
  border:1px solid #eff9de!important;
  color:#51693b!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.58)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.62),
    0 8px 16px rgba(146,207,92,0.12)!important;
}

body[data-theme="green"] .send:hover,
body[data-theme="green"] .btnMini:hover,
body[data-theme="green"] .iconBtn:hover,
body[data-theme="green"] .diceBtn:hover,
body[data-theme="green"] .tabBtn:hover,
body[data-theme="green"] .stageTopLeft .iconBtn:hover,
body[data-theme="green"] .stageTopRight .iconBtn:hover,
body[data-theme="green"] .chatHeader .iconBtn:hover{
  background:linear-gradient(180deg,#fbffec 0%,#e6f8c7 50%,#c6eb98 100%)!important;
  border-color:#f5fce8!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.70),
    0 10px 18px rgba(146,207,92,0.15)!important;
}

body[data-theme="green"] .tabBtn.on,
body[data-theme="green"] .tabBtn.active{
  background:linear-gradient(180deg,#ebffc6 0%,#c9ee92 50%,#98d464 100%)!important;
  border-color:#f8ffe8!important;
  color:#40562d!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.62)!important;
}

body[data-theme="green"] .settingItem:hover{
  background:linear-gradient(180deg,rgba(213,244,177,0.14),rgba(240,255,214,0.14))!important;
  color:#83bc53!important;
}

body[data-theme="green"] .chatTabs{
  background:transparent!important;
  border-bottom:none!important;
}

body[data-theme="green"] .chatTab{
  background:linear-gradient(180deg,rgba(250,255,243,0.98),rgba(234,249,212,0.94))!important;
  border:1px solid rgba(146,207,92,0.26)!important;
  border-bottom:none!important;
  color:#6c8552!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.68)!important;
}

body[data-theme="green"] .chatTab:hover{
  background:linear-gradient(180deg,rgba(245,255,233,0.99),rgba(224,245,191,0.96))!important;
  color:#58713f!important;
}

body[data-theme="green"] .chatTab.active{
  background:linear-gradient(180deg,rgba(240,255,219,1),rgba(203,237,151,0.98))!important;
  border-color:rgba(146,207,92,0.34)!important;
  border-bottom:none!important;
  color:#4c6635!important;
  font-weight:700!important;
  box-shadow:
    0 6px 14px rgba(146,207,92,0.10),
    inset 0 1px 0 rgba(255,255,255,0.74)!important;
}

body[data-theme="green"] .chatCharSelect option{
  background:#fcfff8!important;
  color:#526b43!important;
}

body[data-theme="green"] .log,
body[data-theme="green"] .roomList,
body[data-theme="green"] .adminTableWrap,
body[data-theme="green"] .adminPanel,
body[data-theme="green"] .modalBox,
body[data-theme="green"] .modalBody,
body[data-theme="green"] .sceneBody,
body[data-theme="green"] .charList,
body[data-theme="green"] .charEdit,
body[data-theme="green"] .chatTabs,
body[data-theme="green"] .tabLog{
  scrollbar-color:rgba(146,207,92,0.60) rgba(255,255,255,0.70)!important;
}

body[data-theme="green"] .log::-webkit-scrollbar-thumb,
body[data-theme="green"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="green"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="green"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="green"] .modalBox::-webkit-scrollbar-thumb,
body[data-theme="green"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="green"] .sceneBody::-webkit-scrollbar-thumb,
body[data-theme="green"] .charList::-webkit-scrollbar-thumb,
body[data-theme="green"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="green"] .chatTabs::-webkit-scrollbar-thumb,
body[data-theme="green"] .tabLog::-webkit-scrollbar-thumb{
  background:rgba(146,207,92,0.56)!important;
  border-color:rgba(255,255,255,0.50)!important;
}

body[data-theme="green"] .log::-webkit-scrollbar-track,
body[data-theme="green"] .roomList::-webkit-scrollbar-track,
body[data-theme="green"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="green"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="green"] .modalBox::-webkit-scrollbar-track,
body[data-theme="green"] .modalBody::-webkit-scrollbar-track,
body[data-theme="green"] .sceneBody::-webkit-scrollbar-track,
body[data-theme="green"] .charList::-webkit-scrollbar-track,
body[data-theme="green"] .charEdit::-webkit-scrollbar-track,
body[data-theme="green"] .chatTabs::-webkit-scrollbar-track,
body[data-theme="green"] .tabLog::-webkit-scrollbar-track{
  background:rgba(255,255,255,0.60)!important;
  border-color:rgba(146,207,92,0.12)!important;
}

body[data-theme="green"] .msg.narrSay{
  border:1px solid rgba(146,207,92,0.22)!important;
  border-radius:18px!important;
  background:
    linear-gradient(180deg,rgba(251,255,245,0.99) 0%,rgba(235,250,214,0.96) 54%,rgba(211,238,176,0.94) 100%)!important;
  box-shadow:
    0 10px 22px rgba(146,207,92,0.10),
    inset 0 1px 0 rgba(255,255,255,0.72)!important;
  backdrop-filter:none!important;
}
body[data-theme="green"] .msg.narrSay .msgContent .text{
  color:#6f8c54!important;
  font-style:italic!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.46);
}

body[data-theme="cyber"]{
  --bg:#05070a;
  --panel:rgba(11,16,22,0.94);
  --line:#dce7f1;
  --muted:#87a0b7;
  --stroke:rgba(122,141,158,0.22);
  --accent:#66e8ff;
  --stage:#04060a;
  --stageGrad1:#19232d;
  --stageGrad2:#05070a;
  --dialogueBg:rgba(8,13,18,0.88);
  --chipBg:rgba(102,232,255,0.10);
  --msgBg:rgba(16,22,30,0.92);
  --sysBg:rgba(102,232,255,0.08);
  --inputBg:rgba(8,12,17,0.96);
  --headerBg:rgba(7,11,16,0.92);
  --tabBg:rgba(13,19,26,0.95);
  --tabBarBg:rgba(7,11,16,0.90);
  --btnBg:linear-gradient(180deg,#2a3540 0%,#151c24 100%);
  --btnText:#e8f9ff;
  --hoverBg:rgba(102,232,255,0.14);
  --roomItemBg:rgba(16,22,30,0.92);
  --splitterBg:rgba(102,232,255,0.24);
  --bg-fallback:linear-gradient(135deg,#1b2530,#04060a);
  --accentText:#041018;
  --accentSoft:rgba(102,232,255,0.24);
}

body[data-theme="cyber"] .chat,
body[data-theme="cyber"] .sceneWindow,
body[data-theme="cyber"] .modalBox,
body[data-theme="cyber"] .contextMenu,
body[data-theme="cyber"] .bgmControls,
body[data-theme="cyber"] .charEdit,
body[data-theme="cyber"] .chatSuggestion{
  background:var(--panel)!important;
  border-color:var(--stroke)!important;
  color:var(--line)!important;
}

body[data-theme="cyber"] .chatHeader,
body[data-theme="cyber"] .winHead,
body[data-theme="cyber"] .modalHead{
  background:var(--headerBg)!important;
  border-color:var(--stroke)!important;
}

body[data-theme="cyber"] .msgProfile,
body[data-theme="cyber"] .statAvatar,
body[data-theme="cyber"] .charThumb{
  background:#070b10!important;
  border-color:rgba(102,232,255,0.18)!important;
  box-shadow:0 0 10px rgba(102,232,255,0.08)!important;
}

body[data-theme="cyber"] .msg.sys,
body[data-theme="cyber"] .msg.statMsg{
  background:linear-gradient(180deg,rgba(12,21,30,0.98),rgba(7,12,18,0.98))!important;
  border:1px solid rgba(102,232,255,0.24)!important;
  border-left:3px solid #66e8ff!important;
  color:var(--line)!important;
  box-shadow:
    0 0 16px rgba(102,232,255,0.10),
    inset 0 1px 0 rgba(255,255,255,0.05)!important;
}

body[data-theme="cyber"] .msg.sys .name,
body[data-theme="cyber"] .msg.statMsg .name{
  color:#9ef2ff!important;
}
body[data-theme="cyber"] .msg.sys .time,
body[data-theme="cyber"] .msg.statMsg .time{
  color:#82abc0!important;
}
body[data-theme="cyber"] .msg.sys .text,
body[data-theme="cyber"] .msg.statMsg .text{
  color:#dff7ff!important;
}

body[data-theme="cyber"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(15,22,29,0.98),rgba(7,11,16,0.96))!important;
  border:1px solid rgba(102,232,255,0.22)!important;
  box-shadow:
    0 12px 28px rgba(0,0,0,0.42),
    0 0 18px rgba(102,232,255,0.12)!important;
  color:var(--line)!important;
}

body[data-theme="cyber"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(8,13,18,0.96);
  --dlgGrad1:rgba(8,13,18,0.56);
  --dlgGrad2:rgba(8,13,18,0.14);
}

body[data-theme="cyber"] .speaker{
  color:#66e8ff!important;
  text-shadow:0 0 12px rgba(102,232,255,0.26);
}

body[data-theme="cyber"] .msg.narrSay{
  position:relative!important;
  overflow:visible!important;
  border:1px solid rgba(135,240,255,0.34)!important;
  border-left:4px solid #38dfff!important;
  border-radius:14px!important;
  padding:12px 14px!important;
  background:
    linear-gradient(180deg,rgba(126,141,156,0.18) 0%,rgba(20,29,37,0.96) 12%,rgba(7,11,16,0.99) 100%)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.16),
    inset 0 0 0 1px rgba(56,223,255,0.06),
    0 14px 28px rgba(0,0,0,0.34),
    0 0 18px rgba(56,223,255,0.16)!important;
  backdrop-filter:none!important;
}

body[data-theme="cyber"] .msg.narrSay::before,
body[data-theme="cyber"] .msg.narrSay::after{
  content:none!important;
  display:none!important;
}

body[data-theme="cyber"] .msg.narrSay .msgContent{
  position:relative!important;
  z-index:1!important;
  padding-top:0!important;
  min-width:0!important;
}

body[data-theme="cyber"] .msg.narrSay .meta{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 8px 0!important;
}

body[data-theme="cyber"] .msg.narrSay .name{
  color:#7fefff!important;
  font-weight:800!important;
  text-shadow:0 0 10px rgba(56,223,255,0.20)!important;
}

body[data-theme="cyber"] .msg.narrSay .time{
  color:#9ec6d6!important;
}

body[data-theme="cyber"] .msg.narrSay .msgContent .text{
  display:block!important;
  width:100%!important;
  color:#effcff!important;
  font-style:italic!important;
  letter-spacing:0.15px;
  line-height:1.55!important;
  white-space:pre-wrap!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  text-shadow:
    0 0 8px rgba(56,223,255,0.08),
    0 1px 0 rgba(0,0,0,0.28);
}

body[data-theme="cyber"] .msg.narrSay .msgContent .text::before{
  content:'';
  display:block!important;
  margin:0 0 8px 0!important;
  padding:0 0 6px 0!important;
  border-bottom:1px solid rgba(56,223,255,0.42)!important;
  color:#7fefff!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:1.2px!important;
  line-height:1.2!important;
  text-shadow:0 0 8px rgba(56,223,255,0.18)!important;
}

body[data-theme="cyber"] .msg.narrSay.textOnlyMsg{
  display:block!important;
  justify-content:flex-start!important;
  align-items:stretch!important;
  width:100%!important;
  min-height:72px!important;
  padding:12px 14px!important;
}

body[data-theme="cyber"] .msg.narrSay.textOnlyMsg .msgContent{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  text-align:left!important;
  padding:0!important;
  margin:0!important;
}

body[data-theme="cyber"] .msg.narrSay.textOnlyMsg .msgContent .text{
  text-align:left!important;
}

body[data-theme="cyber"] .msg.narrSay.textOnlyMsg .msgContent .text{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  line-height:1.55!important;
  white-space:pre-wrap!important;
  word-break:break-word!important;
  overflow:visible!important;
  text-align:left!important;
}


body[data-theme="cyber"] .send,
body[data-theme="cyber"] .btnMini,
body[data-theme="cyber"] .iconBtn,
body[data-theme="cyber"] .diceBtn,
body[data-theme="cyber"] .tabBtn{
  background:linear-gradient(180deg,#2a3540 0%,#151c24 100%)!important;
  border:1px solid rgba(102,232,255,0.24)!important;
  color:#e8f9ff!important;
  text-shadow:none!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.06),
    0 8px 18px rgba(0,0,0,0.28)!important;
}

body[data-theme="cyber"] .send:hover,
body[data-theme="cyber"] .btnMini:hover,
body[data-theme="cyber"] .iconBtn:hover,
body[data-theme="cyber"] .diceBtn:hover,
body[data-theme="cyber"] .tabBtn:hover,
body[data-theme="cyber"] .stageTopLeft .iconBtn:hover,
body[data-theme="cyber"] .stageTopRight .iconBtn:hover,
body[data-theme="cyber"] .chatHeader .iconBtn:hover{
  background:linear-gradient(180deg,#34414d 0%,#1a232d 100%)!important;
  border-color:rgba(102,232,255,0.42)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 0 16px rgba(102,232,255,0.16)!important;
}

body[data-theme="cyber"] .tabBtn.on,
body[data-theme="cyber"] .tabBtn.active{
  background:linear-gradient(180deg,#18313a 0%,#0e1f26 100%)!important;
  border-color:rgba(102,232,255,0.44)!important;
  color:#66e8ff!important;
  box-shadow:0 0 16px rgba(102,232,255,0.18)!important;
}

body[data-theme="cyber"] .chatTabs{
  background:var(--tabBarBg)!important;
  border-bottom:1px solid var(--stroke)!important;
}

body[data-theme="cyber"] .chatTab{
  background:linear-gradient(180deg,rgba(21,29,38,0.98),rgba(11,17,24,0.96))!important;
  border:1px solid rgba(102,232,255,0.16)!important;
  border-bottom:none!important;
  color:#8ba3b7!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.04)!important;
}

body[data-theme="cyber"] .chatTab:hover{
  background:rgba(102,232,255,0.10)!important;
  color:#e8f9ff!important;
}

body[data-theme="cyber"] .chatTab.active{
  background:linear-gradient(180deg,rgba(20,35,46,1),rgba(10,18,26,0.98))!important;
  border-color:rgba(102,232,255,0.34)!important;
  border-bottom:none!important;
  color:#66e8ff!important;
  box-shadow:0 0 14px rgba(102,232,255,0.16)!important;
}

body[data-theme="cyber"] .chatCharSelect,
body[data-theme="cyber"] .input,
body[data-theme="cyber"] .textareaDark,
body[data-theme="cyber"] .miniIn{
  background:var(--inputBg)!important;
  border-color:rgba(102,232,255,0.16)!important;
  color:var(--line)!important;
}

body[data-theme="cyber"] .chatCharSelect option{
  background:#0b1117!important;
  color:#dce7f1!important;
}

body[data-theme="cyber"] .settingItem:hover,
body[data-theme="cyber"] .contextItem:hover,
body[data-theme="cyber"] .suggItem:hover{
  background:rgba(102,232,255,0.10)!important;
  color:#66e8ff!important;
}

body[data-theme="cyber"] .splitter{
  background:#66e8ff!important;
  border-left:1px solid #bff7ff!important;
  border-right:1px solid #bff7ff!important;
  box-shadow:0 0 10px rgba(102,232,255,0.28)!important;
}

body[data-theme="cyber"] .splitApp.chatBottom>.splitter{
  background:#66e8ff!important;
  border-top:1px solid #bff7ff!important;
  border-bottom:1px solid #bff7ff!important;
  border-left:none!important;
  border-right:none!important;
  box-shadow:0 0 10px rgba(102,232,255,0.28)!important;
}

body[data-theme="cyber"] .log,
body[data-theme="cyber"] .roomList,
body[data-theme="cyber"] .adminTableWrap,
body[data-theme="cyber"] .adminPanel,
body[data-theme="cyber"] .modalBody,
body[data-theme="cyber"] .sceneBody,
body[data-theme="cyber"] .charList,
body[data-theme="cyber"] .charEdit,
body[data-theme="cyber"] .chatTabs,
body[data-theme="cyber"] .tabLog{
  scrollbar-color:rgba(102,232,255,0.56) rgba(15,21,29,0.92)!important;
}

body[data-theme="cyber"] .log::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .sceneBody::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .charList::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .chatTabs::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .tabLog::-webkit-scrollbar-thumb{
  background:rgba(102,232,255,0.56)!important;
  border-color:rgba(191,247,255,0.18)!important;
}

body[data-theme="cyber"] .log::-webkit-scrollbar-track,
body[data-theme="cyber"] .roomList::-webkit-scrollbar-track,
body[data-theme="cyber"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="cyber"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="cyber"] .modalBody::-webkit-scrollbar-track,
body[data-theme="cyber"] .sceneBody::-webkit-scrollbar-track,
body[data-theme="cyber"] .charList::-webkit-scrollbar-track,
body[data-theme="cyber"] .charEdit::-webkit-scrollbar-track,
body[data-theme="cyber"] .chatTabs::-webkit-scrollbar-track,
body[data-theme="cyber"] .tabLog::-webkit-scrollbar-track{
  background:rgba(12,18,24,0.94)!important;
  border-color:rgba(102,232,255,0.10)!important;
}

body[data-theme="cyber"] .stageTopLeft .badgeLink,
body[data-theme="cyber"] #stageTopTools .iconBtn,
body[data-theme="cyber"] .stageTopLeft .iconBtn,
body[data-theme="cyber"] .stageTopRight .iconBtn,
body[data-theme="cyber"] .chatHeader .iconBtn,
body[data-theme="cyber"] .send,
body[data-theme="cyber"] .btnMini,
body[data-theme="cyber"] .chatBtn,
body[data-theme="cyber"] .diceBtn,
body[data-theme="cyber"] .tabBtn,
body[data-theme="cyber"] .chatNameColorBtn{
  background:linear-gradient(180deg,#d9e3ea 0%,#a4b2bd 18%,#4e5a66 19%,#161d24 100%)!important;
  border:1px solid #8eeeff!important;
  color:#f4fcff!important;
  text-shadow:0 1px 0 rgba(0,0,0,0.42),0 0 8px rgba(0,223,255,0.18)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.34),
    inset 0 -1px 0 rgba(0,0,0,0.46),
    0 0 0 1px rgba(0,223,255,0.10),
    0 0 16px rgba(0,223,255,0.18)!important;
}

body[data-theme="cyber"] .stageTopLeft .badgeLink:hover,
body[data-theme="cyber"] #stageTopTools .iconBtn:hover,
body[data-theme="cyber"] .stageTopLeft .iconBtn:hover,
body[data-theme="cyber"] .stageTopRight .iconBtn:hover,
body[data-theme="cyber"] .chatHeader .iconBtn:hover,
body[data-theme="cyber"] .send:hover,
body[data-theme="cyber"] .btnMini:hover,
body[data-theme="cyber"] .chatBtn:hover,
body[data-theme="cyber"] .diceBtn:hover,
body[data-theme="cyber"] .tabBtn:hover,
body[data-theme="cyber"] .chatNameColorWrap:hover .chatNameColorBtn,
body[data-theme="cyber"] .chatBtn.active,
body[data-theme="cyber"] .diceBtn.active,
body[data-theme="cyber"] .tabBtn.on,
body[data-theme="cyber"] .tabBtn.active{
  border-color:#c7fbff!important;
  color:#ffffff!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.40),
    inset 0 -1px 0 rgba(0,0,0,0.52),
    0 0 0 1px rgba(0,223,255,0.18),
    0 0 22px rgba(0,223,255,0.28)!important;
  transform:translateY(-1px);
}

body[data-theme="cyber"] .chatHeader{
  background:
    linear-gradient(180deg,rgba(104,118,132,0.24),rgba(10,15,20,0.96))!important;
  border-bottom:1px solid rgba(0,223,255,0.32)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.14),
    inset 0 -1px 0 rgba(0,223,255,0.10)!important;
}

body[data-theme="cyber"] .chatCharSelect{
  background:
    linear-gradient(180deg,rgba(26,34,43,0.98),rgba(7,11,16,0.98))!important;
  border-top:1px solid rgba(0,223,255,0.28)!important;
  color:#ecfbff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.06)!important;
}
body[data-theme="cyber"] .chatCharSelect:hover{
  background:
    linear-gradient(180deg,rgba(34,45,56,0.98),rgba(10,15,20,0.98))!important;
}
body[data-theme="cyber"] .chatCharSelect option{
  background:#081018!important;
  color:#ecfbff!important;
}

body[data-theme="cyber"] .faceMenu{
  background:
    linear-gradient(180deg,rgba(24,34,44,0.98),rgba(8,12,18,0.98))!important;
  border:1px solid rgba(0,223,255,0.34)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    0 0 22px rgba(0,223,255,0.16)!important;
}
body[data-theme="cyber"] .faceItem{
  background:
    linear-gradient(180deg,rgba(19,27,35,0.96),rgba(8,12,18,0.98))!important;
  border:1px solid rgba(149,232,255,0.10)!important;
}
body[data-theme="cyber"] .faceItem:hover,
body[data-theme="cyber"] .faceItem.active{
  background:
    linear-gradient(180deg,rgba(36,52,64,0.98),rgba(10,16,22,0.98))!important;
  border-color:#66e8ff!important;
  box-shadow:0 0 14px rgba(0,223,255,0.18)!important;
}
body[data-theme="cyber"] .faceImg{
  background:rgba(0,0,0,0.28)!important;
  border:1px solid rgba(102,232,255,0.16)!important;
}
body[data-theme="cyber"] .faceName{
  color:#b9f6ff!important;
}

body[data-theme="cyber"]:not([data-dlgshape="gradient"]) .dialogue{
  position:absolute;
  overflow:hidden;
  border:1px solid rgba(0,223,255,0.34)!important;
  border-radius:14px!important;
  background:
    linear-gradient(180deg,rgba(112,125,138,0.18) 0%,rgba(18,25,32,0.96) 10%,rgba(5,9,14,0.98) 100%)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.16),
    inset 0 0 0 1px rgba(0,223,255,0.08),
    0 12px 30px rgba(0,0,0,0.42),
    0 0 22px rgba(0,223,255,0.14)!important;
  backdrop-filter:none!important;
}
body[data-theme="cyber"]:not([data-dlgshape="gradient"]) .dialogue::before{
  content:'SYSTEM LINK';
  position:absolute;
  top:8px;
  right:12px;
  font-size:10px;
  font-weight:700;
  letter-spacing:1.2px;
  color:rgba(122,242,255,0.64);
  pointer-events:none;
}
body[data-theme="cyber"]:not([data-dlgshape="gradient"]) .dialogue::after{
  content:'';
  position:absolute;
  left:12px;
  right:12px;
  top:32px;
  height:1px;
  background:linear-gradient(90deg,rgba(0,223,255,0),rgba(0,223,255,0.65),rgba(0,223,255,0));
  pointer-events:none;
}
body[data-theme="cyber"] .speaker{
  position:relative;
  z-index:1;
  color:#71efff!important;
  font-weight:800!important;
  letter-spacing:0.6px;
  text-shadow:0 0 12px rgba(0,223,255,0.30)!important;
}
body[data-theme="cyber"] .line{
  position:relative;
  z-index:1;
  color:#f1fcff!important;
  text-shadow:0 0 8px rgba(0,223,255,0.06);
}

body[data-theme="cyber"] .statWidget{
  background:
    linear-gradient(180deg,rgba(116,129,142,0.22) 0%,rgba(23,31,39,0.96) 12%,rgba(7,10,14,0.98) 100%)!important;
  border:1px solid rgba(0,223,255,0.34)!important;
  border-radius:8px!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.18),
    inset 0 0 0 1px rgba(0,223,255,0.07),
    0 0 20px rgba(0,223,255,0.14),
    0 8px 18px rgba(0,0,0,0.38)!important;
}
body[data-theme="cyber"] .statWidget.dragging{
  border-color:#bff9ff!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.20),
    0 0 24px rgba(0,223,255,0.26),
    0 0 0 1px rgba(0,223,255,0.20)!important;
}
body[data-theme="cyber"] .statAvatar{
  background:
    linear-gradient(180deg,rgba(53,64,74,0.95),rgba(8,11,15,1))!important;
  border:1px solid rgba(0,223,255,0.34)!important;
  border-radius:6px!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.12),
    0 0 12px rgba(0,223,255,0.12)!important;
}
body[data-theme="cyber"] .miniStatLabel{
  color:#c8f9ff!important;
  text-shadow:0 0 8px rgba(0,223,255,0.10);
}
body[data-theme="cyber"] .miniStat:hover .miniStatLabel{
  color:#ffffff!important;
  text-shadow:0 0 10px rgba(0,223,255,0.28)!important;
}
body[data-theme="cyber"] .miniStatBar{
  height:5px!important;
  background:#061019!important;
  border:1px solid rgba(0,223,255,0.24)!important;
  border-radius:999px!important;
  box-shadow:inset 0 0 8px rgba(0,223,255,0.08)!important;
}
body[data-theme="cyber"] .miniStatFill{
  border-radius:999px!important;
  box-shadow:0 0 10px currentColor!important;
}
body[data-theme="cyber"] .fill-HP{background:#ff5f7d!important;color:#ff5f7d!important;}
body[data-theme="cyber"] .fill-MP{background:#38dfff!important;color:#38dfff!important;}
body[data-theme="cyber"] .fill-SAN{background:#ba7bff!important;color:#ba7bff!important;}
body[data-theme="cyber"] .fill-LUK{background:#68ffbf!important;color:#68ffbf!important;}
body[data-theme="cyber"] .fill-EXT{background:#9befff!important;color:#9befff!important;}

body[data-theme="cyber"] .log,
body[data-theme="cyber"] .roomList,
body[data-theme="cyber"] .adminTableWrap,
body[data-theme="cyber"] .adminPanel,
body[data-theme="cyber"] .modalBox,
body[data-theme="cyber"] .modalBody,
body[data-theme="cyber"] .sceneBody,
body[data-theme="cyber"] .charList,
body[data-theme="cyber"] .charEdit,
body[data-theme="cyber"] .chatTabs,
body[data-theme="cyber"] .tabLog,
body[data-theme="cyber"] #input,
body[data-theme="cyber"] .faceMenu{
  scrollbar-width:thin!important;
  scrollbar-color:#66e8ff #081018!important;
}

body[data-theme="cyber"] .log::-webkit-scrollbar,
body[data-theme="cyber"] .roomList::-webkit-scrollbar,
body[data-theme="cyber"] .adminTableWrap::-webkit-scrollbar,
body[data-theme="cyber"] .adminPanel::-webkit-scrollbar,
body[data-theme="cyber"] .modalBox::-webkit-scrollbar,
body[data-theme="cyber"] .modalBody::-webkit-scrollbar,
body[data-theme="cyber"] .sceneBody::-webkit-scrollbar,
body[data-theme="cyber"] .charList::-webkit-scrollbar,
body[data-theme="cyber"] .charEdit::-webkit-scrollbar,
body[data-theme="cyber"] .chatTabs::-webkit-scrollbar,
body[data-theme="cyber"] .tabLog::-webkit-scrollbar,
body[data-theme="cyber"] #input::-webkit-scrollbar,
body[data-theme="cyber"] .faceMenu::-webkit-scrollbar{
  width:10px;
  height:10px;
}

body[data-theme="cyber"] .log::-webkit-scrollbar-track,
body[data-theme="cyber"] .roomList::-webkit-scrollbar-track,
body[data-theme="cyber"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="cyber"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="cyber"] .modalBox::-webkit-scrollbar-track,
body[data-theme="cyber"] .modalBody::-webkit-scrollbar-track,
body[data-theme="cyber"] .sceneBody::-webkit-scrollbar-track,
body[data-theme="cyber"] .charList::-webkit-scrollbar-track,
body[data-theme="cyber"] .charEdit::-webkit-scrollbar-track,
body[data-theme="cyber"] .chatTabs::-webkit-scrollbar-track,
body[data-theme="cyber"] .tabLog::-webkit-scrollbar-track,
body[data-theme="cyber"] #input::-webkit-scrollbar-track,
body[data-theme="cyber"] .faceMenu::-webkit-scrollbar-track{
  background:#081018!important;
  border:1px solid rgba(0,223,255,0.22)!important;
  border-radius:999px!important;
  box-shadow:inset 0 0 8px rgba(0,223,255,0.08)!important;
}

body[data-theme="cyber"] .log::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .modalBox::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .sceneBody::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .charList::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .chatTabs::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .tabLog::-webkit-scrollbar-thumb,
body[data-theme="cyber"] #input::-webkit-scrollbar-thumb,
body[data-theme="cyber"] .faceMenu::-webkit-scrollbar-thumb{
  background:#00dfff!important;
  border:1px solid #baf9ff!important;
  border-radius:999px!important;
  box-shadow:0 0 14px rgba(0,223,255,0.36)!important;
}

body[data-theme="cyber"] .log::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .roomList::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .adminTableWrap::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .adminPanel::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .modalBox::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .modalBody::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .sceneBody::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .charList::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .charEdit::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .chatTabs::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .tabLog::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] #input::-webkit-scrollbar-thumb:hover,
body[data-theme="cyber"] .faceMenu::-webkit-scrollbar-thumb:hover{
  background:#79f5ff!important;
}

#voteWin{
  width:560px;
  max-width:calc(100vw - 40px);
}
#voteWin .winHead{
  touch-action:none;
  cursor:move;
}
#voteWin .voteBody{
  padding:12px;
  max-height:70vh;
  overflow:auto;
}
.voteSetupBox,
.voteTopBox{
  padding:10px;
  border:1px solid var(--stroke);
  border-radius:12px;
  background:rgba(0,0,0,0.10);
  margin-bottom:10px;
}
body[data-theme="light"] .voteSetupBox,
body[data-theme="light"] .voteTopBox{
  background:rgba(0,0,0,0.03);
}
.voteTextarea{
  min-height:160px;
}
.voteSetupBtns,
.voteBottomBtns{
  display:flex;
  gap:8px;
  justify-content:flex-end;
  flex-wrap:wrap;
  margin-top:10px;
}
.voteTitleText{
  font-size:18px;
  font-weight:900;
  line-height:1.3;
}
.voteMeta{
  margin-top:4px;
  font-size:12px;
  color:var(--muted);
}
.voteOptList{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.voteOptRow{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid var(--stroke);
  border-radius:12px;
  background:rgba(255,255,255,0.03);
}
.voteOptRow.isMine{
  border-color:var(--accent);
  box-shadow:0 0 0 1px var(--accent) inset;
}
.voteOptMain{
  min-width:0;
}
.voteOptText{
  font-weight:800;
  word-break:break-word;
}
.voteBar{
  margin-top:8px;
  height:8px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,0.08);
  border:1px solid var(--stroke);
}
.voteBarFill{
  height:100%;
  background:var(--accent);
}
.voteCount{
  margin-top:6px;
  font-size:12px;
  color:var(--muted);
}
.voteNames{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:8px;
}
.voteNameChip{
  display:inline-flex;
  align-items:center;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid var(--stroke);
  font-size:12px;
  background:var(--chipBg);
}
.voteHint,
.voteEmpty{
  margin-top:10px;
  padding:10px;
  border:1px dashed var(--stroke);
  border-radius:12px;
  font-size:12px;
  color:var(--muted);
}

body[data-theme="pink"] .hostDelegateBox,
body[data-theme="pink"] .rouletteSetupBox,
body[data-theme="pink"] .rouletteTopBox,
body[data-theme="pink"] .rouletteWheelCard,
body[data-theme="pink"] .rouletteItemsBox,
body[data-theme="pink"] .voteSetupBox,
body[data-theme="pink"] .voteTopBox,
body[data-theme="pink"] .turnTrackerAdd,
body[data-theme="pink"] .ttHead,
body[data-theme="pink"] .ttRow{
  background:#fff1f6 !important;
}

body[data-theme="gold"] .hostDelegateBox,
body[data-theme="gold"] .rouletteSetupBox,
body[data-theme="gold"] .rouletteTopBox,
body[data-theme="gold"] .rouletteWheelCard,
body[data-theme="gold"] .rouletteItemsBox,
body[data-theme="gold"] .voteSetupBox,
body[data-theme="gold"] .voteTopBox,
body[data-theme="gold"] .turnTrackerAdd,
body[data-theme="gold"] .ttHead,
body[data-theme="gold"] .ttRow{
  background:#fff7df !important;
}

body[data-theme="candy"] .hostDelegateBox,
body[data-theme="candy"] .rouletteSetupBox,
body[data-theme="candy"] .rouletteTopBox,
body[data-theme="candy"] .rouletteWheelCard,
body[data-theme="candy"] .rouletteItemsBox,
body[data-theme="candy"] .voteSetupBox,
body[data-theme="candy"] .voteTopBox,
body[data-theme="candy"] .turnTrackerAdd,
body[data-theme="candy"] .ttHead,
body[data-theme="candy"] .ttRow{
  background:#fff4fb !important;
}

body[data-theme="halloween"] .hostDelegateBox,
body[data-theme="halloween"] .rouletteSetupBox,
body[data-theme="halloween"] .rouletteTopBox,
body[data-theme="halloween"] .rouletteWheelCard,
body[data-theme="halloween"] .rouletteItemsBox,
body[data-theme="halloween"] .voteSetupBox,
body[data-theme="halloween"] .voteTopBox,
body[data-theme="halloween"] .turnTrackerAdd,
body[data-theme="halloween"] .ttHead,
body[data-theme="halloween"] .ttRow{
  background:#fff3e4 !important;
}

body[data-theme="soda"] .hostDelegateBox,
body[data-theme="soda"] .rouletteSetupBox,
body[data-theme="soda"] .rouletteTopBox,
body[data-theme="soda"] .rouletteWheelCard,
body[data-theme="soda"] .rouletteItemsBox,
body[data-theme="soda"] .voteSetupBox,
body[data-theme="soda"] .voteTopBox,
body[data-theme="soda"] .turnTrackerAdd,
body[data-theme="soda"] .ttHead,
body[data-theme="soda"] .ttRow{
  background:#eefbff !important;
}

body[data-theme="green"] .hostDelegateBox,
body[data-theme="green"] .rouletteSetupBox,
body[data-theme="green"] .rouletteTopBox,
body[data-theme="green"] .rouletteWheelCard,
body[data-theme="green"] .rouletteItemsBox,
body[data-theme="green"] .voteSetupBox,
body[data-theme="green"] .voteTopBox,
body[data-theme="green"] .turnTrackerAdd,
body[data-theme="green"] .ttHead,
body[data-theme="green"] .ttRow{
  background:#f2ffe8 !important;
}


body[data-theme="pink"] #bombWin .bombTopBox,
body[data-theme="pink"] #bombWin .bombCountdownBox,
body[data-theme="pink"] #bombWin .bombInfoBox,
body[data-theme="pink"] #bombWin .bombGuideBox,
body[data-theme="pink"] #bombWin .bombActionBox,
body[data-theme="pink"] #bombWin .bombSetupBox,
body[data-theme="pink"] #onecardWin .onecardPanel,
body[data-theme="pink"] #onecardWin .onecardTopBox,
body[data-theme="pink"] #onecardWin .onecardInfoBox,
body[data-theme="pink"] #onecardWin .onecardPlayersBox,
body[data-theme="pink"] #onecardWin .onecardHandBox,
body[data-theme="pink"] #onecardWin .onecardSetupBox,
body[data-theme="pink"] #mafiaGameWin .mgCard,
body[data-theme="pink"] #mafiaGameWin .mgStat,
body[data-theme="pink"] #mafiaGameWin #mgChatLog,
body[data-theme="pink"] #slotWin .slotBetsWrap,
body[data-theme="pink"] #slotWin .slotResults,
body[data-theme="pink"] #slotWin .slotReel{
  background:#fff1f6 !important;
}

body[data-theme="gold"] #bombWin .bombTopBox,
body[data-theme="gold"] #bombWin .bombCountdownBox,
body[data-theme="gold"] #bombWin .bombInfoBox,
body[data-theme="gold"] #bombWin .bombGuideBox,
body[data-theme="gold"] #bombWin .bombActionBox,
body[data-theme="gold"] #bombWin .bombSetupBox,
body[data-theme="gold"] #onecardWin .onecardPanel,
body[data-theme="gold"] #onecardWin .onecardTopBox,
body[data-theme="gold"] #onecardWin .onecardInfoBox,
body[data-theme="gold"] #onecardWin .onecardPlayersBox,
body[data-theme="gold"] #onecardWin .onecardHandBox,
body[data-theme="gold"] #onecardWin .onecardSetupBox,
body[data-theme="gold"] #mafiaGameWin .mgCard,
body[data-theme="gold"] #mafiaGameWin .mgStat,
body[data-theme="gold"] #mafiaGameWin #mgChatLog,
body[data-theme="gold"] #slotWin .slotBetsWrap,
body[data-theme="gold"] #slotWin .slotResults,
body[data-theme="gold"] #slotWin .slotReel{
  background:#fff7df !important;
}

body[data-theme="candy"] #bombWin .bombTopBox,
body[data-theme="candy"] #bombWin .bombCountdownBox,
body[data-theme="candy"] #bombWin .bombInfoBox,
body[data-theme="candy"] #bombWin .bombGuideBox,
body[data-theme="candy"] #bombWin .bombActionBox,
body[data-theme="candy"] #bombWin .bombSetupBox,
body[data-theme="candy"] #onecardWin .onecardPanel,
body[data-theme="candy"] #onecardWin .onecardTopBox,
body[data-theme="candy"] #onecardWin .onecardInfoBox,
body[data-theme="candy"] #onecardWin .onecardPlayersBox,
body[data-theme="candy"] #onecardWin .onecardHandBox,
body[data-theme="candy"] #onecardWin .onecardSetupBox,
body[data-theme="candy"] #mafiaGameWin .mgCard,
body[data-theme="candy"] #mafiaGameWin .mgStat,
body[data-theme="candy"] #mafiaGameWin #mgChatLog,
body[data-theme="candy"] #slotWin .slotBetsWrap,
body[data-theme="candy"] #slotWin .slotResults,
body[data-theme="candy"] #slotWin .slotReel{
  background:#fff4fb !important;
}

body[data-theme="orange"] #bombWin .bombTopBox,
body[data-theme="orange"] #bombWin .bombCountdownBox,
body[data-theme="orange"] #bombWin .bombInfoBox,
body[data-theme="orange"] #bombWin .bombGuideBox,
body[data-theme="orange"] #bombWin .bombActionBox,
body[data-theme="orange"] #bombWin .bombSetupBox,
body[data-theme="orange"] #onecardWin .onecardPanel,
body[data-theme="orange"] #onecardWin .onecardTopBox,
body[data-theme="orange"] #onecardWin .onecardInfoBox,
body[data-theme="orange"] #onecardWin .onecardPlayersBox,
body[data-theme="orange"] #onecardWin .onecardHandBox,
body[data-theme="orange"] #onecardWin .onecardSetupBox,
body[data-theme="orange"] #mafiaGameWin .mgCard,
body[data-theme="orange"] #mafiaGameWin .mgStat,
body[data-theme="orange"] #mafiaGameWin #mgChatLog,
body[data-theme="orange"] #slotWin .slotBetsWrap,
body[data-theme="orange"] #slotWin .slotResults,
body[data-theme="orange"] #slotWin .slotReel{
  background:#fff3e4 !important;
}

body[data-theme="soda"] #bombWin .bombTopBox,
body[data-theme="soda"] #bombWin .bombCountdownBox,
body[data-theme="soda"] #bombWin .bombInfoBox,
body[data-theme="soda"] #bombWin .bombGuideBox,
body[data-theme="soda"] #bombWin .bombActionBox,
body[data-theme="soda"] #bombWin .bombSetupBox,
body[data-theme="soda"] #onecardWin .onecardPanel,
body[data-theme="soda"] #onecardWin .onecardTopBox,
body[data-theme="soda"] #onecardWin .onecardInfoBox,
body[data-theme="soda"] #onecardWin .onecardPlayersBox,
body[data-theme="soda"] #onecardWin .onecardHandBox,
body[data-theme="soda"] #onecardWin .onecardSetupBox,
body[data-theme="soda"] #mafiaGameWin .mgCard,
body[data-theme="soda"] #mafiaGameWin .mgStat,
body[data-theme="soda"] #mafiaGameWin #mgChatLog,
body[data-theme="soda"] #slotWin .slotBetsWrap,
body[data-theme="soda"] #slotWin .slotResults,
body[data-theme="soda"] #slotWin .slotReel{
  background:#eefbff !important;
}

body[data-theme="green"] #bombWin .bombTopBox,
body[data-theme="green"] #bombWin .bombCountdownBox,
body[data-theme="green"] #bombWin .bombInfoBox,
body[data-theme="green"] #bombWin .bombGuideBox,
body[data-theme="green"] #bombWin .bombActionBox,
body[data-theme="green"] #bombWin .bombSetupBox,
body[data-theme="green"] #onecardWin .onecardPanel,
body[data-theme="green"] #onecardWin .onecardTopBox,
body[data-theme="green"] #onecardWin .onecardInfoBox,
body[data-theme="green"] #onecardWin .onecardPlayersBox,
body[data-theme="green"] #onecardWin .onecardHandBox,
body[data-theme="green"] #onecardWin .onecardSetupBox,
body[data-theme="green"] #mafiaGameWin .mgCard,
body[data-theme="green"] #mafiaGameWin .mgStat,
body[data-theme="green"] #mafiaGameWin #mgChatLog,
body[data-theme="green"] #slotWin .slotBetsWrap,
body[data-theme="green"] #slotWin .slotResults,
body[data-theme="green"] #slotWin .slotReel{
  background:#f2ffe8 !important;
}

.handoutDescBody{
  scrollbar-width:thin !important;
  scrollbar-color:var(--accent) var(--btnBg) !important;
}

.handoutDescBody::-webkit-scrollbar{
  width:10px !important;
  height:10px !important;
}

.handoutDescBody::-webkit-scrollbar-track{
  background:var(--btnBg) !important;
  border:1px solid var(--stroke) !important;
  border-radius:999px !important;
}

.handoutDescBody::-webkit-scrollbar-thumb{
  background:var(--accent) !important;
  border:1px solid var(--stroke) !important;
  border-radius:999px !important;
}

.handoutDescBody::-webkit-scrollbar-thumb:hover{
  filter:brightness(1.08) !important;
}

.handoutDescBody::-webkit-scrollbar-corner{
  background:var(--btnBg) !important;
}
.handoutDescBody{
  -webkit-overflow-scrolling:touch;
  overflow-y:auto !important;
  overflow-x:hidden !important;
}

body[data-theme="neon"]{
  --bg:#010403;
  --panel:rgba(2,11,7,0.97);
  --line:#eafff2;
  --muted:#8af7b5;
  --stroke:rgba(57,255,170,0.34);
  --accent:#39ff7e;
  --stage:#010302;
  --stageGrad1:#042414;
  --stageGrad2:#000000;
  --dialogueBg:rgba(1,12,7,0.94);
  --chipBg:rgba(57,255,170,0.14);
  --msgBg:rgba(4,19,11,0.92);
  --sysBg:rgba(57,255,170,0.10);
  --inputBg:rgba(2,15,9,0.94);
  --headerBg:rgba(1,10,6,0.94);
  --tabBg:rgba(2,16,10,0.93);
  --tabBarBg:rgba(1,10,6,0.95);
  --btnBg:linear-gradient(180deg,#0d2f1b 0%,#06170e 100%);
  --btnText:#ecfff4;
  --hoverBg:rgba(57,255,170,0.20);
  --roomItemBg:rgba(4,17,10,0.92);
  --splitterBg:rgba(57,255,170,0.18);
  --bg-fallback:radial-gradient(circle at 50% 18%,#083d22 0%,#02120a 32%,#000000 78%);
  --accentText:#021108;
  --accentSoft:rgba(57,255,170,0.34);
}
body[data-theme="neon"] .chat,
body[data-theme="neon"] .sceneWindow,
body[data-theme="neon"] .modalBox,
body[data-theme="neon"] .contextMenu,
body[data-theme="neon"] .bgmControls,
body[data-theme="neon"] .charEdit,
body[data-theme="neon"] .chatSuggestion,
body[data-theme="neon"] .roomItem,
body[data-theme="neon"] .lobbyCard,
body[data-theme="neon"] .adminTableWrap{
  background:var(--panel)!important;
  border-color:var(--stroke)!important;
  color:var(--line)!important;
  box-shadow:0 0 0 1px rgba(57,255,170,0.08),0 0 22px rgba(57,255,170,0.08)!important;
}
body[data-theme="neon"] .chatHeader,
body[data-theme="neon"] .winHead,
body[data-theme="neon"] .modalHead,
body[data-theme="neon"] .chatTop{
  background:linear-gradient(180deg,rgba(1,18,10,0.98),rgba(1,10,6,0.96))!important;
  border-color:rgba(57,255,170,0.28)!important;
  box-shadow:inset 0 -1px 0 rgba(57,255,170,0.12)!important;
}
body[data-theme="neon"] .send,
body[data-theme="neon"] .btnMini,
body[data-theme="neon"] .iconBtn,
body[data-theme="neon"] .diceBtn{
  background:linear-gradient(180deg,#0f381f 0%,#07170f 100%)!important;
  border:1px solid #39ffaa!important;
  color:#f0fff5!important;
  text-shadow:0 0 8px rgba(57,255,170,0.38)!important;
  box-shadow:0 0 0 1px rgba(180,255,210,0.08) inset,0 0 16px rgba(57,255,170,0.22),0 0 28px rgba(57,255,170,0.10)!important;
}
body[data-theme="neon"] .send:hover,
body[data-theme="neon"] .btnMini:hover,
body[data-theme="neon"] .iconBtn:hover,
body[data-theme="neon"] .diceBtn:hover{
  background:linear-gradient(180deg,#144c2a 0%,#0a1d12 100%)!important;
  box-shadow:0 0 0 1px rgba(210,255,226,0.12) inset,0 0 22px rgba(57,255,170,0.34),0 0 40px rgba(57,255,170,0.16)!important;
}
body[data-theme="neon"] .msg.sys,
body[data-theme="neon"] .msg.statMsg{
  background:linear-gradient(180deg,rgba(8,30,17,0.98),rgba(2,12,7,0.98))!important;
  border:1px solid rgba(57,255,170,0.28)!important;
  border-left:3px solid #39ffaa!important;
  color:var(--line)!important;
  box-shadow:0 0 18px rgba(57,255,170,0.12),inset 0 1px 0 rgba(255,255,255,0.04)!important;
}
body[data-theme="neon"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(8,30,17,0.90),rgba(1,11,6,0.84))!important;
  border:1px solid rgba(57,255,170,0.34)!important;
  box-shadow:0 0 0 1px rgba(130,255,182,0.10) inset,0 0 24px rgba(57,255,170,0.18),0 0 52px rgba(57,255,170,0.08)!important;
  color:var(--line)!important;
}
body[data-theme="neon"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(0,22,12,0.90);
  --dlgGrad1:rgba(0,22,12,0.52);
  --dlgGrad2:rgba(0,22,12,0.14);
}
body[data-theme="neon"][data-dlgshape="gradient"] .dialogue{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  background:linear-gradient(to top,var(--dlgGrad0) 0%,var(--dlgGrad0) var(--dlgGradStrongTo),var(--dlgGrad1) var(--dlgGradMidTo),var(--dlgGrad2) var(--dlgGradTopTo),transparent 100%)!important;
}
body[data-theme="neon"] .speaker{
  color:#6cff9b!important;
  text-shadow:0 0 8px rgba(57,255,170,0.50),0 0 18px rgba(57,255,170,0.38),0 0 34px rgba(57,255,170,0.20)!important;
}
body[data-theme="neon"] .msg.narrSay{
  border:1px solid rgba(57,255,170,0.34)!important;
  border-left:4px solid #39ffaa!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,rgba(65,255,152,0.14) 0%,rgba(8,30,17,0.98) 18%,rgba(2,12,7,0.99) 100%)!important;
  box-shadow:0 14px 28px rgba(0,0,0,0.36),0 0 24px rgba(57,255,170,0.16),inset 0 1px 0 rgba(255,255,255,0.06)!important;
  backdrop-filter:none!important;
}
body[data-theme="neon"] .msg.narrSay .msgContent .text{
  color:#effff5!important;
  text-shadow:0 0 10px rgba(57,255,170,0.18)!important;
}
body[data-theme="neon"] .stageTopLeft .iconBtn,
body[data-theme="neon"] .stageTopRight .iconBtn,
body[data-theme="neon"] .chatHeader .iconBtn{
  background:var(--btnBg)!important;
  border:1px solid rgba(57,255,170,0.30)!important;
  color:var(--btnText)!important;
  box-shadow:0 0 14px rgba(57,255,170,0.18)!important;
}
body[data-theme="neon"] .hostDelegateBox,
body[data-theme="neon"] .rouletteSetupBox,
body[data-theme="neon"] .rouletteTopBox,
body[data-theme="neon"] .rouletteWheelCard,
body[data-theme="neon"] .rouletteItemsBox,
body[data-theme="neon"] .voteSetupBox,
body[data-theme="neon"] .voteTopBox,
body[data-theme="neon"] .turnTrackerAdd,
body[data-theme="neon"] .ttHead,
body[data-theme="neon"] .ttRow{
  background:rgba(4,18,11,0.88)!important;
  border-color:rgba(57,255,170,0.20)!important;
}
body[data-theme="neon"] #bombWin .bombTopBox,
body[data-theme="neon"] #bombWin .bombCountdownBox,
body[data-theme="neon"] #bombWin .bombInfoBox,
body[data-theme="neon"] #bombWin .bombGuideBox,
body[data-theme="neon"] #bombWin .bombActionBox,
body[data-theme="neon"] #bombWin .bombSetupBox,
body[data-theme="neon"] #onecardWin .onecardPanel,
body[data-theme="neon"] #onecardWin .onecardTopBox,
body[data-theme="neon"] #onecardWin .onecardInfoBox,
body[data-theme="neon"] #onecardWin .onecardPlayersBox,
body[data-theme="neon"] #onecardWin .onecardHandBox,
body[data-theme="neon"] #onecardWin .onecardSetupBox,
body[data-theme="neon"] #mafiaGameWin .mgCard,
body[data-theme="neon"] #mafiaGameWin .mgStat,
body[data-theme="neon"] #mafiaGameWin #mgChatLog,
body[data-theme="neon"] #slotWin .slotBetsWrap,
body[data-theme="neon"] #slotWin .slotResults,
body[data-theme="neon"] #slotWin .slotReel{
  background:rgba(4,18,11,0.92)!important;
  border-color:rgba(57,255,170,0.20)!important;
}
body[data-theme="neon"] .log,
body[data-theme="neon"] .roomList,
body[data-theme="neon"] .adminTableWrap,
body[data-theme="neon"] .adminPanel,
body[data-theme="neon"] .modalBody,
body[data-theme="neon"] .sceneBody,
body[data-theme="neon"] .charList,
body[data-theme="neon"] .charEdit,
body[data-theme="neon"] .chatTabs,
body[data-theme="neon"] .tabLog,
body[data-theme="neon"] #input,
body[data-theme="neon"] .faceMenu{
  scrollbar-color:#39ffaa rgba(2,12,8,0.72)!important;
}
body[data-theme="neon"] .log::-webkit-scrollbar-thumb,
body[data-theme="neon"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="neon"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="neon"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="neon"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="neon"] .sceneBody::-webkit-scrollbar-thumb,
body[data-theme="neon"] .charList::-webkit-scrollbar-thumb,
body[data-theme="neon"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="neon"] .chatTabs::-webkit-scrollbar-thumb,
body[data-theme="neon"] .tabLog::-webkit-scrollbar-thumb,
body[data-theme="neon"] #input::-webkit-scrollbar-thumb,
body[data-theme="neon"] .faceMenu::-webkit-scrollbar-thumb{
  background:#39ffaa!important;
  border:1px solid #e6fff1!important;
  border-radius:999px!important;
  box-shadow:0 0 16px rgba(57,255,170,0.38)!important;
}
body[data-theme="neon"] .log::-webkit-scrollbar-track,
body[data-theme="neon"] .roomList::-webkit-scrollbar-track,
body[data-theme="neon"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="neon"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="neon"] .modalBody::-webkit-scrollbar-track,
body[data-theme="neon"] .sceneBody::-webkit-scrollbar-track,
body[data-theme="neon"] .charList::-webkit-scrollbar-track,
body[data-theme="neon"] .charEdit::-webkit-scrollbar-track,
body[data-theme="neon"] .chatTabs::-webkit-scrollbar-track,
body[data-theme="neon"] .tabLog::-webkit-scrollbar-track,
body[data-theme="neon"] #input::-webkit-scrollbar-track,
body[data-theme="neon"] .faceMenu::-webkit-scrollbar-track{
  background:rgba(1,10,6,0.70)!important;
  border-color:rgba(57,255,170,0.14)!important;
}

body[data-theme="pixel"]{
  --bg:#101615;
  --panel:rgba(10,12,12,0.88);
  --line:#f6ecd2;
  --muted:#c9b994;
  --stroke:#8e7448;
  --accent:#d6aa61;
  --stage:#111715;
  --stageGrad1:#3d6a63;
  --stageGrad2:#090c0d;
  --dialogueBg:rgba(7,8,8,0.78);
  --chipBg:rgba(214,170,97,0.14);
  --msgBg:rgba(9,11,11,0.82);
  --sysBg:rgba(214,170,97,0.12);
  --inputBg:rgba(8,10,10,0.86);
  --headerBg:rgba(8,10,10,0.90);
  --tabBg:rgba(11,13,13,0.92);
  --tabBarBg:rgba(6,7,8,0.86);
  --btnBg:linear-gradient(180deg,#c78d48 0%,#9e642a 52%,#6f3f18 100%);
  --btnText:#fff5e6;
  --hoverBg:rgba(214,170,97,0.14);
  --roomItemBg:rgba(9,11,11,0.84);
  --splitterBg:rgba(0,0,0,0.58);
  --bg-fallback:linear-gradient(180deg,#3f6c68 0%,#18302d 38%,#090c0d 100%);
  --accentText:#fff6e4;
  --accentSoft:rgba(214,170,97,0.24);
}
body[data-theme="pixel"] .chat,
body[data-theme="pixel"] .sceneWindow,
body[data-theme="pixel"] .modalBox,
body[data-theme="pixel"] .contextMenu,
body[data-theme="pixel"] .bgmControls,
body[data-theme="pixel"] .charEdit,
body[data-theme="pixel"] .chatSuggestion,
body[data-theme="pixel"] .roomItem,
body[data-theme="pixel"] .lobbyCard,
body[data-theme="pixel"] .adminTableWrap,
body[data-theme="pixel"] .dialogue,
body[data-theme="pixel"] .msg,
body[data-theme="pixel"] .input,
body[data-theme="pixel"] .send,
body[data-theme="pixel"] .btnMini,
body[data-theme="pixel"] .iconBtn,
body[data-theme="pixel"] .diceBtn,
body[data-theme="pixel"] .chatTab,
body[data-theme="pixel"] .badge,
body[data-theme="pixel"] .userChip{
  border-radius:0!important;
}
body[data-theme="pixel"] .chat,
body[data-theme="pixel"] .sceneWindow,
body[data-theme="pixel"] .modalBox,
body[data-theme="pixel"] .contextMenu,
body[data-theme="pixel"] .bgmControls,
body[data-theme="pixel"] .charEdit,
body[data-theme="pixel"] .chatSuggestion,
body[data-theme="pixel"] .roomItem,
body[data-theme="pixel"] .lobbyCard,
body[data-theme="pixel"] .adminTableWrap{
  background:repeating-linear-gradient(0deg,rgba(255,255,255,0.04) 0px,rgba(255,255,255,0.04) 2px,rgba(0,0,0,0) 2px,rgba(0,0,0,0) 4px),var(--panel)!important;
  border:2px solid #ddb163!important;
  box-shadow:0 0 0 2px #092047,0 0 0 4px #69411f!important;
}
body[data-theme="pixel"] .chatHeader,
body[data-theme="pixel"] .winHead,
body[data-theme="pixel"] .modalHead,
body[data-theme="pixel"] .chatTop{
  background:linear-gradient(180deg,#21457f 0%,#173564 100%)!important;
  border-bottom:2px solid #ddb163!important;
  box-shadow:inset 0 -2px 0 #69411f!important;
}
body[data-theme="pixel"] .speaker,
body[data-theme="pixel"] .winTitle,
body[data-theme="pixel"] .btnMini,
body[data-theme="pixel"] .iconBtn,
body[data-theme="pixel"] .send,
body[data-theme="pixel"] .chatTab,
body[data-theme="pixel"] .badge,
body[data-theme="pixel"] .userChip,
body[data-theme="pixel"] .meta,
body[data-theme="pixel"] .usersTitle{
  font-family:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace!important;
  letter-spacing:0.03em!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.36)!important;
}
body[data-theme="pixel"] .send,
body[data-theme="pixel"] .btnMini,
body[data-theme="pixel"] .iconBtn,
body[data-theme="pixel"] .diceBtn{
  background:linear-gradient(180deg,#c9803f 0%,#9a5725 52%,#713b16 100%)!important;
  border:2px solid #ffe2a8!important;
  color:#fff8eb!important;
  border-radius:0!important;
  box-shadow:0 0 0 2px #6e3e19,2px 2px 0 #08100f!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.42)!important;
}
body[data-theme="pixel"] .send:hover,
body[data-theme="pixel"] .btnMini:hover,
body[data-theme="pixel"] .iconBtn:hover,
body[data-theme="pixel"] .diceBtn:hover{
  background:linear-gradient(180deg,#dc9650 0%,#a86028 52%,#7b4118 100%)!important;
  transform:translate(1px,1px);
  box-shadow:0 0 0 2px #6e3e19,1px 1px 0 #08100f!important;
}
body[data-theme="pixel"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay){
  background:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,0.04) 0px,
      rgba(255,255,255,0.04) 2px,
      rgba(0,0,0,0) 2px,
      rgba(0,0,0,0) 4px
    ),
    linear-gradient(180deg,rgba(28,31,30,0.94) 0%,rgba(8,10,10,0.92) 100%)!important;
  border:2px solid #8e7448!important;
  box-shadow:0 0 0 2px #0a0c0c!important;
}
body[data-theme="pixel"] .msg.sys,
body[data-theme="pixel"] .msg.statMsg{
  background:repeating-linear-gradient(0deg,rgba(255,255,255,0.06) 0px,rgba(255,255,255,0.06) 2px,rgba(0,0,0,0) 2px,rgba(0,0,0,0) 4px),linear-gradient(180deg,#53431d 0%,#2e2410 100%)!important;
  border:2px solid #ffcf72!important;
  color:#fff4d8!important;
  box-shadow:0 0 0 2px #0a1b3d!important;
}
body[data-theme="pixel"] .msg.sys .name,
body[data-theme="pixel"] .msg.statMsg .name{
  color:#ffd36c!important;
}
body[data-theme="pixel"] .msg.sys .time,
body[data-theme="pixel"] .msg.statMsg .time{
  color:#ffe6a9!important;
}
body[data-theme="pixel"]:not([data-dlgshape="gradient"]) .dialogue{
  background:repeating-linear-gradient(0deg,rgba(255,255,255,0.06) 0px,rgba(255,255,255,0.06) 2px,rgba(0,0,0,0) 2px,rgba(0,0,0,0) 4px),linear-gradient(180deg,#18356f 0%,#0e1f47 100%)!important;
  border:2px solid #8ce7ff!important;
  color:#fff8e7!important;
  box-shadow:0 0 0 2px #081a3d,0 0 0 4px #6d421c,0 0 0 6px #c5a36c!important;
}
body[data-theme="pixel"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(10,26,61,0.99);
  --dlgGrad1:rgba(10,26,61,0.68);
  --dlgGrad2:rgba(10,26,61,0.20);
}
body[data-theme="pixel"][data-dlgshape="gradient"] .dialogue{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  background:linear-gradient(to top,var(--dlgGrad0) 0%,var(--dlgGrad0) var(--dlgGradStrongTo),var(--dlgGrad1) var(--dlgGradMidTo),var(--dlgGrad2) var(--dlgGradTopTo),transparent 100%)!important;
}
body[data-theme="pixel"] .speaker{
  color:#ffd15f!important;
  text-shadow:1px 1px 0 #5b3416,0 0 0 transparent!important;
}
body[data-theme="pixel"] .line,
body[data-theme="pixel"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay) .text,
body[data-theme="pixel"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay) .name,
body[data-theme="pixel"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay) .time{
  font-family:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace!important;
  letter-spacing:0.02em!important;
}

body[data-theme="pixel"] .line,
body[data-theme="pixel"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay) .text{
  color:#fff7e6!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.40)!important;
}

body[data-theme="pixel"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay) .name{
  color:#ffd98d!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.44)!important;
}

body[data-theme="pixel"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay) .time{
  color:#cbb894!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.40)!important;
}
body[data-theme="pixel"] .stageTopLeft .iconBtn,
body[data-theme="pixel"] .stageTopRight .iconBtn,
body[data-theme="pixel"] .chatHeader .iconBtn{
  background:linear-gradient(180deg,#c9803f 0%,#9a5725 52%,#713b16 100%)!important;
  border:2px solid #ffe2a8!important;
  color:#fff8eb!important;
  border-radius:0!important;
  box-shadow:0 0 0 2px #6e3e19,2px 2px 0 #081a3d!important;
}
body[data-theme="pixel"] .hostDelegateBox,
body[data-theme="pixel"] .rouletteSetupBox,
body[data-theme="pixel"] .rouletteTopBox,
body[data-theme="pixel"] .rouletteWheelCard,
body[data-theme="pixel"] .rouletteItemsBox,
body[data-theme="pixel"] .voteSetupBox,
body[data-theme="pixel"] .voteTopBox,
body[data-theme="pixel"] .turnTrackerAdd,
body[data-theme="pixel"] .ttHead,
body[data-theme="pixel"] .ttRow{
  background:repeating-linear-gradient(0deg,rgba(255,255,255,0.05) 0px,rgba(255,255,255,0.05) 2px,rgba(0,0,0,0) 2px,rgba(0,0,0,0) 4px),#13305f!important;
  border:2px solid #7fc6d9!important;
  border-radius:0!important;
  box-shadow:0 0 0 2px #081a3d!important;
}
body[data-theme="pixel"] #bombWin .bombTopBox,
body[data-theme="pixel"] #bombWin .bombCountdownBox,
body[data-theme="pixel"] #bombWin .bombInfoBox,
body[data-theme="pixel"] #bombWin .bombGuideBox,
body[data-theme="pixel"] #bombWin .bombActionBox,
body[data-theme="pixel"] #bombWin .bombSetupBox,
body[data-theme="pixel"] #onecardWin .onecardPanel,
body[data-theme="pixel"] #onecardWin .onecardTopBox,
body[data-theme="pixel"] #onecardWin .onecardInfoBox,
body[data-theme="pixel"] #onecardWin .onecardPlayersBox,
body[data-theme="pixel"] #onecardWin .onecardHandBox,
body[data-theme="pixel"] #onecardWin .onecardSetupBox,
body[data-theme="pixel"] #mafiaGameWin .mgCard,
body[data-theme="pixel"] #mafiaGameWin .mgStat,
body[data-theme="pixel"] #mafiaGameWin #mgChatLog,
body[data-theme="pixel"] #slotWin .slotBetsWrap,
body[data-theme="pixel"] #slotWin .slotResults,
body[data-theme="pixel"] #slotWin .slotReel{
  background:repeating-linear-gradient(0deg,rgba(255,255,255,0.05) 0px,rgba(255,255,255,0.05) 2px,rgba(0,0,0,0) 2px,rgba(0,0,0,0) 4px),#123060!important;
  border:2px solid #7fc6d9!important;
  border-radius:0!important;
  box-shadow:0 0 0 2px #081a3d!important;
}
body[data-theme="pixel"] .log,
body[data-theme="pixel"] .roomList,
body[data-theme="pixel"] .adminTableWrap,
body[data-theme="pixel"] .adminPanel,
body[data-theme="pixel"] .modalBody,
body[data-theme="pixel"] .sceneBody,
body[data-theme="pixel"] .charList,
body[data-theme="pixel"] .charEdit,
body[data-theme="pixel"] .chatTabs,
body[data-theme="pixel"] .tabLog,
body[data-theme="pixel"] #input,
body[data-theme="pixel"] .faceMenu{
  scrollbar-color:#ffbf4d #102554!important;
}
body[data-theme="pixel"] .log::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .sceneBody::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .charList::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .chatTabs::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .tabLog::-webkit-scrollbar-thumb,
body[data-theme="pixel"] #input::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .faceMenu::-webkit-scrollbar-thumb{
  background:#ffbf4d!important;
  border:2px solid #fff2c7!important;
  border-radius:0!important;
}
body[data-theme="pixel"] .log::-webkit-scrollbar-track,
body[data-theme="pixel"] .roomList::-webkit-scrollbar-track,
body[data-theme="pixel"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="pixel"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="pixel"] .modalBody::-webkit-scrollbar-track,
body[data-theme="pixel"] .sceneBody::-webkit-scrollbar-track,
body[data-theme="pixel"] .charList::-webkit-scrollbar-track,
body[data-theme="pixel"] .charEdit::-webkit-scrollbar-track,
body[data-theme="pixel"] .chatTabs::-webkit-scrollbar-track,
body[data-theme="pixel"] .tabLog::-webkit-scrollbar-track,
body[data-theme="pixel"] #input::-webkit-scrollbar-track,
body[data-theme="pixel"] .faceMenu::-webkit-scrollbar-track{
  background:#102554!important;
  border:2px solid #7fc6d9!important;
}


body[data-theme="pixel"] .statWidget{
  background:
    linear-gradient(180deg,#f5d7a1 0%,#c98a49 8%,#7e451f 9%,#4a2511 100%)!important;
  border:2px solid #f7ddb0!important;
  border-radius:0!important;
  padding:4px!important;
  box-shadow:
    0 0 0 2px #6e3e19,
    2px 2px 0 #120b07,
    inset 0 1px 0 rgba(255,244,214,0.45),
    inset 0 -2px 0 rgba(0,0,0,0.28)!important;
  backdrop-filter:none!important;
}

body[data-theme="pixel"] .statWidget.dragging{
  border-color:#fff1c8!important;
  box-shadow:
    0 0 0 2px #8a4f22,
    2px 2px 0 #120b07,
    0 0 0 4px rgba(255,222,138,0.38),
    inset 0 1px 0 rgba(255,244,214,0.52)!important;
}

body[data-theme="pixel"] .statAvatar{
  width:52px!important;
  height:52px!important;
  margin-right:8px!important;
  border-radius:0!important;
  background:
    linear-gradient(180deg,#4f2b14 0%,#211108 100%)!important;
  border:2px solid #f2d099!important;
  box-shadow:
    0 0 0 2px #6e3e19,
    inset 0 1px 0 rgba(255,239,200,0.32)!important;
}

body[data-theme="pixel"] .statAvatar img{
  image-rendering:auto;
  object-position:top center;
}

body[data-theme="pixel"] .statGrid{
  grid-template-columns:1fr!important;
  gap:4px!important;
  min-width:150px;
}

body[data-theme="pixel"] .miniStat{
  position:relative;
  min-width:150px!important;
  min-height:16px!important;
  gap:0;
}

body[data-theme="pixel"] .miniStat:hover .miniStatLabel{
  color:#fff7df!important;
  text-shadow:1px 1px 0 #5c3518!important;
}

body[data-theme="pixel"] .miniStatLabel{
  position:absolute;
  left:6px!important;
  right:6px!important;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0!important;
  margin-bottom:0!important;
  pointer-events:none;
  font-family:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:700!important;
  color:#fff2cf!important;
  text-shadow:
    1px 1px 0 #4e2b13,
    0 0 2px rgba(0,0,0,0.45)!important;
  letter-spacing:0.02em;
}

body[data-theme="pixel"] .miniStatLabel span:first-child{
  padding-right:6px;
}

body[data-theme="pixel"] .miniStatLabel span:last-child{
  padding-left:6px;
  color:#fff7e3!important;
  font-size:10px!important;
  text-shadow:
    1px 1px 0 #4e2b13,
    0 0 2px rgba(0,0,0,0.45)!important;
}

body[data-theme="pixel"] .miniStatBar{
  position:relative;
  width:100%!important;
  height:16px!important;
  background:
    linear-gradient(180deg,#1a0d06 0%,#34190d 100%)!important;
  border:2px solid #f2d099!important;
  border-radius:0!important;
  overflow:hidden!important;
  box-shadow:
    0 0 0 2px #6e3e19,
    inset 0 1px 0 rgba(255,241,202,0.12),
    inset 0 -1px 0 rgba(0,0,0,0.35)!important;
}

body[data-theme="pixel"] .miniStatBar::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(255,255,255,0.08) 0%,rgba(255,255,255,0) 45%,rgba(0,0,0,0.18) 100%),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,0.03) 0 6px,
      rgba(0,0,0,0.08) 6px 12px
    );
  pointer-events:none;
}

body[data-theme="pixel"] .miniStatFill{
  position:relative;
  height:100%!important;
  border-radius:0!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.28),
    inset 0 -1px 0 rgba(0,0,0,0.22)!important;
}

body[data-theme="pixel"] .miniStatFill::after{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(255,255,255,0.16) 0%,rgba(255,255,255,0) 46%,rgba(0,0,0,0.12) 100%),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,0.05) 0 8px,
      rgba(0,0,0,0.08) 8px 16px
    );
  pointer-events:none;
}

body[data-theme="pixel"] .fill-HP{
  background:linear-gradient(180deg,#ffb08f 0%,#ff7d58 35%,#c94c2e 100%)!important;
  color:#ff946d!important;
}
body[data-theme="pixel"] .fill-MP{
  background:linear-gradient(180deg,#b9d2ff 0%,#7ea3ff 35%,#4768d1 100%)!important;
  color:#8eaefe!important;
}
body[data-theme="pixel"] .fill-SAN{
  background:linear-gradient(180deg,#d9bbff 0%,#b185ff 35%,#7442cb 100%)!important;
  color:#be98ff!important;
}
body[data-theme="pixel"] .fill-LUK{
  background:linear-gradient(180deg,#ffe6a6 0%,#f3c95b 35%,#b98523 100%)!important;
  color:#f5cf67!important;
}
body[data-theme="pixel"] .fill-EXT{
  background:linear-gradient(180deg,#f2d9b0 0%,#d9ae72 35%,#8f6232 100%)!important;
  color:#dfba86!important;
}
body[data-theme="hotpink"]{
  --bg:#090006;
  --panel:rgba(26,2,20,0.97);
  --line:#fff0f8;
  --muted:#ff9fd2;
  --stroke:rgba(255,79,143,0.34);
  --accent:#ff28aa;
  --stage:#060004;
  --stageGrad1:#4b0734;
  --stageGrad2:#050004;
  --dialogueBg:rgba(24,3,18,0.95);
  --chipBg:rgba(255,79,143,0.15);
  --msgBg:rgba(27,3,20,0.92);
  --sysBg:rgba(255,79,143,0.10);
  --inputBg:rgba(20,2,15,0.95);
  --headerBg:rgba(15,1,11,0.95);
  --tabBg:rgba(24,3,19,0.93);
  --tabBarBg:rgba(14,1,10,0.96);
  --btnBg:linear-gradient(180deg,#4a0932 0%,#260516 100%);
  --btnText:#fff1f9;
  --hoverBg:rgba(255,79,143,0.18);
  --roomItemBg:rgba(24,3,19,0.92);
  --splitterBg:rgba(255,79,143,0.18);
  --bg-fallback:radial-gradient(circle at 50% 18%,#5d0b41 0%,#1a0214 34%,#040003 78%);
  --accentText:#fff3fa;
  --accentSoft:rgba(255,79,143,0.32);
}
body[data-theme="hotpink"] .chat,
body[data-theme="hotpink"] .sceneWindow,
body[data-theme="hotpink"] .modalBox,
body[data-theme="hotpink"] .contextMenu,
body[data-theme="hotpink"] .bgmControls,
body[data-theme="hotpink"] .charEdit,
body[data-theme="hotpink"] .chatSuggestion,
body[data-theme="hotpink"] .roomItem,
body[data-theme="hotpink"] .lobbyCard,
body[data-theme="hotpink"] .adminTableWrap{
  background:var(--panel)!important;
  border-color:var(--stroke)!important;
  color:var(--line)!important;
  box-shadow:0 0 0 1px rgba(255,79,143,0.08),0 0 24px rgba(255,79,143,0.08)!important;
}
body[data-theme="hotpink"] .chatHeader,
body[data-theme="hotpink"] .winHead,
body[data-theme="hotpink"] .modalHead,
body[data-theme="hotpink"] .chatTop{
  background:linear-gradient(180deg,rgba(27,2,21,0.98),rgba(13,1,10,0.96))!important;
  border-color:rgba(255,79,143,0.28)!important;
  box-shadow:inset 0 -1px 0 rgba(255,79,143,0.12)!important;
}
body[data-theme="hotpink"] .send,
body[data-theme="hotpink"] .btnMini,
body[data-theme="hotpink"] .iconBtn,
body[data-theme="hotpink"] .diceBtn{
  background:linear-gradient(180deg,#8b173e 0%,#390816 100%)!important;
  border:1px solid #ff4f8f!important;
  color:#fff7fa!important;
  text-shadow:
    0 0 12px rgba(255,79,143,0.66)!important;
  box-shadow:
    0 0 0 1px rgba(255,233,240,0.12) inset,
    0 0 20px rgba(255,79,143,0.42),
    0 0 40px rgba(255,79,143,0.28),
    0 0 74px rgba(255,79,143,0.16)!important;
}
body[data-theme="hotpink"] .send:hover,
body[data-theme="hotpink"] .btnMini:hover,
body[data-theme="hotpink"] .iconBtn:hover,
body[data-theme="hotpink"] .diceBtn:hover{
  background:linear-gradient(180deg,#aa1d4d 0%,#4b0a1c 100%)!important;
  box-shadow:
    0 0 0 1px rgba(255,240,245,0.16) inset,
    0 0 28px rgba(255,79,143,0.56),
    0 0 52px rgba(255,79,143,0.36),
    0 0 88px rgba(255,79,143,0.20)!important;
}
body[data-theme="hotpink"] .msg.sys,
body[data-theme="hotpink"] .msg.statMsg{
  background:linear-gradient(180deg,rgba(46,4,21,0.98),rgba(20,1,9,0.98))!important;
  border:1px solid rgba(255,79,143,0.34)!important;
  border-left:3px solid #ff4f8f!important;
  color:var(--line)!important;
  box-shadow:
    0 0 20px rgba(255,79,143,0.16),
    inset 0 1px 0 rgba(255,255,255,0.04)!important;
}
body[data-theme="hotpink"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,rgba(54,5,25,0.90),rgba(22,1,10,0.84))!important;
  border:1px solid rgba(255,79,143,0.42)!important;
  box-shadow:
    0 0 0 1px rgba(255,214,228,0.12) inset,
    0 0 26px rgba(255,79,143,0.28),
    0 0 58px rgba(255,79,143,0.16),
    0 0 100px rgba(255,79,143,0.08)!important;
  color:var(--line)!important;
}
body[data-theme="hotpink"] .speaker{
  color:#ff8db7!important;
  text-shadow:
    0 0 10px rgba(255,79,143,0.78),
    0 0 22px rgba(255,79,143,0.50),
    0 0 40px rgba(255,79,143,0.28)!important;
}
}
body[data-theme="hotpink"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(30,1,22,0.90);
  --dlgGrad1:rgba(30,1,22,0.54);
  --dlgGrad2:rgba(30,1,22,0.14);
}
body[data-theme="hotpink"][data-dlgshape="gradient"] .dialogue{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  background:linear-gradient(to top,var(--dlgGrad0) 0%,var(--dlgGrad0) var(--dlgGradStrongTo),var(--dlgGrad1) var(--dlgGradMidTo),var(--dlgGrad2) var(--dlgGradTopTo),transparent 100%)!important;
}
body[data-theme="hotpink"] .speaker{
  color:#ff68c6!important;
  text-shadow:0 0 8px rgba(255,79,143,0.56),0 0 18px rgba(255,79,143,0.40),0 0 34px rgba(255,79,143,0.22)!important;
}
body[data-theme="hotpink"] .msg.narrSay{
  border:1px solid rgba(255,79,143,0.34)!important;
  border-left:4px solid #ff287a!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,rgba(255,90,190,0.16) 0%,rgba(35,4,26,0.98) 18%,rgba(15,1,11,0.99) 100%)!important;
  box-shadow:0 14px 28px rgba(0,0,0,0.36),0 0 24px rgba(255,79,143,0.16),inset 0 1px 0 rgba(255,255,255,0.06)!important;
  backdrop-filter:none!important;
}
body[data-theme="hotpink"] .msg.narrSay .msgContent .text{
  color:#fff3fa!important;
  text-shadow:0 0 10px rgba(255,79,143,0.14)!important;
}
body[data-theme="hotpink"] .stageTopLeft .iconBtn,
body[data-theme="hotpink"] .stageTopRight .iconBtn,
body[data-theme="hotpink"] .chatHeader .iconBtn{
  background:var(--btnBg)!important;
  border:1px solid rgba(255,79,143,0.30)!important;
  color:var(--btnText)!important;
  box-shadow:0 0 14px rgba(255,79,143,0.18)!important;
}
body[data-theme="hotpink"] .hostDelegateBox,
body[data-theme="hotpink"] .rouletteSetupBox,
body[data-theme="hotpink"] .rouletteTopBox,
body[data-theme="hotpink"] .rouletteWheelCard,
body[data-theme="hotpink"] .rouletteItemsBox,
body[data-theme="hotpink"] .voteSetupBox,
body[data-theme="hotpink"] .voteTopBox,
body[data-theme="hotpink"] .turnTrackerAdd,
body[data-theme="hotpink"] .ttHead,
body[data-theme="hotpink"] .ttRow{
  background:rgba(28,3,21,0.88)!important;
  border-color:rgba(255,79,143,0.20)!important;
}
body[data-theme="hotpink"] #bombWin .bombTopBox,
body[data-theme="hotpink"] #bombWin .bombCountdownBox,
body[data-theme="hotpink"] #bombWin .bombInfoBox,
body[data-theme="hotpink"] #bombWin .bombGuideBox,
body[data-theme="hotpink"] #bombWin .bombActionBox,
body[data-theme="hotpink"] #bombWin .bombSetupBox,
body[data-theme="hotpink"] #onecardWin .onecardPanel,
body[data-theme="hotpink"] #onecardWin .onecardTopBox,
body[data-theme="hotpink"] #onecardWin .onecardInfoBox,
body[data-theme="hotpink"] #onecardWin .onecardPlayersBox,
body[data-theme="hotpink"] #onecardWin .onecardHandBox,
body[data-theme="hotpink"] #onecardWin .onecardSetupBox,
body[data-theme="hotpink"] #mafiaGameWin .mgCard,
body[data-theme="hotpink"] #mafiaGameWin .mgStat,
body[data-theme="hotpink"] #mafiaGameWin #mgChatLog,
body[data-theme="hotpink"] #slotWin .slotBetsWrap,
body[data-theme="hotpink"] #slotWin .slotResults,
body[data-theme="hotpink"] #slotWin .slotReel{
  background:rgba(28,3,21,0.92)!important;
  border-color:rgba(255,79,143,0.20)!important;
}
body[data-theme="hotpink"] .log,
body[data-theme="hotpink"] .roomList,
body[data-theme="hotpink"] .adminTableWrap,
body[data-theme="hotpink"] .adminPanel,
body[data-theme="hotpink"] .modalBody,
body[data-theme="hotpink"] .sceneBody,
body[data-theme="hotpink"] .charList,
body[data-theme="hotpink"] .charEdit,
body[data-theme="hotpink"] .chatTabs,
body[data-theme="hotpink"] .tabLog,
body[data-theme="hotpink"] #input,
body[data-theme="hotpink"] .faceMenu{
  scrollbar-color:#ff4f8f rgba(26,3,12,0.76)!important;
}
body[data-theme="hotpink"] .log::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .sceneBody::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .charList::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .chatTabs::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .tabLog::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] #input::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .faceMenu::-webkit-scrollbar-thumb{
  background:#ff4f8f!important;
  border:1px solid #ffe0e9!important;
  border-radius:999px!important;
  box-shadow:
    0 0 18px rgba(255,79,143,0.44)!important;
}
body[data-theme="hotpink"] .log::-webkit-scrollbar-track,
body[data-theme="hotpink"] .roomList::-webkit-scrollbar-track,
body[data-theme="hotpink"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="hotpink"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="hotpink"] .modalBody::-webkit-scrollbar-track,
body[data-theme="hotpink"] .sceneBody::-webkit-scrollbar-track,
body[data-theme="hotpink"] .charList::-webkit-scrollbar-track,
body[data-theme="hotpink"] .charEdit::-webkit-scrollbar-track,
body[data-theme="hotpink"] .chatTabs::-webkit-scrollbar-track,
body[data-theme="hotpink"] .tabLog::-webkit-scrollbar-track,
body[data-theme="hotpink"] #input::-webkit-scrollbar-track,
body[data-theme="hotpink"] .faceMenu::-webkit-scrollbar-track{
  background:rgba(26,3,12,0.76)!important;
  border:1px solid rgba(255,79,143,0.16)!important;
}
body[data-theme="hotpink"] .log::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] .roomList::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] .adminTableWrap::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] .adminPanel::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] .modalBody::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] .sceneBody::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] .charList::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] .charEdit::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] .chatTabs::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] .tabLog::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] #input::-webkit-scrollbar-thumb:hover,
body[data-theme="hotpink"] .faceMenu::-webkit-scrollbar-thumb:hover{
  background:#ff73a7!important;
}
body[data-theme="hotpink"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .sceneBody::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .charList::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .chatTabs::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .tabLog::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] #input::-webkit-scrollbar-thumb,
body[data-theme="hotpink"] .faceMenu::-webkit-scrollbar-thumb{
  background:#ff28aa!important;
  border:1px solid #ffd6ef!important;
  border-radius:999px!important;
  box-shadow:0 0 16px rgba(255,79,143,0.34)!important;
}
body[data-theme="hotpink"] .log::-webkit-scrollbar-track,
body[data-theme="hotpink"] .roomList::-webkit-scrollbar-track,
body[data-theme="hotpink"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="hotpink"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="hotpink"] .modalBody::-webkit-scrollbar-track,
body[data-theme="hotpink"] .sceneBody::-webkit-scrollbar-track,
body[data-theme="hotpink"] .charList::-webkit-scrollbar-track,
body[data-theme="hotpink"] .charEdit::-webkit-scrollbar-track,
body[data-theme="hotpink"] .chatTabs::-webkit-scrollbar-track,
body[data-theme="hotpink"] .tabLog::-webkit-scrollbar-track,
body[data-theme="hotpink"] #input::-webkit-scrollbar-track,
body[data-theme="hotpink"] .faceMenu::-webkit-scrollbar-track{
  background:rgba(18,2,14,0.70)!important;
  border-color:rgba(255,79,143,0.12)!important;
}

body[data-theme="hotpink"]{
  --accent:#ff28aa !important;
  --stroke:#ff4f8f !important;
  --accentSoft:rgba(255,79,143,0.36) !important;
  --muted:#ffb3df !important;
  --chipBg:rgba(255,79,143,0.18) !important;
  --sysBg:rgba(255,79,143,0.14) !important;
  --hoverBg:rgba(255,79,143,0.22) !important;
  --splitterBg:rgba(255,79,143,0.24) !important;
}

body[data-theme="hotpink"] .badgeBtn,
body[data-theme="hotpink"] .badgeLink,
body[data-theme="hotpink"] .chatBtn,
body[data-theme="hotpink"] .send,
body[data-theme="hotpink"] .btnMini,
body[data-theme="hotpink"] .iconBtn,
body[data-theme="hotpink"] .diceBtn,
body[data-theme="hotpink"] .winClose{
  border-color:#ff4f8f !important;
  color:#fff7fc !important;
  text-shadow:
    0 0 10px rgba(255,79,143,0.62),
    0 0 22px rgba(255,79,143,0.34) !important;
  box-shadow:
    0 0 0 1px rgba(255,236,245,0.16) inset,
    0 0 20px rgba(255,79,143,0.44),
    0 0 42px rgba(255,79,143,0.26),
    0 0 74px rgba(255,79,143,0.14) !important;
}

body[data-theme="hotpink"] .badgeBtn:hover,
body[data-theme="hotpink"] .badgeLink:hover,
body[data-theme="hotpink"] .chatBtn:hover,
body[data-theme="hotpink"] .send:hover,
body[data-theme="hotpink"] .btnMini:hover,
body[data-theme="hotpink"] .iconBtn:hover,
body[data-theme="hotpink"] .diceBtn:hover,
body[data-theme="hotpink"] .winClose:hover{
  box-shadow:
    0 0 0 1px rgba(255,243,248,0.20) inset,
    0 0 24px rgba(255,79,143,0.58),
    0 0 54px rgba(255,79,143,0.34),
    0 0 90px rgba(255,79,143,0.18) !important;
}

body[data-theme="hotpink"] .chatTabs{
  border-bottom:1px solid #ff4f8f !important;
  box-shadow:
    inset 0 -1px 0 rgba(255,232,243,0.22),
    0 0 22px rgba(255,79,143,0.16) !important;
}

body[data-theme="hotpink"] .chatTab{
  background:linear-gradient(180deg,rgba(63,6,35,0.98),rgba(28,3,18,0.96)) !important;
  border-color:#ff4f8f !important;
  color:#ffc7e8 !important;
  text-shadow:
    0 0 8px rgba(255,79,143,0.42),
    0 0 16px rgba(255,79,143,0.22) !important;
  box-shadow:
    0 0 0 1px rgba(255,232,243,0.10) inset,
    0 0 16px rgba(255,79,143,0.24),
    0 0 30px rgba(255,79,143,0.12) !important;
}

body[data-theme="hotpink"] .chatTab:hover{
  background:linear-gradient(180deg,rgba(86,10,48,0.98),rgba(38,4,24,0.97)) !important;
  color:#fff3fa !important;
  box-shadow:
    0 0 0 1px rgba(255,240,247,0.14) inset,
    0 0 20px rgba(255,79,143,0.34),
    0 0 40px rgba(255,79,143,0.18) !important;
}

body[data-theme="hotpink"] .chatTab.active{
  background:linear-gradient(180deg,rgba(120,16,70,0.98),rgba(53,6,28,0.98)) !important;
  border-color:#ff73b9 !important;
  color:#fff8fc !important;
  text-shadow:
    0 0 10px rgba(255,79,143,0.78),
    0 0 24px rgba(255,79,143,0.46),
    0 0 44px rgba(255,79,143,0.24) !important;
  box-shadow:
    0 0 0 1px rgba(255,244,249,0.18) inset,
    0 0 22px rgba(255,79,143,0.44),
    0 0 46px rgba(255,79,143,0.24),
    0 0 78px rgba(255,79,143,0.12) !important;
}

body[data-theme="hotpink"] .dialogue{
  border:1px solid #ff4f8f !important;
  box-shadow:
    0 0 0 1px rgba(255,236,245,0.14) inset,
    0 0 28px rgba(255,79,143,0.48),
    0 0 60px rgba(255,79,143,0.28),
    0 0 104px rgba(255,79,143,0.16),
    0 0 150px rgba(255,79,143,0.08) !important;
}

body[data-theme="hotpink"] .speaker{
  color:#ffb6df !important;
  text-shadow:
    0 0 10px rgba(255,79,143,0.92),
    0 0 24px rgba(255,79,143,0.64),
    0 0 48px rgba(255,79,143,0.36),
    0 0 80px rgba(255,79,143,0.20) !important;
}

body[data-theme="hotpink"] .line{
  color:#fff5fb !important;
  text-shadow:
    0 0 8px rgba(255,79,143,0.58),
    0 0 18px rgba(255,79,143,0.34),
    0 0 34px rgba(255,79,143,0.18) !important;
}

body[data-theme="hotpink"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay):not(.gmNarrMsg):not(.gmImageMsg):not(.gmJudgeMsg):not(.gmMoveMsg){
  border:1px solid #ff4f8f !important;
  box-shadow:
    0 0 0 1px rgba(255,236,245,0.08) inset,
    0 0 16px rgba(255,79,143,0.32),
    0 0 34px rgba(255,79,143,0.18),
    0 0 62px rgba(255,79,143,0.10) !important;
}

body[data-theme="hotpink"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay) .name{
  color:#ffb8e0 !important;
  text-shadow:
    0 0 8px rgba(255,79,143,0.56),
    0 0 18px rgba(255,79,143,0.28) !important;
}

body[data-theme="hotpink"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay) .text{
  color:#fff5fb !important;
  text-shadow:
    0 0 8px rgba(255,79,143,0.34),
    0 0 18px rgba(255,79,143,0.18) !important;
}

body[data-theme="hotpink"] .chat,
body[data-theme="hotpink"] .chatTop,
body[data-theme="hotpink"] .chatHeader,
body[data-theme="hotpink"] .winHead,
body[data-theme="hotpink"] .modalHead,
body[data-theme="hotpink"] .input,
body[data-theme="hotpink"] .sceneWindow,
body[data-theme="hotpink"] .modalBox,
body[data-theme="hotpink"] .contextMenu,
body[data-theme="hotpink"] .settingMenu,
body[data-theme="hotpink"] .faceMenu,
body[data-theme="hotpink"] .roomItem,
body[data-theme="hotpink"] .lobbyCard,
body[data-theme="hotpink"] .adminTableWrap,
body[data-theme="hotpink"] .charEdit{
  border-color:#ff4f8f !important;
  box-shadow:
    0 0 0 1px rgba(255,79,143,0.12),
    0 0 24px rgba(255,79,143,0.14),
    0 0 48px rgba(255,79,143,0.08) !important;
}

body[data-theme="hotpink"] .stage{
  border-color:#ff4f8f !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,236,245,0.10),
    0 0 24px rgba(255,79,143,0.18),
    0 0 50px rgba(255,79,143,0.08) !important;
}

body[data-theme="hotpink"] .splitter{
  background:linear-gradient(180deg,#ff9ccc 0%,#ff28aa 100%) !important;
  border-left:1px solid #ffe6f3 !important;
  border-right:1px solid #ffe6f3 !important;
  box-shadow:
    0 0 24px rgba(255,79,143,0.60),
    0 0 48px rgba(255,79,143,0.32),
    0 0 88px rgba(255,79,143,0.16) !important;
}

body[data-theme="hotpink"] .splitter:hover,
body[data-theme="hotpink"].draggingCol .splitter,
body[data-theme="hotpink"].draggingRow .splitter{
  background:linear-gradient(180deg,#ffc2df 0%,#ff28aa 100%) !important;
  box-shadow:
    0 0 30px rgba(255,79,143,0.72),
    0 0 58px rgba(255,79,143,0.38),
    0 0 100px rgba(255,79,143,0.20) !important;
}

body[data-theme="hotpink"] .splitApp.chatBottom > .splitter{
  border-left:none !important;
  border-right:none !important;
  border-top:1px solid #ffe6f3 !important;
  border-bottom:1px solid #ffe6f3 !important;
}

body[data-theme="neon"]{
  --accent:#38ffd7 !important;
  --stroke:#38ffd7 !important;
  --accentSoft:rgba(57,255,170,0.34) !important;
  --muted:#a8fff0 !important;
  --chipBg:rgba(57,255,170,0.16) !important;
  --sysBg:rgba(57,255,170,0.12) !important;
  --hoverBg:rgba(57,255,170,0.18) !important;
  --splitterBg:rgba(57,255,170,0.22) !important;
}

body[data-theme="neon"] .badgeBtn,
body[data-theme="neon"] .badgeLink,
body[data-theme="neon"] .chatBtn,
body[data-theme="neon"] .send,
body[data-theme="neon"] .btnMini,
body[data-theme="neon"] .iconBtn,
body[data-theme="neon"] .diceBtn,
body[data-theme="neon"] .winClose{
  border-color:#39ffaa !important;
  color:#f1fff8 !important;
  text-shadow:
    0 0 10px rgba(57,255,170,0.55),
    0 0 22px rgba(57,255,170,0.30) !important;
  box-shadow:
    0 0 0 1px rgba(230,255,241,0.14) inset,
    0 0 18px rgba(57,255,170,0.38),
    0 0 40px rgba(57,255,170,0.22),
    0 0 70px rgba(57,255,170,0.12) !important;
}

body[data-theme="neon"] .badgeBtn:hover,
body[data-theme="neon"] .badgeLink:hover,
body[data-theme="neon"] .chatBtn:hover,
body[data-theme="neon"] .send:hover,
body[data-theme="neon"] .btnMini:hover,
body[data-theme="neon"] .iconBtn:hover,
body[data-theme="neon"] .diceBtn:hover,
body[data-theme="neon"] .winClose:hover{
  box-shadow:
    0 0 0 1px rgba(232,255,251,0.18) inset,
    0 0 22px rgba(57,255,170,0.52),
    0 0 50px rgba(57,255,170,0.30),
    0 0 86px rgba(57,255,170,0.16) !important;
}

body[data-theme="neon"] .chatTabs{
  border-bottom:1px solid #39ffaa !important;
  box-shadow:
    inset 0 -1px 0 rgba(224,255,250,0.20),
    0 0 20px rgba(57,255,170,0.14) !important;
}
body[data-theme="neon"] .chatTab{
  border-color:#38ffd7 !important;
  color:#bafff2 !important;
  text-shadow:
    0 0 8px rgba(57,255,170,0.40),
    0 0 16px rgba(57,255,170,0.20) !important;
  box-shadow:
    0 0 0 1px rgba(220,255,248,0.08) inset,
    0 0 14px rgba(57,255,170,0.20),
    0 0 28px rgba(57,255,170,0.10) !important;
}
body[data-theme="neon"] .chatTab.active{
  border-color:#38ffd7 !important;
  color:#f3fffd !important;
  text-shadow:
    0 0 10px rgba(57,255,170,0.64),
    0 0 22px rgba(57,255,170,0.36),
    0 0 42px rgba(57,255,170,0.18) !important;
  box-shadow:
    0 0 0 1px rgba(230,255,251,0.14) inset,
    0 0 20px rgba(57,255,170,0.36),
    0 0 42px rgba(57,255,170,0.20),
    0 0 70px rgba(57,255,170,0.10) !important;
}

body[data-theme="neon"] .dialogue{
  border:1px solid #39ffaa !important;
  box-shadow:
    0 0 0 1px rgba(230,255,241,0.12) inset,
    0 0 24px rgba(57,255,170,0.46),
    0 0 54px rgba(57,255,170,0.28),
    0 0 96px rgba(57,255,170,0.16),
    0 0 140px rgba(57,255,170,0.08) !important;
}
body[data-theme="neon"] .speaker{
  color:#aaffef !important;
  text-shadow:
    0 0 10px rgba(57,255,170,0.92),
    0 0 22px rgba(57,255,170,0.66),
    0 0 44px rgba(57,255,170,0.38),
    0 0 76px rgba(57,255,170,0.20) !important;
}
body[data-theme="neon"] .line{
  color:#f4fffd !important;
  text-shadow:
    0 0 8px rgba(57,255,170,0.56),
    0 0 18px rgba(57,255,170,0.34),
    0 0 34px rgba(57,255,170,0.18) !important;
}

body[data-theme="neon"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay){
  border:1px solid #39ffaa !important;
  box-shadow:
    0 0 0 1px rgba(225,255,250,0.08) inset,
    0 0 14px rgba(57,255,170,0.30),
    0 0 32px rgba(57,255,170,0.18),
    0 0 60px rgba(57,255,170,0.10) !important;
}
body[data-theme="neon"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay) .name{
  color:#aaffef !important;
  text-shadow:
    0 0 8px rgba(57,255,170,0.54),
    0 0 18px rgba(57,255,170,0.26) !important;
}
body[data-theme="neon"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay) .text{
  color:#f4fffd !important;
  text-shadow:
    0 0 8px rgba(57,255,170,0.34),
    0 0 18px rgba(57,255,170,0.18) !important;
}

body[data-theme="neon"] .chat,
body[data-theme="neon"] .chatTop,
body[data-theme="neon"] .chatHeader,
body[data-theme="neon"] .winHead,
body[data-theme="neon"] .modalHead,
body[data-theme="neon"] .input,
body[data-theme="neon"] .sceneWindow,
body[data-theme="neon"] .modalBox,
body[data-theme="neon"] .contextMenu,
body[data-theme="neon"] .settingMenu,
body[data-theme="neon"] .faceMenu,
body[data-theme="neon"] .roomItem,
body[data-theme="neon"] .lobbyCard,
body[data-theme="neon"] .adminTableWrap,
body[data-theme="neon"] .charEdit{
  border-color:#38ffd7 !important;
  box-shadow:
    0 0 0 1px rgba(57,255,170,0.10),
    0 0 22px rgba(57,255,170,0.12),
    0 0 44px rgba(57,255,170,0.06) !important;
}

body[data-theme="neon"] .stage{
  border-color:#38ffd7 !important;
  box-shadow:
    inset 0 0 0 1px rgba(220,255,248,0.08),
    0 0 20px rgba(57,255,170,0.14),
    0 0 44px rgba(57,255,170,0.06) !important;
}
body[data-theme="neon"] .splitter{
  background:linear-gradient(180deg,#69ffe4 0%,#38ffd7 100%) !important;
  border-left:1px solid #ddfff8 !important;
  border-right:1px solid #ddfff8 !important;
  box-shadow:
    0 0 22px rgba(57,255,170,0.54),
    0 0 46px rgba(57,255,170,0.28),
    0 0 84px rgba(57,255,170,0.14) !important;
}
body[data-theme="neon"] .splitter:hover,
body[data-theme="neon"].draggingCol .splitter,
body[data-theme="neon"].draggingRow .splitter{
  background:linear-gradient(180deg,#9effef 0%,#38ffd7 100%) !important;
  box-shadow:
    0 0 28px rgba(57,255,170,0.66),
    0 0 56px rgba(57,255,170,0.34),
    0 0 96px rgba(57,255,170,0.18) !important;
}
body[data-theme="neon"] .splitApp.chatBottom > .splitter{
  border-left:none !important;
  border-right:none !important;
  border-top:1px solid #ddfff8 !important;
  border-bottom:1px solid #ddfff8 !important;
}

body[data-theme="pixel"] .chatHeader{
  background:linear-gradient(180deg,rgba(47,34,18,0.95) 0%,rgba(8,10,10,0.92) 100%)!important;
  border-bottom:2px solid #8e7448!important;
}

body[data-theme="pixel"] .chatTabs{
  background:rgba(0,0,0,0.52)!important;
  border-bottom:2px solid #8e7448!important;
  padding:0 4px!important;
  gap:4px!important;
}

body[data-theme="pixel"] .chatTab{
  background:linear-gradient(180deg,rgba(55,38,18,0.96) 0%,rgba(18,13,9,0.96) 100%)!important;
  border:2px solid #b98a49!important;
  border-bottom:none!important;
  border-radius:0!important;
  color:#f4dfb2!important;
  box-shadow:0 0 0 2px #3c2410!important;
  font-family:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.48)!important;
}

body[data-theme="pixel"] .chatTab:hover{
  background:linear-gradient(180deg,rgba(76,52,24,0.98) 0%,rgba(28,19,12,0.98) 100%)!important;
  color:#fff2cf!important;
}

body[data-theme="pixel"] .chatTab.active{
  background:linear-gradient(180deg,#e0b46c 0%,#9a642a 100%)!important;
  color:#241609!important;
  border-color:#ffe2a8!important;
  box-shadow:0 0 0 2px #6e3e19!important;
}

body[data-theme="pixel"] .chatHeader .btnTabAdd,
body[data-theme="pixel"] .chatBtn,
body[data-theme="pixel"] .tabBtn,
body[data-theme="pixel"] .badgeBtn,
body[data-theme="pixel"] .badgeLink,
body[data-theme="pixel"] .chatNameColorBtn{
  background:linear-gradient(180deg,#c9803f 0%,#9a5725 52%,#713b16 100%)!important;
  border:2px solid #ffe2a8!important;
  color:#fff8eb!important;
  border-radius:0!important;
  box-shadow:0 0 0 2px #6e3e19,2px 2px 0 #08100f!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.42)!important;
  font-family:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace!important;
}

body[data-theme="pixel"] .chatHeader .btnTabAdd:hover,
body[data-theme="pixel"] .chatBtn:hover,
body[data-theme="pixel"] .tabBtn:hover,
body[data-theme="pixel"] .badgeBtn:hover,
body[data-theme="pixel"] .badgeLink:hover,
body[data-theme="pixel"] .chatNameColorWrap:hover .chatNameColorBtn,
body[data-theme="pixel"] .chatBtn.active,
body[data-theme="pixel"] .tabBtn.on,
body[data-theme="pixel"] .tabBtn.active{
  background:linear-gradient(180deg,#dc9650 0%,#a86028 52%,#7b4118 100%)!important;
  color:#fffdf5!important;
  transform:translate(1px,1px);
  box-shadow:0 0 0 2px #6e3e19,1px 1px 0 #08100f!important;
}

body[data-theme="pixel"]:not([data-dlgshape="gradient"]) .dialogue{
  background:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,0.04) 0px,
      rgba(255,255,255,0.04) 2px,
      rgba(0,0,0,0) 2px,
      rgba(0,0,0,0) 4px
    ),
    linear-gradient(180deg,rgba(18,20,20,0.90) 0%,rgba(5,6,6,0.86) 100%)!important;
  border:2px solid #8e7448!important;
  color:#fff8e7!important;
  box-shadow:0 0 0 2px #0a0c0c,0 0 0 4px #5b3b1d,0 0 0 6px #c7a66a!important;
  backdrop-filter:none!important;
}

body[data-theme="pixel"][data-dlgshape="gradient"]{
  --dlgGrad0:rgba(8,9,9,0.96);
  --dlgGrad1:rgba(8,9,9,0.62);
  --dlgGrad2:rgba(8,9,9,0.16);
}

body[data-theme="pixel"] .speaker{
  color:#ffd98d!important;
  text-shadow:1px 1px 0 #4f2e16!important;
}

body[data-theme="pixel"] .line{
  color:#fff7e8!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.42)!important;
}

body[data-theme="pixel"] .form{
  background:rgba(0,0,0,0.34)!important;
  border-top:2px solid #8e7448!important;
}

body[data-theme="pixel"] .input,
body[data-theme="pixel"] #input{
  background:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,0.03) 0px,
      rgba(255,255,255,0.03) 2px,
      rgba(0,0,0,0) 2px,
      rgba(0,0,0,0) 4px
    ),
    linear-gradient(180deg,rgba(16,18,18,0.92) 0%,rgba(6,7,7,0.88) 100%)!important;
  border:2px solid #8e7448!important;
  color:#fff6e6!important;
  border-radius:0!important;
  box-shadow:0 0 0 2px #0a0c0c!important;
  font-family:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.32)!important;
}

body[data-theme="pixel"] .input:focus,
body[data-theme="pixel"] #input:focus{
  border-color:#e0b46c!important;
  box-shadow:0 0 0 2px #0a0c0c,0 0 0 4px #6e3e19!important;
  outline:none!important;
}

body[data-theme="pixel"] .input::placeholder,
body[data-theme="pixel"] #input::placeholder{
  color:#cdb894!important;
  opacity:1!important;
}

body[data-theme="pixel"] .log,
body[data-theme="pixel"] .roomList,
body[data-theme="pixel"] .adminTableWrap,
body[data-theme="pixel"] .adminPanel,
body[data-theme="pixel"] .modalBody,
body[data-theme="pixel"] .sceneBody,
body[data-theme="pixel"] .charList,
body[data-theme="pixel"] .charEdit,
body[data-theme="pixel"] .chatTabs,
body[data-theme="pixel"] .tabLog,
body[data-theme="pixel"] #input,
body[data-theme="pixel"] .faceMenu{
  scrollbar-color:#c78d48 rgba(0,0,0,0.58)!important;
}

body[data-theme="pixel"] .log::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .roomList::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .adminTableWrap::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .adminPanel::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .modalBody::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .sceneBody::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .charList::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .charEdit::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .chatTabs::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .tabLog::-webkit-scrollbar-thumb,
body[data-theme="pixel"] #input::-webkit-scrollbar-thumb,
body[data-theme="pixel"] .faceMenu::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#d69a54 0%,#a7642c 100%)!important;
  border:2px solid #f7ddb0!important;
  border-radius:0!important;
  box-shadow:0 0 0 2px #6e3e19!important;
}

body[data-theme="pixel"] .log::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] .roomList::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] .adminTableWrap::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] .adminPanel::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] .modalBody::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] .sceneBody::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] .charList::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] .charEdit::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] .chatTabs::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] .tabLog::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] #input::-webkit-scrollbar-thumb:hover,
body[data-theme="pixel"] .faceMenu::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,#e6ab63 0%,#b56d31 100%)!important;
}

body[data-theme="pixel"] .log::-webkit-scrollbar-track,
body[data-theme="pixel"] .roomList::-webkit-scrollbar-track,
body[data-theme="pixel"] .adminTableWrap::-webkit-scrollbar-track,
body[data-theme="pixel"] .adminPanel::-webkit-scrollbar-track,
body[data-theme="pixel"] .modalBody::-webkit-scrollbar-track,
body[data-theme="pixel"] .sceneBody::-webkit-scrollbar-track,
body[data-theme="pixel"] .charList::-webkit-scrollbar-track,
body[data-theme="pixel"] .charEdit::-webkit-scrollbar-track,
body[data-theme="pixel"] .chatTabs::-webkit-scrollbar-track,
body[data-theme="pixel"] .tabLog::-webkit-scrollbar-track,
body[data-theme="pixel"] #input::-webkit-scrollbar-track,
body[data-theme="pixel"] .faceMenu::-webkit-scrollbar-track{
  background:rgba(0,0,0,0.58)!important;
  border:2px solid #8e7448!important;
  border-radius:0!important;
}

body[data-theme="pixel"] .log::-webkit-scrollbar-corner,
body[data-theme="pixel"] .roomList::-webkit-scrollbar-corner,
body[data-theme="pixel"] .adminTableWrap::-webkit-scrollbar-corner,
body[data-theme="pixel"] .adminPanel::-webkit-scrollbar-corner,
body[data-theme="pixel"] .modalBody::-webkit-scrollbar-corner,
body[data-theme="pixel"] .sceneBody::-webkit-scrollbar-corner,
body[data-theme="pixel"] .charList::-webkit-scrollbar-corner,
body[data-theme="pixel"] .charEdit::-webkit-scrollbar-corner,
body[data-theme="pixel"] .chatTabs::-webkit-scrollbar-corner,
body[data-theme="pixel"] .tabLog::-webkit-scrollbar-corner,
body[data-theme="pixel"] #input::-webkit-scrollbar-corner,
body[data-theme="pixel"] .faceMenu::-webkit-scrollbar-corner{
  background:rgba(0,0,0,0.58)!important;
}

body[data-theme="pixel"] .dialogue{
  position:absolute!important;
  left:12px!important;
  right:12px!important;
  bottom:12px!important;
  overflow:visible!important;
  padding-top:32px!important;
  padding-right:34px!important;
}

body[data-theme="pixel"] .speaker{
  position:absolute!important;
  left:16px!important;
  top:-18px!important;
  z-index:3!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  min-height:0!important;
  min-width:120px!important;
  max-width:min(42%,280px)!important;
  padding:6px 18px!important;
  background:
    linear-gradient(180deg,#2a2017 0%,#070808 100%)!important;
  border:2px solid #c89a59!important;
  box-shadow:
    0 0 0 2px #0a0c0c,
    0 0 0 4px #6e4520!important;
  color:#fff1cf!important;
  font-weight:800!important;
  line-height:1.1!important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.45)!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

body[data-theme="pixel"] .speaker::before,
body[data-theme="pixel"] .speaker::after{
  content:''!important;
  position:absolute!important;
  top:50%!important;
  width:6px!important;
  height:6px!important;
  margin-top:-3px!important;
  background:#f0cd86!important;
  box-shadow:0 0 0 1px #5d3919!important;
}

body[data-theme="pixel"] .speaker::before{
  left:7px!important;
}

body[data-theme="pixel"] .speaker::after{
  right:7px!important;
}

body[data-theme="pixel"] .line{
  min-height:52px!important;
  padding-top:4px!important;
}

body[data-theme="pixel"] .dialogue::after{
  content:''!important;
  position:absolute!important;
  right:12px!important;
  bottom:10px!important;
  width:0!important;
  height:0!important;
  border-left:7px solid transparent!important;
  border-right:7px solid transparent!important;
  border-top:10px solid #f3cf86!important;
  border-bottom:none!important;
  filter:drop-shadow(2px 2px 0 #5b3518)!important;
  opacity:0.95!important;
  animation:pixelDialogueArrow 0.9s steps(2,end) infinite!important;
  pointer-events:none!important;
}
@keyframes pixelDialogueArrow{
  0%,100%{
    transform:translateY(0);
    opacity:0.92;
  }
  50%{
    transform:translateY(2px);
    opacity:1;
  }
}

body[data-theme="pixel"] .sceneWindow,
body[data-theme="pixel"] .modalBox,
body[data-theme="pixel"] .modalHead,
body[data-theme="pixel"] .modalBody,
body[data-theme="pixel"] .contextMenu,
body[data-theme="pixel"] .settingMenu,
body[data-theme="pixel"] .faceMenu,
body[data-theme="pixel"] .adminPanel,
body[data-theme="pixel"] .adminTableWrap,
body[data-theme="pixel"] .charItem,
body[data-theme="pixel"] .charEdit,
body[data-theme="pixel"] .chatSuggestion,
body[data-theme="pixel"] .hostDelegateBox,
body[data-theme="pixel"] .rouletteSetupBox,
body[data-theme="pixel"] .rouletteTopBox,
body[data-theme="pixel"] .rouletteWheelCard,
body[data-theme="pixel"] .rouletteItemsBox,
body[data-theme="pixel"] .voteSetupBox,
body[data-theme="pixel"] .voteTopBox,
body[data-theme="pixel"] .turnTrackerAdd,
body[data-theme="pixel"] .ttHead,
body[data-theme="pixel"] .ttRow,
body[data-theme="pixel"] #bombWin .bombTopBox,
body[data-theme="pixel"] #bombWin .bombCountdownBox,
body[data-theme="pixel"] #bombWin .bombInfoBox,
body[data-theme="pixel"] #bombWin .bombGuideBox,
body[data-theme="pixel"] #bombWin .bombActionBox,
body[data-theme="pixel"] #bombWin .bombSetupBox,
body[data-theme="pixel"] #onecardWin .onecardPanel,
body[data-theme="pixel"] #onecardWin .onecardTopBox,
body[data-theme="pixel"] #onecardWin .onecardInfoBox,
body[data-theme="pixel"] #onecardWin .onecardPlayersBox,
body[data-theme="pixel"] #onecardWin .onecardHandBox,
body[data-theme="pixel"] #onecardWin .onecardSetupBox,
body[data-theme="pixel"] #mafiaGameWin .mgCard,
body[data-theme="pixel"] #mafiaGameWin .mgStat,
body[data-theme="pixel"] #mafiaGameWin #mgChatLog,
body[data-theme="pixel"] #slotWin .slotBetsWrap,
body[data-theme="pixel"] #slotWin .slotResults,
body[data-theme="pixel"] #slotWin .slotReel{
  background:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,0.03) 0px,
      rgba(255,255,255,0.03) 2px,
      rgba(0,0,0,0) 2px,
      rgba(0,0,0,0) 4px
    ),
    linear-gradient(180deg,rgba(18,20,20,0.90) 0%,rgba(6,7,7,0.84) 100%) !important;
  border:2px solid #8e7448 !important;
  border-radius:0 !important;
  box-shadow:0 0 0 2px #0a0c0c !important;
  backdrop-filter:none !important;
}

body[data-theme="pixel"] .modalHead,
body[data-theme="pixel"] .winHead,
body[data-theme="pixel"] .sceneHead,
body[data-theme="pixel"] .chatHeader{
  background:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,0.025) 0px,
      rgba(255,255,255,0.025) 2px,
      rgba(0,0,0,0) 2px,
      rgba(0,0,0,0) 4px
    ),
    linear-gradient(180deg,rgba(30,22,12,0.95) 0%,rgba(9,8,7,0.92) 100%) !important;
  border-bottom:2px solid #8e7448 !important;
}

body[data-theme="pixel"] .modalTitle,
body[data-theme="pixel"] .winTitle,
body[data-theme="pixel"] .sectionTitle,
body[data-theme="pixel"] .editTitle{
  color:#ffe0a0 !important;
  text-shadow:1px 1px 0 rgba(0,0,0,0.42) !important;
}

body[data-theme="pixel"] .charSub,
body[data-theme="pixel"] .toolHint,
body[data-theme="pixel"] .hintSmall,
body[data-theme="pixel"] .subHint{
  color:#cdb894 !important;
}

body[data-theme="pixel"] .adminTable th{
  background:rgba(18,16,12,0.94) !important;
  color:#ffe0a0 !important;
  border-bottom:2px solid #8e7448 !important;
}

body[data-theme="pixel"] .adminTable td{
  background:transparent !important;
}

body[data-theme="pixel"],
body[data-theme="pixel"] .stage,
body[data-theme="pixel"] .chat,
body[data-theme="pixel"] .log,
body[data-theme="pixel"] .dialogue,
body[data-theme="pixel"] .msg,
body[data-theme="pixel"] .token,
body[data-theme="pixel"] .tokenImg,
body[data-theme="pixel"] button,
body[data-theme="pixel"] a,
body[data-theme="pixel"] .btnMini,
body[data-theme="pixel"] .send,
body[data-theme="pixel"] .iconBtn,
body[data-theme="pixel"] .diceBtn,
body[data-theme="pixel"] .badgeBtn,
body[data-theme="pixel"] .badgeLink,
body[data-theme="pixel"] .chatTab,
body[data-theme="pixel"] .contextItem,
body[data-theme="pixel"] .userChip,
body[data-theme="pixel"] .roomItem,
body[data-theme="pixel"] .charItem,
body[data-theme="pixel"] .sceneItem{
  cursor:url('cursor-sword-64.png') 3 3, auto !important;
}

body[data-theme="pixel"] input,
body[data-theme="pixel"] textarea,
body[data-theme="pixel"] select,
body[data-theme="pixel"] [contenteditable="true"]{
  cursor:text !important;
}

body[data-theme="pixel"] .splitter{
  cursor:col-resize !important;
}
body[data-theme="pixel"] .splitApp.chatBottom > .splitter,
body[data-theme="pixel"].draggingRow .splitter{
  cursor:row-resize !important;
}

body[data-theme="red"]{
  --bg:#c70000;
  --panel:rgba(198,0,0,0.92);
  --line:#fff8f8;
  --muted:#ffe3e3;
  --stroke:rgba(255,255,255,0.28);
  --accent:#ffffff;
  --stage:#8f0000;
  --stageGrad1:#ff1a1a;
  --stageGrad2:#b30000;
  --dialogueBg:rgba(255,250,250,0.95);
  --chipBg:rgba(255,255,255,0.16);
  --msgBg:rgba(255,255,255,0.97);
  --msgText:#570000;
  --sysBg:rgba(255,255,255,0.20);
  --inputBg:rgba(255,255,255,0.96);
  --headerBg:rgba(224,0,0,0.96);
  --tabBg:rgba(210,0,0,0.94);
  --tabBarBg:linear-gradient(180deg,#ff1e1e 0%,#c40000 100%);
  --btnBg:linear-gradient(180deg,#2f2f2f 0%,#121212 55%,#000000 100%);
  --btnText:#ffffff;
  --hoverBg:rgba(255,255,255,0.14);
  --roomItemBg:rgba(206,0,0,0.90);
  --splitterBg:linear-gradient(180deg,#ff2b2b 0%,#b10000 100%);
  --bg-fallback:radial-gradient(circle at 50% 14%,#ff4b4b 0%,#d00000 42%,#990000 100%);
  --accentText:#d40000;
  --accentSoft:rgba(255,24,24,0.30);
  --dlgText:#4d0000;
}
body[data-theme="red"] .msg.gmNarrMsg .text,
body[data-theme="red"] .msg.gmNarrMsg .msgContent .text,
body[data-theme="red"] .msg.gmNarrMsg .text *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,0.38) !important;
}
body[data-theme="ocean"]{
  --bg:#000099;
  --panel:rgba(13,51,179,0.92);
  --line:#f4fbff;
  --muted:#d9f4ff;
  --stroke:rgba(153,235,255,0.34);
  --accent:#7feeff;
  --stage:#000099;
  --stageGrad1:#33ccff;
  --stageGrad2:#0d33b3;
  --dialogueBg:rgba(246,252,255,0.95);
  --chipBg:rgba(115,228,255,0.20);
  --msgBg:rgba(248,252,255,0.97);
  --msgText:#0d33b3;
  --sysBg:rgba(51,204,255,0.18);
  --inputBg:rgba(244,251,255,0.97);
  --headerBg:rgba(26,102,204,0.96);
  --tabBg:rgba(38,153,230,0.94);
  --tabBarBg:linear-gradient(180deg,#57dcff 0%,#2699e6 48%,#1a66cc 75%,#0d33b3 100%);
  --btnBg:linear-gradient(180deg,rgba(184,247,255,0.98) 0%,rgba(92,220,255,0.98) 38%,rgba(35,166,227,0.98) 68%,rgba(16,91,192,0.98) 100%);
  --btnText:#faffff;
  --hoverBg:rgba(255,255,255,0.14);
  --roomItemBg:rgba(26,102,204,0.90);
  --splitterBg:linear-gradient(180deg,#55ddff 0%,#1a66cc 100%);
  --bg-fallback:radial-gradient(circle at 50% 12%,#33ccff 0%,#2699e6 28%,#1a66cc 58%,#0d33b3 82%,#000099 100%);
  --accentText:#0d33b3;
  --accentSoft:rgba(51,204,255,0.34);
  --dlgText:#0b329c;
}
body[data-theme="lemon"]{
  --bg:#fff173;
  --panel:rgba(255,243,110,0.96);
  --line:#6a5200;
  --muted:#9a7d00;
  --stroke:rgba(255,255,255,0.52);
  --accent:#fffef7;
  --stage:#ffd91a;
  --stageGrad1:#fffcc0;
  --stageGrad2:#ffd81a;
  --dialogueBg:rgba(255,253,200,0.99);
  --chipBg:rgba(255,255,255,0.34);
  --msgBg:rgba(255,255,255,0.99);
  --msgText:#735b00;
  --sysBg:rgba(255,255,255,0.30);
  --inputBg:rgba(255,255,255,0.98);
  --headerBg:rgba(255,243,122,0.99);
  --tabBg:rgba(255,247,140,0.98);
  --tabBarBg:linear-gradient(180deg,#fffdd0 0%,#fff07a 48%,#ffe23d 78%,#ffd400 100%);
  --btnBg:linear-gradient(180deg,#fffed2 0%,#fff47f 36%,#ffe33e 68%,#ffd100 100%);
  --btnText:#6a5200;
  --hoverBg:rgba(255,255,255,0.22);
  --roomItemBg:rgba(255,238,88,0.95);
  --splitterBg:linear-gradient(180deg,#fffbb2 0%,#ffd400 100%);
  --bg-fallback:radial-gradient(circle at 50% 10%,#fffed4 0%,#fff58f 30%,#ffe552 62%,#ffd81a 100%);
  --accentText:#715700;
  --accentSoft:rgba(255,221,40,0.34);
  --dlgText:#745a00;
}

body[data-theme="red"] .bg,
body[data-theme="ocean"] .bg,
body[data-theme="lemon"] .bg{
  background-image:linear-gradient(135deg,var(--stageGrad1),var(--stageGrad2))!important;
}

body[data-theme="red"] :is(.chat,.sceneWindow,.modalBox,.contextMenu,.bgmControls,.charEdit,.chatSuggestion,.roomItem,.lobbyCard,.adminTableWrap),
body[data-theme="ocean"] :is(.chat,.sceneWindow,.modalBox,.contextMenu,.bgmControls,.charEdit,.chatSuggestion,.roomItem,.lobbyCard,.adminTableWrap),
body[data-theme="lemon"] :is(.chat,.sceneWindow,.modalBox,.contextMenu,.bgmControls,.charEdit,.chatSuggestion,.roomItem,.lobbyCard,.adminTableWrap){
  background:var(--panel)!important;
  border-color:var(--stroke)!important;
  color:var(--line)!important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.08) inset,
    0 10px 26px rgba(0,0,0,0.14),
    0 0 22px var(--accentSoft)!important;
}

body[data-theme="red"] :is(.authCard,.authCardDark){
  background:rgba(255,248,248,0.97)!important;
  border:1px solid rgba(255,255,255,0.82)!important;
  color:#5a1f1f!important;
  box-shadow:
    0 2px 10px rgba(0,0,0,0.10),
    0 0 0 1px rgba(255,255,255,0.34) inset!important;
}
body[data-theme="ocean"] :is(.authCard,.authCardDark){
  background:rgba(247,252,255,0.98)!important;
  border:1px solid rgba(255,255,255,0.84)!important;
  color:#1f4768!important;
  box-shadow:
    0 2px 10px rgba(0,0,0,0.10),
    0 0 0 1px rgba(255,255,255,0.36) inset!important;
}
body[data-theme="lemon"] :is(.authCard,.authCardDark){
  background:rgba(255,252,226,0.98)!important;
  border:1px solid rgba(255,255,255,0.88)!important;
  color:#6a5200!important;
  box-shadow:
    0 2px 10px rgba(0,0,0,0.08),
    0 0 0 1px rgba(255,255,255,0.40) inset!important;
}

body[data-theme="red"] :is(.authCard,.authCardDark) :is(.authTitle,.authTitleDark,.authHeroTop,.authHeroTopDark,.authHeroSub,.authHeroSubDark,label,.field label,.hintSmall){
  color:#5a1f1f!important;
}
body[data-theme="ocean"] :is(.authCard,.authCardDark) :is(.authTitle,.authTitleDark,.authHeroTop,.authHeroTopDark,.authHeroSub,.authHeroSubDark,label,.field label,.hintSmall){
  color:#1f4768!important;
}
body[data-theme="lemon"] :is(.authCard,.authCardDark) :is(.authTitle,.authTitleDark,.authHeroTop,.authHeroTopDark,.authHeroSub,.authHeroSubDark,label,.field label,.hintSmall){
  color:#6a5200!important;
}

body[data-theme="red"] :is(.authBody .input,.authBody .textarea,.authWrapDark .input,.authWrapDark .textarea){
  background:rgba(255,255,255,0.90)!important;
  border:1px solid rgba(173,62,62,0.24)!important;
  color:#5a1f1f!important;
}
body[data-theme="ocean"] :is(.authBody .input,.authBody .textarea,.authWrapDark .input,.authWrapDark .textarea){
  background:rgba(255,255,255,0.92)!important;
  border:1px solid rgba(39,118,168,0.22)!important;
  color:#1f4768!important;
}
body[data-theme="lemon"] :is(.authBody .input,.authBody .textarea,.authWrapDark .input,.authWrapDark .textarea){
  background:rgba(255,255,255,0.94)!important;
  border:1px solid rgba(166,137,17,0.24)!important;
  color:#6a5200!important;
}

body[data-theme="red"] :is(.authBody .input,.authBody .textarea,.authWrapDark .input,.authWrapDark .textarea)::placeholder{
  color:#9b6666!important;
}
body[data-theme="ocean"] :is(.authBody .input,.authBody .textarea,.authWrapDark .input,.authWrapDark .textarea)::placeholder{
  color:#6f95af!important;
}
body[data-theme="lemon"] :is(.authBody .input,.authBody .textarea,.authWrapDark .input,.authWrapDark .textarea)::placeholder{
  color:#9b8748!important;
}

body[data-theme="red"] .roomItem{
  background:rgba(255,248,248,0.96)!important;
  border:1px solid rgba(255,255,255,0.78)!important;
  box-shadow:
    0 2px 10px rgba(0,0,0,0.10),
    0 0 0 1px rgba(255,255,255,0.32) inset!important;
}
body[data-theme="ocean"] .roomItem{
  background:rgba(247,252,255,0.97)!important;
  border:1px solid rgba(255,255,255,0.82)!important;
  box-shadow:
    0 2px 10px rgba(0,0,0,0.10),
    0 0 0 1px rgba(255,255,255,0.36) inset!important;
}
body[data-theme="lemon"] .roomItem{
  background:rgba(255,252,226,0.98)!important;
  border:1px solid rgba(255,255,255,0.86)!important;
  box-shadow:
    0 2px 10px rgba(0,0,0,0.08),
    0 0 0 1px rgba(255,255,255,0.40) inset!important;
}

body[data-theme="red"] .roomItem :is(.roomTitle,.roomPeopleRow,.roomPeople,.roomId,.roomMetaRight,.roomMetaRight .roomId,.roomMetaRight .roomMeta){
  color:#5a1f1f!important;
}
body[data-theme="ocean"] .roomItem :is(.roomTitle,.roomPeopleRow,.roomPeople,.roomId,.roomMetaRight,.roomMetaRight .roomId,.roomMetaRight .roomMeta){
  color:#1f4768!important;
}
body[data-theme="lemon"] .roomItem :is(.roomTitle,.roomPeopleRow,.roomPeople,.roomId,.roomMetaRight,.roomMetaRight .roomId,.roomMetaRight .roomMeta){
  color:#6a5200!important;
}

body[data-theme="red"] .roomThumb.empty{
  background:rgba(255,255,255,0.64)!important;
  border-color:rgba(255,255,255,0.78)!important;
}
body[data-theme="ocean"] .roomThumb.empty{
  background:rgba(255,255,255,0.68)!important;
  border-color:rgba(255,255,255,0.82)!important;
}
body[data-theme="lemon"] .roomThumb.empty{
  background:rgba(255,255,255,0.74)!important;
  border-color:rgba(255,255,255,0.86)!important;
}

body[data-theme="red"] .authErr{
  background:rgba(255,248,248,0.96)!important;
  border-color:rgba(255,255,255,0.78)!important;
  color:#5a1f1f!important;
}
body[data-theme="ocean"] .authErr{
  background:rgba(247,252,255,0.97)!important;
  border-color:rgba(255,255,255,0.82)!important;
  color:#1f4768!important;
}
body[data-theme="lemon"] .authErr{
  background:rgba(255,252,226,0.98)!important;
  border-color:rgba(255,255,255,0.86)!important;
  color:#6a5200!important;
}

body[data-theme="red"] :is(.chatHeader,.winHead,.modalHead,.chatTop),
body[data-theme="ocean"] :is(.chatHeader,.winHead,.modalHead,.chatTop),
body[data-theme="lemon"] :is(.chatHeader,.winHead,.modalHead,.chatTop){
  background:var(--tabBarBg)!important;
  border-color:var(--stroke)!important;
  box-shadow:inset 0 -1px 0 rgba(255,255,255,0.16)!important;
}

body[data-theme="red"] :is(.send,.btnMini,.iconBtn,.diceBtn,.badgeBtn,.badgeLink,.chatBtn,.winClose){
  background:var(--btnBg)!important;
  border:1px solid rgba(255,255,255,0.24)!important;
  color:var(--btnText)!important;
  text-shadow:none!important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.10) inset,
    0 8px 18px rgba(0,0,0,0.28),
    0 0 14px rgba(0,0,0,0.22)!important;
}
body[data-theme="ocean"] :is(.send,.btnMini,.iconBtn,.diceBtn,.badgeBtn,.badgeLink,.chatBtn,.winClose){
  background:
    radial-gradient(circle at 30% 22%,rgba(255,255,255,0.95) 0%,rgba(255,255,255,0.50) 10%,rgba(255,255,255,0.00) 26%),
    radial-gradient(circle at 72% 18%,rgba(255,255,255,0.70) 0%,rgba(255,255,255,0.00) 18%),
    linear-gradient(180deg,rgba(197,249,255,0.98) 0%,rgba(101,226,255,0.98) 34%,rgba(40,171,231,0.98) 70%,rgba(17,95,196,0.98) 100%)!important;
  border:1px solid rgba(214,250,255,0.92)!important;
  color:var(--btnText)!important;
  border-radius:999px!important;
  text-shadow:0 1px 0 rgba(0,0,0,0.16)!important;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,0.58),
    inset 0 -4px 10px rgba(8,78,150,0.22),
    0 8px 18px rgba(0,50,130,0.20),
    0 0 18px rgba(73,221,255,0.26)!important;
}
body[data-theme="lemon"] :is(.send,.btnMini,.iconBtn,.diceBtn,.badgeBtn,.badgeLink,.chatBtn,.winClose){
  background:var(--btnBg)!important;
  border:1px solid rgba(255,255,255,0.62)!important;
  color:var(--btnText)!important;
  text-shadow:none!important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.22) inset,
    0 8px 18px rgba(160,120,0,0.10),
    0 0 18px rgba(255,225,60,0.22)!important;
}

body[data-theme="red"] :is(.send:hover,.btnMini:hover,.iconBtn:hover,.diceBtn:hover,.badgeBtn:hover,.badgeLink:hover,.chatBtn:hover,.winClose:hover){
  filter:brightness(1.10);
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.14) inset,
    0 10px 22px rgba(0,0,0,0.34),
    0 0 20px rgba(0,0,0,0.28)!important;
}
body[data-theme="ocean"] :is(.send:hover,.btnMini:hover,.iconBtn:hover,.diceBtn:hover,.badgeBtn:hover,.badgeLink:hover,.chatBtn:hover,.winClose:hover){
  filter:brightness(1.06);
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,0.68),
    inset 0 -4px 12px rgba(8,78,150,0.24),
    0 10px 22px rgba(0,50,130,0.22),
    0 0 24px rgba(73,221,255,0.34)!important;
}
body[data-theme="lemon"] :is(.send:hover,.btnMini:hover,.iconBtn:hover,.diceBtn:hover,.badgeBtn:hover,.badgeLink:hover,.chatBtn:hover,.winClose:hover){
  filter:brightness(1.05);
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.26) inset,
    0 10px 22px rgba(160,120,0,0.12),
    0 0 22px rgba(255,225,60,0.28)!important;
}

body[data-theme="red"] .splitter,
body[data-theme="ocean"] .splitter,
body[data-theme="lemon"] .splitter{
  background:var(--splitterBg)!important;
  border-left:1px solid var(--stroke)!important;
  border-right:1px solid var(--stroke)!important;
  box-shadow:0 0 14px var(--accentSoft)!important;
}
body[data-theme="red"] .splitter:hover,
body[data-theme="red"].draggingCol .splitter,
body[data-theme="red"].draggingRow .splitter,
body[data-theme="ocean"] .splitter:hover,
body[data-theme="ocean"].draggingCol .splitter,
body[data-theme="ocean"].draggingRow .splitter,
body[data-theme="lemon"] .splitter:hover,
body[data-theme="lemon"].draggingCol .splitter,
body[data-theme="lemon"].draggingRow .splitter{
  filter:brightness(1.08)!important;
  box-shadow:0 0 22px var(--accentSoft)!important;
}
body[data-theme="red"] .splitApp.chatBottom > .splitter,
body[data-theme="ocean"] .splitApp.chatBottom > .splitter,
body[data-theme="lemon"] .splitApp.chatBottom > .splitter{
  border-left:none!important;
  border-right:none!important;
  border-top:1px solid var(--stroke)!important;
  border-bottom:1px solid var(--stroke)!important;
}

body[data-theme="red"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay),
body[data-theme="ocean"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay),
body[data-theme="lemon"] .msg:not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay){
  background:var(--msgBg)!important;
  border:1px solid var(--stroke)!important;
  color:var(--msgText)!important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.18) inset,
    0 6px 14px rgba(0,0,0,0.08)!important;
}
body[data-theme="red"] .msg:not(.sys):not(.statMsg) :is(.name,.time,.text),
body[data-theme="ocean"] .msg:not(.sys):not(.statMsg) :is(.name,.time,.text),
body[data-theme="lemon"] .msg:not(.sys):not(.statMsg) :is(.name,.time,.text){
  color:var(--msgText)!important;
}
body[data-theme="red"] .msg.sys,
body[data-theme="red"] .msg.statMsg,
body[data-theme="ocean"] .msg.sys,
body[data-theme="ocean"] .msg.statMsg,
body[data-theme="lemon"] .msg.sys,
body[data-theme="lemon"] .msg.statMsg{
  background:linear-gradient(180deg,var(--sysBg),rgba(255,255,255,0.10))!important;
  border:1px solid var(--stroke)!important;
  border-left:4px solid var(--accent)!important;
}

body[data-theme="red"]:not([data-dlgshape="gradient"]) .dialogue,
body[data-theme="ocean"]:not([data-dlgshape="gradient"]) .dialogue,
body[data-theme="lemon"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(180deg,var(--dialogueBg),rgba(255,255,255,0.90))!important;
  border:1px solid var(--stroke)!important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.18) inset,
    0 10px 22px rgba(0,0,0,0.10),
    0 0 16px var(--accentSoft)!important;
}
body[data-theme="red"] .dialogue .speaker,
body[data-theme="ocean"] .dialogue .speaker,
body[data-theme="lemon"] .dialogue .speaker{
  color:var(--accentText)!important;
  text-shadow:none!important;
}
body[data-theme="red"] .dialogue .line,
body[data-theme="ocean"] .dialogue .line,
body[data-theme="lemon"] .dialogue .line{
  color:var(--dlgText)!important;
}

body[data-theme="red"] .statWidget{
  background:rgba(0,0,0,0.92)!important;
  border:1px solid #000!important;
  color:#fff7f7!important;
}
body[data-theme="red"] .statAvatar{
  border-color:#111!important;
  background:#000!important;
}
body[data-theme="red"] .miniStatLabel,
body[data-theme="red"] .miniStatLabel span,
body[data-theme="red"] .statLabelRow{
  color:#fff7f7!important;
}

body[data-theme="red"] .statTrack,
body[data-theme="red"] .miniStatBar{
  background:#111!important;
  border:1px solid #000!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.06)!important;
}

body[data-theme="red"] .statFill,
body[data-theme="red"] .miniStatFill{
  background:var(--accent)!important;
}

body[data-theme="red"] .statBarBox[data-stat="HP"] .statFill,
body[data-theme="red"] .miniStatFill.fill-HP{
  background:#ff5555!important;
}
body[data-theme="red"] .statBarBox[data-stat="MP"] .statFill,
body[data-theme="red"] .miniStatFill.fill-MP{
  background:#55aaff!important;
}
body[data-theme="red"] .statBarBox[data-stat="SAN"] .statFill,
body[data-theme="red"] .miniStatFill.fill-SAN{
  background:#aa55ff!important;
}
body[data-theme="red"] .miniStatFill.fill-LUK{
  background:#55ffaa!important;
}
body[data-theme="red"] .miniStatFill.fill-EXT{
  background:#888!important;
}

body[data-theme="red"] .msg.narrSay{
  border:1px solid rgba(255,255,255,0.30)!important;
  background:linear-gradient(180deg,rgba(255,36,36,0.88),rgba(138,0,0,0.92))!important;
  border-radius:14px!important;
  padding:12px 14px!important;
  box-shadow:
    0 12px 26px rgba(0,0,0,0.18),
    0 0 0 1px rgba(255,255,255,0.10) inset,
    0 0 18px rgba(255,50,50,0.16)!important;
  backdrop-filter:blur(8px);
}
body[data-theme="red"] .msg.narrSay .meta,
body[data-theme="red"] .msg.narrSay .name,
body[data-theme="red"] .msg.narrSay .time,
body[data-theme="red"] .msg.narrSay .msgContent .text,
body[data-theme="red"] .msg.narrSay .text{
  color:#ffffff!important;
}
body[data-theme="red"] .msg.narrSay .msgContent .text,
body[data-theme="red"] .msg.narrSay .text{
  font-style:italic!important;
  text-shadow:0 1px 2px rgba(0,0,0,0.28)!important;
}

body[data-theme="ocean"] .msg.narrSay{
  border:1px solid rgba(190,240,255,0.34)!important;
  background:linear-gradient(180deg,rgba(38,153,230,0.88),rgba(13,51,179,0.94))!important;
  border-radius:14px!important;
  padding:12px 14px!important;
  box-shadow:
    0 12px 26px rgba(0,0,0,0.18),
    0 0 0 1px rgba(255,255,255,0.10) inset,
    0 0 18px rgba(51,204,255,0.18)!important;
  backdrop-filter:blur(8px);
}
body[data-theme="ocean"] .msg.narrSay .meta,
body[data-theme="ocean"] .msg.narrSay .name,
body[data-theme="ocean"] .msg.narrSay .time,
body[data-theme="ocean"] .msg.narrSay .msgContent .text,
body[data-theme="ocean"] .msg.narrSay .text{
  color:#ffffff!important;
}
body[data-theme="ocean"] .msg.narrSay .msgContent .text,
body[data-theme="ocean"] .msg.narrSay .text{
  font-style:italic!important;
  text-shadow:0 1px 2px rgba(0,0,0,0.28)!important;
}


body[data-theme="lemon"] .msg.narrSay{
  border:1px solid rgba(255,255,255,0.62)!important;
  background:linear-gradient(180deg,rgba(255,255,224,0.99),rgba(255,245,150,0.99))!important;
  border-radius:14px!important;
  padding:12px 14px!important;
  box-shadow:
    0 12px 26px rgba(0,0,0,0.08),
    0 0 0 1px rgba(255,255,255,0.22) inset,
    0 0 22px rgba(255,225,60,0.26)!important;
  backdrop-filter:blur(8px);
}
body[data-theme="lemon"] .msg.narrSay .meta{
  color:#937600!important;
}
body[data-theme="lemon"] .msg.narrSay .name{
  color:#7f6500!important;
  font-weight:800!important;
}
body[data-theme="lemon"] .msg.narrSay .time{
  color:#a38400!important;
}
body[data-theme="lemon"] .msg.narrSay .msgContent .text,
body[data-theme="lemon"] .msg.narrSay .text{
  color:#715800!important;
  font-style:italic!important;
  text-shadow:none!important;
}

body[data-theme="red"] :is(.badge,.userChip),
body[data-theme="ocean"] :is(.badge,.userChip),
body[data-theme="lemon"] :is(.badge,.userChip){
  background:var(--chipBg)!important;
  border-color:var(--stroke)!important;
  color:var(--line)!important;
}

body[data-theme="red"] .soundTabs,
body[data-theme="ocean"] .soundTabs,
body[data-theme="lemon"] .soundTabs{
  border-bottom:1px solid var(--stroke)!important;
}
body[data-theme="red"] .tabBtn,
body[data-theme="ocean"] .tabBtn,
body[data-theme="lemon"] .tabBtn{
  color:var(--muted)!important;
}
body[data-theme="red"] .tabBtn:hover,
body[data-theme="ocean"] .tabBtn:hover,
body[data-theme="lemon"] .tabBtn:hover{
  color:var(--line)!important;
}
body[data-theme="red"] .tabBtn.active,
body[data-theme="ocean"] .tabBtn.active,
body[data-theme="lemon"] .tabBtn.active{
  color:var(--accent)!important;
  border-bottom-color:var(--accent)!important;
}

body[data-theme="red"] .chatTabs,
body[data-theme="red"] .chatHeader #chatTabsHost .chatTabs,
body[data-theme="ocean"] .chatTabs,
body[data-theme="ocean"] .chatHeader #chatTabsHost .chatTabs,
body[data-theme="lemon"] .chatTabs,
body[data-theme="lemon"] .chatHeader #chatTabsHost .chatTabs{
  background:var(--tabBarBg)!important;
  border-bottom:1px solid var(--stroke)!important;
}

body[data-theme="red"] .chatTab,
body[data-theme="red"] .chatHeader #chatTabsHost .chatTab{
  background:linear-gradient(180deg,#202020 0%,#070707 100%)!important;
  border:1px solid rgba(255,255,255,0.22)!important;
  color:#ffdede!important;
}
body[data-theme="ocean"] .chatTab,
body[data-theme="ocean"] .chatHeader #chatTabsHost .chatTab{
  background:linear-gradient(180deg,rgba(176,245,255,0.96) 0%,rgba(79,216,255,0.96) 34%,rgba(27,141,224,0.96) 72%,rgba(13,83,179,0.96) 100%)!important;
  border:1px solid rgba(224,251,255,0.92)!important;
  color:#f7fdff!important;
 border-radius:10px 10px 6px 6px!important;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,0.56),
    inset 0 -4px 10px rgba(8,78,150,0.18),
    0 0 14px rgba(73,221,255,0.20)!important;
}
body[data-theme="lemon"] .chatTab,
body[data-theme="lemon"] .chatHeader #chatTabsHost .chatTab{
  background:linear-gradient(180deg,#fffed2 0%,#fff58e 40%,#ffe446 72%,#ffd400 100%)!important;
  border:1px solid rgba(255,255,255,0.62)!important;
  color:#745a00!important;
}

body[data-theme="red"] .chatTab:hover,
body[data-theme="red"] .chatHeader #chatTabsHost .chatTab:hover{
  background:linear-gradient(180deg,#333333 0%,#111111 100%)!important;
  color:#ffffff!important;
}
body[data-theme="ocean"] .chatTab:hover,
body[data-theme="ocean"] .chatHeader #chatTabsHost .chatTab:hover{
  filter:brightness(1.05)!important;
  color:#ffffff!important;
}
body[data-theme="lemon"] .chatTab:hover,
body[data-theme="lemon"] .chatHeader #chatTabsHost .chatTab:hover{
  filter:brightness(1.03)!important;
  color:#6c5400!important;
}

body[data-theme="red"] .chatTab.active,
body[data-theme="red"] .chatHeader #chatTabsHost .chatTab.active{
  background:linear-gradient(180deg,#ff3434 0%,#c40000 100%)!important;
  border-color:#ffffff!important;
  color:#ffffff!important;
  border-bottom-color:#c40000!important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.14) inset,
    0 0 16px rgba(255,35,35,0.24)!important;
}
body[data-theme="ocean"] .chatTab.active,
body[data-theme="ocean"] .chatHeader #chatTabsHost .chatTab.active{
  background:linear-gradient(180deg,#d8fbff 0%,#72eaff 28%,#2699e6 64%,#0d48bf 100%)!important;
  border-color:#f1feff!important;
  color:#ffffff!important;
  border-bottom-color:#0d48bf!important;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,0.62),
    0 0 18px rgba(73,221,255,0.28)!important;
}
body[data-theme="lemon"] .chatTab.active,
body[data-theme="lemon"] .chatHeader #chatTabsHost .chatTab.active{
  background:linear-gradient(180deg,#ffffff 0%,#fff8af 28%,#ffe65a 68%,#ffd400 100%)!important;
  border-color:#fffef6!important;
  color:#6b5300!important;
  border-bottom-color:#ffd400!important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.16) inset,
    0 0 18px rgba(255,225,60,0.26)!important;
}

body[data-theme="red"] .btnTabAdd{
  border:1px dashed rgba(255,255,255,0.24)!important;
  background:linear-gradient(180deg,#202020 0%,#050505 100%)!important;
  color:#ffffff!important;
}
body[data-theme="ocean"] .btnTabAdd{
  border:1px solid rgba(224,251,255,0.92)!important;
  background:linear-gradient(180deg,rgba(186,248,255,0.98) 0%,rgba(89,224,255,0.98) 44%,rgba(20,119,214,0.98) 100%)!important;
  color:#ffffff!important;
  border-radius:999px!important;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,0.58),
    0 0 14px rgba(73,221,255,0.22)!important;
}
body[data-theme="lemon"] .btnTabAdd{
  border:1px solid rgba(255,255,255,0.62)!important;
  background:linear-gradient(180deg,#fffed2 0%,#fff58e 44%,#ffd400 100%)!important;
  color:#6c5400!important;
}
body[data-theme="red"] .btnTabAdd:hover{
  border-color:#ffffff!important;
  color:#ffffff!important;
  filter:brightness(1.08)!important;
}
body[data-theme="ocean"] .btnTabAdd:hover{
  filter:brightness(1.05)!important;
  color:#ffffff!important;
}
body[data-theme="lemon"] .btnTabAdd:hover{
  filter:brightness(1.03)!important;
  color:#6b5300!important;
}

body[data-theme="red"] .settingItem:hover,
body[data-theme="ocean"] .settingItem:hover,
body[data-theme="lemon"] .settingItem:hover{
  background:var(--hoverBg)!important;
  color:var(--line)!important;
}
body[data-theme="red"] .chatCharSelect option,
body[data-theme="ocean"] .chatCharSelect option,
body[data-theme="lemon"] .chatCharSelect option{
  background:var(--panel)!important;
  color:var(--line)!important;
}
body[data-theme="red"] :is(.log,.roomList,.adminTableWrap,.adminPanel,.modalBody,.sceneBody,.charList,.charEdit,.chatTabs,.tabLog,#input,.faceMenu),
body[data-theme="ocean"] :is(.log,.roomList,.adminTableWrap,.adminPanel,.modalBody,.sceneBody,.charList,.charEdit,.chatTabs,.tabLog,#input,.faceMenu),
body[data-theme="lemon"] :is(.log,.roomList,.adminTableWrap,.adminPanel,.modalBody,.sceneBody,.charList,.charEdit,.chatTabs,.tabLog,#input,.faceMenu){
  scrollbar-color:var(--accent) rgba(255,255,255,0.16)!important;
}

body[data-theme="red"] .splitter{
  background:#000000 !important;
  border-left:1px solid #f30101 !important;
  border-right:1px solid #f30101 !important;
  box-shadow:0 0 14px rgba(0,0,0,0.28) !important;
}
body[data-theme="red"] .splitter:hover,
body[data-theme="red"].draggingCol .splitter,
body[data-theme="red"].draggingRow .splitter{
  background:#000000 !important;
  border-left:1px solid #000000 !important;
  border-right:1px solid #000000 !important;
  filter:none !important;
  box-shadow:0 0 18px rgba(0,0,0,0.34) !important;
}
body[data-theme="red"] .splitApp.chatBottom > .splitter{
  background:#000000 !important;
  border-left:none !important;
  border-right:none !important;
  border-top:1px solid #000000 !important;
  border-bottom:1px solid #000000 !important;
}

body[data-theme="ocean"] .splitter{
  background:#ffffff !important;
  border-left:1px solid #07a6fc !important;
  border-right:1px solid #07a6fc !important;
}
body[data-theme="lemon"] .splitter{
  background:#ffffff !important;
  border-left:1px solid #fdd701 !important;
  border-right:1px solid #fdd701 !important;
}

body[data-theme="ocean"] .splitter:hover,
body[data-theme="ocean"].draggingCol .splitter,
body[data-theme="ocean"].draggingRow .splitter,
body[data-theme="lemon"] .splitter:hover,
body[data-theme="lemon"].draggingCol .splitter,
body[data-theme="lemon"].draggingRow .splitter{
  background:#ffffff !important;
  border-left:1px solid #ffffff !important;
  border-right:1px solid #ffffff !important;
  filter:none !important;
}

body[data-theme="ocean"] .splitApp.chatBottom > .splitter,
body[data-theme="lemon"] .splitApp.chatBottom > .splitter{
  background:#ffffff !important;
  border-left:none !important;
  border-right:none !important;
  border-top:1px solid #ffffff !important;
  border-bottom:1px solid #ffffff !important;
}

body[data-theme="red"] :is(.log,.roomList,.adminTableWrap,.adminPanel,.modalBody,.sceneBody,.charList,.charEdit,.chatTabs,.tabLog,#input,.faceMenu){
  scrollbar-color:#ffffff #1a1a1a !important;
}
body[data-theme="red"] :is(.log,.roomList,.adminTableWrap,.adminPanel,.modalBody,.sceneBody,.charList,.charEdit,.chatTabs,.tabLog,#input,.faceMenu)::-webkit-scrollbar-thumb{
  background:#ffffff !important;
  border:1px solid #ffffff !important;
}
body[data-theme="red"] :is(.log,.roomList,.adminTableWrap,.adminPanel,.modalBody,.sceneBody,.charList,.charEdit,.chatTabs,.tabLog,#input,.faceMenu)::-webkit-scrollbar-track{
  background:#1a1a1a !important;
  border:1px solid #ffffff !important;
}
body[data-theme="red"] :is(.log,.roomList,.adminTableWrap,.adminPanel,.modalBody,.sceneBody,.charList,.charEdit,.chatTabs,.tabLog,#input,.faceMenu)::-webkit-scrollbar-thumb:hover{
  background:#111111 !important;
}

body[data-theme="ocean"] .msg.skillSay,
body[data-theme="ocean"] .msg.skillSay .name,
body[data-theme="ocean"] .msg.skillSay .time,
body[data-theme="ocean"] .msg.skillSay .msgContent .text,
body[data-theme="ocean"] .msg.skillSay .text{
  color:#ffffff !important;
}

body[data-theme="lemon"] .msg.sys,
body[data-theme="lemon"] .msg.statMsg{
  color:#4f3d00 !important;
}
body[data-theme="lemon"] .msg.sys .name,
body[data-theme="lemon"] .msg.statMsg .name{
  color:#5a4500 !important;
}
body[data-theme="lemon"] .msg.sys .time,
body[data-theme="lemon"] .msg.statMsg .time{
  color:#6b5300 !important;
}
body[data-theme="lemon"] .msg.sys .text,
body[data-theme="lemon"] .msg.statMsg .text{
  color:#4a3900 !important;
}

body[data-theme="red"] :is(.input, select, textarea, .textareaDark),
body[data-theme="ocean"] :is(.input, select, textarea, .textareaDark){
  color:#222222 !important;
  -webkit-text-fill-color:#222222 !important;
}

body[data-theme="red"] :is(.input, select, textarea, .textareaDark)::placeholder,
body[data-theme="ocean"] :is(.input, select, textarea, .textareaDark)::placeholder{
  color:rgba(34,34,34,0.48) !important;
  -webkit-text-fill-color:rgba(34,34,34,0.48) !important;
}

body[data-theme="red"] select option,
body[data-theme="ocean"] select option{
  color:#222222 !important;
  background:#ffffff !important;
}

body[data-theme="red"] .charItem .charName,
body[data-theme="red"] .charItem .charSub,
body[data-theme="red"] .charItem .charLock,
body[data-theme="ocean"] .charItem .charName,
body[data-theme="ocean"] .charItem .charSub,
body[data-theme="ocean"] .charItem .charLock{
  color:#2a2a2a !important;
}

body[data-theme="red"] .charItem .charSub,
body[data-theme="ocean"] .charItem .charSub{
  color:rgba(42,42,42,0.72) !important;
}

.msg .msgContent > .meta,
.msg.hackerSay .msgContent .meta{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:4px !important;
  width:100% !important;
  min-width:0 !important;
  justify-content:flex-start !important;
}

.msg .msgContent > .meta > .name,
.msg.hackerSay .msgContent .meta > .name{
  order:2 !important;
  flex:0 0 auto !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  max-width:none !important;
  margin-right:0 !important;
}

.msg .msgContent > .meta > .msgActions,
.msg.hackerSay .msgContent .meta > .msgActions{
  order:3 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:2px !important;
  flex:0 0 auto !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  margin-left:4px !important;
}

.msg .msgContent > .meta > .time,
.msg.hackerSay .msgContent .meta > .time{
  order:1 !important;
  flex:1 0 100% !important;
  width:100% !important;
  margin:0 0 2px 0 !important;
  text-align:right !important;
  white-space:nowrap !important;
}

.msg .msgActions,
.msg .msgActions button,
.msg .msgActBtn{
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  flex-shrink:0 !important;
}

.msg .msgContent > .meta,
.msg.hackerSay .msgContent .meta{
  position:relative !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:4px !important;
  width:100% !important;
  min-width:0 !important;
  overflow:visible !important;
}

.msg .msgContent > .meta > .name,
.msg.hackerSay .msgContent .meta > .name{
  flex:0 0 auto !important;
  min-width:0 !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  margin-right:0 !important;
  position:relative !important;
  z-index:2 !important;
}

.msg .msgContent > .meta > .msgActions,
.msg.hackerSay .msgContent .meta > .msgActions{
  display:inline-flex !important;
  align-items:center !important;
  gap:2px !important;
  flex:0 0 auto !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  margin-left:4px !important;
  position:relative !important;
  z-index:3 !important;
}

.msg .msgContent > .meta > .time,
.msg.hackerSay .msgContent .meta > .time{
  position:absolute !important;
  right:0 !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:auto !important;
  min-width:0 !important;
  margin:0 !important;
  white-space:nowrap !important;
  text-align:right !important;
  z-index:1 !important;
  pointer-events:none !important;
}

.msg .msgContent,
.msg.hackerSay .msgContent{
  position:relative !important;
  min-width:0 !important;
}

.msg .msgContent > .meta,
.msg.hackerSay .msgContent .meta{
  position:relative !important;
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  min-height:18px !important;
  margin:0 !important;
  overflow:visible !important;
}

.msg .msgContent > .meta > .metaMain,
.msg.hackerSay .msgContent .meta > .metaMain{
  display:flex !important;
  align-items:center !important;
  gap:4px !important;
  min-width:0 !important;
  width:100% !important;
  white-space:nowrap !important;
  flex-wrap:nowrap !important;
  overflow:visible !important;
  position:relative !important;
  z-index:2 !important;
}

.msg .msgContent > .meta > .metaMain > .name,
.msg.hackerSay .msgContent .meta > .metaMain > .name{
  flex:0 0 auto !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  margin-right:0 !important;
}

.msg .msgContent > .meta > .metaMain > .msgActions,
.msg.hackerSay .msgContent .meta > .metaMain > .msgActions{
  display:inline-flex !important;
  align-items:center !important;
  gap:2px !important;
  flex:0 0 auto !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  margin-left:4px !important;
  position:relative !important;
  z-index:3 !important;
}

.msg .msgContent > .meta > .time,
.msg.hackerSay .msgContent .meta > .time{
  position:absolute !important;
  right:0 !important;
  top:0 !important;
  transform:none !important;
  margin:0 !important;
  width:auto !important;
  min-width:0 !important;
  white-space:nowrap !important;
  text-align:right !important;
  line-height:18px !important;
  z-index:1 !important;
  pointer-events:none !important;
}

.msg .msgContent > .text,
.msg.hackerSay .msgContent > .text{
  margin-top:2px !important;
}

body[data-theme="light"] .msgActBtn,
body[data-theme="pink"] .msgActBtn,
body[data-theme="gold"] .msgActBtn,
body[data-theme="neon"] .msgActBtn,
body[data-theme="pixel"] .msgActBtn,
body[data-theme="red"] .msgActBtn,
body[data-theme="ocean"] .msgActBtn,
body[data-theme="lemon"] .msgActBtn{
  position:relative;
  z-index:3;
  transition:
    background .12s ease,
    color .12s ease,
    border-color .12s ease,
    box-shadow .12s ease,
    transform .12s ease,
    opacity .12s ease;
}

body[data-theme="light"] .msgActBtn:hover,
body[data-theme="light"] .msgActBtn:focus-visible{
  z-index:20;
  background:#111827 !important;
  color:#ffffff !important;
  border-color:#111827 !important;
  text-shadow:none !important;
  box-shadow:
    0 0 0 2px rgba(255,255,255,0.96),
    0 6px 16px rgba(17,24,39,0.30) !important;
}

body[data-theme="pink"] .msgActBtn:hover,
body[data-theme="pink"] .msgActBtn:focus-visible{
  z-index:20;
  background:#ff4f9a !important;
  color:#ffffff !important;
  border-color:#ff2f86 !important;
  text-shadow:none !important;
  box-shadow:
    0 0 0 2px rgba(255,255,255,0.92),
    0 6px 16px rgba(255,79,154,0.34) !important;
}

body[data-theme="gold"] .msgActBtn:hover,
body[data-theme="gold"] .msgActBtn:focus-visible{
  z-index:20;
  background:linear-gradient(180deg,#fff4bf 0%,#e0b83f 55%,#b88313 100%) !important;
  color:#2f2200 !important;
  border-color:#8f6808 !important;
  text-shadow:none !important;
  box-shadow:
    0 0 0 2px rgba(255,251,230,0.96),
    0 6px 16px rgba(212,175,55,0.28) !important;
}

body[data-theme="neon"] .msgActBtn:hover,
body[data-theme="neon"] .msgActBtn:focus-visible{
  z-index:20;
  background:linear-gradient(180deg,#19a861 0%,#0c4f2c 100%) !important;
  color:#f3fff8 !important;
  border-color:#72ffbf !important;
  text-shadow:none !important;
  box-shadow:
    0 0 0 2px rgba(220,255,238,0.94),
    0 0 18px rgba(57,255,170,0.52),
    0 0 34px rgba(57,255,170,0.28) !important;
}

body[data-theme="pixel"] .msgActBtn:hover,
body[data-theme="pixel"] .msgActBtn:focus-visible{
  z-index:20;
  background:linear-gradient(180deg,#ffe39c 0%,#ffb84a 55%,#d27d1e 100%) !important;
  color:#2a1606 !important;
  border:2px solid #fff3cf !important;
  border-radius:0 !important;
  text-shadow:none !important;
  box-shadow:
    0 0 0 2px #6e3e19,
    2px 2px 0 #08100f,
    0 0 0 4px rgba(255,245,210,0.78) !important;
}

body[data-theme="red"] .msgActBtn:hover,
body[data-theme="red"] .msgActBtn:focus-visible{
  z-index:20;
  background:linear-gradient(180deg,#2a2a2a 0%,#0a0a0a 100%) !important;
  color:#ffffff !important;
  border-color:#ff8e8e !important;
  text-shadow:none !important;
  box-shadow:
    0 0 0 2px rgba(255,235,235,0.94),
    0 6px 16px rgba(125,0,0,0.34) !important;
}

body[data-theme="ocean"] .msgActBtn:hover,
body[data-theme="ocean"] .msgActBtn:focus-visible{
  z-index:20;
  background:linear-gradient(180deg,#ffffff 0%,#b9f3ff 26%,#44cfff 70%,#0d5fd1 100%) !important;
  color:#06264e !important;
  border-color:#ffffff !important;
  text-shadow:none !important;
  box-shadow:
    0 0 0 2px rgba(255,255,255,0.95),
    0 6px 18px rgba(28,123,225,0.30) !important;
}

body[data-theme="lemon"] .msgActBtn:hover,
body[data-theme="lemon"] .msgActBtn:focus-visible{
  z-index:20;
  background:linear-gradient(180deg,#fffed8 0%,#ffe95d 48%,#ffd000 100%) !important;
  color:#4a3600 !important;
  border-color:#9f7b00 !important;
  text-shadow:none !important;
  box-shadow:
    0 0 0 2px rgba(255,255,239,0.96),
    0 6px 16px rgba(255,208,0,0.30) !important;
}

@media (max-width:980px) and (pointer:coarse){
  .stands{
    padding:8px 8px 12px 8px !important;
    align-items:flex-end !important;
  }

  .stand{
    max-width:49% !important;
    max-height:82% !important;
    object-position:bottom center !important;
  }

  .dialogue{
    left:8px !important;
    right:8px !important;
    bottom:8px !important;
    min-height:132px !important;
    padding:12px 12px 14px !important;
    border-radius:14px !important;
    gap:8px !important;
  }

  .speaker{
    min-height:20px !important;
    font-size:14px !important;
    line-height:1.25 !important;
  }

  .line{
    min-height:62px !important;
    font-size:15px !important;
    line-height:1.5 !important;
  }
}
.chatFontMenu{position:absolute;left:8px;bottom:calc(100% + 6px);display:flex;gap:4px;align-items:center;flex-wrap:wrap;padding:6px;max-width:min(320px,calc(100vw - 48px));background:var(--panel);border:1px solid var(--stroke);border-radius:12px;box-shadow:0 10px 24px rgba(0,0,0,.25);z-index:50;}
.chatFmtBtn{min-width:28px;text-align:center;}
.chatFontBtn,.chatSizeBtn,.chatImgBtn{min-width:30px;}
.chatFontOpt{min-width:52px;}
.ff-ui{font-family:system-ui,-apple-system,'Segoe UI',Roboto,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;}
.ff-gothic{font-family:'Apple SD Gothic Neo','Malgun Gothic','Noto Sans KR',sans-serif;}
.ff-myeongjo{font-family:'Nanum Myeongjo','AppleMyungjo','Batang','Times New Roman',serif;}
.ff-hand{font-family:'Nanum Pen Script','Segoe Print','Comic Sans MS','Apple Chancery',cursive;}
.ff-mono{font-family:'D2Coding','Consolas','Courier New',monospace;}
.ff-dotum{font-family:'Dotum','돋움','Malgun Gothic',sans-serif;}
.ff-gulim{font-family:'Gulim','굴림','Malgun Gothic',sans-serif;}
.ff-batang{font-family:'Batang','바탕','AppleMyungjo','Nanum Myeongjo',serif;}
.ff-gungsuh{font-family:'Gungsuh','궁서','Batang','바탕',serif;}
.ff-arial{font-family:Arial,Helvetica,sans-serif;}
.ff-verdana{font-family:Verdana,Geneva,sans-serif;}
.ff-trebuchet{font-family:'Trebuchet MS',Verdana,sans-serif;}
.ff-georgia{font-family:Georgia,'Times New Roman',serif;}
.ff-times{font-family:'Times New Roman',Times,serif;}
.ff-palatino{font-family:'Palatino Linotype','Book Antiqua',Palatino,serif;}
.chatGmBar{border-top:none;margin-top:0;padding-top:0;position:relative;}

.chatGmToggleBtn{
  min-width:24px;
}

.chatGmBtn.active{
  border-color:rgba(255,196,106,.95);
  box-shadow:0 0 0 2px rgba(255,196,106,.18) inset;
}

.msg.gmNarrMsg,
.msg.gmImageMsg,
.msg.gmJudgeMsg,
.msg.gmMoveMsg{
  justify-content:center!important;
  align-items:center!important;
  border:none!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:4px 0!important;
}

.msg.gmNarrMsg .msgProfile,
.msg.gmImageMsg .msgProfile,
.msg.gmJudgeMsg .msgProfile,
.msg.gmMoveMsg .msgProfile{
  display:none!important;
}

.msg.gmNarrMsg .msgContent,
.msg.gmImageMsg .msgContent,
.msg.gmJudgeMsg .msgContent,
.msg.gmMoveMsg .msgContent{
  width:100%!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  position:relative!important;
  padding:0!important;
  margin:0!important;
}

.msg.gmNarrMsg .meta,
.msg.gmImageMsg .meta,
.msg.gmJudgeMsg .meta,
.msg.gmMoveMsg .meta{
  display:none!important;
}

.msg.gmNarrMsg .msgActions,
.msg.gmImageMsg .msgActions,
.msg.gmJudgeMsg .msgActions,
.msg.gmMoveMsg .msgActions{
  position:absolute;
  right:10px;
  top:-8px;
  margin-left:0;
}

.msg.gmNarrMsg .text,
.msg.gmImageMsg .text,
.msg.gmJudgeMsg .text,
.msg.gmMoveMsg .text{
  text-align:center!important;
  margin:0 auto!important;
}

.msg.gmNarrMsg .text{
  display:block!important;
  width:100%!important;
  max-width:92%!important;
  padding:6px 8px!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.65!important;
  letter-spacing:.01em;
  color:var(--line)!important;
  text-shadow:0 1px 10px rgba(0,0,0,.18);
}

.msg.gmImageMsg{
  border:none!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:none!important;
  border-radius:0!important;
  padding:0!important;
}
.msg.gmImageMsg .msgContent{
  border:none!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:none!important;
  border-radius:0!important;
  padding:0!important;
}
.msg.gmImageMsg .text{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  border-radius:0!important;
}

.msg.gmImageMsg .chatImg{
  display:block!important;
  margin:0 auto!important;
  max-width:min(100%,520px)!important;
  max-height:420px!important;
  border-radius:0!important;
  border:none!important;
  box-shadow:none!important;
  background:transparent!important;
}

.msg.gmJudgeMsg .text{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:auto!important;
  max-width:92%!important;
  padding:10px 18px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,224,138,.45)!important;
  background:linear-gradient(180deg,rgba(255,245,202,.20),rgba(255,193,74,.16))!important;
  box-shadow:0 10px 22px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.10)!important;
  font-size:15px!important;
  font-weight:900!important;
  color:#ffe9a8!important;
  letter-spacing:.02em!important;
}



.msg.gmMoveMsg .text{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:auto!important;
  max-width:92%!important;
  padding:10px 18px!important;
  border-radius:999px!important;
  border:1px solid rgba(140,220,255,.42)!important;
  background:linear-gradient(180deg,rgba(120,205,255,.16),rgba(60,140,220,.12))!important;
  box-shadow:0 10px 22px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.08)!important;
  font-size:15px!important;
  font-weight:900!important;
  color:#cfefff!important;
  letter-spacing:.02em!important;
}


.chatFmtBar .chatGmToggleBtn{margin-left:auto;}
.chatGmBar{
  border-top:none;
  margin-top:0;
  padding-top:0;
  position:relative;
}


body[data-theme="gold"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg):not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay),
body[data-theme="pink"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg):not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay),
body[data-theme="neon"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg):not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay),
body[data-theme="pixel"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg):not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay),
body[data-theme="red"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg):not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay),
body[data-theme="ocean"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg):not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay),
body[data-theme="lemon"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg):not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay){
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  border-radius:0 !important;
  padding:4px 0 !important;
}

body[data-theme="gold"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg) .msgContent,
body[data-theme="pink"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg) .msgContent,
body[data-theme="neon"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg) .msgContent,
body[data-theme="pixel"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg) .msgContent,
body[data-theme="red"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg) .msgContent,
body[data-theme="ocean"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg) .msgContent,
body[data-theme="lemon"] .msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg) .msgContent{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  outline:none !important;
}

.msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg):not(.sys):not(.statMsg):not(.narrSay):not(.thinkSay):not(.phoneSay):not(.hackerSay):not(.noteSay):not(.shoutSay):not(.skillSay):not(.tokenSay){
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  border-radius:0 !important;
  padding:4px 0 !important;
}

.msg:is(.gmNarrMsg,.gmImageMsg,.gmJudgeMsg,.gmMoveMsg) .msgContent{
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  border-radius:0 !important;
}

.msg.gmJudgeMsg .text{
  border-color:var(--gmJudgeBorder, rgba(255,224,138,0.45)) !important;
  background:var(--gmJudgeBg, linear-gradient(180deg,rgba(255,245,202,0.20),rgba(255,193,74,0.16))) !important;
  box-shadow:var(--gmJudgeShadow, 0 10px 22px rgba(0,0,0,0.18), inset 0 1px 0 rgba(255,255,255,0.10)) !important;
  color:var(--gmJudgeColor, #ffe9a8) !important;
  text-shadow:var(--gmJudgeTextShadow, none) !important;
}

.msg.gmMoveMsg .text{
  border-color:var(--gmMoveBorder, rgba(140,220,255,0.42)) !important;
  background:var(--gmMoveBg, linear-gradient(180deg,rgba(120,205,255,0.16),rgba(60,140,220,0.12))) !important;
  box-shadow:var(--gmMoveShadow, 0 10px 22px rgba(0,0,0,0.18), inset 0 1px 0 rgba(255,255,255,0.08)) !important;
  color:var(--gmMoveColor, #cfefff) !important;
  text-shadow:var(--gmMoveTextShadow, none) !important;
}

body[data-theme="gold"]{
  --gmJudgeBorder:rgba(214,175,55,0.72);
  --gmJudgeBg:linear-gradient(180deg,#fff6c8 0%,#e7c75b 48%,#b98517 100%);
  --gmJudgeColor:#3d2a00;
  --gmJudgeShadow:0 10px 24px rgba(140,98,0,0.28), inset 0 1px 0 rgba(255,255,255,0.52);

  --gmMoveBorder:rgba(120,170,255,0.65);
  --gmMoveBg:linear-gradient(180deg,#eef4ff 0%,#8eb0ff 45%,#435ccf 100%);
  --gmMoveColor:#ffffff;
  --gmMoveShadow:0 10px 24px rgba(40,62,150,0.28), inset 0 1px 0 rgba(255,255,255,0.30);
}


body[data-theme="neon"]{
  --gmJudgeBorder:rgba(72,255,137,0.92);
--gmJudgeBg:linear-gradient(180deg,#fbfffd 0%,#22ff8a 16%,#00c95a 52%,#056532 100%);
  --gmJudgeColor:#ffffff;
  --gmJudgeTextShadow:0 1px 1px rgba(0,0,0,0.50);
  --gmJudgeShadow:0 8px 18px rgba(0,80,35,0.16), inset 0 1px 0 rgba(255,255,255,0.14);

  --gmMoveBorder:rgba(40,232,204,0.88);
--gmMoveBg:linear-gradient(180deg,#fbffff 0%,#1dffe5 16%,#00cdb7 52%,#006b60 100%);
  --gmMoveColor:#ffffff;
  --gmMoveTextShadow:0 1px 1px rgba(0,0,0,0.50);
  --gmMoveShadow:0 8px 18px rgba(0,70,60,0.16), inset 0 1px 0 rgba(255,255,255,0.14);
}
body[data-theme="pixel"]{
  --gmJudgeBorder:rgba(255,206,112,0.92);
  --gmJudgeBg:linear-gradient(180deg,#ffbf47 0%,#df8527 52%,#8b4315 100%);
  --gmJudgeColor:#ffffff;
  --gmJudgeTextShadow:1px 1px 0 rgba(0,0,0,0.58);
  --gmJudgeShadow:0 8px 0 rgba(112,60,18,0.34), 0 10px 18px rgba(0,0,0,0.14), inset 0 1px 0 rgba(255,255,255,0.12);

  --gmMoveBorder:rgba(176,136,86,0.92);
  --gmMoveBg:linear-gradient(180deg,#d99a57 0%,#a86533 52%,#623517 100%);
  --gmMoveColor:#ffffff;
  --gmMoveTextShadow:1px 1px 0 rgba(0,0,0,0.58);
  --gmMoveShadow:0 8px 0 rgba(112,60,18,0.30), 0 10px 18px rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.10);
}
body[data-theme="red"]{
  --gmJudgeBorder:rgba(255,122,122,0.80);
  --gmJudgeBg:linear-gradient(180deg,#ffd7d7 0%,#ff7272 45%,#b10000 100%);
  --gmJudgeColor:#ffffff;
  --gmJudgeShadow:0 0 16px rgba(255,70,70,0.24), 0 10px 24px rgba(80,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.22);

  --gmMoveBorder:rgba(255,190,120,0.72);
  --gmMoveBg:linear-gradient(180deg,#fff0db 0%,#ff9e57 45%,#8e2f00 100%);
  --gmMoveColor:#fff8f0;
  --gmMoveShadow:0 0 16px rgba(255,150,80,0.22), 0 10px 24px rgba(90,30,0,0.28), inset 0 1px 0 rgba(255,255,255,0.20);
}

body[data-theme="ocean"]{
  --gmJudgeBorder:rgba(126,245,255,0.78);
  --gmJudgeBg:linear-gradient(180deg,#e0fdff 0%,#7defff 48%,#0fb7d5 100%);
  --gmJudgeColor:#083847;
  --gmJudgeShadow:0 0 18px rgba(110,240,255,0.26), 0 10px 24px rgba(0,70,100,0.24), inset 0 1px 0 rgba(255,255,255,0.30);

  --gmMoveBorder:rgba(121,170,255,0.78);
  --gmMoveBg:linear-gradient(180deg,#edf4ff 0%,#7eb8ff 46%,#1150c8 100%);
  --gmMoveColor:#ffffff;
  --gmMoveShadow:0 0 18px rgba(90,150,255,0.24), 0 10px 24px rgba(12,50,130,0.24), inset 0 1px 0 rgba(255,255,255,0.24);
}



body[data-theme="lemon"]{
  --gmJudgeBorder:rgba(255,219,77,0.82);
  --gmJudgeBg:linear-gradient(180deg,#fffdd8 0%,#fff06d 48%,#d1ab00 100%);
  --gmJudgeColor:#4a3900;
  --gmJudgeShadow:0 0 18px rgba(255,225,60,0.22), 0 10px 24px rgba(120,95,0,0.20), inset 0 1px 0 rgba(255,255,255,0.42);

  --gmMoveBorder:rgba(174,232,78,0.82);
  --gmMoveBg:linear-gradient(180deg,#f6ffd9 0%,#d5ff69 48%,#7dbd00 100%);
  --gmMoveColor:#233600;
  --gmMoveShadow:0 0 18px rgba(190,255,90,0.22), 0 10px 24px rgba(70,110,0,0.20), inset 0 1px 0 rgba(255,255,255,0.34);
}

body[data-theme="light"]{
  --gmJudgeBorder:rgba(255,194,92,0.78);
  --gmJudgeBg:linear-gradient(180deg,#fffaf0 0%,#ffd98c 52%,#e9a93a 100%);
  --gmJudgeColor:#5a3900;
  --gmJudgeShadow:0 8px 20px rgba(170,120,20,0.18), inset 0 1px 0 rgba(255,255,255,0.65);

  --gmMoveBorder:rgba(125,180,255,0.72);
  --gmMoveBg:linear-gradient(180deg,#ffffff 0%,#cfe2ff 52%,#7ea8f8 100%);
  --gmMoveColor:#17325f;
  --gmMoveShadow:0 8px 20px rgba(70,110,190,0.18), inset 0 1px 0 rgba(255,255,255,0.58);
}

body[data-theme="horror"]{
  --gmJudgeBorder:rgba(190,62,62,0.84);
  --gmJudgeBg:linear-gradient(180deg,#5a1515 0%,#340909 55%,#140202 100%);
  --gmJudgeColor:#ffd2d2;
  --gmJudgeTextShadow:0 0 10px rgba(255,60,60,0.24);
  --gmJudgeShadow:0 0 18px rgba(120,0,0,0.28), 0 10px 24px rgba(0,0,0,0.36), inset 0 1px 0 rgba(255,255,255,0.06);

  --gmMoveBorder:rgba(115,135,170,0.72);
  --gmMoveBg:linear-gradient(180deg,#28303a 0%,#171d24 55%,#0c1014 100%);
  --gmMoveColor:#d5e3f2;
  --gmMoveShadow:0 0 18px rgba(90,110,140,0.18), 0 10px 24px rgba(0,0,0,0.34), inset 0 1px 0 rgba(255,255,255,0.05);
}

body[data-theme="black"]{
  --gmJudgeBorder:rgba(255,206,102,0.66);
  --gmJudgeBg:linear-gradient(180deg,#3c3217 0%,#1c170d 55%,#090806 100%);
  --gmJudgeColor:#ffe7a0;
  --gmJudgeShadow:0 10px 24px rgba(0,0,0,0.42), inset 0 1px 0 rgba(255,255,255,0.08);

  --gmMoveBorder:rgba(118,170,255,0.60);
  --gmMoveBg:linear-gradient(180deg,#1c263a 0%,#111827 55%,#090c14 100%);
  --gmMoveColor:#d7e7ff;
  --gmMoveShadow:0 10px 24px rgba(0,0,0,0.42), inset 0 1px 0 rgba(255,255,255,0.07);
}

body[data-theme="vintage"]{
  --gmJudgeBorder:rgba(178,128,72,0.74);
  --gmJudgeBg:linear-gradient(180deg,#f4ead7 0%,#d5b185 50%,#9d6d3c 100%);
  --gmJudgeColor:#4c2f16;
  --gmJudgeShadow:0 8px 20px rgba(92,58,25,0.22), inset 0 1px 0 rgba(255,255,255,0.36);

  --gmMoveBorder:rgba(110,148,168,0.70);
  --gmMoveBg:linear-gradient(180deg,#ebf1ef 0%,#abc5c8 50%,#628b8f 100%);
  --gmMoveColor:#17353a;
  --gmMoveShadow:0 8px 20px rgba(42,67,72,0.20), inset 0 1px 0 rgba(255,255,255,0.28);
}

body[data-theme="wizard"]{
  --gmJudgeBorder:rgba(200,150,255,0.82);
  --gmJudgeBg:linear-gradient(180deg,#f3e6ff 0%,#c990ff 50%,#6d2bc0 100%);
  --gmJudgeColor:#fff7ff;
  --gmJudgeTextShadow:0 0 12px rgba(220,170,255,0.22);
  --gmJudgeShadow:0 0 18px rgba(173,97,255,0.26), 0 10px 24px rgba(58,16,98,0.24), inset 0 1px 0 rgba(255,255,255,0.22);

  --gmMoveBorder:rgba(255,225,131,0.82);
  --gmMoveBg:linear-gradient(180deg,#fffbe3 0%,#ffe38d 50%,#d9ae1f 100%);
  --gmMoveColor:#5a4300;
  --gmMoveTextShadow:none;
  --gmMoveShadow:0 0 18px rgba(210,175,60,0.18), 0 10px 24px rgba(120,90,0,0.18), inset 0 1px 0 rgba(255,255,255,0.24);
}

body[data-theme="cyber"]{
  --gmJudgeBorder:rgba(82,110,170,0.88);
  --gmJudgeBg:linear-gradient(180deg,#25324a 0%,#162033 48%,#0a1220 100%);
  --gmJudgeColor:#dfe9ff;
  --gmJudgeTextShadow:0 0 10px rgba(120,150,220,0.18);
  --gmJudgeShadow:0 0 18px rgba(40,70,130,0.26), 0 10px 24px rgba(5,10,25,0.34), inset 0 1px 0 rgba(255,255,255,0.12);

  --gmMoveBorder:rgba(0,255,235,0.84);
  --gmMoveBg:linear-gradient(180deg,#d7fffd 0%,#51ffef 48%,#008a8f 100%);
  --gmMoveColor:#042d2e;
  --gmMoveTextShadow:0 0 12px rgba(120,255,245,0.22);
  --gmMoveShadow:0 0 18px rgba(0,255,235,0.24), 0 10px 24px rgba(0,70,75,0.24), inset 0 1px 0 rgba(255,255,255,0.24);
}
body[data-theme="chocolate"]{
  --gmJudgeBorder:rgba(214,161,101,0.74);
  --gmJudgeBg:linear-gradient(180deg,#f7eadf 0%,#c99663 48%,#6f3d1d 100%);
  --gmJudgeColor:#fff4ea;
  --gmJudgeShadow:0 8px 20px rgba(70,35,15,0.22), inset 0 1px 0 rgba(255,255,255,0.20);

  --gmMoveBorder:rgba(255,239,173,0.78);
  --gmMoveBg:linear-gradient(180deg,#fffef2 0%,#fff1b8 48%,#e2c86e 100%);
  --gmMoveColor:#6b5100;
  --gmMoveShadow:0 8px 20px rgba(170,140,40,0.16), inset 0 1px 0 rgba(255,255,255,0.28);
}


body[data-theme="christmas"]{
  --gmJudgeBorder:rgba(214,82,82,0.84);
  --gmJudgeBg:linear-gradient(180deg,#ffe1e1 0%,#ff7b7b 48%,#b31212 100%);
  --gmJudgeColor:#fff7f7;
  --gmJudgeShadow:0 8px 20px rgba(120,20,20,0.22), inset 0 1px 0 rgba(255,255,255,0.24);

  --gmMoveBorder:rgba(108,214,150,0.82);
  --gmMoveBg:linear-gradient(180deg,#e1ffe9 0%,#7fe2a1 48%,#198b49 100%);
  --gmMoveColor:#f4fff7;
  --gmMoveShadow:0 8px 20px rgba(20,90,45,0.22), inset 0 1px 0 rgba(255,255,255,0.22);
}


body[data-theme="soda"]{

  --gmJudgeBorder:rgba(126,245,255,0.78);
  --gmJudgeBg:linear-gradient(180deg,#e0fdff 0%,#7defff 48%,#0fb7d5 100%);
  --gmJudgeColor:#083847;
  --gmJudgeShadow:0 0 18px rgba(110,240,255,0.26), 0 10px 24px rgba(0,70,100,0.24), inset 0 1px 0 rgba(255,255,255,0.30);


  --gmMoveBorder:rgba(120,220,255,0.84);
  --gmMoveBg:linear-gradient(180deg,#eefbff 0%,#9fe4ff 46%,#52b8e8 100%);
  --gmMoveColor:#113f57;
  --gmMoveShadow:0 8px 20px rgba(50,120,170,0.18), inset 0 1px 0 rgba(255,255,255,0.30);
}

.msg.gmNarrMsg,
.msg.gmImageMsg,
.msg.gmJudgeMsg,
.msg.gmMoveMsg{
  padding:2px 0 !important;
  min-height:auto !important;
}

.msg.gmNarrMsg .msgActions,
.msg.gmImageMsg .msgActions,
.msg.gmJudgeMsg .msgActions,
.msg.gmMoveMsg .msgActions{
  right:8px !important;
  top:-6px !important;
}

.msg.gmNarrMsg .text{
  max-width:88% !important;
  padding:4px 6px !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1.55 !important;
  text-shadow:var(--gmNarrShadow, 0 1px 8px rgba(0,0,0,.16)) !important;
  color:var(--gmNarrColor, var(--line)) !important;
}

.msg.gmImageMsg .chatImg{
  display:block !important;
  margin:0 auto !important;
  max-width:min(100%,420px) !important;
  max-height:320px !important;
  border-radius:0 !important;
  border:none !important;
  box-shadow:none !important;
  background:transparent !important;
}

.msg.gmJudgeMsg .text,
.msg.gmMoveMsg .text{
  gap:6px !important;
  max-width:88% !important;
  padding:7px 14px !important;
  font-size:13px !important;
  line-height:1.35 !important;
  border-width:1px !important;
  border-style:solid !important;
}


body[data-theme="candy"] .msg.gmNarrMsg,
body[data-theme="candy"] .msg.gmImageMsg,
body[data-theme="candy"] .msg.gmJudgeMsg,
body[data-theme="candy"] .msg.gmMoveMsg,
body[data-theme="cottoncandy"] .msg.gmNarrMsg,
body[data-theme="cottoncandy"] .msg.gmImageMsg,
body[data-theme="cottoncandy"] .msg.gmJudgeMsg,
body[data-theme="cottoncandy"] .msg.gmMoveMsg,
body[data-theme="orange"] .msg.gmNarrMsg,
body[data-theme="orange"] .msg.gmImageMsg,
body[data-theme="orange"] .msg.gmJudgeMsg,
body[data-theme="orange"] .msg.gmMoveMsg,
body[data-theme="green"] .msg.gmNarrMsg,
body[data-theme="green"] .msg.gmImageMsg,
body[data-theme="green"] .msg.gmJudgeMsg,
body[data-theme="green"] .msg.gmMoveMsg,
body[data-theme="melonsoda"] .msg.gmNarrMsg,
body[data-theme="melonsoda"] .msg.gmImageMsg,
body[data-theme="melonsoda"] .msg.gmJudgeMsg,
body[data-theme="melonsoda"] .msg.gmMoveMsg,
body[data-theme="hotpink"] .msg.gmNarrMsg,
body[data-theme="hotpink"] .msg.gmImageMsg,
body[data-theme="hotpink"] .msg.gmJudgeMsg,
body[data-theme="hotpink"] .msg.gmMoveMsg{
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  border-radius:0 !important;
  padding:2px 0 !important;
}

body[data-theme="candy"] .msg.gmNarrMsg .msgContent,
body[data-theme="candy"] .msg.gmImageMsg .msgContent,
body[data-theme="candy"] .msg.gmJudgeMsg .msgContent,
body[data-theme="candy"] .msg.gmMoveMsg .msgContent,
body[data-theme="cottoncandy"] .msg.gmNarrMsg .msgContent,
body[data-theme="cottoncandy"] .msg.gmImageMsg .msgContent,
body[data-theme="cottoncandy"] .msg.gmJudgeMsg .msgContent,
body[data-theme="cottoncandy"] .msg.gmMoveMsg .msgContent,
body[data-theme="orange"] .msg.gmNarrMsg .msgContent,
body[data-theme="orange"] .msg.gmImageMsg .msgContent,
body[data-theme="orange"] .msg.gmJudgeMsg .msgContent,
body[data-theme="orange"] .msg.gmMoveMsg .msgContent,
body[data-theme="green"] .msg.gmNarrMsg .msgContent,
body[data-theme="green"] .msg.gmImageMsg .msgContent,
body[data-theme="green"] .msg.gmJudgeMsg .msgContent,
body[data-theme="green"] .msg.gmMoveMsg .msgContent,
body[data-theme="melonsoda"] .msg.gmNarrMsg .msgContent,
body[data-theme="melonsoda"] .msg.gmImageMsg .msgContent,
body[data-theme="melonsoda"] .msg.gmJudgeMsg .msgContent,
body[data-theme="melonsoda"] .msg.gmMoveMsg .msgContent,
body[data-theme="hotpink"] .msg.gmNarrMsg .msgContent,
body[data-theme="hotpink"] .msg.gmImageMsg .msgContent,
body[data-theme="hotpink"] .msg.gmJudgeMsg .msgContent,
body[data-theme="hotpink"] .msg.gmMoveMsg .msgContent{
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  border-radius:0 !important;
  padding:0 !important;
}

body[data-theme="candy"],
body[data-theme="cottoncandy"]{
  --gmNarrColor:#8b5bc2;
  --gmNarrShadow:0 1px 0 rgba(255,255,255,.42);

  --gmImageBorder:rgba(223,142,255,.34);
  --gmImageShadow:0 10px 22px rgba(223,142,255,.14);

  --gmJudgeBorder:rgba(255,154,204,.80);
  --gmJudgeBg:linear-gradient(180deg,#ffe5f3 0%,#ffadd5 50%,#ff6fae 100%);
  --gmJudgeColor:#7a1248;
  --gmJudgeShadow:0 8px 18px rgba(180,70,130,.16), inset 0 1px 0 rgba(255,255,255,.34);

  --gmMoveBorder:rgba(196,136,255,0.82);
  --gmMoveBg:linear-gradient(180deg,#f5dcff 0%,#c77dff 52%,#7f39d9 100%);
  --gmMoveColor:#ffffff;
  --gmMoveShadow:0 8px 18px rgba(120,80,180,.16), inset 0 1px 0 rgba(255,255,255,.34);
}
body[data-theme="pink"]{
  --gmJudgeBorder:rgba(255,95,175,0.78);
  --gmJudgeBg:linear-gradient(180deg,#ffd5eb 0%,#ff72b6 50%,#cf2f7d 100%);
  --gmJudgeColor:#ffffff;
  --gmJudgeShadow:0 0 18px rgba(255,90,170,0.34), 0 10px 24px rgba(80,0,40,0.24), inset 0 1px 0 rgba(255,255,255,0.28);

  --gmMoveBorder:rgba(196,136,255,0.78);
  --gmMoveBg:linear-gradient(180deg,#f5dcff 0%,#c77dff 52%,#7f39d9 100%);
  --gmMoveColor:#ffffff;
  --gmMoveShadow:0 0 18px rgba(199,125,255,0.30), 0 10px 24px rgba(58,16,98,0.24), inset 0 1px 0 rgba(255,255,255,0.24);
}


body[data-theme="green"],
body[data-theme="melonsoda"]{
  --gmNarrColor:#3f7b49;
  --gmNarrShadow:0 1px 0 rgba(255,255,255,.34);

  --gmImageBorder:rgba(120,244,190,.42);
  --gmImageShadow:0 10px 22px rgba(30,120,80,.14);

  --gmJudgeBorder:rgba(244,255,170,.82);
  --gmJudgeBg:linear-gradient(180deg,#fffff2 0%,#ecff9e 46%,#c3dc44 100%);
  --gmJudgeColor:#526000;
  --gmJudgeShadow:0 8px 18px rgba(130,150,20,.16), inset 0 1px 0 rgba(255,255,255,.40);

  --gmMoveBorder:rgba(174,232,78,0.82);
  --gmMoveBg:linear-gradient(180deg,#f6ffd9 0%,#d5ff69 48%,#7dbd00 100%);
  --gmMoveColor:#233600;
  --gmMoveShadow:0 8px 18px rgba(70,110,0,.16), inset 0 1px 0 rgba(255,255,255,.30);
}
body[data-theme="hotpink"]{
  --gmNarrColor:#fff3fa;
  --gmNarrShadow:0 0 10px rgba(255,79,143,.14);
  --gmImageBorder:rgba(255,79,143,.42);
  --gmImageShadow:0 0 18px rgba(255,79,143,.18), 0 10px 22px rgba(0,0,0,.24);

  --gmJudgeBorder:rgba(255,104,196,0.90);
 --gmJudgeBg:linear-gradient(180deg,#fff8fc 0%,#ff8ccb 16%,#ff5daf 52%,#b51e77 100%);
  --gmJudgeColor:#ffffff;
  --gmJudgeTextShadow:0 1px 1px rgba(0,0,0,0.48);
  --gmJudgeShadow:0 8px 18px rgba(110,20,70,0.16), inset 0 1px 0 rgba(255,255,255,0.12);

  --gmMoveBorder:rgba(255,154,208,0.90);
  --gmMoveBg:linear-gradient(180deg,#fffafd 0%,#ffacd7 16%,#ff79be 52%,#dc589a 100%);
  --gmMoveColor:#ffffff;
  --gmMoveTextShadow:0 1px 1px rgba(0,0,0,0.48);
  --gmMoveShadow:0 8px 18px rgba(110,20,70,0.14), inset 0 1px 0 rgba(255,255,255,0.12);
}

body[data-theme="orange"],
body[data-theme="halloween"]{
  --gmNarrColor:#9a5b14;
  --gmNarrShadow:0 1px 0 rgba(255,255,255,0.34);

  --gmImageBorder:rgba(255,181,89,0.42);
  --gmImageShadow:0 10px 22px rgba(180,90,20,0.16);

  --gmJudgeBorder:rgba(255,181,89,0.82);
  --gmJudgeBg:linear-gradient(180deg,#fff1dc 0%,#ffbf73 48%,#ef7f1a 100%);
  --gmJudgeColor:#5d2e00;
  --gmJudgeShadow:0 8px 18px rgba(180,90,20,0.18), inset 0 1px 0 rgba(255,255,255,0.32);

  --gmMoveBorder:rgba(255,225,131,0.74);
  --gmMoveBg:linear-gradient(180deg,#fffadf 0%,#ffe38d 48%,#d9ae1f 100%);
  --gmMoveColor:#5a4300;
  --gmMoveShadow:0 8px 18px rgba(140,110,20,0.16), inset 0 1px 0 rgba(255,255,255,0.30);
}

body[data-theme="orange"] .msg.gmJudgeMsg .text,
body[data-theme="halloween"] .msg.gmJudgeMsg .text{
  border-color:var(--gmJudgeBorder) !important;
  background:var(--gmJudgeBg) !important;
  box-shadow:var(--gmJudgeShadow) !important;
  color:var(--gmJudgeColor) !important;
}

body[data-theme="orange"] .msg.gmMoveMsg .text,
body[data-theme="halloween"] .msg.gmMoveMsg .text{
  border-color:var(--gmMoveBorder) !important;
  background:var(--gmMoveBg) !important;
  box-shadow:var(--gmMoveShadow) !important;
  color:var(--gmMoveColor) !important;
}

body[data-theme="orange"] .msg.gmNarrMsg .text,
body[data-theme="halloween"] .msg.gmNarrMsg .text{
  color:var(--gmNarrColor) !important;
  text-shadow:var(--gmNarrShadow) !important;
}

body[data-theme="orange"] .msg.gmImageMsg .chatImg,
body[data-theme="halloween"] .msg.gmImageMsg .chatImg{
  border:none !important;
  box-shadow:none !important;
  background:transparent !important;
  border-radius:0 !important;
}

body[data-theme="ocean"]{
  --gmNarrColor:#ffffff;
  --gmNarrShadow:0 1px 2px rgba(0,0,0,0.38);

  --gmJudgeBorder:rgba(126,245,255,0.78);
  --gmJudgeBg:linear-gradient(180deg,#e0fdff 0%,#7defff 48%,#0fb7d5 100%);
  --gmJudgeColor:#083847;
  --gmJudgeShadow:0 0 18px rgba(110,240,255,0.26), 0 10px 24px rgba(0,70,100,0.24), inset 0 1px 0 rgba(255,255,255,0.30);

  --gmMoveBorder:rgba(120,220,255,0.84);
  --gmMoveBg:linear-gradient(180deg,#eefbff 0%,#9fe4ff 46%,#52b8e8 100%);
  --gmMoveColor:#113f57;
  --gmMoveShadow:0 8px 20px rgba(50,120,170,0.18), inset 0 1px 0 rgba(255,255,255,0.30);
}
body[data-theme="ocean"] .msg.gmNarrMsg .text,
body[data-theme="ocean"] .msg.gmNarrMsg .msgContent .text,
body[data-theme="ocean"] .msg.gmNarrMsg .text *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,0.38) !important;
}

body[data-theme="vintage"] .stageTopLeft .iconBtn,
body[data-theme="vintage"] .stageTopRight .iconBtn,
body[data-theme="vintage"] .chatHeader .iconBtn{
  background:linear-gradient(180deg,rgba(248,241,228,0.86) 0%,rgba(234,216,189,0.82) 52%,rgba(210,176,138,0.78) 100%)!important;
  border:1px solid rgba(108,82,54,0.36)!important;
  color:#2f2418!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.34)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.38), 0 6px 14px rgba(88,68,46,0.08)!important;
  backdrop-filter:blur(2px)!important;
  filter:none!important;
}

body[data-theme="vintage"] .stageTopLeft .iconBtn:hover,
body[data-theme="vintage"] .stageTopRight .iconBtn:hover,
body[data-theme="vintage"] .chatHeader .iconBtn:hover{
  background:linear-gradient(180deg,rgba(251,246,238,0.90) 0%,rgba(240,223,199,0.86) 52%,rgba(217,185,148,0.82) 100%)!important;
  filter:none!important;
}

body[data-theme="vintage"] .stageTopLeft .iconBtn:active,
body[data-theme="vintage"] .stageTopRight .iconBtn:active,
body[data-theme="vintage"] .chatHeader .iconBtn:active{
  transform:translateY(1px);
}

body[data-theme="vintage"] .stageUsers .userChip{
  background:linear-gradient(180deg,rgba(248,241,228,0.80) 0%,rgba(234,216,189,0.76) 52%,rgba(210,176,138,0.72) 100%)!important;
  border:1px solid rgba(108,82,54,0.32)!important;
  color:#2f2418!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.34)!important;
  backdrop-filter:blur(2px)!important;
}

body[data-theme="vintage"] .stageUsersLabel{
  color:rgba(72,54,36,0.88)!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.20)!important;
}
body[data-theme="vintage"] .stageTopLeft .badgeLink,
body[data-theme="vintage"] .stageTopRight .badgeLink,
body[data-theme="vintage"] .stageTopLeft .iconBtn,
body[data-theme="vintage"] .stageTopRight .iconBtn,
body[data-theme="vintage"] .stageTopLeft .btnMini,
body[data-theme="vintage"] .stageTopRight .btnMini,
body[data-theme="vintage"] .chatHeader .iconBtn{
  background:rgba(245,236,223,0.88)!important;
  border:1px solid rgba(108,82,54,0.34)!important;
  color:#2f2418!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.26)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.20), 0 4px 10px rgba(88,68,46,0.06)!important;
  backdrop-filter:blur(2px)!important;
  filter:none!important;
}

body[data-theme="vintage"] .stageTopLeft .badgeLink:hover,
body[data-theme="vintage"] .stageTopRight .badgeLink:hover,
body[data-theme="vintage"] .stageTopLeft .iconBtn:hover,
body[data-theme="vintage"] .stageTopRight .iconBtn:hover,
body[data-theme="vintage"] .stageTopLeft .btnMini:hover,
body[data-theme="vintage"] .stageTopRight .btnMini:hover,
body[data-theme="vintage"] .chatHeader .iconBtn:hover{
  background:rgba(248,240,228,0.92)!important;
  filter:none!important;
}

body[data-theme="vintage"] .stageTopLeft .badgeLink:active,
body[data-theme="vintage"] .stageTopRight .badgeLink:active,
body[data-theme="vintage"] .stageTopLeft .iconBtn:active,
body[data-theme="vintage"] .stageTopRight .iconBtn:active,
body[data-theme="vintage"] .stageTopLeft .btnMini:active,
body[data-theme="vintage"] .stageTopRight .btnMini:active,
body[data-theme="vintage"] .chatHeader .iconBtn:active{
  transform:translateY(1px);
}

body[data-theme="vintage"] .stageUsers .userChip{
  background:rgba(245,236,223,0.82)!important;
  border:1px solid rgba(108,82,54,0.30)!important;
  color:#2f2418!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.22)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.16)!important;
  backdrop-filter:blur(2px)!important;
}

body[data-theme="vintage"] .stageUsersLabel{
  color:rgba(72,54,36,0.90)!important;
  text-shadow:0 1px 0 rgba(255,255,255,0.16)!important;
}
body[data-theme="party"]{
  --bg:#261047;
  --panel:rgba(255,255,255,0.90);
  --line:#24103a;
  --muted:#684f7d;
  --stroke:rgba(255,255,255,0.72);
  --accent:#ff3fcf;
  --stage:#33135f;
  --stageGrad1:#ff4fd8;
  --stageGrad2:#45e3ff;
  --dialogueBg:rgba(255,255,255,0.88);
  --chipBg:rgba(255,255,255,0.76);
  --msgBg:rgba(255,255,255,0.92);
  --sysBg:rgba(255,244,140,0.74);
  --inputBg:rgba(255,255,255,0.94);
  --headerBg:linear-gradient(90deg,#ff4fd8,#45e3ff,#fff261,#ff8a3d);
  --tabBg:rgba(255,255,255,0.86);
  --tabBarBg:linear-gradient(90deg,rgba(255,79,216,0.38),rgba(69,227,255,0.34),rgba(255,242,97,0.36));
  --btnBg:linear-gradient(135deg,#ff4fd8,#45e3ff);
  --btnText:#ffffff;
  --hoverBg:rgba(255,79,216,0.16);
  --roomItemBg:rgba(255,255,255,0.88);
  --splitterBg:linear-gradient(180deg,#ff4fd8,#45e3ff);
  --gmJudgeBorder:rgba(255,79,216,0.72);
  --gmJudgeBg:linear-gradient(135deg,rgba(255,79,216,0.92),rgba(255,242,97,0.84),rgba(69,227,255,0.82));
  --gmJudgeColor:#ffffff;
  --gmJudgeShadow:0 6px 14px rgba(255,79,216,0.22),0 0 14px rgba(69,227,255,0.14),inset 0 1px 0 rgba(255,255,255,0.48);
  --gmJudgeTextShadow:0 1px 2px rgba(0,0,0,0.24);
  --gmMoveBorder:rgba(69,227,255,0.72);
  --gmMoveBg:linear-gradient(135deg,rgba(69,227,255,0.90),rgba(139,92,255,0.82),rgba(255,79,216,0.78));
  --gmMoveColor:#ffffff;
  --gmMoveShadow:0 6px 14px rgba(69,227,255,0.20),0 0 14px rgba(255,79,216,0.14),inset 0 1px 0 rgba(255,255,255,0.42);
  --gmMoveTextShadow:0 1px 2px rgba(0,0,0,0.25);
  --bg-fallback:radial-gradient(circle at 15% 20%,#fff261 0 7%,transparent 8%),radial-gradient(circle at 82% 18%,#45e3ff 0 9%,transparent 10%),radial-gradient(circle at 74% 78%,#ff8a3d 0 8%,transparent 9%),linear-gradient(135deg,#ff4fd8 0%,#7755ff 45%,#45e3ff 100%);
}

body[data-theme="party"] :is(.authCard,.authCardDark,.lobbyCard){
  background:
    linear-gradient(135deg,
      rgba(255,255,255,0.92) 0%,
      rgba(255,226,245,0.58) 24%,
      rgba(255,246,180,0.42) 48%,
      rgba(208,245,255,0.48) 74%,
      rgba(235,228,255,0.56) 100%) !important;
  border-color:rgba(255,255,255,0.84) !important;
  box-shadow:
    0 14px 34px rgba(255,79,216,0.10),
    0 0 18px rgba(69,227,255,0.08),
    inset 0 1px 0 rgba(255,255,255,0.72) !important;
}

body[data-theme="party"] .roomList{
  background:
    linear-gradient(135deg,
      rgba(255,255,255,0.30),
      rgba(255,242,97,0.12),
      rgba(69,227,255,0.10),
      rgba(255,79,216,0.10)) !important;
  border:1px solid rgba(255,255,255,0.58);
  border-radius:14px;
  padding:8px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.45);
}

body[data-theme="party"] .roomItem{
  background:rgba(255,255,255,0.90) !important;
}

body[data-theme="party"] :is(.chatHeader,.chatTop,.winHead,.modalHead,.faceMenuTabs){
  background:linear-gradient(90deg,#ff4fd8,#45e3ff,#fff261,#ff8a3d) !important;
  border-bottom:1px solid rgba(255,255,255,0.74) !important;
  color:#ffffff !important;
  box-shadow:0 8px 22px rgba(255,79,216,0.18);
}

body[data-theme="party"] :is(.chatTabs,.chatHeader #chatTabsHost .chatTabs){
  background:transparent !important;
}

body[data-theme="party"] :is(.chatTab,.tabBtn,.faceMenuTab){
  border:1px solid rgba(255,255,255,0.76) !important;
  background:rgba(255,255,255,0.72) !important;
  color:#4a136f !important;
  border-radius:999px !important;
  box-shadow:0 4px 12px rgba(255,79,216,0.18);
}

body[data-theme="party"] :is(.chatTab.active,.tabBtn.on,.faceMenuTab.active){
  background:linear-gradient(135deg,#ff4fd8 0%,#45e3ff 55%,#fff261 100%) !important;
  color:#ffffff !important;
  border-color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,0.25);
}

body[data-theme="party"] :is(.send,.btnMini,.badgeLink,.iconBtn,.chatBtn,.diceBtn,.btnTabAdd){
  border-color:rgba(255,255,255,0.72) !important;
  background:linear-gradient(135deg,#ff4fd8 0%,#45e3ff 55%,#fff261 100%) !important;
  color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,0.25);
}

body[data-theme="party"]:not([data-dlgshape="gradient"]) .dialogue{
  background:
    linear-gradient(135deg,
      rgba(255,255,255,0.90) 0%,
      rgba(255,226,245,0.78) 22%,
      rgba(255,246,180,0.62) 48%,
      rgba(208,245,255,0.68) 74%,
      rgba(235,228,255,0.76) 100%) !important;
  border:1px solid rgba(255,255,255,0.86) !important;
  box-shadow:
    0 14px 34px rgba(255,79,216,0.14),
    0 0 18px rgba(69,227,255,0.12),
    inset 0 1px 0 rgba(255,255,255,0.68) !important;
}

body[data-theme="party"] .speaker{
  color:#ff3fcf !important;
  text-shadow:0 1px 0 rgba(255,255,255,0.7);
}

body[data-theme="party"] :is(.msg.narrSay,.msg.gmNarrMsg,.textOnlyMsg.narrSay,.textOnlyMsg.gmNarrMsg){
  background:linear-gradient(135deg,rgba(255,255,255,0.92),rgba(255,244,140,0.70),rgba(255,255,255,0.92)) !important;
  border:1px solid rgba(255,255,255,0.86) !important;
  color:#24103a !important;
  box-shadow:0 10px 22px rgba(255,79,216,0.16),0 0 16px rgba(69,227,255,0.14) !important;
}

body[data-theme="party"] .msg.sys{
  background:linear-gradient(135deg,rgba(255,255,255,0.92),rgba(255,244,140,0.72),rgba(69,227,255,0.20)) !important;
  border:1px solid rgba(255,79,216,0.44) !important;
  border-radius:14px !important;
  color:#4a136f !important;
  box-shadow:0 8px 18px rgba(255,79,216,0.12),0 0 14px rgba(69,227,255,0.08),inset 0 1px 0 rgba(255,255,255,0.72) !important;
}

body[data-theme="party"] .msg.sys .text{
  color:#4a136f !important;
  font-weight:700 !important;
}

body[data-theme="party"] :is(.msg.gmJudgeMsg,.msg.gmMoveMsg,.textOnlyMsg.gmJudgeMsg,.textOnlyMsg.gmMoveMsg){
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:2px 0 !important;
}

body[data-theme="party"] :is(.msg.gmJudgeMsg,.msg.gmMoveMsg,.textOnlyMsg.gmJudgeMsg,.textOnlyMsg.gmMoveMsg) .msgContent{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

body[data-theme="party"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text,
body[data-theme="party"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  width:auto !important;
  max-width:82% !important;
  min-height:0 !important;
  padding:7px 14px !important;
  border-radius:999px !important;
  font-size:13px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
}

body[data-theme="party"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text{
  border:1px solid var(--gmJudgeBorder) !important;
  background:var(--gmJudgeBg) !important;
  box-shadow:var(--gmJudgeShadow) !important;
  color:var(--gmJudgeColor) !important;
  text-shadow:var(--gmJudgeTextShadow) !important;
}

body[data-theme="party"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text{
  border:1px solid var(--gmMoveBorder) !important;
  background:var(--gmMoveBg) !important;
  box-shadow:var(--gmMoveShadow) !important;
  color:var(--gmMoveColor) !important;
  text-shadow:var(--gmMoveTextShadow) !important;
}

body[data-theme="windows"]{
  --bg:#008080;
  --panel:#c0c0c0;
  --line:#000000;
  --muted:#333333;
  --stroke:#808080;
  --accent:#000080;
  --stage:#c0c0c0;
  --stageGrad1:#008080;
  --stageGrad2:#004f4f;
  --dialogueBg:#c0c0c0;
  --chipBg:#dcdcdc;
  --msgBg:#ffffff;
  --sysBg:#dcdcdc;
  --inputBg:#ffffff;
  --headerBg:#c0c0c0;
  --tabBg:#c0c0c0;
  --tabBarBg:#c0c0c0;
  --btnBg:#c0c0c0;
  --btnText:#000000;
  --hoverBg:#d7d7d7;
  --roomItemBg:#dcdcdc;
  --splitterBg:#808080;
  --gmJudgeBorder:#000080;
  --gmJudgeBg:#ffffff;
  --gmJudgeColor:#000080;
  --gmJudgeShadow:inset 1px 1px 0 #dfdfdf,inset -1px -1px 0 #808080;
  --gmJudgeTextShadow:none;
  --gmMoveBorder:#008080;
  --gmMoveBg:#ffffff;
  --gmMoveColor:#006060;
  --gmMoveShadow:inset 1px 1px 0 #dfdfdf,inset -1px -1px 0 #808080;
  --gmMoveTextShadow:none;
  --bg-fallback:linear-gradient(135deg,#008080,#006666);
  font-family:Tahoma, Geneva, Verdana, sans-serif;
}

body[data-theme="windows"] :is(.stage,.chat,.lobbyCard,.adminCard,.sceneWindow,.modalPanel,.modalCard,.modalBox,.roomItem,.charItem,.charEdit,.hostDelegateBox,.chatNotice,.faceMenu,.input,select,textarea,.btnMini,.send,.badgeLink,.iconBtn,.chatBtn,.diceBtn,.chatTab,.tabBtn,.faceMenuTab){
  border-radius:0 !important;
  border-top-color:#ffffff !important;
  border-left-color:#ffffff !important;
  border-right-color:#404040 !important;
  border-bottom-color:#404040 !important;
  box-shadow:inset 1px 1px 0 #dfdfdf,inset -1px -1px 0 #808080 !important;
}

body[data-theme="windows"] :is(.chatHeader,.chatTop,.winHead,.modalHead,.faceMenuTabs){
  background:#000080 !important;
  color:#ffffff !important;
  border-radius:0 !important;
  border-bottom:2px solid #808080 !important;
}

body[data-theme="windows"] .stageTop{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

body[data-theme="windows"] :is(.stageRoomTitle,.stageRoomId){
  color:#000000 !important;
  background:#c0c0c0 !important;
  border-top:1px solid #ffffff !important;
  border-left:1px solid #ffffff !important;
  border-right:1px solid #404040 !important;
  border-bottom:1px solid #404040 !important;
  padding:3px 8px !important;
  box-shadow:inset 1px 1px 0 #dfdfdf,inset -1px -1px 0 #808080 !important;
}

body[data-theme="windows"] :is(.winTitle,.adminBrand,.chatTitle){
  color:#ffffff !important;
  font-weight:700 !important;
}

body[data-theme="windows"] :is(.winClose,.modalClose){
  background:#c00000 !important;
  color:#ffffff !important;
  border-radius:0 !important;
  border-top:1px solid #ffb0b0 !important;
  border-left:1px solid #ffb0b0 !important;
  border-right:1px solid #600000 !important;
  border-bottom:1px solid #600000 !important;
  box-shadow:none !important;
}

body[data-theme="windows"] :is(.send,.btnMini,.badgeLink,.iconBtn,.chatBtn,.diceBtn,.btnTabAdd){
  background:#c0c0c0 !important;
  color:#000000 !important;
  text-shadow:none !important;
}

body[data-theme="windows"] :is(.chatTabs,.chatHeader #chatTabsHost .chatTabs){
  background:transparent !important;
}

body[data-theme="windows"] :is(.chatTab,.tabBtn,.faceMenuTab){
  background:#c0c0c0 !important;
  color:#000000 !important;
  border-radius:0 !important;
}

body[data-theme="windows"] :is(.chatTab.active,.tabBtn.on,.faceMenuTab.active){
  background:#ffffff !important;
  color:#000080 !important;
  font-weight:900 !important;
}

body[data-theme="windows"]:not([data-dlgshape="gradient"]) .dialogue{
  background:#c0c0c0 !important;
  border-radius:0 !important;
  border-top:2px solid #ffffff !important;
  border-left:2px solid #ffffff !important;
  border-right:2px solid #404040 !important;
  border-bottom:2px solid #404040 !important;
  box-shadow:inset 1px 1px 0 #dfdfdf,inset -1px -1px 0 #808080 !important;
}

body[data-theme="windows"] .speaker{
  color:#000080 !important;
}

body[data-theme="windows"] :is(.msg.narrSay,.msg.gmNarrMsg,.textOnlyMsg.narrSay,.textOnlyMsg.gmNarrMsg){
  background:#ffffff !important;
  color:#000000 !important;
  border-radius:0 !important;
  border-top:2px solid #ffffff !important;
  border-left:2px solid #ffffff !important;
  border-right:2px solid #404040 !important;
  border-bottom:2px solid #404040 !important;
  box-shadow:inset 1px 1px 0 #dfdfdf,inset -1px -1px 0 #808080 !important;
}

body[data-theme="windows"] .msg.sys{
  background:linear-gradient(180deg,#efefef 0%,#d8d8d8 100%) !important;
  border-top:2px solid #ffffff !important;
  border-left:2px solid #ffffff !important;
  border-right:2px solid #404040 !important;
  border-bottom:2px solid #404040 !important;
  border-radius:0 !important;
  color:#000000 !important;
  box-shadow:inset 1px 1px 0 #ffffff,inset -1px -1px 0 #808080 !important;
}

body[data-theme="windows"] .msg.sys .text{
  color:#000000 !important;
  font-family:Tahoma, Geneva, Verdana, sans-serif !important;
  font-weight:700 !important;
}

body[data-theme="windows"] :is(.msg.gmJudgeMsg,.msg.gmMoveMsg,.textOnlyMsg.gmJudgeMsg,.textOnlyMsg.gmMoveMsg){
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:2px 0 !important;
}

body[data-theme="windows"] :is(.msg.gmJudgeMsg,.msg.gmMoveMsg,.textOnlyMsg.gmJudgeMsg,.textOnlyMsg.gmMoveMsg) .msgContent{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

body[data-theme="windows"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text,
body[data-theme="windows"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  width:auto !important;
  max-width:82% !important;
  min-height:0 !important;
  padding:7px 14px !important;
  border-radius:0 !important;
  font-family:Tahoma, Geneva, Verdana, sans-serif !important;
  font-size:13px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
}

body[data-theme="windows"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text{
  border-top:2px solid #ffffff !important;
  border-left:2px solid #ffffff !important;
  border-right:2px solid #404040 !important;
  border-bottom:2px solid #404040 !important;
  background:linear-gradient(180deg,#f4f4f4 0%,#dcdcdc 100%) !important;
  box-shadow:inset 1px 1px 0 #ffffff,inset -1px -1px 0 #808080 !important;
  color:#000080 !important;
  text-shadow:none !important;
}

body[data-theme="windows"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text::before,
body[data-theme="windows"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text::after{
  content:"■";
  color:#000080;
  font-size:11px;
}

body[data-theme="windows"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text::before{
  margin-right:3px;
}

body[data-theme="windows"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text::after{
  margin-left:3px;
}

body[data-theme="windows"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text{
  border-top:2px solid #ffffff !important;
  border-left:2px solid #ffffff !important;
  border-right:2px solid #404040 !important;
  border-bottom:2px solid #404040 !important;
  background:linear-gradient(180deg,#f4f4f4 0%,#dcdcdc 100%) !important;
  box-shadow:inset 1px 1px 0 #ffffff,inset -1px -1px 0 #808080 !important;
  color:#006060 !important;
  text-shadow:none !important;
}

body[data-theme="windows"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text::before,
body[data-theme="windows"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text::after{
  content:"▣";
  color:#008080;
  font-size:11px;
}

body[data-theme="windows"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text::before{
  margin-right:3px;
}

body[data-theme="windows"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text::after{
  margin-left:3px;
}

body[data-theme="wedding"]{
  --bg:#fffdfa;
  --panel:rgba(255,255,255,0.96);
  --line:#5d5346;
  --muted:#9a8b74;
  --stroke:rgba(205,185,145,0.42);
  --accent:#c8a85f;
  --stage:#ffffff;
  --stageGrad1:#ffffff;
  --stageGrad2:#f6efe1;
  --dialogueBg:rgba(255,255,255,0.88);
  --chipBg:rgba(255,253,248,0.94);
  --msgBg:rgba(255,255,255,0.97);
  --sysBg:rgba(255,252,244,0.88);
  --inputBg:#ffffff;
  --headerBg:linear-gradient(135deg,#ffffff,#fbf6eb);
  --tabBg:rgba(255,255,255,0.95);
  --tabBarBg:rgba(255,253,248,0.94);
  --btnBg:linear-gradient(135deg,#ffffff,#f5ead1);
  --btnText:#665640;
  --hoverBg:rgba(200,168,95,0.10);
  --roomItemBg:rgba(255,255,255,0.96);
  --splitterBg:linear-gradient(180deg,#ffffff,#e6d5aa);
  --gmJudgeBorder:rgba(199,163,77,0.62);
  --gmJudgeBg:linear-gradient(135deg,#ffffff 0%,#fbf4e3 58%,#e2ca86 100%);
  --gmJudgeColor:#5b4420;
  --gmJudgeShadow:0 6px 14px rgba(154,121,48,0.12),0 0 16px rgba(255,255,255,0.70),inset 0 1px 0 rgba(255,255,255,0.90);
  --gmJudgeTextShadow:0 1px 0 rgba(255,255,255,0.72);
  --gmMoveBorder:rgba(185,168,128,0.58);
  --gmMoveBg:linear-gradient(135deg,#ffffff 0%,#fbf4e4 62%,#d6c59a 100%);
  --gmMoveColor:#5f5440;
  --gmMoveShadow:0 6px 14px rgba(126,104,64,0.10),0 0 16px rgba(255,255,255,0.72),inset 0 1px 0 rgba(255,255,255,0.90);
  --gmMoveTextShadow:0 1px 0 rgba(255,255,255,0.72);
  --bg-fallback:radial-gradient(circle at 20% 14%,rgba(255,255,255,1),transparent 26%),radial-gradient(circle at 86% 16%,rgba(255,255,255,0.96),transparent 24%),linear-gradient(135deg,#ffffff 0%,#fffdf8 52%,#f3ead7 100%);
}

body[data-theme="wedding"] :is(.stage,.chat,.lobbyCard,.adminCard,.sceneWindow,.modalPanel,.modalCard,.modalBox,.roomItem,.charItem,.charEdit,.hostDelegateBox,.chatNotice,.faceMenu){
  border-color:rgba(205,185,145,0.42) !important;
  background-color:rgba(255,255,255,0.96) !important;
  box-shadow:0 12px 28px rgba(151,121,67,0.08),0 0 0 1px rgba(255,255,255,0.92) inset,0 0 24px rgba(255,255,255,0.58) !important;
}

body[data-theme="wedding"] :is(.chatHeader,.chatTop,.winHead,.modalHead,.faceMenuTabs){
  background:linear-gradient(135deg,#ffffff,#fffaf0 70%,#f1e2bd) !important;
  border-bottom:1px solid rgba(205,185,145,0.38) !important;
  color:#5d5346 !important;
  box-shadow:0 6px 18px rgba(151,121,67,0.07),inset 0 1px 0 rgba(255,255,255,0.96);
}

body[data-theme="wedding"] :is(.chatTabs,.chatHeader #chatTabsHost .chatTabs){
  background:transparent !important;
}

body[data-theme="wedding"] :is(.chatTab,.tabBtn,.faceMenuTab){
  border:1px solid rgba(205,185,145,0.42) !important;
  background:linear-gradient(135deg,rgba(255,255,255,0.96),rgba(255,250,240,0.88)) !important;
  color:#7a674b !important;
  border-radius:999px !important;
  box-shadow:0 4px 12px rgba(151,121,67,0.07),inset 0 1px 0 rgba(255,255,255,0.92);
}

body[data-theme="wedding"] :is(.chatTab.active,.tabBtn.on,.faceMenuTab.active){
  background:linear-gradient(135deg,#ffffff,#fbf1d8 62%,#dbc27a) !important;
  color:#5f4822 !important;
  border-color:rgba(199,163,77,0.60) !important;
  font-weight:900 !important;
}

body[data-theme="wedding"] :is(.send,.btnMini,.badgeLink,.iconBtn,.chatBtn,.diceBtn,.btnTabAdd){
  border-color:rgba(199,163,77,0.42) !important;
  background:linear-gradient(135deg,#ffffff,#f7edda) !important;
  color:#665640 !important;
}

body[data-theme="wedding"]:not([data-dlgshape="gradient"]) .dialogue{
  background:linear-gradient(135deg,rgba(255,255,255,0.90),rgba(255,252,245,0.82),rgba(243,234,214,0.58)) !important;
  border:1px solid rgba(205,185,145,0.48) !important;
  box-shadow:0 14px 32px rgba(151,121,67,0.10),0 0 26px rgba(255,255,255,0.72) inset,0 0 22px rgba(224,205,160,0.12) !important;
}

body[data-theme="wedding"] .dialogue::before{
  content:none !important;
}

body[data-theme="wedding"] .dialogue::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:8px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(200,168,95,0.34),transparent);
  pointer-events:none;
}

body[data-theme="wedding"] .speaker{
  color:#ad8b38 !important;
  text-shadow:0 1px 0 rgba(255,255,255,0.86),0 0 10px rgba(255,255,255,0.82);
  letter-spacing:.03em;
  display:inline-flex;
  align-items:center;
  gap:4px;
  width:max-content;
}

body[data-theme="wedding"] .speaker::before{
  content:"✿";
  color:#c8a85f;
  font-size:.9em;
  text-shadow:0 0 8px rgba(255,255,255,0.98),0 0 10px rgba(216,189,114,0.28);
}

body[data-theme="wedding"] .speaker::after{
  content:"✿";
  color:#c8a85f;
  font-size:.9em;
  margin-left:0;
  text-shadow:0 0 8px rgba(255,255,255,0.98),0 0 10px rgba(216,189,114,0.28);
}

body[data-theme="wedding"] :is(.msg.narrSay,.msg.gmNarrMsg,.textOnlyMsg.narrSay,.textOnlyMsg.gmNarrMsg){
  background:linear-gradient(135deg,rgba(255,255,255,0.96),rgba(255,251,241,0.84),rgba(241,230,204,0.56)) !important;
  border:1px solid rgba(205,185,145,0.48) !important;
  color:#5d5346 !important;
  box-shadow:0 10px 22px rgba(151,121,67,0.09),0 0 18px rgba(255,255,255,0.70) inset !important;
}

body[data-theme="wedding"] .msg.sys{
  background:linear-gradient(135deg,rgba(255,255,255,0.98),rgba(255,252,244,0.92),rgba(241,230,204,0.56)) !important;
  border:1px solid rgba(199,163,77,0.34) !important;
  border-radius:14px !important;
  color:#6c5d46 !important;
  box-shadow:0 8px 18px rgba(151,121,67,0.07),0 0 18px rgba(255,255,255,0.55),inset 0 1px 0 rgba(255,255,255,0.94) !important;
}

body[data-theme="wedding"] .msg.sys .text{
  color:#6c5d46 !important;
  font-weight:700 !important;
}

body[data-theme="wedding"] :is(.msg.gmJudgeMsg,.msg.gmMoveMsg,.textOnlyMsg.gmJudgeMsg,.textOnlyMsg.gmMoveMsg){
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:2px 0 !important;
}

body[data-theme="wedding"] :is(.msg.gmJudgeMsg,.msg.gmMoveMsg,.textOnlyMsg.gmJudgeMsg,.textOnlyMsg.gmMoveMsg) .msgContent{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

body[data-theme="wedding"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text,
body[data-theme="wedding"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  width:auto !important;
  max-width:82% !important;
  min-height:0 !important;
  padding:7px 14px !important;
  border-radius:999px !important;
  font-size:13px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
}

body[data-theme="wedding"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text{
  border:1px solid var(--gmJudgeBorder) !important;
  background:var(--gmJudgeBg) !important;
  box-shadow:var(--gmJudgeShadow) !important;
  color:var(--gmJudgeColor) !important;
  text-shadow:var(--gmJudgeTextShadow) !important;
}

body[data-theme="wedding"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text::before{
  content:"✿";
  color:#b4913f;
  text-shadow:0 0 8px rgba(255,255,255,0.95);
}

body[data-theme="wedding"] :is(.msg.gmJudgeMsg,.textOnlyMsg.gmJudgeMsg) .text::after{
  content:"✿";
  color:#b4913f;
  text-shadow:0 0 8px rgba(255,255,255,0.95);
}

body[data-theme="wedding"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text{
  border:1px solid var(--gmMoveBorder) !important;
  background:var(--gmMoveBg) !important;
  box-shadow:var(--gmMoveShadow) !important;
  color:var(--gmMoveColor) !important;
  text-shadow:var(--gmMoveTextShadow) !important;
}

body[data-theme="wedding"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text::before{
  content:"✦";
  color:#b4913f;
  text-shadow:0 0 8px rgba(255,255,255,0.95);
}

body[data-theme="wedding"] :is(.msg.gmMoveMsg,.textOnlyMsg.gmMoveMsg) .text::after{
  content:"✦";
  color:#b4913f;
  text-shadow:0 0 8px rgba(255,255,255,0.95);
}