/* ============================================================
   玻璃拟物主题（商店购买「玻璃拟物主题」后生效）
   作用域：<html class="theme-glass">（登录页 + 大厅 + 弹窗 + 桌宠 + 管理后台）
   原则：位置 / 尺寸 / 文字一律不动，只换配色 / 字体 / 边框 / 圆角 / 阴影
   像素街机原样式在 hall.css / login.css / horn-bar.css，本文件按更高优先级覆盖
   风格：深空渐变光斑 + 半透明磨砂玻璃 + 细白描边 + 彩色霓光
   ============================================================ */

/* —— 玻璃拟物设计变量（深空底 + 玻璃面 + 霓光强调色）—— */
.theme-glass {
  --gl-text: #eef3ff;                      /* 主文字（亮白）*/
  --gl-text-soft: rgba(238, 243, 255, .62);/* 次要文字 */
  --gl-glass: rgba(255, 255, 255, .08);    /* 玻璃面 */
  --gl-glass-strong: rgba(255, 255, 255, .13); /* 深玻璃面（悬停/选中）*/
  --gl-glass-deep: rgba(28, 32, 64, .55);  /* 深色玻璃（弹窗/聊天窗）*/
  --gl-border: rgba(255, 255, 255, .22);   /* 玻璃描边 */
  --gl-border-strong: rgba(255, 255, 255, .38);
  --gl-blue: #6db3f8;
  --gl-blue-deep: #a8ccff;
  --gl-pink: #f78fb3;
  --gl-purple: #b892f8;
  --gl-green: #7fe0b2;
  --gl-yellow: #ffd97a;
  --gl-red: #ff8f8f;
  --gl-red-deep: #ffb3b3;
  --gl-font: "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", sans-serif;
  --gl-radius: 14px;                       /* 圆角（按钮）*/
  --gl-radius-lg: 22px;                    /* 大圆角（卡片/弹窗）*/
  --gl-blur: blur(14px) saturate(170%);    /* 磨砂玻璃 */
  --gl-blur-lg: blur(22px) saturate(180%); /* 深度磨砂（弹窗）*/
  --gl-shadow: 0 8px 32px rgba(8, 12, 36, .37);            /* 柔光投影 */
  --gl-inset: inset 0 1px 0 rgba(255, 255, 255, .18);      /* 顶部内高光 */
}

/* ===== 基础：深空渐变 + 彩色光斑 ===== */
.theme-glass body {
  font-family: var(--gl-font);
  color: var(--gl-text);
  background:
    radial-gradient(circle at 18% 14%, rgba(124, 92, 255, .32), transparent 45%),
    radial-gradient(circle at 84% 86%, rgba(56, 152, 255, .28), transparent 45%),
    radial-gradient(circle at 60% 40%, rgba(247, 143, 179, .12), transparent 55%),
    linear-gradient(160deg, #171c3a 0%, #241a42 50%, #0f1a33 100%);
  background-attachment: fixed;
}

/* 大厅背景视频：压暗成玻璃后的夜色（购入的背景不失效，只是换了氛围） */
.theme-glass #hallBgVideo {
  filter: brightness(.5) saturate(1.15);
  opacity: .55;
}

/* 星空像素点：深空正好配星空，保留不动 */

/* ===== 顶部栏：磨砂玻璃条 ===== */
.theme-glass header {
  background: rgba(255, 255, 255, .07);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  border-bottom: 1px solid var(--gl-border);
  box-shadow: var(--gl-shadow), var(--gl-inset);
}

.theme-glass .brand {
  color: var(--gl-text);
  text-shadow: 0 0 14px rgba(247, 143, 179, .75), 0 0 30px rgba(247, 143, 179, .4);
  animation: none;
}

.theme-glass .online-num {
  color: var(--gl-green);
  border: 1px solid rgba(127, 224, 178, .4);
  background: rgba(127, 224, 178, .12);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  box-shadow: 0 0 14px rgba(127, 224, 178, .25), var(--gl-inset);
  text-shadow: none;
  border-radius: var(--gl-radius);
}

.theme-glass .user-box .name {
  color: var(--gl-text);
  text-shadow: none;
}

.theme-glass .user-box .utag {
  border: 1px solid rgba(109, 179, 248, .45);
  background: rgba(109, 179, 248, .14);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  color: var(--gl-blue-deep);
  text-shadow: none;
  box-shadow: 0 0 14px rgba(109, 179, 248, .2), var(--gl-inset);
  border-radius: var(--gl-radius);
}

.theme-glass .coin-balance {
  border: 1px solid rgba(255, 217, 122, .45);
  background: rgba(255, 217, 122, .13);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  color: var(--gl-yellow);
  text-shadow: none;
  box-shadow: 0 0 14px rgba(255, 217, 122, .22), var(--gl-inset);
  border-radius: var(--gl-radius);
}

/* ===== 通用按钮：磨砂玻璃胶囊 ===== */
.theme-glass .pixel-btn {
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  color: var(--gl-text);
  text-shadow: none;
  box-shadow: var(--gl-shadow), var(--gl-inset);
}

.theme-glass .pixel-btn:active {
  box-shadow: 0 3px 14px rgba(8, 12, 36, .35), var(--gl-inset);
}

.theme-glass .checkin-btn {
  background: rgba(247, 143, 179, .22);
  color: #ffd3e2;
  text-shadow: none;
  border-color: rgba(247, 143, 179, .5);
  box-shadow: 0 0 18px rgba(247, 143, 179, .3), var(--gl-inset);
}

.theme-glass .checkin-btn:active {
  box-shadow: 0 0 10px rgba(247, 143, 179, .22), var(--gl-inset);
}

.theme-glass .pixel-btn.board-btn {
  background: rgba(184, 146, 248, .2);
  color: #dcc9ff;
  text-shadow: none;
  border-color: rgba(184, 146, 248, .5);
  box-shadow: 0 0 18px rgba(184, 146, 248, .28), var(--gl-inset);
}

.theme-glass .pixel-btn.board-btn:active {
  box-shadow: 0 0 10px rgba(184, 146, 248, .2), var(--gl-inset);
}

.theme-glass .logout-btn {
  background: var(--gl-glass);
  color: var(--gl-text-soft);
  text-shadow: none;
}

.theme-glass .logout-btn:active {
  box-shadow: 0 3px 14px rgba(8, 12, 36, .35), var(--gl-inset);
}

.theme-glass .music-btn {
  background: rgba(127, 224, 178, .2);
  color: #c8f4de;
  text-shadow: none;
  border-color: rgba(127, 224, 178, .5);
  box-shadow: 0 0 18px rgba(127, 224, 178, .26), var(--gl-inset);
}

.theme-glass .music-btn:active {
  box-shadow: 0 0 10px rgba(127, 224, 178, .2), var(--gl-inset);
}

.theme-glass .music-btn.off {
  background: var(--gl-glass);
  color: var(--gl-text-soft);
  text-shadow: none;
}

.theme-glass .music-btn.off:active {
  box-shadow: 0 3px 14px rgba(8, 12, 36, .35), var(--gl-inset);
}

.theme-glass .admin-btn {
  background: rgba(109, 179, 248, .2);
  color: #cfe5ff;
  text-shadow: none;
  border-color: rgba(109, 179, 248, .5);
  box-shadow: 0 0 18px rgba(109, 179, 248, .26), var(--gl-inset);
}

.theme-glass .admin-btn:active {
  box-shadow: 0 0 10px rgba(109, 179, 248, .2), var(--gl-inset);
}

/* ===== 导航 / 视图切换按钮：玻璃胶囊，选中态彩色玻璃 ===== */
.theme-glass .nav-btn {
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  color: var(--gl-text);
  text-shadow: none;
  box-shadow: var(--gl-shadow), var(--gl-inset);
}

.theme-glass .nav-btn:active {
  box-shadow: 0 3px 14px rgba(8, 12, 36, .35), var(--gl-inset);
}

.theme-glass .nav-btn.active {
  background: rgba(247, 143, 179, .24);
  color: #ffd3e2;
  text-shadow: none;
  border-color: rgba(247, 143, 179, .55);
  box-shadow: 0 0 20px rgba(247, 143, 179, .35), var(--gl-inset);
}

