/* ============================================================
   行恒简安 · 统一主题层（tools.xhja.cn 及下属工具共用）
   风格基准：与 xhja.cn 新版主页一致
   ——浅色基底 / 蓝色强调 / 毛玻璃 / 大圆角 / 流畅动效——
   所有变量均以 --xh- 前缀，避免与工具页自有变量冲突。
   ============================================================ */

:root {
    --xh-bg-0: #eaf1fb;
    --xh-bg-1: #f5f9ff;
    --xh-bg-2: #e6edf8;
    --xh-bg-3: #dbe5f3;
    --xh-panel: rgba(244, 249, 255, 0.62);
    --xh-panel-strong: rgba(248, 251, 255, 0.92);
    --xh-border: rgba(148, 163, 184, 0.22);
    --xh-border-strong: rgba(66, 144, 245, 0.35);
    --xh-text: #0f172a;
    --xh-text-2: #475569;
    --xh-text-3: #94a3b8;
    --xh-primary: #4290f5;
    --xh-primary-light: #5aa0ff;
    --xh-primary-dark: #2563eb;
    --xh-accent: #06b6d4;
    --xh-success: #22c55e;
    --xh-danger: #ef4444;
    --xh-warning: #f59e0b;
    --xh-shadow: 0 4px 24px rgba(15, 23, 42, 0.06);
    --xh-shadow-md: 0 8px 40px rgba(15, 23, 42, 0.08);
    --xh-shadow-glow: 0 0 40px rgba(66, 144, 245, 0.14);
    --xh-r-sm: 12px;
    --xh-r-md: 18px;
    --xh-r-lg: 28px;
    --xh-header-h: 76px;
    --xh-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
        "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
}

/* ============================================================
   1. 页面基底：与主页同源的多层径向光晕
   ============================================================ */
