/* ==========================================================================
   wx 无限服天赋模拟器副本 · 皮肤一：紫夜流萤（skin-sentry.css）
   --------------------------------------------------------------------------
   主题描述：Sentry 深色（参考 getsentry.com 设计语言）
   ——紫夜 = 深紫黑底，流萤 = 青柠点睛色在暗底上明灭稀疏。
   保留：深紫黑底（#1f1633 / #150f23，不用纯黑）、#362d59 紫色调边框、
         #6a5fc1 交互紫、#c2ef4e 青柠点睛、#ffb287 珊瑚 / #fa7faa 粉色焦点、
         #79628c 内阴影触感按钮、毛玻璃 blur(18px) saturate(180%)、
         Rubik 四层字重（400/500/600/700）、卡片 8–12px 圆角。
   中文适配：展示字号按中文阅读降档（Section 30px→22px、Card 24px→16px），
         正文 14–14.5px / 行高 1.75–1.9，说明文字 12px / 1.8，
         标题用 text-wrap: balance 平衡折行，信息密度以留白节奏而非压缩排版。
   纪律：不覆盖 talent.css 的 position/top/left/width/height；
         覆盖行内样式一律 !important；属性前缀保证特异性高于社交样式表。
   ========================================================================== */

[data-skin="sentry"] {
    --s-bg: #1f1633;
    --s-bg-deep: #150f23;
    --s-surface: #241d3a;
    --s-surface-2: rgba(54, 45, 89, 0.55);
    --s-surface-3: rgba(54, 45, 89, 0.32);
    --s-border: #362d59;
    --s-border-strong: #584674;
    --s-text: #ffffff;
    --s-text-2: #e5e7eb;
    --s-text-3: #a89cc0;
    --s-text-4: #8f86ad;
    --s-accent: #c2ef4e;          /* 青柠：点睛强调，每屏至多一处 */
    --s-accent-2: #6a5fc1;        /* Sentry 紫：交互 / 链接 / 焦点 */
    --s-accent-3: #ffb287;        /* 珊瑚：次要高亮 */
    --s-pink: #fa7faa;            /* 粉色：焦点轮廓、危险态 */
    --s-btn: #79628c;             /* 主按钮柔和紫 */
    --s-btn-border: #584674;
    --s-violet-deep: #422082;
    --s-radius: 12px;
    --s-radius-sm: 8px;
    --s-shadow-card: 0 10px 15px -3px rgba(0, 0, 0, 0.35);
    --s-shadow-panel: 0 4px 24px -2px rgba(106, 95, 193, 0.28),
                      0 10px 15px -3px rgba(0, 0, 0, 0.4);
    --s-inset-btn: inset 0 1px 3px 0 rgba(0, 0, 0, 0.1);
    --s-font: "Rubik", "PingFang SC", "Hiragino Sans GB",
              "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;
}

/* ============================================================
   一、页面级（首页 index.php + 职业页 class.php 共用）
   ============================================================ */