.theme-glass .view-switch button {
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  color: var(--gl-text-soft);
  text-shadow: none;
  box-shadow: var(--gl-shadow), var(--gl-inset);
}

.theme-glass .view-switch button:active {
  box-shadow: 0 3px 14px rgba(8, 12, 36, .35), var(--gl-inset);
}

.theme-glass .view-switch button.active {
  background: rgba(184, 146, 248, .24);
  color: #dcc9ff;
  text-shadow: none;
  border-color: rgba(184, 146, 248, .55);
  box-shadow: 0 0 20px rgba(184, 146, 248, .35), var(--gl-inset);
}

/* ===== 工具栏标题：霓光渐变下划线 ===== */
.theme-glass .section-title {
  color: var(--gl-text);
  text-shadow: none;
  background: linear-gradient(90deg, rgba(247, 143, 179, .35), rgba(184, 146, 248, .35), transparent) left bottom / 100% 3px no-repeat;
  border-radius: 2px;
  padding: 0 4px 4px;
}

.theme-glass .section-title::before {
  color: var(--gl-pink);
}

.theme-glass .empty {
  color: var(--gl-text-soft);
}

/* ===== 大厅框体 / 屏幕：玻璃机箱 + 雾面屏 ===== */
.theme-glass .cabinet {
  background: var(--gl-glass);
  -webkit-backdrop-filter: var(--gl-blur-lg);
  border: 1px solid var(--gl-border-strong);
  border-radius: var(--gl-radius-lg);
  box-shadow: var(--gl-shadow), var(--gl-inset), 0 0 44px rgba(124, 92, 255, .22);
}

.theme-glass .screen {
  background: rgba(16, 20, 44, .55);
  border: 1px solid var(--gl-border);
  border-radius: 16px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), inset 0 0 30px rgba(8, 12, 36, .5);
}

/* CRT 扫描线：换成玻璃顶部光泽 */
.theme-glass .screen::after {
  background: linear-gradient(180deg, rgba(255, 255, 255, .09), transparent 22%);
}

/* ===== 游戏卡片：磨砂玻璃卡 ===== */
.theme-glass .card {
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius-lg);
  box-shadow: var(--gl-shadow), var(--gl-inset);
}

.theme-glass .card:hover {
  border-color: var(--gl-border-strong);
  box-shadow: 0 12px 40px rgba(8, 12, 36, .45), var(--gl-inset), 0 0 26px rgba(109, 179, 248, .22);
}

.theme-glass .cover {
  border: 1px solid var(--gl-border);
  border-radius: 14px;
  background: rgba(255, 255, 255, .05);
  box-shadow: var(--gl-inset);
}

.theme-glass .fav-btn {
  border: 1px solid var(--gl-border);
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  color: var(--gl-text-soft);
  border-radius: var(--gl-radius);
  box-shadow: var(--gl-inset);
}

.theme-glass .fav-btn.on {
  color: var(--gl-pink);
  background: rgba(247, 143, 179, .18);
  text-shadow: 0 0 10px rgba(247, 143, 179, .6);
}

.theme-glass .card .gname {
  color: var(--gl-text);
  text-shadow: none;
}

.theme-glass .gup {
  color: var(--gl-blue-deep);
}

.theme-glass .card .gdesc {
  color: var(--gl-text-soft);
}

.theme-glass .card-right {
  border-left: 1px solid var(--gl-border);
}

/* 开始游戏按钮：蓝紫渐变亮按钮 */
.theme-glass .card .enter,
.theme-glass .detail .enter {
  background: linear-gradient(135deg, #6db3f8 0%, #b892f8 100%);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: var(--gl-radius);
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 22px rgba(109, 179, 248, .45), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .card .enter:active {
  box-shadow: 0 0 10px rgba(109, 179, 248, .3), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .detail .enter:active {
  box-shadow: 0 0 10px rgba(109, 179, 248, .3), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .enter .t-hover {
  color: #fff;
  text-shadow: 0 0 8px rgba(255, 255, 255, .95), 0 0 18px rgba(255, 255, 255, .7);
}

/* AI游戏 游玩方式标签：霓虹玻璃效果（玻璃面可读） */
.theme-glass .gplay {
  color: var(--gl-green);
  background: rgba(127, 224, 178, .16);
  border-color: rgba(127, 224, 178, .55);
  text-shadow: 0 0 10px rgba(127, 224, 178, .5);
}

.theme-glass .gplay.gplay-kbd {
  color: var(--gl-pink);
  background: rgba(247, 143, 179, .16);
  border-color: rgba(247, 143, 179, .55);
  text-shadow: 0 0 10px rgba(247, 143, 179, .5);
}

/* ===== 排行榜 ===== */
.theme-glass .lb-head {
  color: #ffd3e2;
  text-shadow: 0 0 12px rgba(247, 143, 179, .5);
}

.theme-glass .lb-switch .lb-p {
  color: var(--gl-text-soft);
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
}

.theme-glass .lb-switch .lb-p.on {
  color: var(--gl-text);
  background: var(--gl-glass-strong);
  border-color: rgba(184, 146, 248, .55);
  text-shadow: none;
  box-shadow: 0 0 14px rgba(184, 146, 248, .35), var(--gl-inset);
}

.theme-glass .lb-refresh {
  color: var(--gl-text-soft);
}

.theme-glass .lb-row.top1 {
  background: linear-gradient(90deg, rgba(247, 143, 179, .16), transparent);
}

.theme-glass .lb-row.top2 {
  background: linear-gradient(90deg, rgba(184, 146, 248, .14), transparent);
}

.theme-glass .lb-row.top3 {
  background: linear-gradient(90deg, rgba(109, 179, 248, .14), transparent);
}

.theme-glass .lb-rank {
  color: var(--gl-text-soft);
}

.theme-glass .lb-row.top1 .lb-rank {
  color: var(--gl-pink);
  text-shadow: 0 0 10px rgba(247, 143, 179, .6);
}

.theme-glass .lb-row.top2 .lb-rank {
  color: var(--gl-purple);
  text-shadow: 0 0 10px rgba(184, 146, 248, .55);
}

.theme-glass .lb-row.top3 .lb-rank {
  color: var(--gl-blue);
  text-shadow: 0 0 10px rgba(109, 179, 248, .55);
}

.theme-glass .lb-name {
  color: var(--gl-text);
}

.theme-glass .lb-score {
  color: var(--gl-blue-deep);
  text-shadow: none;
}

.theme-glass .lb-empty {
  color: var(--gl-text-soft);
}

.theme-glass .detail .lb-box {
  border-top: 1px solid var(--gl-border);
}

/* ===== 操控台装饰：玻璃手柄 ===== */
.theme-glass .deck {
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  border: 1px solid var(--gl-border);
  border-radius: 18px;
  box-shadow: var(--gl-shadow), var(--gl-inset);
}

.theme-glass .joy .j-base {
  background: var(--gl-glass-strong);
  border: 1px solid var(--gl-border);
  border-radius: 12px;
  box-shadow: var(--gl-inset);
}

.theme-glass .joy .j-stick {
  background: rgba(255, 255, 255, .25);
}

.theme-glass .joy .j-ball {
  background: radial-gradient(circle at 35% 30%, rgba(255, 255, 255, .85), rgba(247, 143, 179, .75));
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: 50%;
  box-shadow: 0 0 14px rgba(247, 143, 179, .5);
}

.theme-glass .coinslot {
  background: var(--gl-glass-strong);
  border: 1px solid var(--gl-border);
  border-radius: 10px;
  box-shadow: inset 0 2px 8px rgba(8, 12, 36, .5), var(--gl-inset);
}

.theme-glass .deck-label {
  color: var(--gl-blue-deep);
  text-shadow: 0 0 10px rgba(109, 179, 248, .45);
}

.theme-glass .deck-copy {
  color: var(--gl-text-soft);
}

.theme-glass .ybtn {
  background: radial-gradient(circle at 35% 30%, rgba(255, 255, 255, .5), rgba(255, 217, 122, .55));
  border: 1px solid rgba(255, 255, 255, .45);
  border-radius: 50%;
  box-shadow: 0 0 14px rgba(255, 217, 122, .4);
  color: #fff;
}

/* GBA 掌机造型：玻璃配色 */
.theme-glass .gba-dpad::before,
.theme-glass .gba-dpad::after {
  background: var(--gl-glass-strong);
  border: 1px solid var(--gl-border);
  box-shadow: var(--gl-inset);
}

.theme-glass .gba-dpad-dot {
  background: var(--gl-glass);
  border: 1px solid var(--gl-border);
  border-radius: 50%;
}

.theme-glass .gba-select,
.theme-glass .gba-start {
  background: var(--gl-glass-strong);
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  box-shadow: var(--gl-inset);
}

.theme-glass .gba-a {
  background: rgba(247, 143, 179, .55);
}

.theme-glass .gba-b {
  background: rgba(109, 179, 248, .55);
}

.theme-glass .gba-a,
.theme-glass .gba-b {
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: 50%;
  color: #fff;
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 12px rgba(255, 255, 255, .25), inset 0 1px 0 rgba(255, 255, 255, .4);
}

/* ===== 焦点视图：详情 + 缩略图 ===== */
.theme-glass .detail .gname {
  color: var(--gl-text);
  text-shadow: 0 0 14px rgba(184, 146, 248, .4);
}

.theme-glass .detail .gtag {
  color: var(--gl-blue-deep);
  border: 1px solid rgba(109, 179, 248, .5);
  border-radius: var(--gl-radius);
  background: rgba(109, 179, 248, .13);
  text-shadow: none;
  box-shadow: var(--gl-inset);
}

.theme-glass .detail .gdesc {
  color: var(--gl-text-soft);
}

.theme-glass .thumb {
  border: 1px solid var(--gl-border);
  border-radius: 14px;
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  box-shadow: var(--gl-inset);
}

.theme-glass .thumb img {
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 8px;
}

.theme-glass .thumb.active {
  box-shadow: 0 0 0 2px rgba(247, 143, 179, .75), 0 0 18px rgba(247, 143, 179, .4), var(--gl-inset);
}

.theme-glass .thumb.active::before {
  border-top-color: var(--gl-pink);
}

.theme-glass .thumb-arrow {
  border: 1px solid rgba(255, 217, 122, .5);
  border-radius: var(--gl-radius);
  background: rgba(255, 217, 122, .2);
  color: var(--gl-yellow);
  box-shadow: 0 0 14px rgba(255, 217, 122, .3), var(--gl-inset);
}

.theme-glass .thumb-arrow:active {
  box-shadow: 0 0 8px rgba(255, 217, 122, .2), var(--gl-inset);
}

.theme-glass .thumb-arrow:disabled {
  box-shadow: 0 0 14px rgba(255, 217, 122, .3), var(--gl-inset);
}

/* ===== 滚动条：半透明白玻璃 ===== */
/* 选择器同时带上 .theme-glass 自身：主题 class 挂在 <html> 上，只写 `.theme-glass *` 命中不到后代以外，
   窗口根滚动条 / 后台 iframe 根滚动条会漏掉主题配色（退回基础霓虹色） */
.theme-glass,
.theme-glass * {
  scrollbar-color: rgba(255, 255, 255, .35) rgba(255, 255, 255, .06);
}

.theme-glass::-webkit-scrollbar-track,
.theme-glass *::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, .06);
  border-left: 1px solid rgba(255, 255, 255, .12);
  box-shadow: none;
}

.theme-glass::-webkit-scrollbar-thumb,
.theme-glass *::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, .28);
  border: 1px solid rgba(255, 255, 255, .35);
  border-radius: 999px;
  box-shadow: none;
}

