/* ============================================================
   ScamLens · 加密骗局图鉴 — 主样式 v4
   设计范式:侦探调查板 / 案件卷宗(Detective Case Wall & Dossier)
   软木板 + 牛皮纸档案卡 + 红图钉 + 档案红线 + 打字机字 + 结案印章
   保留全部功能 class,彻底更换布局骨架视觉。
   ============================================================ */

:root{
  /* 牛皮纸 / 软木 / 档案纸 */
  --bg:#E6DBBE;             /* 牛皮纸暖底 */
  --bg-tint:#DCCFA8;
  --cork:#9C7A4A;           /* 软木调查板 */
  --cork-dark:#876841;
  --paper:#FBF6EA;          /* 档案卡纸 */
  --paper-2:#F2EAD6;
  --ink:#201A10;
  --ink-soft:#4B4434;
  --ink-faint:#8B7E63;
  --line:#D7C9A4;
  --line-soft:#E6DCC2;
  --line-ink:#201A10;

  /* 档案红(红线 / 印章 / 强调) */
  --thread:#A8281A;
  --accent:#A8281A;
  --accent-deep:#7C1B11;
  --accent-soft:#F0DBCF;
  /* 卷宗墨青(辅助 / CTA) */
  --brand:#1C5A5F;
  --brand-deep:#103E42;
  --brand-ink:#0B2E31;
  --brand-soft:#D9E7E5;

  /* 信号三色(调暖) */
  --danger:#A8281A;   --danger-bg:#F2DDD4;  --danger-line:#D9B2A4;
  --warn:#9A6206;     --warn-bg:#EFE2C4;    --warn-line:#D6BC85;
  --safe:#1E7544;     --safe-bg:#DCEAD7;    --safe-line:#AECBA4;

  /* 图钉色 */
  --pin-r:#C0362A;  --pin-y:#D7A12B;  --pin-b:#2C6E80;

  /* 阴影:卡片钉在板上,从板面浮起 */
  --lift:3px 5px 10px rgba(28,20,8,.28);
  --lift-sm:2px 3px 7px rgba(28,20,8,.22);
  --shadow-sm:2px 2px 0 rgba(32,26,16,.10);
  --shadow-md:4px 4px 0 rgba(32,26,16,.13);

  --radius:4px;
  --radius-sm:3px;
  --radius-lg:6px;
  --maxw:1180px;
  --maxw-read:46rem;

  --font-serif:"Songti SC","Source Han Serif SC","Noto Serif SC","STSong","SimSun",serif;
  --font-sans:"PingFang SC","Microsoft YaHei","Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,system-ui,sans-serif;
  --font-type:"Courier New","Courier",ui-monospace,"SFMono-Regular",Menlo,"PingFang SC",monospace;
  /* 兼容旧内联样式引用的变量别名 */
  --surface:var(--paper); --surface-2:var(--paper-2); --font-mono:var(--font-type);
  --shadow-lg:var(--lift); --shadow-soft:var(--lift); --shadow-hard:5px 5px 0 var(--ink);
  --radius-sm-compat:3px;

  --safe-top:env(safe-area-inset-top,0px);
  --safe-bottom:env(safe-area-inset-bottom,0px);
  --safe-left:env(safe-area-inset-left,0px);
  --safe-right:env(safe-area-inset-right,0px);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:78px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  font-family:var(--font-sans);color:var(--ink);
  background-color:var(--bg);
  background-image:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.20), transparent 60%),
    repeating-linear-gradient(92deg, transparent 0 3px, rgba(120,96,60,.035) 3px 4px),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
  line-height:1.78;font-size:17px;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  padding-left:var(--safe-left);padding-right:var(--safe-right);overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand-deep);text-decoration:none;transition:color .15s}