body {
    background-image:
        radial-gradient(ellipse at 6% -8%, rgba(66, 144, 245, 0.22) 0%, transparent 45%),
        radial-gradient(ellipse at 94% 2%, rgba(6, 182, 212, 0.16) 0%, transparent 42%),
        radial-gradient(ellipse at 50% 118%, rgba(66, 144, 245, 0.14) 0%, transparent 52%),
        linear-gradient(180deg, #f5f9ff 0%, #eaf1fb 55%, #e6edf8 100%) !important;
    background-attachment: fixed !important;
    background-repeat: no-repeat !important;
    background-size: auto !important;
    font-family: var(--xh-font);
}
body.dark {
    background-image:
        radial-gradient(ellipse at 6% -8%, rgba(66, 144, 245, 0.16) 0%, transparent 45%),
        radial-gradient(ellipse at 94% 2%, rgba(6, 182, 212, 0.10) 0%, transparent 42%),
        linear-gradient(180deg, #0b1220 0%, #0d1526 55%, #0a1020 100%) !important;
}

/* 科技点阵背景 */
#xh-canvas {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
    opacity: .55;
}

/* 工具页原顶栏统一让位（内容不丢，只是不再显示） */
.xhja-topbar,
.site-banner {
    display: none !important;
}
/* 原为固定顶栏预留的顶部空白收回 */
.wrap {
    padding-top: 30px !important;
}

/* ============================================================
   2. 统一顶栏
   ============================================================ */
.xh-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background: linear-gradient(180deg, rgba(238, 244, 253, 0.88) 0%, rgba(231, 239, 251, 0.66) 100%);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-bottom: 1px solid var(--xh-border);
}
.xh-header::after {
    content: '';
    position: absolute;
    left: 0; right: 0; bottom: -1px; height: 1px;
    background: linear-gradient(90deg, transparent, var(--xh-primary), var(--xh-accent), transparent);
    opacity: .65;
}
.xh-header-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
    height: var(--xh-header-h);
    display: flex;
    align-items: center;
    gap: 20px;
}
.xh-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
    text-decoration: none;
    color: inherit;
}
.xh-brand-logo {
    width: 40px; height: 40px;
    object-fit: contain;
    filter: drop-shadow(0 2px 6px rgba(66, 144, 245, .25));
}
.xh-brand-text { display: flex; flex-direction: column; line-height: 1.25; }
.xh-brand-name { font-size: 19px; font-weight: 800; letter-spacing: 1px; color: var(--xh-text); }
.xh-brand-slogan { font-size: 10.5px; color: var(--xh-text-2); letter-spacing: 1.6px; }
.xh-nav { display: flex; align-items: center; gap: 2px; margin-left: auto; }
.xh-nav a {
    padding: 8px 14px;
    border-radius: 999px;
    font-size: 13.5px;
    font-weight: 500;
    color: var(--xh-text-2);
    white-space: nowrap;
    text-decoration: none;
    transition: all .25s ease;
}
.xh-nav a:hover { color: var(--xh-primary-dark); background: rgba(66, 144, 245, .08); text-decoration: none; }
.xh-nav a.cur { color: var(--xh-primary-dark); font-weight: 700; background: rgba(66, 144, 245, .10); }
.xh-actions { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.xh-clock {
    padding: 7px 14px;
    border-radius: 999px;
    background: var(--xh-panel);
    border: 1px solid var(--xh-border);
    font-size: 13px;
    font-variant-numeric: tabular-nums;
    color: var(--xh-text-2);
    font-family: "SF Mono", Monaco, Consolas, monospace;
}
.xh-icon-btn {
    width: 40px; height: 40px;
    display: inline-flex; align-items: center; justify-content: center;
    border-radius: 50%;
    background: var(--xh-panel);
    border: 1px solid var(--xh-border);
    color: var(--xh-text-2);
    font-size: 17px;
    box-shadow: var(--xh-shadow);
    transition: all .25s ease;
}
.xh-icon-btn:hover { background: rgba(66, 144, 245, .10); color: var(--xh-primary-dark); transform: scale(1.06); }

/* ============================================================
   3. 统一页脚
   【紧凑版 2026-09-25】原 5 块竖排 → 297px 偏高。改为两行：
   ① 品牌 + 站群导航  ② 版权 · 邮箱 · 备案（同一行），实测 ≈ 110px。
   ============================================================ */
.xh-footer {
    position: relative;
    z-index: 2;
    margin-top: 28px;
    border-top: 1px solid var(--xh-border);
    background: linear-gradient(180deg, rgba(238, 244, 253, .55) 0%, rgba(230, 237, 248, .75) 100%);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}
.xh-footer-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 14px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    text-align: center;
}
/* 第一行：品牌 + 站群导航（同一行，窄屏自动换行） */
.xh-footer-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 6px 22px;
    width: 100%;        /* 约束宽度，窄屏时导航才能自己换行而不是顶破容器 */
}
.xh-footer-brand { display: flex; align-items: center; justify-content: center; gap: 8px; }
/* 宽屏给品牌加一条竖分隔，免得跟着导航连读；窄屏换行后不留竖线 */
@media (min-width: 861px) {
    .xh-footer-brand { padding-right: 18px; border-right: 1px solid var(--xh-border); }
}
.xh-footer-brand img { width: 24px; height: 24px; object-fit: contain; }
.xh-footer-name { font-size: 15px; font-weight: 800; color: var(--xh-text); letter-spacing: 1px; }
.xh-footer-slogan { font-size: 11.5px; color: var(--xh-text-2); letter-spacing: 1px; }
.xh-footer-links {
    display: flex; flex-wrap: wrap; justify-content: center;
    gap: 4px 18px; font-size: 12.5px;
    max-width: 100%;
}
.xh-footer-links a { color: var(--xh-text-2); text-decoration: none; transition: color .2s; }
.xh-footer-links a:hover { color: var(--xh-primary-dark); text-decoration: none; }