.theme-glass::-webkit-scrollbar-thumb:hover,
.theme-glass *::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, .4);
  box-shadow: none;
}

.theme-glass::-webkit-scrollbar-thumb:active,
.theme-glass *::-webkit-scrollbar-thumb:active {
  background: rgba(184, 146, 248, .55);
  box-shadow: none;
}

.theme-glass::-webkit-scrollbar-button,
.theme-glass *::-webkit-scrollbar-button {
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .25);
  border-radius: 6px;
  box-shadow: none;
}

.theme-glass::-webkit-scrollbar-corner,
.theme-glass *::-webkit-scrollbar-corner {
  background: rgba(255, 255, 255, .06);
}

/* ===== BGM / 签到悬停面板：玻璃浮层 ===== */
.theme-glass .bgm-hover,
.theme-glass .ck-hover {
  background: var(--gl-glass-deep);
  backdrop-filter: var(--gl-blur-lg);
  -webkit-backdrop-filter: var(--gl-blur-lg);
  border: 1px solid var(--gl-border-strong);
  border-radius: 18px;
  box-shadow: 0 16px 44px rgba(5, 8, 24, .55), var(--gl-inset);
}

.theme-glass .bgm-hover-title,
.theme-glass .ck-hover-title {
  color: var(--gl-blue-deep);
}

.theme-glass .bgm-hover-title span,
.theme-glass .ck-hover-title span {
  color: var(--gl-text-soft);
}

.theme-glass .bh-mute {
  border: 1px solid rgba(127, 224, 178, .45);
  background: rgba(127, 224, 178, .14);
  color: var(--gl-green);
  border-radius: var(--gl-radius);
}

.theme-glass .bh-mute.off {
  border-color: rgba(255, 143, 143, .45);
  background: rgba(255, 143, 143, .13);
  color: var(--gl-red);
}

.theme-glass .bh-item {
  background: rgba(255, 255, 255, .07);
  border: 1px solid var(--gl-border);
  border-radius: 12px;
}

.theme-glass .bh-item.using {
  border-color: rgba(247, 143, 179, .6);
  background: rgba(247, 143, 179, .13);
}

.theme-glass .bh-name {
  color: var(--gl-text);
}

.theme-glass .bh-btn.buy {
  background: rgba(255, 217, 122, .22);
  color: var(--gl-yellow);
  border-radius: var(--gl-radius);
}

.theme-glass .bh-btn.use {
  background: rgba(109, 179, 248, .2);
  color: var(--gl-blue-deep);
  border-radius: var(--gl-radius);
}

.theme-glass .bh-using {
  color: var(--gl-green);
}

.theme-glass .bh-empty {
  color: var(--gl-text-soft);
}

.theme-glass .ck-hover-status,
.theme-glass .ckh-task {
  color: var(--gl-text);
  background: rgba(255, 255, 255, .07);
  border-radius: 12px;
}

.theme-glass .ck-hover-tasks-title {
  color: var(--gl-text-soft);
}

.theme-glass .ckh-task.loading {
  color: var(--gl-text-soft);
}

.theme-glass .ckh-task-state {
  color: var(--gl-green);
}

.theme-glass .ckh-done,
.theme-glass .ckh-task.done,
.theme-glass .ckh-task.done .ckh-task-state {
  color: rgba(238, 243, 255, .4);
}

/* ===== 弹窗骨架：深色磨砂玻璃 + 顶部霓光条 ===== */
.theme-glass .board-mask {
  background: rgba(5, 8, 24, .55);
}

.theme-glass .board-panel {
  position: relative;
  background: var(--gl-glass-deep);
  backdrop-filter: var(--gl-blur-lg);
  -webkit-backdrop-filter: var(--gl-blur-lg);
  border: 1px solid var(--gl-border-strong);
  border-radius: var(--gl-radius-lg);
  box-shadow: 0 24px 60px rgba(5, 8, 24, .6), var(--gl-inset), 0 0 44px rgba(124, 92, 255, .18);
}

/* 顶部一条蓝粉霓光（玻璃上的光边） */
.theme-glass .board-panel::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 18px;
  right: 18px;
  height: 2px;
  transform: none;
  background: linear-gradient(90deg, transparent, #6db3f8, #f78fb3, #b892f8, transparent);
  border-radius: 999px;
  box-shadow: 0 0 12px rgba(109, 179, 248, .8);
  pointer-events: none;
}

.theme-glass .board-title {
  color: var(--gl-text);
  text-shadow: 0 0 14px rgba(184, 146, 248, .5);
}

.theme-glass .board-sub {
  color: var(--gl-text-soft);
  text-shadow: none;
}

.theme-glass .board-close {
  border: 1px solid rgba(255, 143, 143, .5);
  border-radius: var(--gl-radius);
  background: rgba(255, 143, 143, .18);
  color: var(--gl-red-deep);
  box-shadow: 0 0 14px rgba(255, 143, 143, .3), var(--gl-inset);
}