a:hover{color:var(--accent)}
strong{font-weight:700;color:var(--ink)}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
::selection{background:var(--accent);color:#fff}

h1,h2,h3{font-family:var(--font-serif);color:var(--ink);font-weight:700;line-height:1.3;letter-spacing:0}
h4{font-family:var(--font-sans);font-weight:700;line-height:1.4;color:var(--ink)}
h2{font-size:clamp(1.5rem,3.4vw,2.1rem);margin:0 0 .55em}
h3{font-size:clamp(1.18rem,2.4vw,1.42rem);margin:0 0 .5em}
h4{font-size:1.05rem;margin:0 0 .4em}
p{margin:0 0 1.1em}
code{font-family:var(--font-type)}

/* 布局 */
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(18px,4vw,34px)}
.section{padding-block:clamp(42px,7vw,80px)}
.section--tint{background:var(--bg-tint);border-block:1px solid var(--line)}
.center{text-align:center;margin-inline:auto}
.section__head{max-width:44rem;margin-bottom:34px}
/* 档案标签 eyebrow:打字机 + 红边贴标 */
.eyebrow{
  display:inline-flex;align-items:center;gap:.55em;
  font-family:var(--font-type);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--accent);background:var(--accent-soft);border:1px solid var(--danger-line);
  padding:4px 11px;border-radius:2px;margin-bottom:1.05em;transform:rotate(-.6deg);
}
.eyebrow::before{content:"▮";font-size:.8em}
.lede{font-size:clamp(1.05rem,2vw,1.2rem);color:var(--ink-soft);max-width:42rem;line-height:1.75}

/* ---------- 顶栏:档案室门牌 ---------- */
.site-head{position:sticky;top:0;z-index:50;background:rgba(230,219,190,.9);
  backdrop-filter:saturate(140%) blur(8px);-webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:2px solid var(--line-ink);padding-top:var(--safe-top)}