[data-skin="sentry"] body {
    background-color: #1f1633 !important;   /* 覆盖 body 行内 #30384c */
    color: #ffffff;
    font-family: var(--s-font);
    font-size: 14px;
    line-height: 1.75;
    -webkit-font-smoothing: antialiased;
}
[data-skin="sentry"] a { color: #ffffff; }
[data-skin="sentry"] a:visited { color: #e5e7eb; }
[data-skin="sentry"] a:hover { color: var(--s-accent-2); }

/* 职业页顶部职业导航条：做成「内容岛屿」卡片 */
[data-skin="sentry"] center > div:not(#replaceMeWithTalents) {
    display: inline-block;
    margin: 4px auto 8px;
    padding: 10px 14px;
    border: 1px solid var(--s-border);
    border-radius: var(--s-radius);
    background: var(--s-bg-deep);
    box-shadow: var(--s-shadow-card);
}
[data-skin="sentry"] center > div:not(#replaceMeWithTalents) img {
    border-radius: 6px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
[data-skin="sentry"] center > div:not(#replaceMeWithTalents) a:hover img {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.45);
}
/* 当前职业的高亮框（原行内 #8ab4f8 蓝光 → 青柠光） */
[data-skin="sentry"] center img[style*="box-shadow"] {
    box-shadow: 0 0 0 2px var(--s-accent), 0 0 12px rgba(194, 239, 78, 0.55) !important;
    border-radius: 6px;
}

/* ============================================================
   二、天赋树框架（职业页）
   —— 只改颜色，不动定位；树体背景图保留原画
   ============================================================ */
/* 黑色框架条 → 深紫黑 */
[data-skin="sentry"] .tabletopleft,
[data-skin="sentry"] .tabletop,
[data-skin="sentry"] .tabletopright,
[data-skin="sentry"] .tableleft,
[data-skin="sentry"] .tableright,
[data-skin="sentry"] .tablebotleft,
[data-skin="sentry"] .tablebot,
[data-skin="sentry"] .tablebotright,
[data-skin="sentry"] .tablebotleftleft,
[data-skin="sentry"] .tablebotrightright {
    background-color: #150f23;
}
[data-skin="sentry"] .tabletop    { border-top: 1px solid var(--s-violet-deep); }
[data-skin="sentry"] .tablebot    { border-bottom: 1px solid var(--s-violet-deep); }
/* 树体背景：保留原画，仅把行内兜底色 #000000 换成深紫黑 */
[data-skin="sentry"] #replaceMeWithTalents td[style*="background.jpg"] {
    background-color: #0d0a18 !important;
}

/* 树名与点数 */
[data-skin="sentry"] .treeName {
    color: #ffffff;
    font-weight: 600;
    font-size: 15px;
}
[data-skin="sentry"] .treeColon  { color: var(--s-text-3); font-size: 12px; }
[data-skin="sentry"] .treePoint  { color: var(--s-accent); font-weight: 600; font-size: 13px; }
[data-skin="sentry"] .treePoints { color: var(--s-text-3); font-size: 12px; }

/* 等级数字三态：点满=青柠 / 部分=珊瑚 / 未点=紫灰 */
[data-skin="sentry"] .mySmall2,
[data-skin="sentry"] .mySmall22      { color: var(--s-accent); }
[data-skin="sentry"] .mySmallGreen,
[data-skin="sentry"] .mySmallGreen2  { color: var(--s-accent-3); }
[data-skin="sentry"] .mySmallOff,
[data-skin="sentry"] .mySmallOff2    { color: var(--s-text-4); }
[data-skin="sentry"] .mySmall        { color: var(--s-text-2); font-size: 12px; line-height: 1.8; }
[data-skin="sentry"] .mySmallWhite   { color: var(--s-text-2); }
[data-skin="sentry"] .mySmallBlack   { color: var(--s-text); }

/* 天赋悬浮提示框：紫框 + 深紫面板 */
[data-skin="sentry"] #replaceMeWithTalents td[bgcolor="#0c5380"] { background-color: var(--s-accent-2); }
[data-skin="sentry"] #replaceMeWithTalents td[bgcolor="#051017"] { background-color: var(--s-surface); }
[data-skin="sentry"] .talentNameStyle {
    color: #ffffff !important;        /* 原行内白 */
    font-size: 13.5px;
    font-weight: 700;
}
[data-skin="sentry"] .rankTooltip {
    color: var(--s-text-2);
    font-size: 12px;
    line-height: 1.8;
}
/* 描述正文（原行内 #ffd100 黄 → 近白微紫） */
[data-skin="sentry"] .talentDescriptionStyle {
    color: #f4f1fa !important;
    font-size: 12.5px;
    line-height: 1.85;
}
/* 前置/层级需求（原行内 #ff4040 红 → Sentry 粉） */
[data-skin="sentry"] #replaceMeWithTalents span[style*="#ff4040"] { color: var(--s-pink) !important; }
/* 左键加点=青柠 / 右键减点=粉（原行内 #1eff00 / #ff4040） */
[data-skin="sentry"] #replaceMeWithTalents span[style*="#1eff00"] { color: var(--s-accent) !important; }
[data-skin="sentry"] #replaceMeWithTalents span[style*="#1eff00"],
[data-skin="sentry"] #replaceMeWithTalents span[style*="#ff4040"] { font-size: 12px; line-height: 1.7; }

/* 底部信息盒（剩余点数 / 各系点数 / 打印 / 重置） */
[data-skin="sentry"] #hideBoxBot td[bgcolor="#000000"] { background-color: var(--s-bg-deep); }
[data-skin="sentry"] #hideBoxBot .mySmallWhite { font-size: 12.5px; line-height: 1.9; }
[data-skin="sentry"] #tabPointsAvailable,
[data-skin="sentry"] #modifyRankPoints,
[data-skin="sentry"] #levelRequired,
[data-skin="sentry"] #hideBoxBot span[id$="PointsTopRight"] { color: var(--s-accent); font-weight: 600; }
[data-skin="sentry"] #hideBoxBot span[style*="color: #ffffff"],
[data-skin="sentry"] #hideBoxBot span[style*="color:#ffffff"] { color: #ffffff !important; }
/* 分享链接（原 #ffd800 黄 → 青柠） */
[data-skin="sentry"] #replaceMeWithTalents span[style*="ffd800"] { color: var(--s-accent) !important; }

/* ============================================================
   三、首页（index.php）
   ============================================================ */
[data-skin="sentry"] #pick-class h1 {
    color: #ffffff;
    font-family: var(--s-font);
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0.01em;
    line-height: 1.4;
    text-wrap: balance;
}
[data-skin="sentry"] #pick-class td a { display: inline-block; }
[data-skin="sentry"] #pick-class td a img {
    border-radius: 10px;
    transition: transform 0.2s ease, filter 0.2s ease;
}
[data-skin="sentry"] #pick-class td a:hover img {
    transform: translateY(-3px);
    filter: drop-shadow(0 8px 16px rgba(0, 0, 0, 0.5));
}
/* 天赋广场区块（行内 #3a4358 → 深紫黑表面） */
[data-skin="sentry"] .ts-recommend-section {
    background: var(--s-bg-deep) !important;
    border: 1px solid var(--s-border);
    border-radius: 14px !important;
    box-shadow: var(--s-shadow-card);
}
[data-skin="sentry"] .ts-recommend-section h2 {
    color: #ffffff;
    font-size: 17px;
    font-weight: 600;
    letter-spacing: 0.01em;
}
[data-skin="sentry"] .ts-recommend-section p {
    color: var(--s-text-2);
    font-size: 14.5px;
    line-height: 1.9;
}
[data-skin="sentry"] .ts-recommend-section strong { color: #ffffff; }
[data-skin="sentry"] .ts-recommend-empty { color: var(--s-text-4); }

/* ============================================================
   四、社交功能 UI（talent-social-wuxian.css 的 .ts-* 覆盖）
   ============================================================ */
/* 用户栏：毛玻璃 */
[data-skin="sentry"] .ts-user-bar {
    background: rgba(21, 15, 35, 0.82);
    -webkit-backdrop-filter: blur(18px) saturate(180%);
    backdrop-filter: blur(18px) saturate(180%);
    color: #ffffff;
    font-size: 13px;
}
[data-skin="sentry"] .ts-user-bar:hover { background: rgba(31, 22, 51, 0.92); }
[data-skin="sentry"] .ts-user-avatar { border-color: var(--s-border-strong); }
[data-skin="sentry"] .ts-logout-btn {
    border-color: var(--s-border-strong);
    color: var(--s-text-3);
    border-radius: var(--s-radius-sm);
}
[data-skin="sentry"] .ts-logout-btn:hover { border-color: var(--s-pink); color: var(--s-pink); }
[data-skin="sentry"] .ts-user-name { color: #ffffff; }

/* QQ 登录 / 扫码按钮：Sentry 主按钮（柔和紫 + 内阴影触感） */
[data-skin="sentry"] .ts-qq-btn,
[data-skin="sentry"] .ts-qr-btn {
    background: var(--s-btn);
    border: 1px solid var(--s-btn-border);
    border-radius: var(--s-radius);
    box-shadow: var(--s-inset-btn);
    color: #ffffff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}
[data-skin="sentry"] .ts-qq-btn:hover,
[data-skin="sentry"] .ts-qr-btn:hover {
    background: #6f5a82;
    box-shadow: rgba(0, 0, 0, 0.18) 0 0.5rem 1.5rem;
}

/* 浮动操作按钮：圆形保留，配色改皮肤语义色 */
[data-skin="sentry"] .ts-float-btn {
    box-shadow: var(--s-shadow-card);
    font-size: 19px;
}
[data-skin="sentry"] .ts-float-btn.save   { background: var(--s-accent); color: #1f1633; }
[data-skin="sentry"] .ts-float-btn.load   { background: var(--s-accent-2); color: #ffffff; }
[data-skin="sentry"] .ts-float-btn.browse { background: var(--s-accent-3); color: #1f1633; }
[data-skin="sentry"] .ts-float-btn.my     { background: var(--s-pink); color: #1f1633; }
[data-skin="sentry"] .ts-float-btn .btn-tooltip {
    background: rgba(21, 15, 35, 0.92);
    border: 1px solid var(--s-border);
    border-radius: var(--s-radius-sm);
    color: var(--s-text-2);
    font-size: 12px;
}

/* 弹窗 */
[data-skin="sentry"] .ts-overlay { background: rgba(22, 15, 36, 0.72); }
[data-skin="sentry"] .ts-panel {
    background: var(--s-surface);
    border: 1px solid var(--s-border);
    border-radius: 14px;
    box-shadow: var(--s-shadow-panel);
}
[data-skin="sentry"] .ts-panel-header {
    background: rgba(21, 15, 35, 0.6);
    border-bottom: 1px solid var(--s-border);
}
[data-skin="sentry"] .ts-panel-header h3 { color: #ffffff; font-size: 15px; font-weight: 600; }
[data-skin="sentry"] .ts-panel-close { color: var(--s-text-3); }
[data-skin="sentry"] .ts-panel-close:hover { color: var(--s-pink); background: rgba(250, 127, 170, 0.12); }
[data-skin="sentry"] .ts-panel-footer { border-top: 1px solid var(--s-border); }
[data-skin="sentry"] .ts-panel-body::-webkit-scrollbar { width: 8px; }
[data-skin="sentry"] .ts-panel-body::-webkit-scrollbar-thumb {
    background: var(--s-border);
    border-radius: 4px;
}

/* 表单：Sentry 浅色输入框（白底深紫字） */
[data-skin="sentry"] .ts-input {
    background: #ffffff;
    border: 1px solid #cfcfdb;
    border-radius: var(--s-radius-sm);
    color: #1f1633;
    font-size: 14px;
}
[data-skin="sentry"] .ts-input:focus {
    border-color: var(--s-accent-2);
    box-shadow: 0 0 0 3px rgba(106, 95, 193, 0.25);
}
[data-skin="sentry"] .ts-input::placeholder { color: #8a84a3; }
[data-skin="sentry"] .ts-label { color: var(--s-text-3); font-size: 13px; }
[data-skin="sentry"] .ts-bind-input {
    background: #ffffff;
    border: 2px solid #cfcfdb;
    border-radius: var(--s-radius);
    color: #1f1633;
    font-family: "SFMono-Regular", Consolas, "Courier New", monospace;
    letter-spacing: 8px;
}
[data-skin="sentry"] .ts-bind-input:focus {
    border-color: var(--s-accent-2);
    box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.15);
}
[data-skin="sentry"] .ts-bind-input::placeholder { color: #8a84a3; }
[data-skin="sentry"] .ts-bind-desc { color: var(--s-text-2); }

/* 按钮体系 */
[data-skin="sentry"] .ts-btn {
    border-radius: var(--s-radius);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}
[data-skin="sentry"] .ts-btn-primary {
    background: var(--s-btn);
    border: 1px solid var(--s-btn-border);
    box-shadow: var(--s-inset-btn);
    color: #ffffff;
}
[data-skin="sentry"] .ts-btn-primary:hover {
    background: #6f5a82;
    box-shadow: rgba(0, 0, 0, 0.18) 0 0.5rem 1.5rem;
}
[data-skin="sentry"] .ts-btn-success {
    background: var(--s-accent);
    border: 1px solid #a9d93f;
    box-shadow: var(--s-inset-btn);
    color: #1f1633;
}
[data-skin="sentry"] .ts-btn-success:hover { background: #b4e63f; }
[data-skin="sentry"] .ts-btn-danger {
    background: var(--s-pink);
    border: 1px solid #e35f8a;
    box-shadow: var(--s-inset-btn);
    color: #1f1633;
}
[data-skin="sentry"] .ts-btn-danger:hover { background: #f2618f; }
[data-skin="sentry"] .ts-btn-ghost {
    background: transparent;
    border: 1px solid var(--s-btn-border);
    color: var(--s-text-2);
}
[data-skin="sentry"] .ts-btn-ghost:hover { border-color: var(--s-accent-2); color: #ffffff; }
[data-skin="sentry"] .ts-btn-cancel { background: var(--s-surface-3); color: var(--s-text-2); }
[data-skin="sentry"] .ts-btn-cancel:hover { background: var(--s-surface-2); color: #ffffff; }
[data-skin="sentry"] .ts-bind-actions .ts-btn { border-radius: var(--s-radius); }

/* 卡片（天赋卡 / 推荐卡 / 侧边栏项） */
[data-skin="sentry"] .ts-talent-card,
[data-skin="sentry"] .ts-recommend-card {
    background: var(--s-surface-2);
    border: 1px solid var(--s-border);
    border-radius: var(--s-radius);
}
[data-skin="sentry"] .ts-talent-card:hover,
[data-skin="sentry"] .ts-recommend-card:hover {
    background: var(--s-surface);
    border-color: var(--s-border-strong);
    box-shadow: 0 4px 16px -4px rgba(106, 95, 193, 0.35);
}
[data-skin="sentry"] .ts-talent-card-title,
[data-skin="sentry"] .ts-recommend-name { color: #ffffff; }
[data-skin="sentry"] .ts-talent-card-meta,
[data-skin="sentry"] .ts-recommend-class,
[data-skin="sentry"] .ts-recommend-owner { color: var(--s-text-3); }
[data-skin="sentry"] .ts-recommend-score,
[data-skin="sentry"] .ts-slots-info strong,
[data-skin="sentry"] .ts-exchange-box .ts-points { color: var(--s-accent); }
[data-skin="sentry"] .ts-card-dist { color: var(--s-text-3); }

/* 投票 */
[data-skin="sentry"] .ts-vote-btn {
    background: var(--s-surface-3);
    border: 1px solid var(--s-border);
    color: var(--s-text-2);
}
[data-skin="sentry"] .ts-vote-btn:hover { background: var(--s-surface-2); }
[data-skin="sentry"] .ts-vote-btn.upvote:hover,
[data-skin="sentry"] .ts-vote-btn.voted-up {
    border-color: var(--s-accent);
    color: var(--s-accent);
    background: rgba(194, 239, 78, 0.12);
}
[data-skin="sentry"] .ts-vote-btn.downvote:hover,
[data-skin="sentry"] .ts-vote-btn.voted-down {
    border-color: var(--s-pink);
    color: var(--s-pink);
    background: rgba(250, 127, 170, 0.12);
}
[data-skin="sentry"] .ts-vote-big {
    background: var(--s-surface-3);
    border: 2px solid var(--s-border);
    border-radius: var(--s-radius);
}
[data-skin="sentry"] .ts-vote-big:hover { background: var(--s-surface-2); }
[data-skin="sentry"] .ts-vote-big-count { color: var(--s-text-2); }
[data-skin="sentry"] .ts-vote-big.voted-up {
    background: rgba(194, 239, 78, 0.15);
    border-color: var(--s-accent);
}
[data-skin="sentry"] .ts-vote-big.voted-up .ts-vote-big-count { color: var(--s-accent); }
[data-skin="sentry"] .ts-vote-big.voted-down {
    background: rgba(250, 127, 170, 0.15);
    border-color: var(--s-pink);
}
[data-skin="sentry"] .ts-vote-big.voted-down .ts-vote-big-count { color: var(--s-pink); }
[data-skin="sentry"] .ts-vote-bar-name { color: #ffffff; }
[data-skin="sentry"] .ts-vote-bar-dist { color: var(--s-text-3); }
[data-skin="sentry"] .ts-vote-bar-desc { color: var(--s-text-2); line-height: 1.7; }
[data-skin="sentry"] .ts-vote-bar-meta,
[data-skin="sentry"] .ts-vote-bar-own { color: var(--s-text-3); }

/* 徽章 / 槽位 / 兑换 / 分隔线 */
[data-skin="sentry"] .ts-badge-public {
    background: rgba(194, 239, 78, 0.12);
    border: 1px solid rgba(194, 239, 78, 0.3);
    color: var(--s-accent);
    border-radius: 10px;
}
[data-skin="sentry"] .ts-badge-private,
[data-skin="sentry"] .ts-badge-legacy {
    background: var(--s-surface-3);
    border: 1px solid var(--s-border);
    color: var(--s-text-3);
    border-radius: 10px;
}
[data-skin="sentry"] .ts-slots-info {
    background: var(--s-surface-3);
    border-radius: var(--s-radius-sm);
    color: var(--s-text-2);
}
[data-skin="sentry"] .ts-exchange-box {
    background: var(--s-surface-3);
    border: 1px solid var(--s-border);
    border-radius: var(--s-radius);
}
[data-skin="sentry"] .ts-exchange-box .ts-points-label,
[data-skin="sentry"] .ts-exchange-box .ts-cost-info { color: var(--s-text-2); }
[data-skin="sentry"] .ts-divider { background: var(--s-border); }

/* 右侧公开天赋侧边栏：毛玻璃 */
[data-skin="sentry"] .ts-sidebar {
    background: rgba(21, 15, 35, 0.85);
    -webkit-backdrop-filter: blur(18px) saturate(180%);
    backdrop-filter: blur(18px) saturate(180%);
    border: 1px solid var(--s-border);
    border-radius: 14px;
    box-shadow: var(--s-shadow-panel);
}
[data-skin="sentry"] .ts-sidebar-header {
    background: rgba(31, 22, 51, 0.6);
    border-bottom: 1px solid var(--s-border);
    color: #ffffff;
}
[data-skin="sentry"] .ts-sidebar-list::-webkit-scrollbar { width: 6px; }
[data-skin="sentry"] .ts-sidebar-list::-webkit-scrollbar-thumb {
    background: var(--s-border);
    border-radius: 3px;
}
[data-skin="sentry"] .ts-sidebar-item:hover { background: var(--s-surface-2); }
[data-skin="sentry"] .ts-sidebar-item-name { color: #ffffff; }
[data-skin="sentry"] .ts-sidebar-item-meta { color: var(--s-text-3); }
[data-skin="sentry"] .ts-sidebar-item-desc { color: var(--s-text-4); }
[data-skin="sentry"] .ts-sidebar-empty { color: var(--s-text-4); }

/* 扫码 / 二维码下拉卡 */
[data-skin="sentry"] .ts-qr-drop {
    background: var(--s-surface);
    border: 1px solid var(--s-border);
    border-radius: 14px;
    box-shadow: var(--s-shadow-panel);
}
[data-skin="sentry"] .ts-qr-drop-close { color: var(--s-text-3); }
[data-skin="sentry"] .ts-qr-drop-close:hover { color: #ffffff; }
[data-skin="sentry"] .ts-qr-tip { color: var(--s-text-2); }
[data-skin="sentry"] .ts-qr-drop .ts-qr-tip { color: var(--s-accent-3); }
[data-skin="sentry"] .ts-qr-tip.error,
[data-skin="sentry"] .ts-qr-err { color: var(--s-pink); }
[data-skin="sentry"] .ts-qr-shortlink {
    background: var(--s-bg-deep);
    border: 1px solid var(--s-border);
    border-radius: var(--s-radius-sm);
    color: var(--s-text-3);
}

/* Toast / 加载 / 空态 / 确认框 */
[data-skin="sentry"] .ts-toast {
    border-radius: var(--s-radius-sm);
    box-shadow: var(--s-shadow-panel);
    font-weight: 500;
}
[data-skin="sentry"] .ts-toast.success { background: rgba(194, 239, 78, 0.95); color: #1f1633; }
[data-skin="sentry"] .ts-toast.error   { background: rgba(250, 127, 170, 0.95); color: #1f1633; }
[data-skin="sentry"] .ts-toast.info    { background: rgba(106, 95, 193, 0.95); color: #ffffff; }
[data-skin="sentry"] .ts-toast.warn    { background: rgba(255, 178, 135, 0.95); color: #1f1633; }
[data-skin="sentry"] .ts-loading { color: var(--s-text-3); }
[data-skin="sentry"] .ts-loading::after { border-top-color: var(--s-accent); }
[data-skin="sentry"] .ts-empty { color: var(--s-text-4); }
[data-skin="sentry"] .ts-confirm-content p { color: #ffffff; }
[data-skin="sentry"] .ts-confirm-content .ts-sub { color: var(--s-text-3); }

/* ============================================================
   五、footer.php：SEO 文本区 + 页脚 + 打赏模块
   （这些元素带大量行内样式，用 !important 覆盖）
   ============================================================ */
[data-skin="sentry"] main.seo-snapshot {
    background: var(--s-bg-deep) !important;
    border: 1px solid var(--s-border);
    border-radius: 14px !important;
    color: var(--s-text-2) !important;
    font-size: 14.5px;
    line-height: 1.9;
    padding: 24px 28px !important;
}
[data-skin="sentry"] main.seo-snapshot h2 {
    color: #ffffff !important;
    font-size: 21px;
    font-weight: 600;
    line-height: 1.4;
    text-wrap: balance;
}
[data-skin="sentry"] main.seo-snapshot h3 {
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 600;
    margin: 22px 0 8px;
}
[data-skin="sentry"] main.seo-snapshot h4 {
    color: var(--s-text-2) !important;
    font-size: 14px;
    font-weight: 600;
    margin: 14px 0 4px;
}
[data-skin="sentry"] main.seo-snapshot p {
    color: var(--s-text-2);
    font-size: 14.5px;
    line-height: 1.9;
    margin: 0 0 12px;
}
[data-skin="sentry"] main.seo-snapshot p[style*="#a8b2c8"] { color: var(--s-text-3) !important; }
[data-skin="sentry"] main.seo-snapshot ul { margin: 0; padding-left: 20px; }
[data-skin="sentry"] main.seo-snapshot li { color: var(--s-text-2); line-height: 1.9; }
[data-skin="sentry"] main.seo-snapshot strong { color: #ffffff; }
[data-skin="sentry"] main.seo-snapshot table { font-size: 13px; }
[data-skin="sentry"] main.seo-snapshot th {
    background: var(--s-surface) !important;
    border: 1px solid var(--s-border) !important;
    color: #ffffff !important;
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: 0.02em;
    padding: 8px 10px;
}
[data-skin="sentry"] main.seo-snapshot td {
    border: 1px solid var(--s-border) !important;
    color: var(--s-text-2);
    line-height: 1.7;
    padding: 7px 10px;
}
[data-skin="sentry"] main.seo-snapshot tr[style*="background"] {
    background: rgba(106, 95, 193, 0.14) !important;
}
[data-skin="sentry"] main.seo-snapshot span[style*="#a8b2c8"] { color: var(--s-text-3) !important; }
[data-skin="sentry"] main.seo-snapshot a { color: #ffffff; }
[data-skin="sentry"] main.seo-snapshot a[style*="color"] { color: #ffffff !important; }
[data-skin="sentry"] main.seo-snapshot a:hover { color: var(--s-accent-2); }
[data-skin="sentry"] main.seo-snapshot p[style*="border-top"] {
    border-top: 1px solid var(--s-border) !important;
    color: var(--s-text-3) !important;
}

[data-skin="sentry"] footer { color: var(--s-text-3) !important; }
[data-skin="sentry"] footer a { color: var(--s-text-2); }
[data-skin="sentry"] footer a:hover { color: var(--s-accent-2); }

/* 打赏模块：保留浅色卡片形成对比，仅统一阴影 / 圆角 / 徽章 */
[data-skin="sentry"] .reward-mini-module.narrow {
    border: 1px solid var(--s-border);
    border-radius: 14px;
    box-shadow: 0 10px 24px -8px rgba(0, 0, 0, 0.55);
}
[data-skin="sentry"] .reward-mini-module.narrow .footer-badge {
    background: rgba(194, 239, 78, 0.1);
    border: 1px solid rgba(194, 239, 78, 0.25);
    border-radius: 18px;
    color: #9fbf4f;
}

/* ============================================================
   六、细节层：选区 / 焦点 / 滚动条 / 减少动效
   ============================================================ */
[data-skin="sentry"] ::selection { background: var(--s-accent-2); color: #ffffff; }
[data-skin="sentry"] :focus-visible {
    outline: 2px solid var(--s-accent);
    outline-offset: 2px;
}
html[data-skin="sentry"]::-webkit-scrollbar { width: 10px; }
html[data-skin="sentry"]::-webkit-scrollbar-track { background: var(--s-bg-deep); }
html[data-skin="sentry"]::-webkit-scrollbar-thumb {
    background: var(--s-border);
    border-radius: 5px;
}
html[data-skin="sentry"]::-webkit-scrollbar-thumb:hover { background: var(--s-border-strong); }

@media (prefers-reduced-motion: reduce) {
    [data-skin="sentry"] * { transition: none !important; animation: none !important; }
}

/* ============================================================
   七、独立小工具换肤（nuqi 怒气计算器 / chuancheng 传承模拟器）
   --------------------------------------------------------------------------
   两工具均为变量驱动设计（paper/ink 体系），在此按皮肤重映射其 :root 变量，
   工具自身样式表零改动；chuancheng 少量硬编码色在本节定向覆盖。
   加载关系：nuqi/chuancheng/index.html 以 ../skins/ 引用本文件；
   shiguang 页面以 ../wuxian/skins/ 引用同一份皮肤（localStorage 键相同，
   四站皮肤选择自动同步）。变量重映射对模拟器页面无害——模拟器不使用
   paper/ink/accent/gold 等变量名（其配色由 --s-* 与显式色值驱动）。
   ============================================================ */
[data-skin="sentry"] {
    /* —— nuqi —— */
    --ink: #ffffff;
    --ink-soft: #e5e7eb;
    --muted: #a89cc0;
    --paper: #1f1633;
    --paper-light: #241d3a;
    --rule: #362d59;
    --ledger-rule-strong: #6a5fc1;
    --accent: #c2ef4e;
    --accent-deep: #a9d93f;
    --accent-active: #b4e63f;
    --action-ink: #1f1633;
    --archive-data-ink: #e5e7eb;
    /* —— chuancheng —— */
    --record-ink: #ffffff;
    --detail-muted: #a89cc0;
    --action-start: #79628c;
    --action-end: #6a5fc1;
    --forest: #4a7a3a;
    --recipe-green: #569144;
    --danger: #c2447c;
    --danger-hover: #d4557f;
    --gold: #ffd100;
    color-scheme: dark;
}

/* chuancheng 硬编码色定向覆盖 */
[data-skin="sentry"] .mode-btn:hover { background: rgba(255, 255, 255, 0.08); }
[data-skin="sentry"] .arrow-line { stroke: #584674; }
[data-skin="sentry"] .arrow-head { fill: #584674; }
[data-skin="sentry"] .talent-icon-unknown { background: #2b2247; color: #a89cc0; }
[data-skin="sentry"] .talent-btn.is-locked .talent-icon-unknown { color: #8f86ad; background: #150f23; }
[data-skin="sentry"] .talent-rank { color: #e5e7eb; }
[data-skin="sentry"] .tooltip { background: rgba(36, 29, 58, 0.97); }
[data-skin="sentry"] .action-btn.is-on { background: rgba(194, 239, 78, 0.12); }
[data-skin="sentry"] .challenge-item:hover { background: rgba(194, 239, 78, 0.06); }
[data-skin="sentry"] .tree-panel + .tree-panel { border-top-color: rgba(54, 45, 89, 0.55); }