.theme-glass .board-close:active {
  box-shadow: 0 0 8px rgba(255, 143, 143, .2), var(--gl-inset);
}

/* ===== 输入框：玻璃内嵌 ===== */
.theme-glass .board-input,
.theme-glass .tag-input,
.theme-glass #hornContent,
.theme-glass .field input {
  background: rgba(255, 255, 255, .09);
  color: var(--gl-text);
  border: 1px solid var(--gl-border);
  border-radius: 12px;
  box-shadow: inset 0 2px 8px rgba(8, 12, 36, .35);
  caret-color: var(--gl-blue);
}

.theme-glass .board-input:focus,
.theme-glass .tag-input:focus,
.theme-glass #hornContent:focus,
.theme-glass .field input:focus {
  outline: none;
  border-color: rgba(109, 179, 248, .7);
  box-shadow: inset 0 2px 8px rgba(8, 12, 36, .35), 0 0 0 3px rgba(109, 179, 248, .22);
}

/* ===== 留言板 ===== */
.theme-glass .board-send {
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: var(--gl-radius);
  background: linear-gradient(135deg, #6db3f8, #b892f8);
  color: #fff;
  font-weight: 700;
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 20px rgba(109, 179, 248, .4), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .board-send:active {
  box-shadow: 0 0 10px rgba(109, 179, 248, .28), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .msg-item {
  background: rgba(255, 255, 255, .07);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  border: 1px solid var(--gl-border);
  border-radius: 16px;
  box-shadow: var(--gl-inset);
}

.theme-glass .msg-user {
  color: var(--gl-blue-deep);
  text-shadow: none;
}

.theme-glass .msg-tag {
  border: 1px solid rgba(109, 179, 248, .5);
  border-radius: var(--gl-radius);
  color: var(--gl-blue-deep);
  text-shadow: none;
  box-shadow: none;
}

.theme-glass .msg-time {
  color: var(--gl-text-soft);
}

.theme-glass .msg-reply,
.theme-glass .msg-del,
.theme-glass .board-replycancel {
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  background: var(--gl-glass);
  color: var(--gl-text-soft);
  box-shadow: var(--gl-inset);
}

.theme-glass .msg-reply:hover {
  color: var(--gl-blue-deep);
}

.theme-glass .msg-del:hover,
.theme-glass .board-replycancel:hover {
  color: var(--gl-red-deep);
}

.theme-glass .msg-replyto {
  color: var(--gl-blue-deep);
  text-shadow: none;
}

.theme-glass .board-replybar {
  background: rgba(109, 179, 248, .12);
  border: 1px solid rgba(109, 179, 248, .45);
  border-radius: 12px;
  color: var(--gl-blue-deep);
}

.theme-glass .board-replybar b {
  color: var(--gl-yellow);
}

.theme-glass .msg-content {
  color: var(--gl-text);
}

.theme-glass .board-status {
  color: var(--gl-text-soft);
}

/* ===== 签到面板 ===== */
.theme-glass .ck-hero {
  border: 1px solid rgba(255, 217, 122, .4);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255, 217, 122, .12), rgba(247, 143, 179, .1));
}

.theme-glass .ck-reward {
  color: var(--gl-yellow);
  text-shadow: 0 0 12px rgba(255, 217, 122, .5);
}

.theme-glass .ck-status {
  color: var(--gl-text);
}

.theme-glass .ck-streak {
  color: var(--gl-blue-deep);
  border: 1px solid rgba(109, 179, 248, .5);
  border-radius: var(--gl-radius);
  background: rgba(109, 179, 248, .13);
  text-shadow: none;
  box-shadow: var(--gl-inset);
}

.theme-glass .ck-next {
  color: var(--gl-green);
  border: 1px dashed rgba(127, 224, 178, .55);
  border-radius: var(--gl-radius);
  background: rgba(127, 224, 178, .08);
  text-shadow: none;
}

.theme-glass .ck-lottery {
  border: 1px solid var(--gl-border);
  border-radius: 16px;
  background: rgba(255, 255, 255, .07);
}

.theme-glass .ck-lottery-title {
  color: var(--gl-purple);
  text-shadow: 0 0 12px rgba(184, 146, 248, .5);
}

.theme-glass .ck-lottery-num {
  color: var(--gl-text);
}

.theme-glass .ck-lottery-go {
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: var(--gl-radius);
  background: linear-gradient(135deg, #ffd97a, #f78fb3);
  color: #fff;
  font-weight: 700;
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 16px rgba(255, 217, 122, .4), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .ck-lottery-tip,
.theme-glass .ck-tip {
  color: var(--gl-text-soft);
}

.theme-glass .ck-btn:disabled {
  background: rgba(255, 255, 255, .06);
  color: rgba(238, 243, 255, .38);
  text-shadow: none;
  box-shadow: none;
}

.theme-glass .admin-ck {
  background: rgba(255, 217, 122, .2);
  color: var(--gl-yellow);
  text-shadow: none;
  border-color: rgba(255, 217, 122, .5);
  box-shadow: 0 0 16px rgba(255, 217, 122, .3), var(--gl-inset);
}

.theme-glass .admin-ck:active {
  box-shadow: 0 0 8px rgba(255, 217, 122, .2), var(--gl-inset);
}

.theme-glass .ck-tasks {
  border-top: 1px solid var(--gl-border);
}

.theme-glass .ck-tasks-title {
  color: var(--gl-blue-deep);
  text-shadow: none;
}

.theme-glass .ck-task-item {
  border: 1px solid var(--gl-border);
  border-radius: 14px;
  background: rgba(255, 255, 255, .07);
}

.theme-glass .ck-task-item.done {
  border-color: rgba(127, 224, 178, .5);
  background: rgba(127, 224, 178, .1);
}

.theme-glass .ck-task-cover img {
  border: 1px solid var(--gl-border);
  border-radius: 10px;
}

.theme-glass .ck-task-no {
  color: var(--gl-pink);
  text-shadow: none;
}

.theme-glass .ck-task-state {
  color: var(--gl-green);
}

.theme-glass .ck-task-go {
  color: #fff;
  background: linear-gradient(135deg, #6db3f8, #b892f8);
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: var(--gl-radius);
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 16px rgba(109, 179, 248, .4), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .ck-task-empty {
  color: var(--gl-text-soft);
}

/* ===== 钱库商店 ===== */
.theme-glass .shop-balance {
  color: var(--gl-text);
}

.theme-glass .shop-balance b {
  color: var(--gl-yellow);
  text-shadow: 0 0 12px rgba(255, 217, 122, .5);
}

.theme-glass .shop-tab {
  color: var(--gl-text-soft);
  background: var(--gl-glass);
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
}

.theme-glass .shop-tab:hover {
  color: var(--gl-text);
  border-color: var(--gl-border-strong);
}

.theme-glass .shop-tab.active {
  color: var(--gl-text);
  background: var(--gl-glass-strong);
  border-color: rgba(184, 146, 248, .6);
  text-shadow: none;
  box-shadow: 0 0 14px rgba(184, 146, 248, .35), var(--gl-inset);
}

.theme-glass .shop-item {
  border: 1px solid var(--gl-border);
  border-radius: 18px;
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  box-shadow: var(--gl-shadow), var(--gl-inset);
}

.theme-glass .si-name {
  color: var(--gl-text);
}

.theme-glass .si-desc {
  color: var(--gl-text-soft);
}

.theme-glass .si-price {
  color: var(--gl-yellow);
  text-shadow: none;
}

.theme-glass .si-price.free {
  color: var(--gl-green);
  text-shadow: none;
}

.theme-glass .si-btn {
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  background: var(--gl-glass);
  color: var(--gl-text-soft);
  box-shadow: var(--gl-inset);
}

.theme-glass .si-btn.buy {
  background: rgba(127, 224, 178, .22);
  color: var(--gl-green);
  border-color: rgba(127, 224, 178, .5);
  box-shadow: 0 0 14px rgba(127, 224, 178, .3), var(--gl-inset);
}

.theme-glass .si-btn.use {
  background: rgba(109, 179, 248, .22);
  color: var(--gl-blue-deep);
  border-color: rgba(109, 179, 248, .5);
  box-shadow: 0 0 14px rgba(109, 179, 248, .3), var(--gl-inset);
}

.theme-glass .si-btn.using {
  background: rgba(247, 143, 179, .22);
  color: #ffd3e2;
  border-color: rgba(247, 143, 179, .55);
  box-shadow: 0 0 14px rgba(247, 143, 179, .3), var(--gl-inset);
}

.theme-glass .shop-empty {
  border: 1px dashed rgba(255, 217, 122, .45);
  border-radius: 18px;
  background: rgba(255, 217, 122, .06);
}

.theme-glass .shop-empty .se-text {
  color: var(--gl-yellow);
  text-shadow: none;
}

.theme-glass .shop-empty .se-sub {
  color: var(--gl-text-soft);
}

/* ===== 我的标签 / 修改密码 ===== */
.theme-glass .tag-tip2 {
  color: var(--gl-text-soft);
}

.theme-glass .tag-cell {
  border: 1px solid var(--gl-border);
  border-radius: 16px;
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  box-shadow: var(--gl-inset);
}

.theme-glass .tag-cell.using {
  box-shadow: 0 0 0 2px rgba(247, 143, 179, .7), 0 0 18px rgba(247, 143, 179, .3);
}

.theme-glass .tag-cell .t-name {
  text-shadow: 0 0 10px rgba(255, 255, 255, .35);
}

.theme-glass .tag-cell.locked .t-name {
  color: rgba(238, 243, 255, .4);
}

.theme-glass .tag-cell .t-price {
  color: var(--gl-text-soft);
}

.theme-glass .tag-cell.locked .t-price {
  color: var(--gl-yellow);
}

.theme-glass .tag-cell .t-mark {
  color: var(--gl-green);
}

.theme-glass .tag-sec-title {
  color: #ffd3e2;
  text-shadow: 0 0 12px rgba(247, 143, 179, .5);
}

.theme-glass .tag-err {
  color: var(--gl-red);
  text-shadow: none;
}

.theme-glass .tag-divider {
  border-top: 1px solid var(--gl-border);
}

/* ===== 自定义游戏（ROM）弹窗 ===== */
.theme-glass .rom-upload {
  border: 1px dashed rgba(109, 179, 248, .55);
  border-radius: 16px;
  background: rgba(109, 179, 248, .08);
  color: var(--gl-blue-deep);
  box-shadow: none;
}

.theme-glass .rom-upload .sub {
  color: var(--gl-text-soft);
}

.theme-glass .rom-tip {
  color: var(--gl-text-soft);
}

.theme-glass .rom-tip b {
  color: var(--gl-yellow);
}

.theme-glass .rom-empty {
  color: var(--gl-text-soft);
}

.theme-glass .rom-item {
  border: 1px solid var(--gl-border);
  border-radius: 16px;
  background: rgba(255, 255, 255, .07);
}

.theme-glass .rom-item .ri-name {
  color: var(--gl-text);
}

.theme-glass .rom-item .ri-meta {
  color: var(--gl-text-soft);
}

.theme-glass .rom-item .ri-btn {
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: var(--gl-radius);
  background: linear-gradient(135deg, #6db3f8, #b892f8);
  color: #fff;
  font-weight: 700;
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 14px rgba(109, 179, 248, .4), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .rom-item .ri-btn:active {
  box-shadow: 0 0 8px rgba(109, 179, 248, .25), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .rom-item .ri-btn.del {
  background: linear-gradient(135deg, #ff8f8f, #f78fb3);
  color: #fff;
  box-shadow: 0 0 14px rgba(255, 143, 143, .4), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .rom-item .ri-btn.del:active {
  box-shadow: 0 0 8px rgba(255, 143, 143, .25), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .rom-status {
  color: var(--gl-blue-deep);
}

.theme-glass .gba-custom-card {
  background: var(--gl-glass);
}

.theme-glass .gba-custom-card .cover {
  background: rgba(255, 255, 255, .05);
}

.theme-glass .gba-custom-card .cover .cup {
  color: var(--gl-blue);
  text-shadow: none;
}

/* ===== Toast 提示 ===== */
.theme-glass .toast {
  border: 1px solid var(--gl-border-strong);
  border-radius: var(--gl-radius);
  color: var(--gl-text);
  background: var(--gl-glass-deep);
  backdrop-filter: var(--gl-blur-lg);
  -webkit-backdrop-filter: var(--gl-blur-lg);
  box-shadow: 0 12px 32px rgba(5, 8, 24, .5), var(--gl-inset);
  text-shadow: none;
}

.theme-glass .toast.success {
  background: rgba(127, 224, 178, .2);
  border-color: rgba(127, 224, 178, .55);
  color: #c8f4de;
  text-shadow: none;
  box-shadow: 0 0 20px rgba(127, 224, 178, .35), var(--gl-inset);
}

.theme-glass .toast.error {
  background: rgba(255, 143, 143, .18);
  border-color: rgba(255, 143, 143, .55);
  color: var(--gl-red-deep);
  box-shadow: 0 0 20px rgba(255, 143, 143, .35), var(--gl-inset);
}

/* ===== 通用确认弹窗 ===== */
.theme-glass .confirm-content {
  color: var(--gl-text);
}

.theme-glass .confirm-actions .btn-no {
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  background: var(--gl-glass);
  color: var(--gl-text-soft);
  box-shadow: var(--gl-inset);
}

.theme-glass .confirm-actions .btn-no:hover {
  color: var(--gl-red-deep);
}

.theme-glass .confirm-actions .btn-no:active {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18);
}

/* ===== 登录页 ===== */
.theme-glass .floor {
  background: linear-gradient(180deg, rgba(36, 26, 66, .85) 0%, rgba(23, 28, 58, .9) 100%);
  border-top: 1px solid rgba(255, 255, 255, .25);
  box-shadow: 0 -8px 32px rgba(124, 92, 255, .25);
}

.theme-glass .floor::before {
  background: repeating-linear-gradient(90deg, transparent 0 30px, rgba(255, 255, 255, .07) 30px 32px);
}

.theme-glass .cabinet {
  background: var(--gl-glass);
  -webkit-backdrop-filter: var(--gl-blur-lg);
  border: 1px solid var(--gl-border-strong);
  border-radius: 26px;
  box-shadow: 0 20px 50px rgba(5, 8, 24, .55), var(--gl-inset), 0 0 50px rgba(124, 92, 255, .25);
}

/* 框体顶部螺丝：改成发光小圆钮 */
.theme-glass .cabinet::before,
.theme-glass .cabinet::after {
  background: radial-gradient(circle at 35% 35%, #fff, #6db3f8);
  border-radius: 50%;
  box-shadow: 0 0 10px rgba(109, 179, 248, .9);
}

.theme-glass .screen {
  background: rgba(16, 20, 44, .6);
  border: 1px solid var(--gl-border);
  border-radius: 16px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), inset 0 0 30px rgba(8, 12, 36, .55);
}

.theme-glass .screen::after {
  background: linear-gradient(180deg, rgba(255, 255, 255, .09), transparent 22%);
}

.theme-glass .marquee {
  color: #ffd3e2;
  text-shadow: 0 0 14px rgba(247, 143, 179, .75), 0 0 30px rgba(247, 143, 179, .4);
}

.theme-glass .coin {
  color: var(--gl-blue-deep);
  text-shadow: 0 0 10px rgba(109, 179, 248, .7);
}

.theme-glass .tabs button {
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  background: var(--gl-glass);
  color: var(--gl-text-soft);
  text-shadow: none;
  box-shadow: var(--gl-inset);
}

.theme-glass .tabs button:active {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18);
}

.theme-glass .tabs button.active {
  color: #fff;
  background: linear-gradient(135deg, rgba(109, 179, 248, .4), rgba(184, 146, 248, .4));
  border-color: rgba(255, 255, 255, .45);
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 18px rgba(109, 179, 248, .4), inset 0 1px 0 rgba(255, 255, 255, .3);
}

.theme-glass .field label {
  color: var(--gl-blue-deep);
  text-shadow: 0 0 10px rgba(109, 179, 248, .4);
}

.theme-glass .captcha-box {
  border: 1px solid var(--gl-border);
  border-radius: 14px;
  background: rgba(255, 255, 255, .07);
  box-shadow: var(--gl-inset);
}

.theme-glass .captcha-tip {
  color: var(--gl-text-soft);
}

.theme-glass .submit {
  background: linear-gradient(135deg, #6db3f8 0%, #b892f8 100%);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: var(--gl-radius);
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 24px rgba(109, 179, 248, .5), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .submit:active {
  box-shadow: 0 0 12px rgba(109, 179, 248, .3), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .err {
  color: var(--gl-red);
  text-shadow: none;
}

.theme-glass .site-footer a {
  color: var(--gl-text-soft);
}

.theme-glass .site-footer a:hover {
  color: var(--gl-text);
}

/* 内联彩色文字（BGM 名 / 标签名）：深色玻璃背景上原本的霓虹色即可读，无需修正 */

/* ===== 全服喇叭：发送按钮 + 发送弹窗 ===== */
.theme-glass #hornSendBtn {
  border-left: 1px solid var(--gl-border);
  background: rgba(255, 255, 255, .1);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  color: var(--gl-blue-deep);
}

.theme-glass #hornSendBtn:hover {
  background: rgba(255, 255, 255, .16);
}

.theme-glass #hornBar.horn-dark #hornSendBtn {
  background: rgba(255, 255, 255, .1);
}

.theme-glass #hornBar.horn-dark #hornSendBtn:hover {
  background: rgba(255, 255, 255, .16);
}

.theme-glass #hornDialogMask {
  background: rgba(5, 8, 24, .6);
}

.theme-glass #hornDialog {
  background: var(--gl-glass-deep);
  backdrop-filter: var(--gl-blur-lg);
  -webkit-backdrop-filter: var(--gl-blur-lg);
  border: 1px solid var(--gl-border-strong);
  border-radius: var(--gl-radius-lg);
  color: var(--gl-text);
  box-shadow: 0 20px 50px rgba(5, 8, 24, .6), var(--gl-inset);
}

.theme-glass #hornDialog h3 {
  color: #ffd3e2;
}

.theme-glass .horn-style-item {
  border: 1px solid var(--gl-border);
  border-radius: 12px;
}

.theme-glass .horn-style-item.sel {
  border-color: rgba(247, 143, 179, .65);
  background: rgba(247, 143, 179, .13);
}

.theme-glass .horn-style-item .hs-count {
  color: var(--gl-yellow);
}

.theme-glass .horn-style-item.zero .hs-count {
  color: rgba(238, 243, 255, .4);
}

.theme-glass .horn-style-item .hs-buy {
  border: 1px solid rgba(255, 217, 122, .55);
  border-radius: var(--gl-radius);
  background: rgba(255, 217, 122, .22);
  color: var(--gl-yellow);
  box-shadow: 0 0 12px rgba(255, 217, 122, .3), var(--gl-inset);
}

.theme-glass #hornCounter {
  color: var(--gl-text-soft);
}

.theme-glass #hornCancelBtn {
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  background: var(--gl-glass);
  color: var(--gl-text-soft);
  box-shadow: var(--gl-inset);
}

.theme-glass #hornSendOkBtn {
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: var(--gl-radius);
  background: linear-gradient(135deg, #6db3f8, #b892f8);
  color: #fff;
  font-weight: 700;
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 16px rgba(109, 179, 248, .4), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass #hornDialogErr {
  color: var(--gl-red);
}

/* ============================================================
   桌宠（agent-pet）：本体 SVG 改成半透明玻璃娃娃，气泡 / 聊天窗换磨砂玻璃
   ============================================================ */

/* —— 本体 SVG：玻璃机身 + 白描边 —— */
.theme-glass .apet .apet-head,
.theme-glass .apet .apet-body {
  fill: rgba(214, 224, 255, .38);
  stroke: rgba(255, 255, 255, .85);
}

.theme-glass .apet .apet-ear {
  fill: rgba(214, 224, 255, .38);
  stroke: rgba(255, 255, 255, .85);
}

/* 天线杆：半透明白 */
.theme-glass .apet .apet-antenna line {
  stroke: rgba(255, 255, 255, .85);
}

/* 天线灯：暖黄发光 */
.theme-glass .apet .apet-bulb {
  fill: #ffd97a;
  stroke: rgba(255, 255, 255, .9);
  stroke-width: 1.5;
}

/* 眼睛：绿色圆眼 → 亮青圆眼（保留白色高光） */
.theme-glass .apet .apet-eyes circle:nth-of-type(1),
.theme-glass .apet .apet-eyes circle:nth-of-type(2) {
  fill: #7fe0b2;
}

/* 腮红：换成霓粉 */
.theme-glass .apet .apet-blush {
  fill: #f78fb3;
}

/* 嘴：换成霓粉 */
.theme-glass .apet .apet-mouth {
  stroke: #f78fb3;
}

/* —— 待机气泡：磨砂玻璃胶囊 —— */
.theme-glass .apet-bubble {
  background: var(--gl-glass-deep);
  backdrop-filter: var(--gl-blur-lg);
  -webkit-backdrop-filter: var(--gl-blur-lg);
  border: 1px solid var(--gl-border-strong);
  border-radius: 14px;
  color: var(--gl-text);
  font-family: var(--gl-font);
  letter-spacing: .5px;
  box-shadow: 0 10px 28px rgba(5, 8, 24, .5), var(--gl-inset);
}

.theme-glass .apet-bubble::after {
  border-top-color: var(--gl-border-strong);
}

/* —— 隐藏按钮：红玻璃胶囊 —— */
.theme-glass .apet-close {
  border: 1px solid rgba(255, 143, 143, .55);
  border-radius: var(--gl-radius);
  background: rgba(255, 143, 143, .28);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  color: #ffd6d6;
  font-family: var(--gl-font);
  box-shadow: 0 0 14px rgba(255, 143, 143, .4), var(--gl-inset);
}

.theme-glass .apet-close:active {
  box-shadow: 0 0 8px rgba(255, 143, 143, .25), var(--gl-inset);
}

/* —— 还原按钮：蓝紫渐变发光圆 —— */
.theme-glass .apet-restore {
  border: 1px solid rgba(255, 255, 255, .55);
  background: linear-gradient(135deg, rgba(109, 179, 248, .75), rgba(184, 146, 248, .75));
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  color: #fff;
  font-family: var(--gl-font);
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 22px rgba(109, 179, 248, .55), inset 0 1px 0 rgba(255, 255, 255, .4);
}

/* ===== 桌宠聊天窗口：深色磨砂玻璃 ===== */
.theme-glass .apet-chat-overlay {
  background: rgba(5, 8, 24, .58);
}

.theme-glass .apet-chat-win {
  background: var(--gl-glass-deep);
  backdrop-filter: var(--gl-blur-lg);
  -webkit-backdrop-filter: var(--gl-blur-lg);
  border: 1px solid var(--gl-border-strong);
  border-radius: var(--gl-radius-lg);
  box-shadow: 0 24px 60px rgba(5, 8, 24, .6), var(--gl-inset);
}

.theme-glass .apet-chat-head {
  background: rgba(255, 255, 255, .1);
  border-bottom: 1px solid var(--gl-border);
}

.theme-glass .apet-chat-title {
  font-family: var(--gl-font);
  color: var(--gl-text);
  text-shadow: 0 0 12px rgba(184, 146, 248, .5);
}

.theme-glass .apet-chat-close {
  border: 1px solid rgba(255, 143, 143, .55);
  border-radius: var(--gl-radius);
  background: rgba(255, 143, 143, .24);
  color: #ffd6d6;
  font-family: var(--gl-font);
  box-shadow: 0 0 12px rgba(255, 143, 143, .35), var(--gl-inset);
}

.theme-glass .apet-chat-close:active {
  box-shadow: 0 0 8px rgba(255, 143, 143, .22), var(--gl-inset);
}

.theme-glass .apet-chat-msgs {
  background: transparent;
}

/* bot 气泡：蓝玻璃圆角 */
.theme-glass .apet-chat-msg.bot .apet-chat-bubble {
  background: rgba(109, 179, 248, .16);
  border: 1px solid rgba(109, 179, 248, .45);
  border-radius: 16px 16px 16px 4px;
  color: var(--gl-text);
  font-family: var(--gl-font);
  box-shadow: var(--gl-inset);
}

/* 用户气泡：粉玻璃圆角 */
.theme-glass .apet-chat-msg.user .apet-chat-bubble {
  background: rgba(247, 143, 179, .16);
  border: 1px solid rgba(247, 143, 179, .45);
  border-radius: 16px 16px 4px 16px;
  color: var(--gl-text);
  font-family: var(--gl-font);
  box-shadow: var(--gl-inset);
}

.theme-glass .apet-chat-foot {
  background: rgba(255, 255, 255, .07);
  border-top: 1px solid var(--gl-border);
}

.theme-glass .apet-chat-foot input {
  border: 1px solid var(--gl-border);
  border-radius: 12px;
  background: rgba(255, 255, 255, .09);
  color: var(--gl-text);
  font-family: var(--gl-font);
}

.theme-glass .apet-chat-foot input:focus {
  border-color: rgba(109, 179, 248, .7);
  box-shadow: 0 0 0 3px rgba(109, 179, 248, .22);
}

.theme-glass .apet-chat-foot input::placeholder {
  color: rgba(238, 243, 255, .45);
}

.theme-glass .apet-chat-send {
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: var(--gl-radius);
  background: linear-gradient(135deg, #6db3f8, #b892f8);
  color: #fff;
  font-family: var(--gl-font);
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
  box-shadow: 0 0 16px rgba(109, 179, 248, .45), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .apet-chat-send:active {
  box-shadow: 0 0 8px rgba(109, 179, 248, .25), inset 0 1px 0 rgba(255, 255, 255, .4);
}

/* —— 桌宠弹窗双 tab + 消息通知列表 —— */
.theme-glass .apet-tabs {
  background: transparent;
}

.theme-glass .apet-tab {
  border: 1px solid var(--gl-border);
  border-radius: 10px;
  background: var(--gl-glass);
  color: var(--gl-text-soft);
  font-family: var(--gl-font);
  backdrop-filter: blur(8px);
}

.theme-glass .apet-tab.active {
  border-color: var(--gl-border-strong);
  background: var(--gl-glass-strong);
  color: var(--gl-text);
  box-shadow: 0 0 12px rgba(109, 179, 248, .2);
}

.theme-glass .apet-nt-list {
  background: transparent;
}

.theme-glass .apet-nt-item {
  border: 1px solid var(--gl-border);
  border-radius: 12px;
  background: var(--gl-glass);
  box-shadow: none;
}

.theme-glass .apet-nt-item.unread {
  border-color: rgba(168, 204, 255, .55);
  box-shadow: 0 0 12px rgba(109, 179, 248, .18);
}

.theme-glass .apet-nt-title {
  color: var(--gl-blue-deep);
  font-family: var(--gl-font);
}

.theme-glass .apet-nt-time,
.theme-glass .apet-nt-from {
  font-family: var(--gl-font);
  color: var(--gl-text-soft);
}

.theme-glass .apet-nt-body {
  color: var(--gl-text);
  font-family: var(--gl-font);
}

.theme-glass .apet-nt-empty {
  font-family: var(--gl-font);
  color: var(--gl-text-soft);
}

.theme-glass .apet-nt-foot {
  background: rgba(28, 32, 64, .35);
  border-top: 1px solid var(--gl-border);
  font-family: var(--gl-font);
  color: var(--gl-text-soft);
}

/* ============================================================
   管理后台（admin.html）：深空玻璃控制台
   header / .brand / .card / .toast 已由上方通用规则覆盖，此处补后台专属
   ============================================================ */

/* —— 副标题「管 理 后 台」：去闪烁，换蓝光 —— */
.theme-glass .brand span {
  color: var(--gl-blue-deep);
  text-shadow: 0 0 10px rgba(109, 179, 248, .6);
  animation: none;
}

/* —— 顶部标签页：玻璃胶囊 —— */
.theme-glass .adm-tab {
  color: var(--gl-text-soft);
  background: var(--gl-glass);
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  box-shadow: var(--gl-inset);
}

.theme-glass .adm-tab:hover {
  color: var(--gl-text);
  border-color: var(--gl-border-strong);
}

.theme-glass .adm-tab.active {
  color: #fff;
  font-weight: 700;
  background: linear-gradient(135deg, rgba(109, 179, 248, .45), rgba(184, 146, 248, .45));
  border-color: rgba(255, 255, 255, .45);
  box-shadow: 0 0 18px rgba(109, 179, 248, .4), inset 0 1px 0 rgba(255, 255, 255, .3);
}

/* —— 右上角：在线管理员 / 返回大厅 —— */
.theme-glass .adm-user {
  color: var(--gl-green);
}

.theme-glass .adm-back {
  color: var(--gl-blue-deep);
  background: rgba(109, 179, 248, .14);
  border: 1px solid rgba(109, 179, 248, .5);
  border-radius: var(--gl-radius);
  box-shadow: var(--gl-inset);
}

.theme-glass .adm-back:hover {
  background: linear-gradient(135deg, #6db3f8, #b892f8);
  color: #fff;
}

/* —— 面板：磨砂玻璃 —— */
.theme-glass .panel {
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius-lg);
  box-shadow: var(--gl-shadow), var(--gl-inset);
}

.theme-glass .toolbar-label {
  color: var(--gl-text-soft);
}

.theme-glass .toolbar-hint {
  color: var(--gl-text-soft);
}

/* —— 输入框 / 下拉框：玻璃内嵌 —— */
.theme-glass input[type="text"],
.theme-glass input[type="number"],
.theme-glass select {
  color: var(--gl-text);
  background: rgba(255, 255, 255, .09);
  border: 1px solid var(--gl-border);
  border-radius: 12px;
  font-family: var(--gl-font);
}

/* 下拉面板（option）修复：select 文字是亮白，但系统下拉面板默认白底，
   文字继承亮白会看不见选项 —— 显式给 option 深色文字 + 白底 */
.theme-glass select option {
  color: #1b2030;
  background: #ffffff;
}

.theme-glass input[type="text"]:focus,
.theme-glass input[type="number"]:focus,
.theme-glass select:focus {
  border-color: rgba(109, 179, 248, .7);
}

.theme-glass input::placeholder {
  color: rgba(238, 243, 255, .45);
}

/* —— 按钮：玻璃 / 彩色渐变 —— */
.theme-glass .btn {
  color: var(--gl-text);
  background: var(--gl-glass);
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  box-shadow: var(--gl-inset);
}

.theme-glass .btn:hover {
  color: var(--gl-blue-deep);
  border-color: rgba(109, 179, 248, .6);
  background: rgba(109, 179, 248, .14);
}

.theme-glass .btn.primary {
  color: #fff;
  font-weight: 700;
  background: linear-gradient(135deg, #6db3f8, #b892f8);
  border-color: rgba(255, 255, 255, .5);
  text-shadow: 0 1px 2px rgba(23, 28, 58, .5);
}

.theme-glass .btn.primary:hover {
  box-shadow: 0 0 18px rgba(109, 179, 248, .5), inset 0 1px 0 rgba(255, 255, 255, .4);
}

.theme-glass .btn.danger {
  color: var(--gl-red-deep);
  border-color: rgba(255, 143, 143, .5);
  background: rgba(255, 143, 143, .12);
}

.theme-glass .btn.danger:hover {
  background: rgba(255, 143, 143, .3);
  color: #fff;
}

/* —— 表格：玻璃底亮字 —— */
.theme-glass th,
.theme-glass td {
  border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.theme-glass th {
  color: var(--gl-blue-deep);
  letter-spacing: 1px;
  background: rgba(255, 255, 255, .08);
  font-family: var(--gl-font);
}

.theme-glass tr:hover td {
  background: rgba(109, 179, 248, .09);
}

.theme-glass td.num {
  font-family: var(--gl-font);
  font-weight: 700;
  color: var(--gl-text);
}

.theme-glass .td-empty {
  color: var(--gl-text-soft);
}

/* —— 徽章：彩色玻璃 —— */
.theme-glass .badge {
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  font-family: var(--gl-font);
}

.theme-glass .badge.admin {
  color: var(--gl-yellow);
  border-color: rgba(255, 217, 122, .55);
  background: rgba(255, 217, 122, .14);
}

.theme-glass .badge.user {
  color: var(--gl-text-soft);
  border-color: var(--gl-border);
  background: rgba(255, 255, 255, .07);
}

.theme-glass .badge.banned {
  color: var(--gl-red-deep);
  border-color: rgba(255, 143, 143, .55);
  background: rgba(255, 143, 143, .14);
}

.theme-glass .badge.normal {
  color: var(--gl-green);
  border-color: rgba(127, 224, 178, .55);
  background: rgba(127, 224, 178, .13);
}

.theme-glass .badge.online {
  color: var(--gl-green);
  border-color: rgba(127, 224, 178, .55);
  background: rgba(127, 224, 178, .13);
}

.theme-glass .badge.offline {
  color: rgba(238, 243, 255, .55);
  border-color: rgba(255, 255, 255, .25);
  background: rgba(255, 255, 255, .08);
}

/* —— 在线圆点：荧光绿发光 —— */
.theme-glass .online-dot {
  background: #7fe0b2;
  border: 1.5px solid rgba(255, 255, 255, .7);
  box-shadow: 0 0 8px rgba(127, 224, 178, .8);
}

.theme-glass .online-dot.off {
  background: rgba(238, 243, 255, .3);
  box-shadow: none;
}

/* —— 行内小按钮 —— */
.theme-glass .mini-btn {
  margin-right: 6px;
  color: var(--gl-text);
  background: var(--gl-glass);
  border: 1px solid var(--gl-border);
  border-radius: var(--gl-radius);
  box-shadow: var(--gl-inset);
}

.theme-glass .mini-btn:hover {
  color: var(--gl-blue-deep);
  border-color: rgba(109, 179, 248, .6);
  background: rgba(109, 179, 248, .14);
}

.theme-glass .mini-btn.green {
  color: var(--gl-green);
  border-color: rgba(127, 224, 178, .5);
  background: rgba(127, 224, 178, .13);
}

.theme-glass .mini-btn.green:hover {
  background: rgba(127, 224, 178, .3);
  color: #fff;
}

.theme-glass .mini-btn.red {
  color: var(--gl-red-deep);
  border-color: rgba(255, 143, 143, .5);
  background: rgba(255, 143, 143, .12);
}

.theme-glass .mini-btn.red:hover {
  background: rgba(255, 143, 143, .3);
  color: #fff;
}

/* —— 统计卡片内部 —— */
.theme-glass .card .c-num {
  color: var(--gl-yellow);
  text-shadow: 0 0 14px rgba(255, 217, 122, .5);
  font-family: var(--gl-font);
}

.theme-glass .card .c-label {
  color: var(--gl-text-soft);
}

/* —— 图表盒子：玻璃 —— */
.theme-glass .chart-box {
  background: var(--gl-glass);
  backdrop-filter: var(--gl-blur);
  -webkit-backdrop-filter: var(--gl-blur);
  border: 1px solid var(--gl-border);
  border-radius: 18px;
  box-shadow: var(--gl-shadow), var(--gl-inset);
}

.theme-glass .chart-title {
  color: var(--gl-blue-deep);
}

.theme-glass .legend {
  color: var(--gl-text-soft);
}

.theme-glass .legend i {
  border: 1px solid rgba(255, 255, 255, .4);
}

/* —— 弹窗：深色磨砂玻璃 —— */
.theme-glass .mask {
  background: rgba(5, 8, 24, .6);
}

.theme-glass .modal {
  background: var(--gl-glass-deep);
  backdrop-filter: var(--gl-blur-lg);
  -webkit-backdrop-filter: var(--gl-blur-lg);
  border: 1px solid var(--gl-border-strong);
  border-radius: var(--gl-radius-lg);
  box-shadow: 0 24px 60px rgba(5, 8, 24, .6), var(--gl-inset);
}

.theme-glass .modal-head {
  background: rgba(255, 255, 255, .1);
  color: var(--gl-text);
  border-bottom: 1px solid var(--gl-border);
}

.theme-glass .modal-close {
  color: var(--gl-text-soft);
  font-family: var(--gl-font);
}

.theme-glass .modal-close:hover {
  color: var(--gl-red-deep);
}

.theme-glass .modal-body {
  color: var(--gl-text);
}

/* —— 游戏审核表单：提交人信息 / 表单标签 / 驳回原因 —— */
.theme-glass .rv-info {
  color: var(--gl-text-soft);
}

.theme-glass .rv-info b {
  color: var(--gl-blue-deep);
}

.theme-glass .rv-form label {
  color: var(--gl-text);
}

.theme-glass .td-reason {
  color: var(--gl-red);
}

/* —— 账号详情：信息格 / 分节标题 / 商品贴纸 —— */
.theme-glass .detail-grid .dg {
  background: rgba(255, 255, 255, .07);
  border: 1px solid var(--gl-border);
  border-radius: 12px;
}

.theme-glass .dg .k {
  color: var(--gl-text-soft);
}

.theme-glass .dg .v {
  color: var(--gl-text);
  font-weight: 700;
}

.theme-glass .sec-title {
  color: var(--gl-blue-deep);
  border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.theme-glass .item-chip {
  background: rgba(247, 143, 179, .14);
  border: 1px solid rgba(247, 143, 179, .5);
  border-radius: var(--gl-radius);
  color: #ffd3e2;
  font-family: var(--gl-font);
}

.theme-glass .detail-plays th {
  background: transparent;
}

/* ============================================================
   大厅框体 / 屏幕：加一点透明，隐约透出背景视频画面
   ============================================================ */
.theme-glass .cabinet.hall-cab {
  background: rgba(255, 255, 255, .14);
}

.theme-glass .screen {
  background: rgba(16, 20, 44, .5);
}


/* ================= F6 主题适配 · 新界面（成就弹窗/浮窗/筛选条/头像/主页链接） ================= */

/* —— 成就弹窗 —— */
.theme-glass .ach-stats { color: var(--gl-muted, rgba(255,255,255,.65)); }
.theme-glass .ach-group-title { color: var(--gl-accent, #7cd4ff); }
.theme-glass .ach-item { background: var(--gl-card, rgba(255,255,255,.08)); border-color: var(--gl-line, rgba(255,255,255,.14)); border-radius: 14px; backdrop-filter: blur(8px); }
.theme-glass .ach-item.done { border-color: var(--gl-accent, #7cd4ff); background: var(--gl-accent-soft, rgba(124, 212, 255, .12)); box-shadow: 0 0 14px rgba(124, 212, 255, .18); }
.theme-glass .ach-name { color: var(--gl-text, #eef6ff); }
.theme-glass .ach-desc { color: var(--gl-muted, rgba(255,255,255,.6)); }
.theme-glass .ach-date { color: var(--gl-accent, #7cd4ff); }
.theme-glass .ach-prog-bar { background: rgba(255, 255, 255, .12); }
.theme-glass .ach-prog-bar span { background: linear-gradient(90deg, #7cd4ff, #b48cff); }
.theme-glass #recentWidget { background: var(--gl-card, rgba(20, 28, 48, .55)); border: 1px solid var(--gl-line, rgba(255,255,255,.16)); border-radius: 16px; backdrop-filter: blur(10px); }
.theme-glass #recentWidget .rw-head { color: var(--gl-text, #eef6ff); }
.theme-glass .rw-name { color: var(--gl-text, #eef6ff); }
.theme-glass .rw-time { color: var(--gl-muted, rgba(255,255,255,.55)); }
.theme-glass .rw-item:hover { background: rgba(124, 212, 255, .1); }
.theme-glass .hall-filterbar { background: rgba(255, 255, 255, .06); border: 1px solid var(--gl-line, rgba(255,255,255,.14)); border-radius: 14px; backdrop-filter: blur(8px); }
.theme-glass .ht-chip { background: rgba(255, 255, 255, .08); border-color: var(--gl-line, rgba(255,255,255,.16)); color: var(--gl-muted, rgba(255,255,255,.7)); }
.theme-glass .ht-chip.active { background: linear-gradient(90deg, #7cd4ff, #b48cff); color: #0b1226; border-color: transparent; }
.theme-glass .u-avatar { background: rgba(124, 212, 255, .12); box-shadow: 0 0 10px rgba(124, 212, 255, .25); }
.theme-glass a.lb-name, .theme-glass a.msg-user, .theme-glass a.horn-name { color: #9fdcff; }