.site-head__bar{display:flex;align-items:center;gap:18px;height:62px}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-serif);font-weight:700;font-size:1.24rem;color:var(--ink)}
.brand__mark{width:32px;height:32px;flex:none}
.brand small{display:block;font-family:var(--font-type);font-size:.58rem;font-weight:700;letter-spacing:.14em;color:var(--ink-faint);text-transform:uppercase}
.nav{margin-left:auto;display:flex;align-items:center;gap:2px}
.nav a{font-family:var(--font-sans);color:var(--ink-soft);font-weight:600;font-size:.95rem;padding:8px 12px;border-radius:3px;line-height:1}
.nav a:hover{color:var(--accent);background:var(--accent-soft)}
.nav a[aria-current="page"]{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}
.nav__cta{margin-left:8px}
.nav a.nav__cta,.nav a.nav__cta:hover{color:#fff}
/* ---------- 语种切换器 autonym ---------- */
.lang-switcher{position:relative;margin-left:4px}
.lang-switcher__btn{font-family:var(--font-type);font-size:.84rem;color:var(--ink-soft);background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:8px 11px;cursor:pointer;display:inline-flex;align-items:center;gap:5px;min-height:40px;line-height:1}
.lang-switcher__btn:hover{color:var(--accent);border-color:var(--accent)}
.lang-switcher__caret{font-size:.7em;opacity:.7}
.lang-switcher__menu{position:absolute;top:calc(100% + 6px);right:0;min-width:152px;background:var(--paper);border:1px solid var(--line-ink);border-radius:8px;box-shadow:var(--lift);padding:6px;margin:0;list-style:none;display:none;z-index:60}
.lang-switcher:hover .lang-switcher__menu,.lang-switcher:focus-within .lang-switcher__menu{display:block}
.lang-switcher__menu li{margin:0}
.lang-switcher__menu a{display:block;padding:9px 12px;border-radius:5px;color:var(--ink);font-size:.92rem;white-space:nowrap;text-decoration:none}
.lang-switcher__menu a:hover{background:var(--bg);color:var(--accent)}
.lang-switcher__menu a[aria-current="true"]{color:var(--accent);font-weight:700}
[dir="rtl"] .lang-switcher__menu{right:auto;left:0}
.nav-toggle{display:none;margin-left:auto;width:44px;height:44px;border:2px solid var(--line-ink);background:var(--paper);border-radius:4px;cursor:pointer;align-items:center;justify-content:center}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{content:"";display:block;width:19px;height:2px;background:var(--ink);position:relative;transition:.2s}
.nav-toggle span::before{position:absolute;top:-6px}
.nav-toggle span::after{position:absolute;top:6px}

/* ---------- 按钮 ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-family:var(--font-sans);font-weight:700;font-size:.97rem;line-height:1;padding:13px 22px;border-radius:4px;cursor:pointer;border:2px solid transparent;min-height:46px;transition:transform .12s,box-shadow .12s;text-align:center}
.btn--primary{background:var(--brand);color:#fff;border-color:var(--brand-ink);box-shadow:3px 3px 0 var(--brand-ink)}
.btn--primary:hover{color:#fff;transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--brand-ink)}
.btn--primary:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--brand-ink)}
.btn--ghost{background:var(--paper);color:var(--ink);border-color:var(--line-ink);box-shadow:3px 3px 0 rgba(32,26,16,.2)}
.btn--ghost:hover{color:var(--accent);transform:translate(-1px,-1px)}
.btn--ghost:active{transform:translate(2px,2px);box-shadow:1px 1px 0 rgba(32,26,16,.2)}
.btn--lg{padding:15px 28px;font-size:1.04rem;min-height:52px}
.btn--block{display:flex;width:100%}
.btn__note{display:block;font-family:var(--font-type);font-size:.76rem;font-weight:500;color:var(--ink-faint);margin-top:8px;text-align:center;line-height:1.5}

/* ---------- HERO:卷宗墙开场 ---------- */
.hero{position:relative;border-bottom:2px solid var(--line-ink);
  background:var(--cork);
  background-image:
    radial-gradient(circle at 20% 30%, rgba(255,240,210,.12), transparent 50%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cfilter id='c'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='80' height='80' filter='url(%23c)' opacity='0.10'/%3E%3C/svg%3E");}
.hero__grid{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(26px,4vw,52px);align-items:start;padding-block:clamp(12px,2vw,22px)}
.hero__copy{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:clamp(18px,2.4vw,26px);box-shadow:var(--lift);position:relative;transform:rotate(-.5deg)}
.hero__copy::before{content:"";position:absolute;top:-13px;left:50%;transform:translateX(-50%);width:24px;height:24px;border-radius:50%;
  background:radial-gradient(circle at 38% 32%,#E06557,var(--pin-r) 55%,#7C1B11);box-shadow:0 3px 5px rgba(0,0,0,.35)}
.hero h1{font-size:clamp(1.9rem,4.7vw,2.95rem);line-height:1.1;margin:.05em 0 .28em;letter-spacing:-.005em}
.hero h1 .hl{position:relative;white-space:nowrap;color:var(--accent)}
.hero h1 .hl::after{content:"";position:absolute;left:-.04em;right:-.04em;bottom:.05em;height:.34em;background:rgba(168,40,26,.16);z-index:-1}
.hero .lede{color:var(--ink-soft);margin:.35em 0 0}
.hero__actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:10px}
.hero__trust{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:22px;font-family:var(--font-type);font-size:.84rem;color:var(--ink-soft)}
.hero__trust span{display:inline-flex;align-items:center;gap:7px}

/* 卷宗墙(右侧 hero 视觉)+ 通用调查板容器 */
.case-wall{position:relative;align-self:center;background:var(--cork);border:6px solid #6E5634;border-radius:6px;
  box-shadow:inset 0 0 40px rgba(0,0,0,.3), var(--lift);padding:clamp(20px,3vw,30px);overflow:hidden;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cfilter id='c2'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='80' height='80' filter='url(%23c2)' opacity='0.12'/%3E%3C/svg%3E")}
.case-wall__thread{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.case-wall__inner{position:relative;z-index:2;display:grid;gap:14px}

/* 档案卡(钉在板上)= 复用 .dossier */
.dossier{position:relative;background:var(--paper);border:1px solid #C8B5A0;border-radius:3px;
  padding:14px 16px 13px;box-shadow:var(--lift-sm);}
.dossier::before{content:"";position:absolute;top:-9px;left:18px;width:17px;height:17px;border-radius:50%;
  background:radial-gradient(circle at 38% 32%,#fff6,var(--pin-c,var(--pin-r)) 60%,#0004);box-shadow:0 2px 3px rgba(0,0,0,.4)}
.dossier__no{font-family:var(--font-type);font-size:.66rem;letter-spacing:.1em;color:var(--ink-faint);text-transform:uppercase}
.dossier__name{font-family:var(--font-serif);font-weight:700;font-size:1rem;color:var(--ink);margin:.1em 0}
.dossier__verdict{display:inline-block;font-family:var(--font-type);font-size:.62rem;font-weight:700;color:#fff;background:var(--accent);padding:1px 6px;border-radius:2px;letter-spacing:.08em;transform:rotate(-2deg)}

/* ---------- 骗局卡片 = 钉在板上的档案卡 ---------- */
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:26px 22px;counter-reset:evidence;
  position:relative;background:var(--cork);border:6px solid #6E5634;border-radius:6px;padding:clamp(24px,3vw,34px);
  box-shadow:inset 0 0 50px rgba(0,0,0,.28);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cfilter id='c3'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='80' height='80' filter='url(%23c3)' opacity='0.11'/%3E%3C/svg%3E")}
.scam-card{position:relative;display:flex;flex-direction:column;counter-increment:evidence;
  background:var(--paper);border:1px solid #CDBE97;border-radius:3px;padding:24px 20px 18px;
  box-shadow:var(--lift);transition:transform .16s,box-shadow .16s}
.scam-card:nth-child(3n+1){transform:rotate(-1.4deg)}
.scam-card:nth-child(3n+2){transform:rotate(.9deg)}
.scam-card:nth-child(3n+3){transform:rotate(-.5deg)}
/* 红图钉 */
.scam-card::before{content:"";position:absolute;top:-10px;left:50%;transform:translateX(-50%);width:20px;height:20px;border-radius:50%;
  background:radial-gradient(circle at 38% 30%,#fff7,var(--risk-color,var(--pin-r)) 58%,rgba(0,0,0,.35));box-shadow:0 3px 4px rgba(0,0,0,.4);z-index:3}
/* 卷宗编号(右上,打字机) */
.scam-card::after{content:"CASE " counter(evidence,decimal-leading-zero);position:absolute;top:11px;right:14px;
  font-family:var(--font-type);font-size:.6rem;letter-spacing:.06em;color:var(--ink-faint)}
.scam-card:hover{transform:rotate(0) translateY(-4px) scale(1.02);box-shadow:5px 9px 18px rgba(28,20,8,.34);z-index:4}
.scam-card__top{display:flex;align-items:center;gap:10px;margin-bottom:11px;padding-right:56px}
.scam-card__cat{font-family:var(--font-type);font-size:.66rem;font-weight:700;letter-spacing:.08em;color:var(--ink-faint);text-transform:uppercase}
.scam-card h3{font-family:var(--font-serif);font-size:1.16rem;margin:0 0 .4em;line-height:1.34}
.scam-card h3 a{color:var(--ink)}
.scam-card h3 a:hover{color:var(--accent)}
.scam-card p{font-size:.93rem;color:var(--ink-soft);margin:0 0 15px;line-height:1.68}
.scam-card__foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px dashed var(--line)}
.scam-card__link{font-family:var(--font-sans);font-weight:700;font-size:.88rem;color:var(--accent);display:inline-flex;align-items:center;gap:5px}
.scam-card__link::after{content:"→";transition:transform .15s}
.scam-card:hover .scam-card__link::after{transform:translateX(3px)}

/* 危险指数(改成"危险评级"红章风) */
.risk{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-type);font-size:.7rem;font-weight:700;color:var(--ink-soft);margin-left:auto}
.risk__bars{display:flex;gap:2px}
.risk__bars i{width:6px;height:13px;background:var(--line);display:block}
.risk[data-level="5"]{--risk-color:var(--danger)}
.risk[data-level="4"]{--risk-color:#B23A18}
.risk[data-level="3"]{--risk-color:var(--warn)}
.risk[data-level="2"]{--risk-color:#7E7A2E}
.risk[data-level="1"]{--risk-color:var(--safe)}
.risk[data-level="5"] .risk__bars i:nth-child(-n+5),
.risk[data-level="4"] .risk__bars i:nth-child(-n+4),
.risk[data-level="3"] .risk__bars i:nth-child(-n+3),
.risk[data-level="2"] .risk__bars i:nth-child(-n+2),
.risk[data-level="1"] .risk__bars i:nth-child(-n+1){background:var(--risk-color)}

/* ---------- 信号块(证物批注) ---------- */
.signal{position:relative;border-radius:3px;padding:16px 20px 16px 50px;margin:22px 0;border:1.5px solid;border-left-width:5px;font-size:.98rem}
.signal::before{position:absolute;left:16px;top:15px;font-family:var(--font-serif);font-size:1.2rem;font-weight:700}
.signal h4{margin-bottom:.35em;font-size:1.02rem}
.signal p:last-child,.signal ul:last-child{margin-bottom:0}
.signal--danger{background:var(--danger-bg);border-color:var(--danger-line);color:#5c190f}
.signal--danger::before{content:"!";color:var(--danger)}
.signal--danger h4{color:var(--danger)}
.signal--warn{background:var(--warn-bg);border-color:var(--warn-line);color:#583705}
.signal--warn::before{content:"?";color:var(--warn)}
.signal--warn h4{color:var(--warn)}
.signal--safe{background:var(--safe-bg);border-color:var(--safe-line);color:#0d4326}
.signal--safe::before{content:"✓";color:var(--safe)}
.signal--safe h4{color:var(--safe)}
.signal ul{margin:.4em 0 0;padding-left:1.2em}
.signal li{margin-bottom:.35em}

.checklist{list-style:none;padding:0;margin:1.2em 0;display:grid;gap:10px}
.checklist li{position:relative;padding:12px 16px 12px 44px;background:var(--paper);border:1.5px solid var(--line);border-radius:3px;font-size:.97rem}
.checklist li::before{content:"";position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:3px;border:2px solid var(--accent);background:var(--accent-soft)}

/* ---------- 文章页 = 案件卷宗 ---------- */
.article{padding-block:clamp(28px,5vw,50px)}
.article__head{max-width:var(--maxw-read);margin-inline:auto;margin-bottom:8px;
  background:var(--paper);border:1px solid var(--line);border-top:5px solid var(--accent);border-radius:4px;
  padding:clamp(20px,3vw,30px);box-shadow:var(--lift-sm);position:relative}
.article__head::before{content:"CASE FILE · 案件卷宗";position:absolute;top:-11px;right:18px;
  font-family:var(--font-type);font-size:.62rem;font-weight:700;letter-spacing:.14em;color:#fff;background:var(--ink);padding:2px 9px;border-radius:2px;transform:rotate(1.2deg)}
.breadcrumb{font-family:var(--font-type);font-size:.76rem;color:var(--ink-faint);margin-bottom:14px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.breadcrumb a{color:var(--ink-faint)}.breadcrumb a:hover{color:var(--accent)}
.breadcrumb span{color:var(--line)}
.article h1{font-size:clamp(1.8rem,4.4vw,2.6rem);line-height:1.22;margin:.1em 0 .4em}
.article__meta{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;font-family:var(--font-type);font-size:.78rem;color:var(--ink-faint)}
.article__meta .verified{color:var(--safe);font-weight:700;display:inline-flex;align-items:center;gap:5px}
/* 拍立得证据照 */
.article-cover{margin:26px auto;max-width:var(--maxw-read);background:#fff;padding:12px 12px 36px;border:1px solid #d9d2c0;
  box-shadow:var(--lift);transform:rotate(-1deg);position:relative}
.article-cover::before{content:"";position:absolute;top:-12px;left:50%;transform:translateX(-50%) rotate(8deg);width:90px;height:24px;background:rgba(216,201,164,.7);border:1px solid rgba(0,0,0,.05)}
.article-cover img{width:100%;border:1px solid #e6dfce}
.article-cover figcaption{font-family:var(--font-type);font-size:.78rem;color:var(--ink-soft);padding:10px 4px 0;text-align:center}

.article__body{max-width:var(--maxw-read);margin-inline:auto;font-size:1.07rem;margin-top:28px}
.article__body h2{font-family:var(--font-serif);margin-top:1.7em;scroll-margin-top:78px;padding-bottom:.2em;border-bottom:2px solid var(--line)}
.article__body h3{margin-top:1.4em;scroll-margin-top:78px}
.article__body ul,.article__body ol{margin:0 0 1.2em;padding-left:1.4em}
.article__body li{margin-bottom:.5em}
.article__body blockquote{margin:1.4em 0;padding:8px 0 8px 20px;border-left:4px solid var(--accent);color:var(--ink-soft);font-family:var(--font-serif);font-size:1.1em}
.article__body code{font-family:var(--font-type);font-size:.9em;background:var(--paper-2);padding:.12em .42em;border-radius:3px;border:1px solid var(--line);color:var(--accent-deep)}
.article__body .lead{font-size:1.18rem;color:var(--ink-soft);line-height:1.72;font-family:var(--font-serif)}
.article__body img{border:1px solid var(--line-ink);margin:1.4em 0}
.article__body hr{border:0;border-top:2px dashed var(--line);margin:2.2em 0}

/* 卷宗摘要 = 钉着的便签 */
.keytake{background:#FBF3C9;border:1px solid #E4D58A;border-radius:2px;padding:18px 22px;margin:0 0 28px;box-shadow:var(--lift-sm);transform:rotate(-.5deg);position:relative}
.keytake::before{content:"";position:absolute;top:-9px;left:24px;width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 38% 30%,#fff7,var(--pin-y) 60%,rgba(0,0,0,.3));box-shadow:0 2px 3px rgba(0,0,0,.35)}
.keytake>strong:first-child{font-family:var(--font-type);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-deep);display:block;margin-bottom:.5em}
.keytake ul{margin:.5em 0 0;padding-left:1.2em}.keytake li{margin-bottom:.4em}

.toc{background:var(--paper-2);border:1.5px solid var(--line);border-radius:3px;padding:18px 22px;margin:0 0 30px}
.toc__title{font-family:var(--font-type);font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:12px}
.toc ol{list-style:none;counter-reset:toc;margin:0;padding:0;columns:2;column-gap:32px}
.toc li{counter-increment:toc;margin-bottom:8px;break-inside:avoid;font-size:.95rem}
.toc a{color:var(--ink-soft);display:flex;gap:9px;line-height:1.4}
.toc a::before{content:counter(toc,decimal-leading-zero);font-family:var(--font-type);font-size:.78rem;color:var(--accent);font-weight:700;flex:none}
.toc a:hover,.toc a.is-active{color:var(--accent);font-weight:700}

.table-wrap{overflow-x:auto;margin:1.4em 0;border:2px solid var(--line-ink);border-radius:3px}
table.data{width:100%;border-collapse:collapse;font-size:.94rem;min-width:480px}
table.data th,table.data td{padding:11px 15px;text-align:left;border-bottom:1px solid var(--line)}
table.data thead th{background:var(--ink);color:var(--bg);font-family:var(--font-type);font-size:.82rem;letter-spacing:.04em}
table.data tbody tr:hover{background:var(--paper-2)}
table.data code{font-family:var(--font-type);font-size:.88em}
.src-note{font-family:var(--font-type);font-size:.8rem;color:var(--ink-faint);margin-top:.4em}

details.fold{border:1.5px solid var(--line);border-radius:3px;margin:14px 0;background:var(--paper);overflow:hidden}
details.fold>summary{cursor:pointer;list-style:none;padding:15px 20px;font-weight:700;display:flex;align-items:center;gap:10px;color:var(--ink)}
details.fold>summary::-webkit-details-marker{display:none}
details.fold>summary::before{content:"▶";font-size:.7rem;color:var(--accent);transition:transform .2s}
details.fold[open]>summary::before{transform:rotate(90deg)}
details.fold .fold__body{padding:0 20px 18px;color:var(--ink-soft)}
details.fold .fold__body>:first-child{margin-top:0}

.faq{display:grid;gap:0;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:18px 4px;font-weight:700;font-size:1.05rem;font-family:var(--font-serif);display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.4rem;color:var(--accent);font-weight:400;flex:none;transition:transform .2s;font-family:var(--font-sans)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .faq__a{padding:0 4px 20px;color:var(--ink-soft)}

/* CTA = 结案归档卡(墨色卷宗封套) */
.cta-box{background:var(--ink);color:var(--bg);border:2px solid var(--ink);border-radius:5px;padding:clamp(26px,5vw,46px);position:relative;overflow:hidden;box-shadow:var(--lift)}
.cta-box::before{content:"";position:absolute;inset:9px;border:1px dashed rgba(230,219,190,.22);border-radius:3px;pointer-events:none}
.cta-box .eyebrow{background:rgba(168,40,26,.22);border-color:rgba(168,40,26,.5);color:#EBB7AB}
.cta-box h2{color:#fff;max-width:30rem}
.cta-box p{color:rgba(230,219,190,.84);max-width:34rem}
.cta-box .btn--primary{background:var(--accent);border-color:var(--accent-deep);box-shadow:3px 3px 0 #000}
.cta-box .btn--primary:hover{background:var(--accent-deep)}
.cta-box .btn--ghost{background:transparent;color:#fff;border-color:rgba(230,219,190,.5);box-shadow:3px 3px 0 rgba(0,0,0,.3)}
.cta-box .btn__note{color:rgba(230,219,190,.62)}

.steps{display:grid;gap:14px;counter-reset:step;margin:1.4em 0}
.step{position:relative;background:var(--paper);border:1.5px solid var(--line);border-radius:3px;padding:16px 20px 16px 62px;counter-increment:step}
.step::before{content:counter(step,decimal-leading-zero);position:absolute;left:16px;top:15px;width:32px;height:32px;border:2px solid var(--accent);color:var(--accent);font-family:var(--font-type);font-weight:700;display:grid;place-items:center;font-size:.9rem;border-radius:3px}
.step h4{margin-bottom:.3em}

/* 放大镜(404) */
.lens{position:relative;aspect-ratio:1;max-width:170px;margin-inline:auto;width:100%}
.lens__ring{position:absolute;inset:0;border-radius:50%;border:10px solid var(--ink);background:var(--paper)}
.lens__ring::after{content:"";position:absolute;right:-10%;bottom:-10%;width:38%;height:10px;background:var(--ink);transform:rotate(45deg);transform-origin:left center;border-radius:5px}
.lens__scan{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-serif);font-size:2.4rem;font-weight:700;color:var(--accent)}

/* 页脚 = 档案室 */
.site-foot{background:#191309;color:#A99A7C;padding-block:clamp(40px,6vw,60px) 26px;margin-top:40px;border-top:3px solid var(--accent);padding-bottom:calc(26px + var(--safe-bottom))}
.site-foot a{color:#CCBC9A}.site-foot a:hover{color:#fff}
.foot-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:32px;margin-bottom:34px}
.foot-brand{display:flex;align-items:center;gap:10px;color:#fff;font-family:var(--font-serif);font-weight:700;font-size:1.2rem;margin-bottom:14px}
.foot-brand .brand__mark{width:30px;height:30px}
.site-foot h5{color:#fff;font-family:var(--font-type);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px;font-weight:700}
.foot-links{list-style:none;display:grid;gap:9px;font-size:.92rem}
.foot-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;font-family:var(--font-type);font-size:.8rem;color:#776A50;display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between}
.foot-disclaimer{max-width:46rem;line-height:1.7;font-family:var(--font-sans)}

/* 杂项 */
.pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-type);font-size:.72rem;font-weight:700;padding:4px 11px;border-radius:2px;background:var(--paper-2);border:1px solid var(--line);color:var(--ink-soft);letter-spacing:.04em}
.pill--danger{background:var(--accent);border:2px solid var(--accent-deep);color:#fff;transform:rotate(-2deg);box-shadow:1px 1px 0 var(--accent-deep)}
.pill--safe{background:var(--safe-bg);border-color:var(--safe-line);color:var(--safe)}
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--accent);color:#fff;padding:10px 16px;z-index:100}
.skip-link:focus{left:0}
.dot{width:9px;height:9px;border-radius:50%;flex:none;display:inline-block}
.dot--d{background:var(--danger)}.dot--w{background:var(--warn)}.dot--s{background:var(--safe)}

/* 响应式:移动端档案卡不旋转,竖排 */
@media (max-width:880px){
  .hero__grid{grid-template-columns:1fr;gap:20px}
  .case-wall{order:-1}
  .foot-grid{grid-template-columns:1fr 1fr;gap:28px}
  .toc ol{columns:1}
}
@media (max-width:640px){
  body{font-size:16px}
  .nav{position:fixed;inset:62px 0 auto 0;flex-direction:column;align-items:stretch;gap:2px;background:var(--paper);border-bottom:2px solid var(--line-ink);padding:12px 18px calc(16px + var(--safe-bottom));box-shadow:var(--lift);transform:translateY(-130%);transition:transform .24s;visibility:hidden}
  .nav.is-open{transform:translateY(0);visibility:visible}
  .nav a{padding:13px 14px;min-height:46px;display:flex;align-items:center}
  .nav__cta{margin:8px 0 0}
  .nav-toggle{display:flex}
  .card-grid{grid-template-columns:1fr;gap:24px}
  .scam-card,.scam-card:nth-child(3n+1),.scam-card:nth-child(3n+2),.scam-card:nth-child(3n+3){transform:none}
  .hero__copy{transform:none}
  .article-cover{transform:none}
  .keytake{transform:none}
  .foot-grid{grid-template-columns:1fr}
  .article__body{font-size:1.02rem}
  .hero__actions .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
