/* ============================================================
   塔罗牌主题层（覆盖 app.css，仅视觉，不动任何交互逻辑）
   深空底 + 星尘 + 金色描边 + 玻璃牌面 + 入场/悬停/揭晓动画
   打印时自动退回浅色（文件末尾 @media print）
   ============================================================ */

:root{
  /* 底色改为星夜 */
  --ink:#f6efdd;
  --ink-2:#d7ccb6;
  --ink-3:#a99c85;
  --ink-4:#7e7360;

  --line:rgba(212,175,55,.20);
  --line-2:rgba(212,175,55,.36);

  --bg:#080713;
  --card:rgba(23,20,45,.66);
  --card-solid:#16132c;

  --brand:#d4af37;          /* 主金 */
  --brand-500:#f0d78c;      /* 亮金 */
  --brand-600:#e0bc55;
  --brand-50:rgba(212,175,55,.13);
  --brand-100:rgba(212,175,55,.24);

  --accent:#d4af37;
  --accent-soft:rgba(212,175,55,.13);

  --sh-1:0 2px 12px rgba(0,0,0,.45);
  --sh-2:0 8px 26px rgba(0,0,0,.5);
  --sh-3:0 18px 48px rgba(0,0,0,.6);
  --glow:0 0 0 1px rgba(212,175,55,.4), 0 0 26px rgba(212,175,55,.20);

  --r-s:8px; --r-m:12px; --r-l:18px; --r-xl:26px;
  --topbar-h:60px; --maxw:1120px;
}