/* 第二行：版权 · 邮箱 · 备案 并排一行 */
.xh-footer-legal {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 2px 14px;
    font-size: 12px;
    line-height: 1.6;
    color: var(--xh-text-3);
    max-width: 100%;
}
.xh-footer-legal .xh-footer-copy { font-size: 12px; color: var(--xh-text-3); }
.xh-footer-legal .xh-footer-copy a { color: var(--xh-primary); font-weight: 700; text-decoration: none; }
.xh-footer-legal .xh-footer-copy a:hover { text-decoration: underline; }
/* 老版 .xhja-mail / .xhja-icp 各自独占一行（带 margin-top），放进第二行时归零间距 */
.xh-footer .xhja-mail { margin-top: 0; font-size: 12px; line-height: 1.6; color: var(--xh-text-3); }
.xh-footer .xhja-mail a { gap: 4px; color: var(--xh-primary); font-weight: 600; }
.xh-footer .xhja-icp { margin-top: 0; gap: 2px 8px; font-size: 12px; line-height: 1.6; color: var(--xh-text-3); }
.xh-footer .xhja-icp svg { width: 12px; height: 12px; }
body.dark .xh-footer .xhja-mail { color: #8b8ea3; }
body.dark .xh-footer .xhja-mail a { color: #7ab7ff; }
body.dark .xh-footer .xhja-icp { color: #8b8ea3; }
body.dark .xh-footer .xhja-icp a:hover { color: #7ab7ff; }

/* ============================================================
   4. 悬浮按钮
   ============================================================ */
.xh-float {
    position: fixed;
    right: 26px;
    width: 48px; height: 48px;
    border-radius: 50%;
    background: var(--xh-panel-strong);
    border: 1px solid var(--xh-border);
    color: var(--xh-text-2);
    font-size: 19px;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--xh-shadow);
    transition: all .25s ease;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}
.xh-float:hover { background: rgba(66, 144, 245, .12); color: var(--xh-primary-dark); transform: scale(1.08); }
#xh-dark { bottom: 88px; }
#xh-top { bottom: 26px; opacity: 0; transform: translateY(20px); pointer-events: none; }
#xh-top.visible { opacity: 1; transform: translateY(0); pointer-events: auto; }

/* ============================================================
   5. 通用组件皮肤（对工具页既有类名做浅层换肤，不动布局）
   ============================================================ */
.card,
.res-card,
.type-card,
.rfigbox,
.v-diag-box,
.sub-sec,
.tc-sec,
.panel {
    background: rgba(248, 251, 255, .72) !important;
    border: 1px solid var(--xh-border) !important;
    border-radius: var(--xh-r-md) !important;
    box-shadow: var(--xh-shadow) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* 标题字重与颜色 */
.xh-scope h1, .xh-scope h2, .xh-scope h3 {
    color: var(--xh-text);
}
h1, h2, h3 { letter-spacing: .3px; }

/* 输入控件 */
input:not([type="radio"]):not([type="checkbox"]):not(.cell-input),
select,
textarea {
    border-radius: 10px !important;
    border: 1px solid var(--xh-border) !important;
    background: rgba(255, 255, 255, .82) !important;
    color: var(--xh-text) !important;
    transition: border-color .2s, box-shadow .2s;
    font-family: inherit;
}
input:focus, select:focus, textarea:focus {
    outline: none;
    border-color: var(--xh-primary) !important;
    box-shadow: 0 0 0 3px rgba(66, 144, 245, .14);
}

/* 主按钮 */
.btn-primary,
.calc-btn,
.pv-btn.xh-primary {
    background: linear-gradient(135deg, var(--xh-primary) 0%, var(--xh-primary-dark) 100%) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 999px !important;
    font-weight: 600 !important;
    box-shadow: 0 4px 18px rgba(66, 144, 245, .32) !important;
}
.btn-primary:hover, .calc-btn:hover { transform: translateY(-1px); }

/* 次要按钮 */
.btn-ghost,
.dl-btn,
.io-btn {
    border-radius: 999px !important;
    border: 1px solid var(--xh-border-strong) !important;
    background: rgba(255, 255, 255, .7) !important;
    color: var(--xh-text-2) !important;
    font-weight: 600 !important;
    transition: all .25s ease;
}
.btn-ghost:hover, .dl-btn:hover, .io-btn:hover {
    color: var(--xh-primary-dark) !important;
    border-color: var(--xh-primary) !important;
    background: rgba(66, 144, 245, .08) !important;
}

/* 表格 */
table, .data-table, .seg-tbl {
    border-collapse: collapse;
}
th {
    background: rgba(66, 144, 245, .07) !important;
    color: var(--xh-text) !important;
    font-weight: 700 !important;
}
td, th {
    border-color: var(--xh-border) !important;
}

/* 提示块 */
.note, .hint, .small-note, .pane-hint, .alert, .sl-note {
    border-radius: var(--xh-r-sm) !important;
    border: 1px solid var(--xh-border) !important;
    background: rgba(66, 144, 245, .06) !important;
}

/* 标签页 / 分段控件 */
.tab, .step-tab, .mode-tab {
    border-radius: 999px !important;
    transition: all .25s ease;
}
.tab.active, .step-tab.active, .mode-tab.active {
    background: linear-gradient(135deg, var(--xh-primary) 0%, var(--xh-primary-dark) 100%) !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(66, 144, 245, .30) !important;
}

/* 结果数字 */
.big-num, .rv, .num {
    color: var(--xh-primary-dark) !important;
}

/* ============================================================
   6. 工具首页专属
   ============================================================ */
.xh-main {
    position: relative;
    z-index: 1;
    max-width: 1320px;
    margin: 0 auto;
    padding: 30px 24px 0;
}
.xh-hero { text-align: center; padding: 26px 0 34px; }
.xh-tag {
    display: inline-block;
    padding: 5px 16px;
    border-radius: 999px;
    background: rgba(66, 144, 245, .08);
    border: 1px solid var(--xh-border);
    color: var(--xh-primary-dark);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.4px;
    margin-bottom: 16px;
}
.xh-hero h1 {
    font-size: 46px;
    font-weight: 800;
    line-height: 1.25;
    margin-bottom: 16px;
    background: linear-gradient(135deg, var(--xh-text) 0%, var(--xh-primary-dark) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.xh-hero p {
    color: var(--xh-text-2);
    font-size: 16.5px;
    max-width: 660px;
    margin: 0 auto;
    line-height: 1.8;
}
/* 首页紧凑页标题（承载 H1 语义；比 .xh-hero 轻得多，站长 2026-09-12 删的是大 hero） */
.xh-page-title {
    font-size: 27px;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: .5px;
    margin: 4px 0 8px;
    color: var(--xh-text);
}
.xh-page-sub {
    font-size: 14px;
    line-height: 1.8;
    color: var(--xh-text-2);
    max-width: 880px;
    margin: 0 0 18px;
}
body.dark .xh-page-title { color: #e2e8f0; }
body.dark .xh-page-sub { color: #94a3b8; }
@media (max-width: 640px) {
    .xh-page-title { font-size: 21px; }
    .xh-page-sub { font-size: 13px; }
}
.xh-stats {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 32px;
}
.xh-stat {
    min-width: 132px;
    padding: 16px 22px;
    border-radius: var(--xh-r-md);
    background: var(--xh-panel);
    border: 1px solid var(--xh-border);
    box-shadow: var(--xh-shadow);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}
.xh-stat b {
    display: block;
    font-size: 26px;
    font-weight: 800;
    color: var(--xh-primary-dark);
    line-height: 1.2;
}
.xh-stat span { font-size: 12.5px; color: var(--xh-text-2); }

/* 搜索 / 过滤 */
.xh-filter {
    max-width: 560px;
    margin: 0 auto 34px;
    display: flex;
    gap: 10px;
    padding: 8px;
    border-radius: 999px;
    background: var(--xh-panel-strong);
    border: 1px solid var(--xh-border);
    box-shadow: var(--xh-shadow);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}
.xh-filter input {
    flex: 1;
    border: none !important;
    background: transparent !important;
    padding: 10px 16px;
    font-size: 14.5px;
    color: var(--xh-text);
    border-radius: 999px;
}
.xh-filter input:focus { box-shadow: none !important; }
.xh-filter button {
    padding: 10px 24px;
    border-radius: 999px;
    border: none;
    background: linear-gradient(135deg, var(--xh-primary) 0%, var(--xh-primary-dark) 100%);
    color: #fff;
    font-weight: 600;
    font-size: 14px;
    box-shadow: 0 4px 18px rgba(66, 144, 245, .32);
}

/* 工具卡片网格 */
.xh-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
    padding-bottom: 20px;
}
.xh-card {
    display: flex;
    flex-direction: column;
    padding: 28px;
    border-radius: var(--xh-r-lg);
    background: var(--xh-panel);
    border: 1px solid var(--xh-border);
    box-shadow: var(--xh-shadow);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    text-decoration: none;
    color: inherit;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.xh-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--xh-shadow-md);
    border-color: var(--xh-border-strong);
    text-decoration: none;
    color: inherit;
}
.xh-card-ic {
    width: 52px; height: 52px;
    border-radius: 16px;
    display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, var(--xh-primary) 0%, #6aa0ff 100%);
    color: #fff;
    margin-bottom: 18px;
    box-shadow: 0 6px 18px rgba(66, 144, 245, .3);
}
.xh-card-ic svg { width: 26px; height: 26px; display: block; }
.xh-card-ic svg .dup { opacity: .42; }
.xh-card h3 { font-size: 18px; font-weight: 700; color: var(--xh-text); margin-bottom: 10px; }
.xh-card p { font-size: 13.5px; color: var(--xh-text-2); line-height: 1.75; margin-bottom: 20px; flex: 1; }
.xh-card-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.xh-badge {
    font-size: 12px; padding: 4px 12px; border-radius: 999px; font-weight: 600;
}
.xh-badge-on { background: rgba(34, 197, 94, .14); color: #15803d; }
.xh-badge-debug { background: rgba(245, 158, 11, .16); color: #a05a00; }
.xh-badge-new { background: rgba(66, 144, 245, .14); color: var(--xh-primary-dark); }
.xh-badge-soon { background: rgba(100, 116, 139, .16); color: #64748b; }
.xh-go { color: var(--xh-primary); font-size: 14px; font-weight: 600; }
.xh-soon { color: var(--xh-text-3); font-size: 13.5px; font-weight: 500; }
/* 待上线：不可点击，弱化图标与悬停反馈 */
.xh-card.is-soon { cursor: default; }
.xh-card.is-soon:hover {
    transform: none;
    box-shadow: var(--xh-shadow);
    border-color: var(--xh-border);
}
.xh-card.is-soon .xh-card-ic {
    background: linear-gradient(135deg, #94a3b8 0%, #b6c2d2 100%);
    box-shadow: 0 6px 18px rgba(148, 163, 184, .28);
}
.xh-empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 46px 20px;
    color: var(--xh-text-3);
    font-size: 14px;
}

/* 反馈卡片 */
/* ============================================================
   7. 深色模式
   ============================================================ */
body.dark .xh-header {
    background: linear-gradient(180deg, rgba(13, 20, 34, .88) 0%, rgba(11, 18, 30, .70) 100%);
    border-bottom-color: rgba(255, 255, 255, .07);
}
body.dark .xh-brand-name,
body.dark .xh-footer-name { color: #e2e8f0; }
body.dark .xh-brand-slogan,
body.dark .xh-nav a,
body.dark .xh-footer-slogan,
body.dark .xh-footer-links a { color: #9fb0c4; }
body.dark .xh-nav a:hover,
body.dark .xh-footer-links a:hover { color: #7ab7ff; }
body.dark .xh-clock,
body.dark .xh-icon-btn,
body.dark .xh-float,
body.dark .xh-stat,
body.dark .xh-card,
body.dark .xh-filter {
    background: rgba(20, 28, 46, .72);
    border-color: rgba(255, 255, 255, .08);
    color: #cbd5e1;
}
body.dark .xh-footer {
    background: linear-gradient(180deg, rgba(13, 20, 34, .5) 0%, rgba(10, 16, 28, .8) 100%);
    border-top-color: rgba(255, 255, 255, .07);
}
body.dark .xh-hero h1 {
    background: linear-gradient(135deg, #e2e8f0 0%, #7ab7ff 100%);
    -webkit-background-clip: text;
    background-clip: text;
}
body.dark .xh-hero p,
body.dark .xh-card p { color: #94a3b8; }
body.dark .xh-card h3 { color: #e2e8f0; }
body.dark .card, body.dark .res-card, body.dark .type-card,
body.dark .rfigbox, body.dark .v-diag-box, body.dark .sub-sec {
    background: rgba(20, 28, 46, .68) !important;
    border-color: rgba(255, 255, 255, .08) !important;
}
body.dark input:not([type="radio"]):not([type="checkbox"]):not(.cell-input),
body.dark select,
body.dark textarea {
    background: rgba(15, 23, 42, .8) !important;
    color: #e2e8f0 !important;
}
body.dark th { background: rgba(66, 144, 245, .14) !important; color: #cbd5e1 !important; }

/* ============================================================
   8. 响应式
   ============================================================ */
@media (max-width: 1080px) {
    .xh-nav a { padding: 7px 10px; font-size: 12.5px; }
    .xh-clock { display: none; }
}
@media (max-width: 860px) {
    :root { --xh-header-h: 64px; }
    .xh-header-inner { padding: 0 16px; gap: 12px; }
    .xh-nav { display: none; }
    .xh-brand-slogan { display: none; }
    .xh-main { padding: 36px 16px 0; }
    .xh-hero h1 { font-size: 32px; }
    .xh-hero p { font-size: 15px; }
    .xh-grid { grid-template-columns: 1fr; }
    .xh-footer-slogan { display: none; }   /* 窄屏省一行，页脚更矮 */
    .xh-footer-inner { padding: 12px 12px; }
    .xh-footer-links { gap: 4px 14px; }
}

/* 小屏（≤480）再收一档，避免备案竖线单独掉行 */
@media (max-width: 480px) {
    .xh-footer-links { font-size: 12px; gap: 4px 12px; }
    .xh-footer-legal { font-size: 11.5px; gap: 1px 10px; }
    .xh-footer .xhja-icp .sep { display: none; }
}

/* ===== 全站统一：备案号 ===== */
.xhja-icp{margin-top:10px;font-size:12.5px;line-height:1.8;color:#8a97a3;text-align:center}
.xhja-icp a{display:inline-flex;align-items:center;gap:6px;color:inherit;text-decoration:none}
.xhja-icp a:hover{color:#4290f5;text-decoration:underline}
.xhja-icp svg{width:14px;height:14px;flex:0 0 auto;opacity:.85}
.xhja-icp a:hover svg{opacity:1}
@media (prefers-color-scheme:dark){.xhja-icp{color:#8b8ea3}.xhja-icp a:hover{color:#7ec8f5}}

/* xhj 统一页脚（2026-09-22） */
.xhja-mail{margin-top:12px;display:flex;align-items:center;justify-content:center;gap:6px;
  font-size:13px;line-height:1.6;color:#6b7b8b;text-align:center}
.xhja-mail a{display:inline-flex;align-items:center;gap:6px;color:#4290f5;font-weight:600;text-decoration:none}
.xhja-mail a:hover{text-decoration:underline}
.xhja-icp{margin-top:10px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;
  gap:3px 10px;font-size:12.5px;line-height:1.9;color:#8a97a3}
.xhja-icp a{display:inline-flex;align-items:center;gap:6px;color:inherit;text-decoration:none;transition:color .2s}
.xhja-icp a:hover{color:#4290f5;text-decoration:underline}
.xhja-icp svg{width:14px;height:14px;flex:0 0 auto;opacity:.85}
.xhja-icp .sep{opacity:.4;user-select:none}
.beian-sep{opacity:.4;margin:0 4px}
#footerBeian{margin-top:10px}
@media (prefers-color-scheme:dark){
  .xhja-mail{color:#8b8ea3} .xhja-mail a{color:#7ec8f5}
  .xhja-icp{color:#8b8ea3} .xhja-icp a:hover{color:#7ec8f5}
}
