/* ============================================================
   变体：观象斋 (Guanxiang Zhai) — 中式古籍 · 宣纸朱墨
   纯视觉覆盖层，结构与逻辑完全复用 app.css / app.js
   启用方式：<html data-style="gx">
   支持日间 / 夜间，由 data-theme 决定
   配色取自 guanxiangzhai.com：宣纸、墨、朱砂、赭金
   ============================================================ */

/* ---------- 夜间：墨 ---------- */
[data-style="gx"] {
  --bg: #141519;
  --bg-2: #1b1d23;
  --modal: rgba(27, 29, 35, .96);
  --panel: rgba(255, 253, 247, .045);
  --panel-2: rgba(255, 253, 247, .075);
  --line: rgba(236, 230, 218, .1);
  --line-2: rgba(236, 230, 218, .2);
  --text: #ece6da;
  --dim: #a9a294;
  --muted: #8c8478;

  /* 五行入色：朱、赭、黛、绛、竹 */
  --cyan: #e06a4f;    /* 朱 */
  --violet: #d2a95c;  /* 赭 */
  --blue: #7d9bab;    /* 黛（水） */
  --pink: #d98a6f;    /* 绛 */
  --green: #7fae8c;   /* 竹（木） */
  --amber: #d2a95c;   /* 赭 */

  /* 绘图元素发光色：夜间朱 */
  --plot-glow: rgba(224, 106, 79, .5);

  /* 观象斋原色 */
  --paper: #141519;
  --paper-2: #1b1d23;
  --ink: #ece6da;
  --ink-2: #a9a294;
  --ink-3: #8c8478;
  --cinnabar: #e06a4f;
  --cinnabar-soft: rgba(224, 106, 79, .14);
  --gold: #d2a95c;
  --gold-soft: rgba(210, 169, 92, .14);

  --serif: "Songti SC", "STSong", "Source Han Serif SC", "Noto Serif SC",
           SimSun, "宋体", Georgia, serif;
  --sans: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei",
          "Noto Sans SC", system-ui, sans-serif;

  --gx-ease: cubic-bezier(.34, 1.45, .5, 1);
  --radius: 14px;
  --shadow: 0 2px 4px rgba(0, 0, 0, .22), 0 14px 34px -18px rgba(0, 0, 0, .6);
  --shadow-lg: 0 2px 4px rgba(0, 0, 0, .25), 0 28px 64px -30px rgba(0, 0, 0, .7);
  --gx-sh: 0, 0, 0;
}

/* ---------- 日间：宣纸 ---------- */
[data-theme="light"][data-style="gx"] {
  --bg: #f7f2e8;
  --bg-2: #fffdf7;
  --modal: rgba(255, 253, 247, .97);
  --panel: rgba(255, 253, 247, .72);
  --panel-2: rgba(255, 253, 247, .92);
  --line: rgba(31, 28, 24, .1);
  --line-2: rgba(31, 28, 24, .2);
  --text: #1f1c18;
  --dim: #5c564c;
  --muted: #7a7468;

  --cyan: #c8472e;    /* 朱砂 */
  --violet: #b8893a;  /* 赭金 */
  --blue: #2f4858;    /* 黛（水） */
  --pink: #b0553f;    /* 绛 */
  --green: #4a7c59;   /* 竹（木） */
  --amber: #b8893a;   /* 赭金 */

  /* 绘图元素发光色：日间朱砂 */
  --plot-glow: rgba(200, 71, 46, .45);

  --paper: #f7f2e8;
  --paper-2: #fffdf7;
  --ink: #1f1c18;
  --ink-2: #5c564c;
  --ink-3: #7a7468;
  --cinnabar: #c8472e;
  --cinnabar-soft: rgba(200, 71, 46, .1);
  --gold: #b8893a;
  --gold-soft: rgba(184, 137, 58, .12);

  --shadow: 0 1px 2px rgba(31, 28, 24, .04), 0 12px 32px -14px rgba(31, 28, 24, .14);
  --shadow-lg: 0 2px 4px rgba(31, 28, 24, .05), 0 26px 60px -26px rgba(31, 28, 24, .18);
  --gx-sh: 31, 28, 24;
}

/* ============================================================
   字体：标题用宋，正文保持清晰无衬线
   ============================================================ */