body{
  color:var(--ink);
  background:
    radial-gradient(1100px 620px at 8% -8%, rgba(88,60,180,.30) 0%, rgba(8,7,19,0) 58%),
    radial-gradient(900px 520px at 96% 4%, rgba(180,120,60,.22) 0%, rgba(8,7,19,0) 60%),
    radial-gradient(760px 760px at 50% 108%, rgba(60,90,200,.20) 0%, rgba(8,7,19,0) 62%),
    linear-gradient(180deg,#0a0818 0%, #0c0a1e 42%, #080713 100%);
  background-attachment:fixed;
  overflow-x:hidden;
}
.app{position:relative;z-index:1}

/* ---------- 背景层：星尘 + 光斑 ---------- */
.tarot-bg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.tarot-bg .tb-grid{
  position:absolute;inset:-40% -10%;
  background-image:
    linear-gradient(rgba(212,175,55,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(212,175,55,.055) 1px, transparent 1px);
  background-size:64px 64px;
  transform:perspective(520px) rotateX(58deg) translateY(14%);
  transform-origin:bottom center;
  mask-image:linear-gradient(180deg, transparent 42%, #000 100%);
  -webkit-mask-image:linear-gradient(180deg, transparent 42%, #000 100%);
  animation:gridDrift 22s linear infinite;
}
@keyframes gridDrift{from{background-position:0 0,0 0}to{background-position:0 64px,64px 0}}

/* 三团缓慢流动的光（星云） */
.tarot-bg .tb-orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.5;mix-blend-mode:screen}
.tarot-bg .tb-orb.o1{width:420px;height:420px;left:-90px;top:-60px;background:#5b3fd6;animation:orbA 26s ease-in-out infinite}
.tarot-bg .tb-orb.o2{width:360px;height:360px;right:-80px;top:26%;background:#b0761f;animation:orbB 32s ease-in-out infinite}
.tarot-bg .tb-orb.o3{width:460px;height:460px;left:32%;bottom:-160px;background:#1e6fbd;animation:orbC 38s ease-in-out infinite}
@keyframes orbA{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(60px,50px) scale(1.14)}}
@keyframes orbB{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-70px,40px) scale(1.2)}}
@keyframes orbC{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(40px,-60px) scale(1.1)}}

/* 星点：一层用 box-shadow 铺 60 颗，两层不同速度形成视差 */
.tarot-bg .tb-stars{position:absolute;left:0;top:0;width:2px;height:2px;border-radius:50%;background:#fff;opacity:.85}
.tarot-bg .tb-stars.s1{
  box-shadow:
    120px 220px 0 0 rgba(255,255,255,.7), 320px 140px 0 0 rgba(255,255,255,.45),
    480px 380px 0 0 rgba(255,255,255,.6), 640px 90px 0 0 rgba(255,255,255,.35),
    780px 460px 0 0 rgba(255,255,255,.55), 940px 210px 0 0 rgba(255,255,255,.4),
    1100px 520px 0 0 rgba(255,255,255,.65), 1260px 160px 0 0 rgba(255,255,255,.35),
    1400px 340px 0 0 rgba(255,255,255,.5), 1560px 600px 0 0 rgba(255,255,255,.45),
    1720px 120px 0 0 rgba(255,255,255,.6), 1880px 420px 0 0 rgba(255,255,255,.4),
    200px 700px 0 0 rgba(255,255,255,.5), 420px 860px 0 0 rgba(255,255,255,.35),
    700px 760px 0 0 rgba(255,255,255,.6), 980px 940px 0 0 rgba(255,255,255,.4),
    1240px 820px 0 0 rgba(255,255,255,.55), 1520px 980px 0 0 rgba(255,255,255,.35),
    1780px 760px 0 0 rgba(255,255,255,.5), 2020px 900px 0 0 rgba(255,255,255,.4);
  animation:twinkle 5.5s ease-in-out infinite, driftUp 90s linear infinite;
}
.tarot-bg .tb-stars.s2{
  width:1.6px;height:1.6px;
  box-shadow:
    80px 80px 0 0 rgba(240,215,140,.75), 260px 320px 0 0 rgba(240,215,140,.5),
    420px 520px 0 0 rgba(240,215,140,.6), 600px 260px 0 0 rgba(240,215,140,.4),
    820px 640px 0 0 rgba(240,215,140,.55), 1040px 380px 0 0 rgba(240,215,140,.45),
    1200px 720px 0 0 rgba(240,215,140,.6), 1420px 260px 0 0 rgba(240,215,140,.4),
    1640px 620px 0 0 rgba(240,215,140,.5), 1860px 300px 0 0 rgba(240,215,140,.45),
    360px 1100px 0 0 rgba(240,215,140,.5), 900px 1180px 0 0 rgba(240,215,140,.4),
    1300px 1080px 0 0 rgba(240,215,140,.55), 1800px 1160px 0 0 rgba(240,215,140,.4);
  animation:twinkle 7s ease-in-out infinite reverse, driftUp 140s linear infinite;
}
@keyframes twinkle{0%,100%{opacity:.25}50%{opacity:.9}}
@keyframes driftUp{from{transform:translateY(0)}to{transform:translateY(-1400px)}}

/* 金色萤火：稀疏、大颗、慢速上浮，做纵深 */
.tarot-bg .tb-mote{
  position:absolute;left:0;top:0;width:5px;height:5px;border-radius:50%;
  background:radial-gradient(circle,#fff6d8 0%,rgba(212,175,55,.55) 42%,transparent 72%);
  opacity:0;filter:blur(.4px);
  box-shadow:
    90px 620px 0 0 rgba(212,175,55,.5), 340px 300px 0 0 rgba(255,240,196,.42),
    560px 780px 0 0 rgba(212,175,55,.38), 810px 180px 0 0 rgba(255,240,196,.5),
    1080px 540px 0 0 rgba(212,175,55,.44), 1340px 260px 0 0 rgba(255,240,196,.36),
    1600px 700px 0 0 rgba(212,175,55,.4), 1860px 420px 0 0 rgba(255,240,196,.34);
  animation:moteRise 26s linear infinite, moteTwinkle 6.5s ease-in-out infinite;
}
.tarot-bg .tb-mote.m2{
  width:3.4px;height:3.4px;
  box-shadow:
    180px 420px 0 0 rgba(255,240,196,.5), 470px 860px 0 0 rgba(212,175,55,.42),
    720px 260px 0 0 rgba(255,240,196,.36), 980px 640px 0 0 rgba(212,175,55,.48),
    1240px 320px 0 0 rgba(255,240,196,.4), 1520px 760px 0 0 rgba(212,175,55,.36),
    1780px 480px 0 0 rgba(255,240,196,.44);
  animation-duration:34s,8s;animation-direction:normal,reverse;
}
@keyframes moteRise{from{transform:translateY(60px)}to{transform:translateY(-1200px)}}
@keyframes moteTwinkle{0%,100%{opacity:.18}50%{opacity:.85}}

/* ---------- 顶栏 ---------- */
.topbar{
  background:rgba(10,8,24,.72);
  backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid rgba(212,175,55,.22);
  box-shadow:0 1px 24px rgba(0,0,0,.5);
}
.brand-mark{
  background:linear-gradient(135deg,#d4af37,#f5dfa0 45%,#8a6a1f);
  color:#1a1508;
  box-shadow:0 0 16px rgba(212,175,55,.45);
  position:relative;overflow:hidden;
}
.brand-mark::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.75) 48%,transparent 62%);
  transform:translateX(-120%);
  animation:sheen 4.5s ease-in-out infinite;
}
@keyframes sheen{0%,72%{transform:translateX(-120%)}88%,100%{transform:translateX(120%)}}
.brand-text{color:var(--ink);letter-spacing:.6px}
.topnav a{color:var(--ink-2)}
.topnav a:hover{background:var(--brand-50);color:var(--brand-500)}
.topnav a.on{background:linear-gradient(135deg,#d4af37,#e6c76a);color:#1a1508;box-shadow:0 0 16px rgba(212,175,55,.35)}
.nav-toggle span{background:var(--ink-2)}

/* ---------- 文字 ---------- */
.eyebrow{
  color:#1a1508;
  background:linear-gradient(135deg,#d4af37,#f0d78c);
  border:1px solid rgba(212,175,55,.6);
  box-shadow:0 0 14px rgba(212,175,55,.25);
}
.lead{color:var(--ink-2)}
h1.title,h2.title{font-family:Georgia,"Songti SC","STSong","Times New Roman",serif;color:#fbf5e6}
h1.title{text-shadow:0 0 30px rgba(212,175,55,.18)}

/* ---------- 卡片 / 玻璃 ---------- */
.card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--r-l);
  padding:22px;
  box-shadow:var(--sh-1), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(9px);
  transition:.22s;
}
.card:hover{border-color:var(--line-2)}
.split-card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);
  padding:20px;backdrop-filter:blur(9px);
}
.split-card li{color:var(--ink-2)}
.split-card li::before{background:var(--brand);box-shadow:0 0 8px rgba(212,175,55,.6)}
.split-card h4{color:#fbf5e6}
.module-intro{
  background:var(--accent-soft);border-left:3px solid var(--brand);color:var(--ink-2);
  border-radius:0 var(--r-m) var(--r-m) 0;
}

/* ---------- 按钮 ---------- */
.btn{
  background:linear-gradient(135deg,#d4af37,#e8c76e);
  color:#1a1508;border:1px solid rgba(240,215,140,.7);
  box-shadow:0 4px 16px rgba(212,175,55,.28);
  position:relative;overflow:hidden;font-weight:700;
}
.btn:hover{background:linear-gradient(135deg,#e8c76e,#f5dfa0);box-shadow:0 0 0 1px rgba(212,175,55,.6),0 8px 26px rgba(212,175,55,.38);transform:translateY(-2px)}
.btn::after{
  content:"";position:absolute;top:0;bottom:0;width:45%;left:-60%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.6),transparent);
  transform:skewX(-18deg);transition:left .55s ease;
}
.btn:hover::after{left:120%}
.btn.ghost{background:rgba(255,255,255,.05);color:var(--ink-2);border-color:var(--line-2);box-shadow:none}
.btn.ghost:hover{background:var(--brand-50);border-color:var(--brand);color:var(--brand-500);box-shadow:var(--glow)}
.btn.soft{background:var(--brand-50);color:var(--brand-500);border:1px solid var(--line-2)}
.btn.soft:hover{background:rgba(212,175,55,.22)}
.btn.dark{background:rgba(255,255,255,.08);color:var(--ink);border-color:var(--line-2)}
.btn.dark:hover{background:rgba(255,255,255,.15)}

/* ---------- Hero ---------- */
.hero{
  padding:78px 0 54px;border-bottom:1px solid rgba(212,175,55,.2);
  background:
    radial-gradient(760px 380px at 14% -14%, rgba(212,175,55,.16) 0%, rgba(8,7,19,0) 62%),
    radial-gradient(680px 360px at 90% 6%, rgba(124,92,240,.24) 0%, rgba(8,7,19,0) 62%);
}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}
.hero h1{font-size:clamp(28px,4.6vw,44px);font-family:Georgia,"Songti SC","STSong",serif}
.hero h1 em{color:var(--brand-500);text-shadow:0 0 26px rgba(212,175,55,.45)}
.hero h1 em::after{height:9px;bottom:1px;background:rgba(212,175,55,.28)}
.hero .lead{color:var(--ink-2);font-size:16px}
.hero-stats{
  margin-top:26px;
  padding:16px 0 0;border-top:1px dashed rgba(212,175,55,.28);
}
.hero-stat b{color:var(--brand-500);text-shadow:0 0 18px rgba(212,175,55,.35)}
.hero-stat span{color:var(--ink-3)}
.hero-panel{
  background:linear-gradient(160deg,rgba(30,25,58,.86),rgba(18,15,38,.9));
  border:1px solid rgba(212,175,55,.34);
  border-radius:var(--r-xl);padding:20px;box-shadow:var(--sh-3);
  backdrop-filter:blur(12px);position:relative;overflow:hidden;
}
.hero-panel::before{
  content:"";position:absolute;inset:0;border-radius:var(--r-xl);padding:1px;
  background:linear-gradient(140deg,rgba(212,175,55,.65),transparent 40%,transparent 60%,rgba(212,175,55,.4));
  -webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);
  mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;
}
.hero-panel h4{color:var(--brand-500);letter-spacing:2px}

/* 首页牌阵：三张扇形展开的塔罗牌 */
.fan{position:relative;height:112px;display:grid;place-items:center;margin:2px 0 14px}
.fan-card{
  position:absolute;bottom:0;width:64px;height:96px;border-radius:9px;
  background:linear-gradient(158deg,#312a5e 0%,#1a1536 52%,#0e0b1f 100%);
  border:1px solid rgba(212,175,55,.55);
  display:grid;place-items:center;color:#e7c766;
  box-shadow:0 12px 26px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.07),inset 0 0 22px rgba(212,175,55,.12);
  animation:fanFloat 5.4s ease-in-out infinite;
  transition:transform .45s cubic-bezier(.2,.8,.2,1), box-shadow .45s;
}
.fan-card .fan-rune{width:34px;height:34px;filter:drop-shadow(0 0 8px rgba(212,175,55,.55))}
.fan-card::after{                       /* 牌面内细线框 */
  content:"";position:absolute;inset:5px;border-radius:5px;
  border:1px dashed rgba(212,175,55,.34);
}
.fan-card.c1{transform:rotate(-21deg) translateX(-72px);z-index:1;animation-delay:0s}
.fan-card.c2{transform:rotate(0deg);z-index:3}
.fan-card.c3{transform:rotate(21deg) translateX(72px);z-index:1;animation-delay:1.1s}
.fan-card.c2{animation-delay:.55s}
@keyframes fanFloat{0%,100%{margin-bottom:0}50%{margin-bottom:-10px}}
.fan:hover .fan-card.c1{transform:rotate(-27deg) translateX(-94px)}
.fan:hover .fan-card.c2{transform:translateY(-12px) scale(1.06)}
.fan:hover .fan-card.c3{transform:rotate(27deg) translateX(94px)}
.fan:hover .fan-card{box-shadow:0 18px 34px rgba(0,0,0,.66),0 0 22px rgba(212,175,55,.32),inset 0 0 0 1px rgba(255,255,255,.09)}
.mini-type{border:1px solid transparent;transition:.2s}
.mini-type:hover{background:var(--brand-50);border-color:var(--line-2);transform:translateX(3px)}
.mini-dot{
  color:#1a1508!important;
  background:linear-gradient(135deg,var(--tc,#d4af37),var(--tc2,#8a6a1f));
  box-shadow:0 0 14px rgba(212,175,55,.3);
}
.mini-dot .rune{width:21px;height:21px}
.mini-type b{color:#fbf5e6}
.mini-type span{color:var(--ink-3)}
.mini-type .tcard-num{
  margin-left:auto;flex:0 0 auto;width:auto;height:auto;
  border:0;border-radius:0;padding:0;background:none;
  font-size:10.5px;opacity:.75;
}

/* ---------- 塔罗牌（16 型卡） ---------- */
.type-grid{grid-template-columns:repeat(4,1fr);gap:16px}
.group-head{margin:34px 0 16px}
.group-head b{font-family:Georgia,"Songti SC",serif;color:#fbf5e6;letter-spacing:1px}
.group-head span{color:var(--ink-3)}
.group-bar{background:linear-gradient(180deg,#d4af37,#8a6a1f);box-shadow:0 0 12px rgba(212,175,55,.5)}

.type-card{
  /* 鼠标跟随倾斜：--rx/--ry 由 JS 写入，--mx/--my 是高光落点 */
  --rx:0deg;--ry:0deg;--ty:0px;--sc:1;--mx:50%;--my:50%;
  background:
    radial-gradient(150% 86% at 50% -6%, rgba(212,175,55,.13), transparent 58%),
    radial-gradient(120% 70% at 50% 108%, rgba(124,92,240,.14), transparent 62%),
    linear-gradient(165deg,rgba(32,26,60,.92),rgba(16,13,34,.94));
  border:1px solid rgba(212,175,55,.26);
  border-radius:var(--r-l);
  padding:0;overflow:hidden;cursor:pointer;position:relative;
  backdrop-filter:blur(8px);
  display:flex;flex-direction:column;
  transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(var(--ty)) scale(var(--sc));
  transform-style:preserve-3d;
  transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s, border-color .35s;
  /* 注意：入场动画用 backwards 而非 both，否则 forwards 会把 transform 锁死、倾斜失效 */
  animation:cardIn .5s backwards;
  box-shadow:0 6px 20px rgba(0,0,0,.45);
}
@keyframes cardIn{from{opacity:0;transform:translateY(22px) rotateX(-14deg) scale(.96)}to{opacity:1;transform:none}}
.type-card::before{display:none}          /* 关掉原来的顶部色条 */
.type-card:hover{
  --ty:-10px;--sc:1.025;
  border-color:var(--tc);
  box-shadow:0 26px 54px rgba(0,0,0,.62),0 0 0 1px var(--tc),0 0 40px rgba(212,175,55,.26);
}
/* 悬停流光边框：绕牌边旋转的一道金光 */
@property --ang{syntax:'<angle>';initial-value:0deg;inherits:false}
.type-card::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  padding:1.5px;opacity:0;transition:opacity .35s;
  background:conic-gradient(from var(--ang),
    transparent 0 58%,
    rgba(212,175,55,.55) 72%,
    rgba(255,246,214,.95) 80%,
    rgba(212,175,55,.55) 88%,
    transparent 100%);
  -webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);
  mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude;
}
.type-card:hover::after{opacity:1;animation:boxSpin 2.6s linear infinite}
@keyframes boxSpin{to{--ang:360deg}}
/* 触屏/无鼠标设备不做倾斜，避免点一下就歪 */
@media (hover:none){.type-card{transform:none !important}}

/* 牌面外框（金色双线 + 四角） */
.tcard-frame{
  position:absolute;inset:7px;border-radius:13px;pointer-events:none;
  border:1px solid rgba(212,175,55,.28);
}
.tcard-frame::before,.tcard-frame::after{
  content:"";position:absolute;width:12px;height:12px;border:1px solid var(--tc,#d4af37);opacity:.85;
}
.tcard-frame::before{left:-1px;top:-1px;border-right:0;border-bottom:0}
.tcard-frame::after{right:-1px;bottom:-1px;border-left:0;border-top:0}
/* 悬停扫光 */
/* 高光跟着鼠标在牌面上游走 */
.tcard-sheen{
  position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .35s;
  background:radial-gradient(190px circle at var(--mx) var(--my),
    rgba(255,246,214,.22), rgba(212,175,55,.11) 44%, transparent 72%);
}
.type-card:hover .tcard-sheen{opacity:1;animation:sheenGlow 2.2s ease-in-out infinite}
@keyframes sheenGlow{0%,100%{opacity:.6}50%{opacity:1}}

.tcard-top{padding:18px 17px 6px;display:flex;align-items:center;gap:12px}
.tcard-rune{
  width:52px;height:52px;flex:0 0 auto;border-radius:13px;
  display:grid;place-items:center;position:relative;
  color:#1a1508;
  background:linear-gradient(135deg,var(--tc,#d4af37),rgba(255,255,255,.15));
  box-shadow:0 0 20px rgba(212,175,55,.32), inset 0 0 0 1px rgba(255,255,255,.28);
}
.tcard-rune .rune{width:32px;height:32px}
/* 符文外圈缓慢旋转的虚线光环，让牌面活起来 */
.tcard-rune::after{
  content:"";position:absolute;inset:-5px;border-radius:14px;pointer-events:none;
  border:1px dashed rgba(212,175,55,.5);
  animation:orbSpin 15s linear infinite;
}
.type-card:hover .tcard-rune::after{border-color:var(--tc,#d4af37);animation-duration:5s}
.tcard-num{
  margin-left:auto;font-family:Georgia,serif;font-size:11px;letter-spacing:1.6px;
  color:var(--ink-3);border:1px solid rgba(212,175,55,.3);border-radius:99px;padding:2px 8px;
}
.tc-code{font-size:11.5px;font-weight:750;letter-spacing:1.6px;color:var(--tc,#d4af37)}
.tc-name{font-size:15.5px;font-weight:700;color:#fbf5e6;font-family:Georgia,"Songti SC",serif;letter-spacing:.4px}
.tc-blurb{font-size:12.5px;color:var(--ink-3);line-height:1.65;min-height:42px;padding:0 17px}
.type-card .tc-foot{
  margin-top:auto;padding:11px 17px;border-top:1px dashed rgba(212,175,55,.24);
}
.tc-price{font-size:14px;font-weight:750;color:#fbf5e6}
.tc-price s{font-size:11.5px;color:var(--ink-4);margin-left:4px}
.tc-go{font-size:12.5px;color:var(--tc,#d4af37);font-weight:700;letter-spacing:.4px}
.type-card:hover .tc-go{text-shadow:0 0 12px currentColor}

/* ---------- 测试 ---------- */
.quiz-progress{background:transparent}
.qp-track{background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(212,175,55,.2)}
.qp-fill{background:linear-gradient(90deg,#8a6a1f,#d4af37,#f5dfa0);box-shadow:0 0 14px rgba(212,175,55,.6)}
.q-card{
  background:linear-gradient(160deg,rgba(32,26,60,.94),rgba(17,14,36,.96));
  border:1px solid rgba(212,175,55,.3);border-radius:var(--r-xl);padding:26px;
  box-shadow:var(--sh-3), 0 0 0 1px rgba(212,175,55,.12);
  backdrop-filter:blur(10px);
}
.q-card::before{
  content:"";position:absolute;inset:9px;border-radius:20px;border:1px solid rgba(212,175,55,.14);pointer-events:none;
}
.q-index{color:var(--brand-500)}
.q-text{color:#fbf5e6}
.opt{
  background:rgba(255,255,255,.04);border:1.5px solid rgba(212,175,55,.22);
  color:var(--ink-2);border-radius:var(--r-m);
}
.opt:hover{border-color:var(--brand);background:var(--brand-50);color:#fbf5e6}
.opt .key{background:rgba(255,255,255,.08);color:var(--ink-3);border:1px solid rgba(212,175,55,.25)}
.opt:hover .key{background:linear-gradient(135deg,#d4af37,#e8c76e);color:#1a1508}
.opt.sel{border-color:var(--brand);background:var(--brand-50);color:#fbf5e6;box-shadow:var(--glow)}
.mode-card{
  background:linear-gradient(160deg,rgba(32,26,60,.9),rgba(17,14,36,.92));
  border:1.5px solid rgba(212,175,55,.24);color:var(--ink-2);
}
.mode-card:hover{border-color:var(--brand);box-shadow:var(--glow);transform:translateY(-3px)}
.mode-card b{color:#fbf5e6}
.mode-card p{color:var(--ink-3)}
.mode-card .mc-tag{color:#1a1508;background:linear-gradient(135deg,#d4af37,#f0d78c);font-weight:700}
.quiz-nav .hint{color:var(--ink-4)}
.progress-dots .pd{background:rgba(255,255,255,.18)}
.progress-dots .pd.done{background:var(--brand)}
.progress-dots .pd.cur{background:#f5dfa0;box-shadow:0 0 0 4px rgba(212,175,55,.22)}

/* ---------- 结果页：抽牌揭晓 ---------- */
.result-hero{
  border-radius:var(--r-xl);padding:38px;position:relative;overflow:hidden;
  color:#fff;border:1px solid rgba(212,175,55,.4);
  background:
    radial-gradient(120% 96% at 0% 0%, var(--accent) -10%, transparent 58%),
    linear-gradient(150deg,#241d4d 0%,#14112c 55%,#0c0a1c 100%);
  box-shadow:var(--sh-3), 0 0 60px rgba(124,92,240,.18);
  animation:revealCard .8s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes revealCard{
  0%{opacity:0;transform:perspective(1000px) rotateY(-78deg) translateZ(-90px)}
  60%{opacity:1}
  100%{opacity:1;transform:perspective(1000px) rotateY(0) translateZ(0)}
}
.result-hero::before{
  content:"";position:absolute;inset:8px;border-radius:20px;border:1px solid rgba(212,175,55,.3);pointer-events:none;
}
.result-hero::after{
  width:280px;height:280px;right:-90px;top:-90px;
  background:radial-gradient(circle,rgba(212,175,55,.35),transparent 68%);
  animation:orbSpin 16s linear infinite;
}
@keyframes orbSpin{to{transform:rotate(360deg)}}
/* 牌面符印：右侧一枚发光的塔罗封章 */
.rh-seal{position:absolute;right:34px;top:26px;width:104px;height:104px;display:grid;place-items:center;
  border-radius:50%;color:#e7c766;
  background:radial-gradient(circle at 50% 42%,rgba(212,175,55,.34),rgba(212,175,55,.07) 58%,transparent 72%);
  box-shadow:0 0 34px rgba(212,175,55,.35),inset 0 0 26px rgba(212,175,55,.16);
  animation:sealIn .9s .18s backwards, sealBreath 4.6s ease-in-out .9s infinite;
}
.rh-seal .rune{width:62px;height:62px}
.rh-seal::after{
  content:"";position:absolute;inset:11px;border-radius:50%;
  border:1px dashed rgba(212,175,55,.42);animation:orbSpin 22s linear infinite;
}
.rh-seal-ring{
  content:"";position:absolute;inset:-7px;border-radius:50%;
  border:1px solid rgba(212,175,55,.3);
}
@keyframes sealIn{from{opacity:0;transform:scale(.6) rotate(-38deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes sealBreath{0%,100%{box-shadow:0 0 30px rgba(212,175,55,.3),inset 0 0 22px rgba(212,175,55,.14)}50%{box-shadow:0 0 52px rgba(212,175,55,.55),inset 0 0 30px rgba(212,175,55,.24)}}

/* 行内符文徽标（购买条等） */
.rune-badge{display:inline-grid;place-items:center;vertical-align:-.14em;margin-right:7px}
.rune-badge .rune{width:1.12em;height:1.12em;filter:drop-shadow(0 0 6px rgba(212,175,55,.5))}
.buy-bar .bb-title .rune-badge .rune{width:20px;height:20px}

.rh-code{color:var(--brand-500);letter-spacing:3.4px}
.rh-name{
  font-family:Georgia,"Songti SC","STSong",serif;
  background:linear-gradient(180deg,#fff8e6 0%,#e5c46a 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 0 42px rgba(212,175,55,.4);
}
.rh-tag{color:#e6dcc4}
.dim-bar{background:rgba(255,255,255,.16)}
.dim-bar i{background:linear-gradient(90deg,#8a6a1f,#f0d78c);box-shadow:0 0 12px rgba(212,175,55,.6)}
.dim-left{color:#fbf5e6}
.dim-right{color:#e6dcc4}
.dim-pct{color:var(--brand-500)}

/* ---------- 手册头 ---------- */
.manual-badge{
  background:linear-gradient(160deg,var(--accent),rgba(30,25,58,.9))!important;
  color:#fbf5e6!important;border:1px solid rgba(212,175,55,.4);
  box-shadow:0 0 26px rgba(212,175,55,.25), inset 0 1px 0 rgba(255,255,255,.14);
}
.tag{background:rgba(255,255,255,.07);color:var(--ink-2);border:1px solid rgba(212,175,55,.2)}
.tag.accent{background:var(--brand-50);color:var(--brand-500);border-color:var(--line-2)}
.module-tabs{border-bottom:1px solid rgba(212,175,55,.16)}
.mtab{
  background:rgba(255,255,255,.04);border:1.5px solid rgba(212,175,55,.22);
  color:var(--ink-2);
}
.mtab:hover{border-color:var(--brand);color:var(--brand-500)}
.mtab.on{background:linear-gradient(135deg,#d4af37,#e8c76e);border-color:#e8c76e;color:#1a1508;font-weight:700}

/* ---------- 困境卡片 ---------- */
.issue{
  background:linear-gradient(165deg,rgba(30,25,56,.9),rgba(17,14,36,.92));
  border:1px solid rgba(212,175,55,.24);
  border-radius:var(--r-l);
  box-shadow:var(--sh-1);
  transition:.24s;
}
.issue:hover{border-color:var(--line-2);box-shadow:var(--sh-2)}
.issue-head{padding:19px 21px}
.issue-no{
  background:var(--brand-50);color:var(--brand-500);border:1px solid rgba(212,175,55,.3);
}
.issue-title{color:#fbf5e6;font-weight:650}
.issue-caret{color:var(--ink-4)}
.issue-body{padding:0 21px 21px}
.blk-label{color:var(--brand-500);letter-spacing:1.4px}
.scene-box{
  background:rgba(0,0,0,.42);color:#e8dfc8;border:1px solid rgba(212,175,55,.18);
  border-radius:var(--r-m);padding:14px 17px;line-height:1.78;
}
.blk p{color:var(--ink-2)}
.tool-box{background:var(--brand-50);border:1px solid rgba(212,175,55,.24)}
.tool-box .tool-name{color:var(--brand-500)}
.script-box{background:linear-gradient(150deg,#0d0b1e,#191534);color:#f3e8cd;border-color:rgba(212,175,55,.2)}
.script-box::before{color:#c9b98f}
.sprint-box{background:rgba(255,255,255,.035);border-color:rgba(212,175,55,.3);color:var(--ink-2)}
.sprint-box b{color:var(--brand-500)}

/* ---------- 定价 ---------- */
.price-grid{grid-template-columns:repeat(4,1fr);gap:16px}
.price-card{
  background:linear-gradient(165deg,rgba(30,25,58,.9),rgba(16,13,34,.94));
  border:1px solid rgba(212,175,55,.26);
  border-radius:var(--r-xl);padding:26px 22px;
  color:var(--ink-2);backdrop-filter:blur(9px);
  transition:.24s;
}
.price-card:hover{box-shadow:var(--sh-3);transform:translateY(-4px);border-color:var(--line-2)}
.price-card.hot{border-color:#d4af37;box-shadow:0 0 0 1px rgba(212,175,55,.5),0 0 34px rgba(212,175,55,.2);transform:translateY(-4px)}
.price-card.hot::before{
  content:"";position:absolute;inset:8px;border-radius:var(--r-xl);border:1px solid rgba(212,175,55,.22);pointer-events:none;
}
.pc-tag{background:linear-gradient(135deg,#d4af37,#f0d78c);color:#1a1508;box-shadow:0 0 18px rgba(212,175,55,.4)}
/* app.css 的 .price-card .pc-tag 用白字压金底（对比度仅 2.1:1，小字看不清），
   这里同特异性后置覆盖成深字，保持金底高亮感的同时可读性达标 */
.price-card .pc-tag,.price-card.hot .pc-tag{color:#1a1508}
.pc-name{font-family:Georgia,"Songti SC",serif;color:#fbf5e6}
.pc-desc{color:var(--ink-3)}
.pc-price s{color:var(--ink-4)}
.pc-unit{color:var(--ink-3)}
.pc-list li{color:var(--ink-2)}
.pc-list li::before{background:var(--brand-500);box-shadow:none}
.anchor-box{
  background:linear-gradient(150deg,rgba(212,175,55,.10),rgba(124,92,240,.08));
  border:1px solid rgba(212,175,55,.32);
}
.ab-t{color:#e2d8c0}
.ab-t b{color:var(--brand-500)}
.note{background:rgba(255,255,255,.045);border:1px solid rgba(212,175,55,.22);color:var(--ink-2)}
.note.blue{background:var(--brand-50);border-color:var(--line-2);color:#e6d9b4}
.empty{color:var(--ink-2);line-height:2}
/* 「我的」页空状态：符文 + 标题 + 说明 + 按钮 */
.mt-empty{text-align:center;padding:40px 24px}
.mt-empty .empty-ico{
  width:76px;height:76px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;color:#f0d78c;
  background:radial-gradient(circle at 50% 42%,rgba(212,175,55,.28),rgba(212,175,55,.05) 60%,transparent 74%);
  border:1px solid rgba(212,175,55,.34);
  box-shadow:0 0 26px rgba(212,175,55,.26),inset 0 0 20px rgba(212,175,55,.12);
}
.mt-empty .empty-ico svg{width:44px;height:44px}
.mt-empty .empty-t{font-family:Georgia,"Songti SC","STSong",serif;font-size:18.5px;font-weight:700;color:#fbf5e6}
.mt-empty .empty-p{font-size:13.5px;color:var(--ink-3);line-height:1.85;margin:9px auto 20px;max-width:460px}
/* 徽章内放符文（替代字形不稳的 emoji） */
.manual-badge.ico{padding:6px}
.manual-badge.ico svg{width:100%;height:100%;display:block}

/* 白底容器统一转深空底：原 app.css 的白底 + 本主题浅金字 = 对比度 1.1，等于隐形 */
.rows{
  background:linear-gradient(165deg,rgba(30,25,58,.9),rgba(16,13,34,.94));
  border:1px solid rgba(212,175,55,.24);border-radius:var(--r-l);overflow:hidden;
}
.rows .row{border-bottom:1px solid rgba(212,175,55,.16);background:rgba(255,255,255,.02);transition:.2s}
.rows .row:last-child{border-bottom:0}
.rows .row:hover{background:rgba(255,255,255,.07)}
.row .r-main b{color:#fbf5e6}
.row .r-main span{color:var(--ink-3)}
.row-ico{
  flex:0 0 auto;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;
  background:rgba(212,175,55,.12);border:1px solid rgba(212,175,55,.3);color:var(--brand-500);
}
.row-ico svg{width:21px;height:21px}
.row.warn .row-ico{background:rgba(220,80,80,.14);border-color:rgba(220,80,80,.34);color:#f0a0a0}
.r-price{color:var(--brand-500)}
.kv b{color:#fbf5e6}
.kv span{color:var(--ink-3)}
.lead.center,.section-head .lead{color:var(--ink-2)}

/* ---------- FAQ（重做：深空卡 + 序号 + 展开动画 + 金色加号） ---------- */
.faq{
  background:linear-gradient(165deg,rgba(30,25,58,.92),rgba(16,13,34,.95));
  border:1px solid rgba(212,175,55,.26);border-radius:var(--r-l);overflow:hidden;
}
.faq-item{border-bottom:1px solid rgba(212,175,55,.16)}
.faq-item:last-child{border-bottom:0}
.faq-item:hover{background:rgba(255,255,255,.04)}
.faq-q{
  width:100%;text-align:left;display:flex;gap:13px;align-items:center;
  color:#fbf5e6;font-weight:650;padding:17px 20px;
}
.faq-q:hover{color:#fff8e6}
.faq-no{
  flex:0 0 auto;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;
  font-size:12px;font-weight:750;letter-spacing:.5px;
  background:var(--brand-50);border:1px solid rgba(212,175,55,.32);color:var(--brand-500);
}
.faq-item.open .faq-no{background:linear-gradient(135deg,#d4af37,#f0d78c);color:#1a1508;border-color:#e8c76e}
.faq-q .plus{
  margin-left:auto;color:var(--brand-500);transition:.26s;font-size:16px;flex:0 0 auto;
}
.faq-item.open .faq-q .plus{transform:rotate(45deg)}
.faq-a{
  color:var(--ink-2);background:rgba(255,255,255,.05);border-radius:var(--r-m);
  padding:0 20px 20px 59px;font-size:14px;line-height:1.85;
  max-height:0;overflow:hidden;opacity:0;transition:max-height .32s cubic-bezier(.2,.8,.2,1),opacity .3s,padding .3s;
}
.faq-item.open .faq-a{max-height:420px;opacity:1;padding:2px 16px 20px 59px}

/* ---------- 全量进阶版（重做：金色高亮塔罗卡） ---------- */
.pro-card{
  position:relative;overflow:hidden;
  background:linear-gradient(165deg,rgba(52,41,98,.95),rgba(18,15,40,.96));
  border:1px solid rgba(212,175,55,.46);border-radius:var(--r-xl);padding:28px;
  box-shadow:0 0 0 1px rgba(212,175,55,.2), 0 18px 48px rgba(0,0,0,.55), 0 0 60px rgba(124,92,240,.16);
}
.pro-card::before{                       /* 内框金线 */
  content:"";position:absolute;inset:9px;border-radius:22px;
  border:1px solid rgba(212,175,55,.2);pointer-events:none;
}
.pro-card::after{                        /* 右上流光 */
  content:"";position:absolute;width:320px;height:320px;right:-120px;top:-140px;
  background:radial-gradient(circle,rgba(212,175,55,.22),transparent 68%);pointer-events:none;
  animation:orbSpin 18s linear infinite;
}
.pro-seal{                               /* 左侧封章 */
  flex:0 0 auto;width:88px;height:88px;border-radius:50%;display:grid;place-items:center;
  color:#f0d78c;border:1px solid rgba(212,175,55,.42);
  background:radial-gradient(circle at 50% 42%,rgba(212,175,55,.3),rgba(212,175,55,.06) 60%,transparent 74%);
  box-shadow:0 0 28px rgba(212,175,55,.34),inset 0 0 24px rgba(212,175,55,.16);
}
.pro-seal svg{width:52px;height:52px}
.pro-eyebrow{
  display:inline-block;font-size:11.5px;font-weight:750;letter-spacing:2.4px;
  color:#1a1508;background:linear-gradient(135deg,#d4af37,#f0d78c);
  padding:4px 11px;border-radius:99px;margin-bottom:11px;
}
.pro-name{
  font-family:Georgia,"Songti SC","STSong",serif;font-size:23px;font-weight:700;
  color:#fbf5e6;letter-spacing:.4px;
}
.pro-sub{font-size:14px;color:var(--ink-3);line-height:1.75;margin:9px 0 0}
.pro-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:4px 0 16px}
.pro-price .cur{color:var(--brand-500);font-size:19px;font-weight:700}
.pro-price .num{
  font-size:42px;font-weight:800;letter-spacing:-1px;color:#fff8e6;
  text-shadow:0 0 26px rgba(212,175,55,.45);
}
.pro-price s{color:var(--ink-4);font-size:15px}
.pro-unit{font-size:12px;color:var(--ink-3);letter-spacing:.4px}
.pro-list{margin:0 0 18px}
.pro-list li{color:var(--ink-2);font-size:13.8px;line-height:1.6}
.pro-list li::before{background:var(--brand);box-shadow:0 0 8px rgba(212,175,55,.6)}
.pro-cta{position:relative;z-index:2}
.pc-row{display:flex;gap:22px;align-items:center;position:relative;z-index:2;flex-wrap:wrap}
.pro-head{min-width:0;flex:1}
.pro-body{display:grid;grid-template-columns:1fr 1fr;gap:30px;position:relative;z-index:2;margin-top:22px}

/* ---------- 买断条 / 锁定 ---------- */
.buy-bar{border:1.5px solid rgba(212,175,55,.42)}
.bb-list>div{background:rgba(12,10,28,.72);border-color:rgba(212,175,55,.28)}
.bb-list>div>b{color:var(--brand-500);text-shadow:0 0 16px rgba(212,175,55,.4)}
.bb-list>div>span{color:#e4dac2}
.locked .lock-mask{
  background:linear-gradient(180deg,rgba(12,10,28,.78),rgba(10,8,22,.96) 55%,#0d0b20 100%);
  backdrop-filter:blur(4px);
}
.lock-inner b{color:#fbf5e6}
.lock-inner p{color:var(--ink-3)}
.lock-icon{filter:drop-shadow(0 0 12px rgba(212,175,55,.6))}
.issue-lock .issue-inner{background:rgba(255,255,255,.035);border-bottom:1px solid rgba(212,175,55,.2)}
.issue-lock .lock-mask{background:#0e0c22}

/* ---------- 弹层 / toast / 页脚 ---------- */
.modal-mask{background:rgba(4,3,12,.78);backdrop-filter:blur(6px)}
.modal-panel{
  background:linear-gradient(165deg,rgba(30,25,58,.97),rgba(14,11,30,.98));
  border:1px solid rgba(212,175,55,.34);
  border-radius:var(--r-xl);
  box-shadow:0 30px 90px rgba(0,0,0,.7), 0 0 60px rgba(124,92,240,.14);
}
.modal-panel::before{
  content:"";position:absolute;inset:9px;border-radius:var(--r-xl);border:1px solid rgba(212,175,55,.16);pointer-events:none;
}
.modal-close{color:var(--ink-3)}
.modal-close:hover{color:var(--brand-500)}
.sum-row span{color:var(--ink-3)}
.pick-type{
  background:rgba(0,0,0,.3);border:1px solid rgba(212,175,55,.2);border-radius:var(--r-m);padding:8px;
}
.pt-item{color:var(--ink-2)}
.pt-item.on{background:linear-gradient(135deg,#d4af37,#e8c76e);color:#1a1508;font-weight:700}
.pt-item.on b{color:#1a1508!important;font-weight:760;text-shadow:none}
.pt-item:hover{border-color:var(--brand)}
.pay-qr{
  background:linear-gradient(160deg,rgba(212,175,55,.14),rgba(124,92,240,.1));
  border:1px dashed rgba(212,175,55,.45);color:#e6d9b4;
}
.toast{
  background:rgba(12,10,28,.97);color:#fbf5e6;
  border:1px solid rgba(212,175,55,.4);box-shadow:0 10px 40px rgba(0,0,0,.6);
}
.footer{background:rgba(6,5,14,.9);border-top:1px solid rgba(212,175,55,.22)}
.footer-col h4{color:var(--brand-500)}
.footer-col p{color:var(--ink-3)}
.footer-bottom{color:var(--ink-4);border-top:1px solid rgba(212,175,55,.14)}

/* ---------- 通用动画 ---------- */
.btn-row .btn:nth-child(1){animation:none}
.card,.split-card,.issue,.price-card{animation-delay:0s}

/* 首次进入时逐块浮现 */
.card,.split-card,.issue,.price-card,.module-intro,.result-hero,.type-card{
  animation:riseIn .5s ease both;
}
@keyframes riseIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* ---------- 响应式 ---------- */
@media (max-width:960px){
  .hero-grid{grid-template-columns:1fr;gap:30px}
  .hero{padding:56px 0 42px}
}
@media (max-width:720px){
  .type-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .grid.g4{grid-template-columns:repeat(2,1fr)}
  .fan{height:92px;margin:0 0 10px}
  .fan-card{width:54px;height:82px}
  .fan-card .fan-rune{width:28px;height:28px}
  .fan-card.c1{transform:rotate(-19deg) translateX(-60px)}
  .fan-card.c3{transform:rotate(19deg) translateX(60px)}
  .fan:hover .fan-card.c1{transform:rotate(-24deg) translateX(-76px)}
  .fan:hover .fan-card.c3{transform:rotate(24deg) translateX(76px)}
  .result-hero{padding:26px 20px;padding-right:104px}
  .rh-seal{width:76px;height:76px;right:14px;top:18px}
  .rune-badge .rune{width:20px;height:20px}
  .rh-seal .rune{width:46px;height:46px}
  .price-grid{grid-template-columns:1fr}
  .pro-card{padding:24px 20px}
  .pro-seal{width:64px;height:64px}
  .pro-seal svg{width:38px;height:38px}
  .pro-name{font-size:20px}
  .pro-price .num{font-size:36px}
  .faq-q{padding:15px 16px}
  .faq-a{padding-left:20px;padding-right:16px}
  .faq-item.open .faq-a{padding-left:20px}
  .row-ico{width:36px;height:36px;border-radius:11px}
  .empty{font-size:13px}
  .pc-row{flex-direction:column;align-items:flex-start;gap:16px}
  .pro-body{grid-template-columns:1fr;gap:22px;margin-top:18px}
  .pro-price{margin-bottom:14px}
}
@media (max-width:400px){
  .type-grid{grid-template-columns:1fr}
  .grid.g3,.grid.g4{grid-template-columns:1fr}
  .pro-card{padding:20px 16px}
  .pro-name{font-size:18.5px}
  .pro-price .num{font-size:32px}
  .pro-seal{width:54px;height:54px}
  .pro-seal svg{width:32px;height:32px}
  .faq-a,.faq-item.open .faq-a{padding-left:16px}
  .tags{min-width:auto}
  .module-tabs{flex-wrap:wrap;overflow:visible}
  .module-tabs .mtab{flex:1 1 auto}
  .tcard-rune{width:46px;height:46px}
  .tcard-rune .rune{width:28px;height:28px}
  .tc-blurb{min-height:0}
}

/* 尊重「减少动态效果」的系统设置 */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* ---------- 打印：退回浅底，保证可读 ---------- */
@media print{
  body{background:#fff;color:#111}
  .tarot-bg{display:none!important}
  .card,.split-card,.issue,.price-card,.pro-card,.rows,.faq,.hero-panel,.q-card,.mode-card,.type-card,.buy-bar{
    background:#fff!important;color:#111!important;border-color:#bbb!important;box-shadow:none!important;backdrop-filter:none!important;animation:none!important;
  }
  .pro-card::before,.pro-card::after,.pro-seal{display:none!important}
  .pro-name,.pro-price .num,.row .r-main b,.faq-q,.kv b,.tc-name,.issue-title,.pc-name,.manual-badge{color:#111!important;background:none!important;-webkit-text-fill-color:#111!important}
  .pro-price .num{font-size:34px!important}
  .faq-a,.faq-item.open .faq-a{color:#333!important;background:#fff!important;max-height:none!important;opacity:1!important;padding:2px 16px 20px 59px!important}
  .faq-no{color:#111!important;background:#eee!important;border-color:#bbb!important}
  .faq-q .plus{color:#555!important}
  .lock-mask,.buy-bar{display:none!important}
  .topbar,.footer,.btn,.module-tabs,.quiz-progress{display:none!important}
  h1.title,h2.title,.tc-name,.issue-title,.faq-q,.pc-name,.manual-badge{color:#111!important;text-shadow:none!important;background:none!important;-webkit-text-fill-color:#111!important}
  .lead,.tc-blurb,.opt,.issue-lock,.mini-type span,.mode-card p,.row .r-main span,.kv span,.footer-col p,.empty,.quiz-nav .hint,.group-head span{color:#444!important}
  .tc-price,.tag,.tag.accent,.hero-stat b,.module-intro,.tc-code,.issue-label,.qa{color:#111!important;background:none!important}
  .btn{background:#eee!important;color:#111!important}
  .tc-go,.blk-label,.tool-box .tool-name,.sprint-box b,.footer-col h4,.r-price,.result-hero .rh-code{color:#222!important}
  .scene-box,.modal-panel,.sum-row span,.faq-a,.bb-list>div>b,.note,.pay-qr,.toast,.tcard-rune,.mini-dot,.brand-mark,.pc-tag,.mode-card .mc-tag,.topnav a.on,.mtab.on,.opt .key,.issue-no,.tag-row .tag.accent{color:#111!important;background:#fff!important}
  .tool-box,.sprint-box,.note,.note.blue,.tcard-frame,.hero-panel::before,.result-hero::before,.modal-panel::before,.price-card.hot::before,.q-card::before,.issue-lock::before{border-color:#bbb!important}
  .type-card::before{display:none!important}
  .rh-seal,.tb-grid,.tb-orb,.tb-stars,.tcard-sheen,.tcard-frame{display:none!important}
  .rh-seal::after,.result-hero::after{display:none!important}
}