[data-style="gx"] h1,
[data-style="gx"] h2,
[data-style="gx"] h3,
[data-style="gx"] .grad,
[data-style="gx"] .stat-value,
[data-style="gx"] .clock-time,
[data-style="gx"] .brand-text,
[data-style="gx"] .dd-main b,
[data-style="gx"] .palette-item .p-title,
[data-style="gx"] .card-head h2 {
  font-family: var(--serif);
  letter-spacing: .05em;
  font-weight: 500;
}
[data-style="gx"] body { letter-spacing: .015em; }
[data-style="gx"] .lede { font-size: var(--fs-md); line-height: 1.9; color: var(--dim); }

/* ---------- 每日一句（宣纸上的题句） ---------- */
[data-style="gx"] .quote::before { background: linear-gradient(180deg, #c8472e, #b8893a); opacity: .8; }
[data-style="gx"] .quote-text {
  font-family: var(--serif);
  font-size: 18px; line-height: 1.95;
  letter-spacing: .05em;
}
/* 毛主席语录 / 诗词：宣纸上仍走书法体，字距比正文略收，避免行草笔画被拉散 */
[data-style="gx"] .quote .quote-text.is-mao {
  font-family: var(--mao);
  font-size: clamp(20px, 2.7vw, 23px);
  line-height: 1.75;
  letter-spacing: .045em;
}
[data-style="gx"] .quote-src { font-family: var(--serif); letter-spacing: .05em; }
[data-style="gx"] .quote-refresh { font-family: var(--serif); letter-spacing: .05em; }
[data-style="gx"] .quote-refresh:hover { color: var(--cinnabar, #c8472e); }
[data-style="gx"] .quote-src::before { content: '—— '; color: var(--gold, #b8893a); opacity: 1; }

/* ============================================================
   背景：宣纸底 · 淡墨晕 · 纸纹，去掉科技感元素
   ============================================================ */
[data-style="gx"] .aurora { filter: blur(120px); }
[data-style="gx"] .blob { border-radius: 50%; }

[data-style="gx"] .blob-1 {
  background: radial-gradient(circle at 40% 36%, #6b3a22, transparent 66%);
  opacity: .5;
}
[data-style="gx"] .blob-2 {
  background: radial-gradient(circle at 56% 44%, #4a3a1c, transparent 66%);
  opacity: .42;
}
[data-style="gx"] .blob-3 {
  background: radial-gradient(circle at 50% 50%, #1d3327, transparent 66%);
  opacity: .4;
}

[data-theme="light"][data-style="gx"] .blob { mix-blend-mode: multiply; }
[data-theme="light"][data-style="gx"] .blob-1 {
  background: radial-gradient(circle at 40% 36%, #e4cba4, transparent 66%);
  opacity: .62;
}
[data-theme="light"][data-style="gx"] .blob-2 {
  background: radial-gradient(circle at 56% 44%, #eab6a2, transparent 66%);
  opacity: .48;
}
[data-theme="light"][data-style="gx"] .blob-3 {
  background: radial-gradient(circle at 50% 50%, #bcd2c1, transparent 66%);
  opacity: .4;
}

/* 去掉网格与粒子，改铺一层纸纹 */
[data-style="gx"] .mesh-grid { display: none; }
[data-style="gx"] #particles { display: none !important; }

[data-style="gx"] .backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    repeating-linear-gradient(0deg, rgba(236, 230, 218, .022) 0 1px, transparent 1px 3px),
    repeating-linear-gradient(90deg, rgba(236, 230, 218, .018) 0 1px, transparent 1px 3px);
}
[data-theme="light"][data-style="gx"] .backdrop::after {
  background-image:
    repeating-linear-gradient(0deg, rgba(31, 28, 24, .026) 0 1px, transparent 1px 3px),
    repeating-linear-gradient(90deg, rgba(31, 28, 24, .02) 0 1px, transparent 1px 3px);
}
[data-style="gx"] .noise { opacity: .035; }
[data-theme="light"][data-style="gx"] .noise { opacity: .028; }

[data-style="gx"] .vignette {
  background: radial-gradient(120% 90% at 50% 0%, transparent 42%, rgba(0, 0, 0, .45) 100%);
}
[data-theme="light"][data-style="gx"] .vignette {
  background: radial-gradient(120% 90% at 50% 0%, transparent 48%, rgba(120, 96, 60, .1) 100%);
}

/* ---------- 选中与滚动条 ---------- */
[data-style="gx"] ::selection { background: var(--cinnabar-soft); }
[data-style="gx"] ::-webkit-scrollbar-thumb { background: rgba(var(--gx-sh), .22); }
[data-style="gx"] ::-webkit-scrollbar-thumb:hover { background: rgba(var(--gx-sh), .38); }

[data-style="gx"] .scroll-progress {
  background: linear-gradient(90deg, var(--cinnabar), var(--gold));
  box-shadow: 0 0 8px var(--cinnabar-soft);
  height: 2px;
}

/* ============================================================
   浮层基底：宣纸卡片，细线，淡影
   ============================================================ */
[data-style="gx"] .card,
[data-style="gx"] .stats,
[data-style="gx"] .search-bar,
[data-style="gx"] .pill,
[data-style="gx"] .palette-box,
[data-style="gx"] .toast,
[data-style="gx"] .dd-menu {
  background: var(--panel-2);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
  -webkit-backdrop-filter: blur(14px) saturate(120%);
          backdrop-filter: blur(14px) saturate(120%);
}
[data-theme="light"][data-style="gx"] .card,
[data-theme="light"][data-style="gx"] .stats,
[data-theme="light"][data-style="gx"] .search-bar,
[data-theme="light"][data-style="gx"] .palette-box,
[data-theme="light"][data-style="gx"] .toast,
[data-theme="light"][data-style="gx"] .dd-menu {
  background: rgba(255, 253, 247, .86);
}

/* ---------- 卡片 ---------- */
[data-style="gx"] .card {
  border-radius: var(--radius);
  transition: transform .4s var(--gx-ease), box-shadow .4s ease, border-color .4s ease;
}
[data-style="gx"] .card::before { opacity: 0 !important; }
[data-style="gx"] .card::after {
  top: 0; left: 14%; right: 14%; height: 1px;
  border-radius: 0;
  background: linear-gradient(90deg, transparent, var(--cinnabar), transparent);
  opacity: .3;
  transition: opacity .4s ease;
}
[data-style="gx"] .card:hover {
  transform: translateY(-3px);
  border-color: rgba(var(--gx-sh), .0);
  box-shadow: var(--shadow-lg);
}
[data-style="gx"] .card:hover::after { opacity: 1; }
[data-theme="light"][data-style="gx"] .card:hover {
  border-color: rgba(200, 71, 46, .28);
  box-shadow: 0 2px 4px rgba(31, 28, 24, .05), 0 24px 54px -26px rgba(31, 28, 24, .22);
}
[data-theme="light"][data-style="gx"] .card:hover::after { background: linear-gradient(90deg, transparent, var(--cinnabar), transparent); }

[data-style="gx"] .card-head { padding-bottom: 12px; border-bottom: 1px solid var(--line); }

/* 图标方块 → 朱砂小印 */
[data-style="gx"] .card-ico {
  border-radius: 5px;
  background: var(--cinnabar-soft);
  box-shadow: inset 0 0 0 1px var(--cinnabar-soft);
}
[data-style="gx"] .i-cyan   { color: var(--cinnabar); background: var(--cinnabar-soft); }
[data-style="gx"] .i-violet { color: var(--gold);     background: var(--gold-soft); }
[data-style="gx"] .i-blue   { color: var(--blue);     background: rgba(125, 155, 171, .14); }
[data-style="gx"] .i-pink   { color: var(--pink);     background: rgba(176, 85, 63, .14); }
[data-style="gx"] .i-green  { color: var(--green);    background: rgba(74, 124, 89, .14); }
[data-style="gx"] .i-amber  { color: var(--amber);    background: var(--gold-soft); }

/* ---------- 导航 ---------- */
[data-style="gx"] .nav.scrolled {
  background: rgba(20, 21, 25, .82);
  -webkit-backdrop-filter: blur(20px) saturate(130%);
          backdrop-filter: blur(20px) saturate(130%);
}
[data-theme="light"][data-style="gx"] .nav.scrolled {
  background: rgba(247, 242, 232, .86);
}
[data-style="gx"] .nav::after { background: var(--line); }

[data-style="gx"] .nav-links a {
  border-radius: 4px;
  background: transparent;
  letter-spacing: .06em;
}
[data-style="gx"] .nav-links a:hover { background: transparent; color: var(--cinnabar); }
[data-style="gx"] .nav-links a.active { color: var(--cinnabar); }
[data-style="gx"] .nav-links a.active::after {
  background: var(--cinnabar);
  height: 1.5px;
  border-radius: 0;
}
[data-style="gx"] .nav-links a:hover::after {
  content: '';
  position: absolute;
  left: 50%; bottom: 4px;
  transform: translateX(-50%);
  width: 46%;
  height: 1.5px;
  background: var(--cinnabar);
  opacity: .45;
}
[data-style="gx"] .nav-links a { position: relative; }
[data-style="gx"] .nav-links a:active { transform: none; }

[data-style="gx"] .cmd-trigger,
[data-style="gx"] .icon-btn {
  background: var(--panel);
  border-color: var(--line);
  border-radius: 8px;
}
[data-style="gx"] .cmd-trigger:hover,
[data-style="gx"] .icon-btn:hover {
  border-color: var(--cinnabar);
  color: var(--cinnabar);
  background: var(--cinnabar-soft);
}

/* ---------- 下拉菜单 ---------- */
[data-style="gx"] .dd-menu { border-radius: 10px; padding: 6px; }
[data-style="gx"] .dd-item { border-radius: 6px; }
[data-style="gx"] .dd-item:hover { background: var(--cinnabar-soft); }
[data-style="gx"] .dd-item[aria-selected="true"] {
  background: var(--cinnabar-soft);
  box-shadow: inset 0 0 0 1px var(--cinnabar-soft);
}
[data-style="gx"] .dd-check { color: var(--cinnabar); }

/* 观象斋色卡（任何皮肤下都可见） */
.sw-gx {
  background:
    radial-gradient(circle at 30% 26%, #e8c79a, transparent 58%),
    radial-gradient(circle at 74% 74%, #c8472e, transparent 58%),
    #f7f2e8;
}

/* ---------- Hero ---------- */
[data-style="gx"] .hero { position: relative; }
[data-style="gx"] .grad {
  background: linear-gradient(100deg, var(--gold) 0%, var(--cinnabar) 58%, #8e3a26 100%);
  -webkit-background-clip: text; background-clip: text;
}
[data-theme="light"][data-style="gx"] .grad {
  background: linear-gradient(100deg, #8a6224 0%, var(--cinnabar) 60%, #7f2f1c 100%);
  -webkit-background-clip: text; background-clip: text;
}
[data-style="gx"] .hero h1 { font-size: clamp(34px, 5vw, 54px); line-height: 1.28; }
[data-style="gx"] .greet { font-family: var(--serif); }

[data-style="gx"] .stat-value,
[data-style="gx"] .clock-time {
  background: linear-gradient(180deg, #fffdf7, #cbbfa8);
  -webkit-background-clip: text; background-clip: text;
  font-family: var(--serif);
}
[data-theme="light"][data-style="gx"] .stat-value,
[data-theme="light"][data-style="gx"] .clock-time {
  background: linear-gradient(180deg, #1f1c18, #6a6153);
  -webkit-background-clip: text; background-clip: text;
}
[data-style="gx"] .stat-label,
[data-style="gx"] .stat-unit { letter-spacing: .1em; }
[data-style="gx"] .stat-div {
  background: linear-gradient(180deg, transparent, var(--line-2), transparent);
}

/* 新版概览卡片 · 观象斋重排 */
[data-style="gx"] .overview-title { font-family: var(--serif); letter-spacing: .08em; background: none; color: var(--text); }
[data-style="gx"] .overview-sub { font-family: var(--serif); letter-spacing: .06em; }
[data-style="gx"] .stat-card {
  background: var(--panel-2);
  border-color: var(--line);
  box-shadow: 0 1px 2px rgba(0,0,0,.08);
}
[data-style="gx"] .stat-ico { border-radius: 6px; }
[data-style="gx"] .stat-ico.i-todo { background: linear-gradient(135deg, #c8472e, #8e3a26); }
[data-style="gx"] .stat-ico.i-note { background: linear-gradient(135deg, #b8893a, #7a5a20); }
[data-style="gx"] .stat-ico.i-link { background: linear-gradient(135deg, #4a7c59, #2e543b); }
[data-style="gx"] .stat-ico.i-focus { background: linear-gradient(135deg, #a0524e, #6b2f2c); }
[data-style="gx"] .overview-progress-bar > div { background: linear-gradient(90deg, #c8472e, #b8893a); }
[data-theme="light"][data-style="gx"] .stat-card { background: #fffdf7; box-shadow: 0 1px 3px rgba(31,28,24,.08); }

/* 状态小标：观象斋式标签 */
[data-style="gx"] .pill {
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--panel-2);
  letter-spacing: .12em;
  font-size: 12px;
}
[data-style="gx"] .pill .dot-live {
  background: var(--cinnabar);
  box-shadow: 0 0 6px var(--cinnabar);
  width: 6px; height: 6px;
}

/* 藏书印：朱砂竖排小印（宽屏装饰） */
[data-style="gx"] .hero::after {
  content: "安文";
  position: absolute;
  top: 4px; right: 6px;
  writing-mode: vertical-rl;
  font-family: var(--serif);
  font-size: 13px;
  letter-spacing: .3em;
  color: var(--cinnabar);
  border: 1.4px solid var(--cinnabar);
  border-radius: 3px;
  padding: 10px 5px;
  opacity: .5;
  pointer-events: none;
  transition: opacity .4s ease;
}
[data-style="gx"] .hero:hover::after { opacity: .85; }
@media (max-width: 860px) {
  [data-style="gx"] .hero::after { display: none; }
}

/* ---------- 按钮 ---------- */
[data-style="gx"] .btn {
  background: var(--panel-2);
  border-color: var(--line);
  border-radius: 8px;
  letter-spacing: .06em;
  transition: transform .3s var(--gx-ease), border-color .3s ease, background .3s ease, box-shadow .3s ease;
}
[data-style="gx"] .btn:hover {
  transform: translateY(-2px);
  border-color: var(--cinnabar);
  box-shadow: 0 12px 26px -16px rgba(var(--gx-sh), .5);
}
[data-style="gx"] .btn-primary {
  background: var(--cinnabar);
  border-color: var(--cinnabar);
  color: #fffaf5;
  box-shadow: 0 10px 24px -14px rgba(200, 71, 46, .7);
}
[data-style="gx"] .btn-primary:hover {
  background: var(--cinnabar);
  border-color: var(--cinnabar);
  filter: brightness(1.08);
  box-shadow: 0 14px 30px -14px rgba(200, 71, 46, .8);
}
[data-style="gx"] .btn-ghost { background: transparent; }

/* ---------- 搜索 ---------- */
[data-style="gx"] .engine-tab {
  border-radius: 6px;
  letter-spacing: .08em;
}
[data-style="gx"] .engine-tab.active {
  background: var(--cinnabar-soft);
  color: var(--cinnabar);
  box-shadow: inset 0 0 0 1px var(--cinnabar-soft);
}
[data-style="gx"] .search-bar { border-radius: 10px; }
[data-style="gx"] .search-bar:focus-within {
  border-color: var(--cinnabar);
  box-shadow: 0 0 0 3px var(--cinnabar-soft);
}
[data-style="gx"] .search-icon { color: var(--ink-3); }

/* ---------- 速记 ---------- */
[data-style="gx"] #note {
  background: var(--panel);
  border-radius: 8px;
  line-height: 1.95;
}
[data-style="gx"] #note:focus { border-color: var(--cinnabar); box-shadow: 0 0 0 3px var(--cinnabar-soft); }

/* ---------- 进度条 / 待办 ---------- */
/* .bar 是 div，改 background；.dial-* 是 SVG，必须改 stroke（background 对 SVG 元素无效） */
[data-style="gx"] .bar { background: rgba(var(--gx-sh), .12); }
[data-style="gx"] .bar i { background: linear-gradient(90deg, var(--cinnabar), var(--gold)); box-shadow: none; }
[data-style="gx"] .dial-track { stroke: rgba(var(--gx-sh), .16); }
[data-style="gx"] .dial-fill { filter: drop-shadow(0 0 7px var(--plot-glow)); }
[data-style="gx"] .todo-item { border-radius: 8px; }
[data-style="gx"] .todo-item:hover { background: var(--cinnabar-soft); }
[data-style="gx"] .tick {
  border-radius: 3px;
  border-color: var(--line-2);
}
[data-style="gx"] .todo-item.done .tick {
  background: var(--cinnabar);
  border-color: var(--cinnabar);
  color: #fffaf5;
}

/* ---------- 芯片 ---------- */
[data-style="gx"] .chip {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 999px;
  letter-spacing: .08em;
}
[data-style="gx"] .chip i { box-shadow: 0 0 6px currentColor; }

/* ---------- 链接网格 ---------- */
[data-style="gx"] .link-item {
  border-radius: 10px;
  background: var(--panel);
}
[data-style="gx"] .link-item:hover {
  border-color: var(--cinnabar);
  transform: translateY(-2px);
  box-shadow: 0 14px 30px -18px rgba(var(--gx-sh), .45);
}
[data-style="gx"] .link-item.add { border-style: dashed; }
[data-style="gx"] .link-icon { border-radius: 5px; }

/* ---------- 命令面板 ---------- */
[data-style="gx"] .palette-box { border-radius: 12px; }
[data-style="gx"] .palette-mask {
  background: rgba(10, 9, 7, .5);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}
[data-theme="light"][data-style="gx"] .palette-mask { background: rgba(90, 74, 48, .24); }
[data-style="gx"] .palette-item.sel {
  background: var(--cinnabar-soft);
  box-shadow: inset 0 0 0 1px var(--cinnabar-soft);
}
[data-style="gx"] .palette-item .p-ico {
  border-radius: 5px;
  background: var(--cinnabar-soft);
  color: var(--cinnabar);
}

/* ---------- 专注卡片运行态 ---------- */
[data-style="gx"] .card.running {
  border-color: rgba(200, 71, 46, .45);
  box-shadow: 0 0 0 1px var(--cinnabar-soft), var(--shadow);
}

/* ---------- Toast / 页脚 ---------- */
[data-style="gx"] .toast { border-radius: 10px; }
[data-style="gx"] .foot { border-top-color: var(--line); color: var(--muted); }

/* ---------- 揭示动画：更缓，像翻页 ---------- */
[data-style="gx"] .reveal {
  transform: translateY(14px);
  transition-duration: .85s;
  transition-timing-function: cubic-bezier(.22, .8, .28, 1);
}

/* 夜间下把看板卡片压暗一档，避免纯白刺眼 */
[data-theme="dark"] html[data-style="gx"] {
  --card: #f0ece2;
  --line: rgba(31, 28, 24, .12);
}

/* ============================================================
   赋能看板页：整页换成宣纸朱墨（原蓝色系全部替换）
   ============================================================ */
[data-style="gx"] body,
[data-style="gx"] .emp-page-body {
  background: var(--bg);
  color: var(--text);
}

/* empower 的 :root 变量（特异性需要 html 前缀才能压过） */
html[data-style="gx"] {
  --brand: #c8472e; --brand-d: #8e2f1c; --brand-l: #e06a4f;
  --ok: #4a7c59; --ok-l: #5f9470; --ok-d: #356040;
  --bad: #c0392b; --warn: #b8893a; --muted: #8c8478;
  --ink: #1f1c18; --ink2: #5c564c; --ink3: #7a7468;
  --line: rgba(31, 28, 24, .1); --card: #fffdf7;
  --radius: 14px;
  --shadow: 0 2px 4px rgba(31, 28, 24, .05), 0 14px 34px -18px rgba(31, 28, 24, .16);
  --shadow-sm: 0 5px 16px rgba(31, 28, 24, .08);
}

/* 顶部标题条：朱砂 */
[data-style="gx"] .db-header {
  background:
    repeating-linear-gradient(45deg, rgba(255, 255, 255, .04) 0 14px, transparent 14px 28px),
    linear-gradient(135deg, #8e2f1c 0%, var(--cinnabar) 52%, #a03a26 100%);
  box-shadow: 0 8px 26px -12px rgba(140, 45, 28, .55);
}
[data-style="gx"] .nav-title { font-family: var(--serif); letter-spacing: .08em; }

/* Tab / 按钮 */
[data-style="gx"] .tab {
  background: var(--cinnabar-soft);
  color: var(--ink2);
  border-radius: 6px;
  letter-spacing: .08em;
}
[data-style="gx"] .tab:hover { background: rgba(200, 71, 46, .18); }
[data-style="gx"] .tab.active {
  background: linear-gradient(135deg, var(--brand-l), var(--brand) 55%, var(--brand-d));
  box-shadow: 0 8px 18px -8px rgba(140, 45, 28, .6);
}
[data-style="gx"] .mini-btn {
  border-color: var(--cinnabar);
  color: var(--cinnabar);
  background: var(--card);
  border-radius: 6px;
}
[data-style="gx"] .mini-btn:hover { background: var(--cinnabar); color: #fffaf5; }
[data-style="gx"] .fs-btn { background: var(--brand); border-radius: 6px; }
[data-style="gx"] .run-btn,
[data-style="gx"] .dl-btn {
  background: linear-gradient(135deg, var(--brand-l), var(--brand) 42%, var(--brand-d));
  box-shadow: 0 6px 16px -8px rgba(140, 45, 28, .7);
}
[data-style="gx"] .run-btn:disabled {
  background: linear-gradient(135deg, #b3ab9c, #c9c2b4);
}

/* 面板 / 卡片 */
[data-style="gx"] .panel {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 0 var(--radius) var(--radius) var(--radius);
  box-shadow: var(--shadow);
}
[data-style="gx"] .panel-head h2 { font-family: var(--serif); color: var(--ink); letter-spacing: .05em; }
[data-style="gx"] .panel-head p { color: var(--ink2); }

[data-style="gx"] .tag {
  background: var(--cinnabar-soft);
  color: var(--cinnabar);
  border-color: rgba(200, 71, 46, .2);
  border-radius: 999px;
}
[data-style="gx"] .dropzone {
  border-color: rgba(184, 137, 58, .5);
  background: rgba(184, 137, 58, .05);
  color: var(--ink2);
}
[data-style="gx"] .dropzone:hover,
[data-style="gx"] .dropzone.drag {
  border-color: var(--cinnabar);
  background: var(--cinnabar-soft);
}
[data-style="gx"] .dz-hint { color: var(--ink3); }

/* 日志控制台 */
[data-style="gx"] .log {
  background: linear-gradient(180deg, #1b1d23, #21242b);
  color: #b6c8ae;
}
[data-style="gx"] .log .t { color: #8c9a7c; }
[data-style="gx"] .log .ok { color: #7fae8c; }
[data-style="gx"] .log .err { color: #e06a4f; }

/* 进度条 */
[data-style="gx"] .progress-bar { background: rgba(31, 28, 24, .09); }
[data-style="gx"] .progress-fill {
  background-color: var(--cinnabar);
  background-image: linear-gradient(90deg, #a03a26, var(--cinnabar)),
                    repeating-linear-gradient(45deg, rgba(255, 255, 255, .22) 0 10px, transparent 10px 20px);
}

/* KPI 与图表 */
[data-style="gx"] .kpi {
  background: var(--card);
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand);
  box-shadow: var(--shadow-sm);
}
[data-style="gx"] .kpi::after { background: radial-gradient(circle, rgba(200, 71, 46, .1), transparent 70%); }
[data-style="gx"] .kpi-val { color: var(--ink); font-family: var(--serif); }
[data-style="gx"] .kpi-label { color: var(--ink2); }
[data-style="gx"] .kpi-muted .kpi-val { color: var(--ink3); }
[data-style="gx"] .kpi-warn .kpi-val { color: #8a6224; }

[data-style="gx"] .dash-h { font-family: var(--serif); color: var(--ink); letter-spacing: .05em; }
[data-style="gx"] .dash-h::before { background: linear-gradient(180deg, var(--cinnabar), var(--brand-d)); border-radius: 2px; }
[data-style="gx"] .dash-chart,
[data-style="gx"] .dash-table-scroll {
  background: var(--card);
  border-color: var(--line);
  box-shadow: var(--shadow-sm);
}
[data-style="gx"] .dash-chart-title,
[data-style="gx"] .dash-table-title { font-family: var(--serif); color: var(--ink); letter-spacing: .05em; }
[data-style="gx"] .donut-val { color: var(--ink); font-family: var(--serif); }
[data-style="gx"] .donut-label { color: var(--ink2); }
[data-style="gx"] .donut-sub { color: var(--ink3); }
[data-style="gx"] .bar-empty {
  background: rgba(184, 137, 58, .05);
  border-color: rgba(184, 137, 58, .4);
  color: var(--ink3);
}
[data-style="gx"] .bar-label-bg { filter: drop-shadow(0 2px 4px rgba(31, 28, 24, .2)); }

/* 明细表 */
[data-style="gx"] table.dash-table th,
[data-style="gx"] table.dash-table td { border-color: var(--line); }
[data-style="gx"] table.dash-table th,
[data-style="gx"] table.dash-table tr.tr-head td {
  background: linear-gradient(180deg, #a03a26, var(--cinnabar));
  color: #fffaf5;
}
[data-style="gx"] table.dash-table tr:nth-child(even) td { background: rgba(184, 137, 58, .05); }
[data-style="gx"] table.dash-table tbody tr:hover td { background: var(--cinnabar-soft); }
[data-style="gx"] table.dash-table tr.tr-danger td { background: rgba(192, 57, 43, .1); color: var(--bad); }
[data-style="gx"] table.dash-table tr.tr-success td { background: rgba(74, 124, 89, .1); color: var(--ok-d); }
[data-style="gx"] table.dash-table tr.tr-warn td { background: rgba(184, 137, 58, .12); color: #8a6224; }
[data-style="gx"] table.dash-table tr.tr-section td { background: rgba(200, 71, 46, .08); color: var(--ink); }
[data-style="gx"] .dash-cap { color: #8a6224; }

/* 全屏明细 */
[data-style="gx"] .fullscreen-overlay { background: rgba(31, 28, 24, .5); }
[data-style="gx"] .fullscreen-modal { background: var(--card); }
[data-style="gx"] .fullscreen-head { background: linear-gradient(135deg, var(--brand-d), var(--brand)); }
[data-style="gx"] .fullscreen-body { background: var(--card); }

[data-style="gx"] footer,
[data-style="gx"] .emp-page-body footer { color: var(--ink3); }

/* ============================================================
   全域搜索页
   ============================================================ */
[data-style="gx"] .sr-hero-card {
  background:
    radial-gradient(120% 150% at 100% 0%, var(--gold-soft), transparent 55%),
    radial-gradient(110% 150% at 0% 100%, var(--cinnabar-soft), transparent 55%),
    var(--panel-2);
}
[data-style="gx"] .sr-title { font-family: var(--serif); letter-spacing: .05em; }
[data-style="gx"] .sr-modal { background: rgba(31, 28, 24, .42); }
[data-theme="dark"][data-style="gx"] .sr-modal { background: rgba(8, 8, 10, .62); }
[data-style="gx"] .dbtn.danger {
  border-color: rgba(200, 71, 46, .4);
  background: var(--cinnabar-soft);
  color: var(--cinnabar);
}
[data-style="gx"] .dbtn.danger:hover { background: rgba(200, 71, 46, .2); }
[data-style="gx"] .conn-st .err { color: var(--cinnabar); }
[data-style="gx"] .sr-results mark,
[data-style="gx"] .dsec mark {
  background: var(--cinnabar-soft);
  color: var(--cinnabar);
  border-radius: 2px;
  padding: 0 2px;
}

/* ============================================================
   登录 / 建号页
   ============================================================ */
[data-style="gx"] .auth-card {
  background: var(--panel-2);
  border-color: var(--line);
  box-shadow: var(--shadow);
}
[data-style="gx"] .auth-title { font-family: var(--serif); letter-spacing: .05em; font-weight: 600; }
[data-style="gx"] .auth-field input { border-radius: 6px; }
[data-style="gx"] .auth-field input:focus {
  border-color: var(--cinnabar);
  box-shadow: 0 0 0 3px var(--cinnabar-soft);
}
/* 主按钮改成朱砂 → 赭金的版本 */
[data-style="gx"] .auth-btn {
  border-radius: 6px;
  font-family: var(--serif); letter-spacing: .08em;
  color: #fffdf7;
}
[data-theme="dark"][data-style="gx"] .auth-btn { color: #141519; }
[data-style="gx"] .auth-msg.err { color: var(--cinnabar); }
[data-style="gx"] .auth-msg.ok { color: var(--green); }
[data-style="gx"] .auth-link { letter-spacing: .02em; }

/* ============================================================
   天气：恶劣天气动画 / 提示红点 / 详情弹窗
   （配色一律走皮肤变量：app.css 里雨丝用 --cyan、雪粒用 --violet，
     gx 下自动变成朱砂与赭金）
   ============================================================ */
[data-style="gx"] { --wx-alert: var(--cinnabar); }

[data-style="gx"] .wx-panel { border-radius: 12px; }
[data-style="gx"] .wx-city { font-family: var(--serif); letter-spacing: .06em; }
[data-style="gx"] .wx-desc { font-family: var(--serif); letter-spacing: .04em; }
[data-style="gx"] .wx-temp { font-family: var(--serif); }
[data-style="gx"] .wx-close { border-radius: 5px; }
[data-style="gx"] .wx-close:hover { color: var(--cinnabar); border-color: var(--cinnabar); background: var(--cinnabar-soft); }
[data-style="gx"] .wx-grid { border-radius: 8px; }
[data-style="gx"] .wx-alert { border-radius: 8px; font-family: var(--serif); }
[data-style="gx"] .wx-day-bar i { background: linear-gradient(90deg, var(--cinnabar), var(--gold, #b8893a)); }
[data-style="gx"] .wx-act { border-radius: 6px; font-family: var(--serif); letter-spacing: .05em; }
[data-style="gx"] .wx-act:hover { border-color: var(--cinnabar); color: var(--cinnabar); }
[data-style="gx"] .wx-mask { background: rgba(31, 28, 24, .5); }
[data-style="gx"] .wx-hero-icon { filter: saturate(.92); }
