@charset "utf-8";
/* ==========================================================================
   law30 · 律铭网 · 全国法律资讯与律师服务平台
   版面语言：墨空蓝黑主导（全系列首个暗色主导站点）· 刻度尺 · 法规层级树
   零 CDN：系统字体栈 + 本地 SVG + 内联 symbol 图标 + 全站零 background-image
   ========================================================================== */

/* ---------------------------------------------------------------
   0. 令牌
   --------------------------------------------------------------- */
:root{
  --bg:#0b1220;              /* 墨空蓝黑（主底） */
  --bg-2:#0f1a2c;            /* 次底 */
  --panel:#14203a;           /* 面板 / 卡片 */
  --panel-2:#182748;         /* 深一档面板 */
  --line:#233150;            /* 描边 */
  --line-2:#33456b;          /* 强描边 */

  --ink:#e9eef8;             /* 主文字（对 --bg 16.2:1） */
  --ink-2:#a8b6cf;           /* 次级（9.2:1） */
  --ink-3:#8494b0;           /* 三级（6.2:1，全站最差底 4.8:1） */

  --brand:#35e0c8;           /* 电光青 */
  --brand-2:#7ff0dd;
  --brand-ink:#062e2a;       /* 青底上的文字 */
  --amber:#f5b53d;           /* 琥珀 */
  --amber-ink:#2a1a00;
  --deco:#5a6d92;            /* 装饰色：只允许用于 >=19px */

  --paper:#f2efe9;           /* 浅色区底 */
  --r:10px; --r-lg:16px;
  --wrap:1200px; --gut:20px;
  --shadow:0 18px 44px rgba(0,0,0,.34);
}

/* 浅色区：整块重定义令牌 —— 子树内所有 var() 自动跟随，
   从结构上消除「深色区里白底白字」这类问题。
   注意：选择器必须写成 .sec.sec--paper（(0,2,0)），否则会被文件更靠后的
   .sec{background:var(--bg)} 按源码顺序压掉（law14/law30 实测）。 */
.sec.sec--paper{
  --ink:#1b2438; --ink-2:#42506c; --ink-3:#5c6a86;
  --line:#ddd7cb; --line-2:#c6bfb0;
  --panel:#ffffff; --panel-2:#f7f4ee;
  --brand:#0b6f62; --brand-2:#0a6157; --brand-ink:#ffffff;
  --amber:#8a6114; --amber-ink:#ffffff;
  --deco:#7b8497;
  background:var(--paper);
  color:var(--ink);
}

/* ---------------------------------------------------------------
   1. 复位
   --------------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{
  -webkit-text-size-adjust:100%;
  overflow-x:clip;
  scroll-behavior:smooth;
  background:var(--bg);
}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  font-size:16px; line-height:1.75;
  color:var(--ink); background:var(--bg);
  overflow-wrap:break-word;
}
/* 铁律：img 与 svg 绝不同写一条复位规则 */
img,video{max-width:100%;height:auto;display:block;border:0}
svg{display:inline-block;vertical-align:-.125em;flex:0 0 auto}
h1,h2,h3,h4,h5,p,ul,ol,dl,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
a{color:var(--brand);text-decoration:none;transition:color .18s}
a:hover{color:var(--brand-2)}
button{font:inherit;color:inherit;cursor:pointer}
input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px}

/* 图标：宽高必须成对声明 */
.i{width:17px;height:17px;max-width:none;fill:none}
.i:not([width]){width:17px;height:17px}
/* 精灵容器必须彻底不占位（漏写会以默认 300x150 在页首撑出空白） */
svg.sprite{position:absolute;width:0;height:0;overflow:hidden}

.sr-only,.skip{
  position:absolute;width:1px;height:1px;padding:0;margin:0;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}
.skip:focus{
  position:fixed;top:8px;left:8px;z-index:200;width:auto;height:auto;
  clip:auto;padding:10px 16px;background:var(--brand);color:var(--brand-ink);
  border-radius:var(--r);font-weight:700;
}

/* ---------------------------------------------------------------
   2. 布局原语
   --------------------------------------------------------------- */
.wrap{width:min(var(--wrap),100% - (var(--gut) * 2));margin-inline:auto}
.sec{padding-block:76px;background:var(--bg)}
.sec--alt{padding-block:76px;background:var(--bg-2)}
.sec__foot{margin-top:26px}
.more-link{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:14.5px}
.more-link svg{width:15px;height:15px;flex:0 0 auto}

/* ---------------------------------------------------------------
   3. 顶部信息条
   --------------------------------------------------------------- */
.topbar{background:#070c16;border-bottom:1px solid var(--line)}
.topbar__in{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding-block:9px;font-size:13.5px;color:var(--ink-3);
}
.topbar__l,.topbar__r{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap}
.topbar__l svg,.topbar__r svg{width:14px;height:14px}
.topbar__dot{width:4px;height:4px;border-radius:50%;background:var(--line-2);flex:0 0 auto}
.topbar__link{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2);white-space:nowrap}
.topbar__link:hover{color:var(--brand)}

/* ---------------------------------------------------------------
   4. 顶栏（深色 sticky 主导航）
   --------------------------------------------------------------- */
.site-header{
  position:sticky;top:0;z-index:60;
  background:rgba(11,18,32,.94);
  border-bottom:1px solid var(--line);
  backdrop-filter:saturate(140%) blur(8px);
}
.site-header::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;
  background:linear-gradient(90deg,var(--brand),transparent 62%);
  opacity:.75;
}
.header-main{
  display:flex;align-items:center;gap:22px;flex-wrap:wrap;
  padding-block:12px;
}
.brand{display:flex;align-items:center;gap:11px;color:var(--ink);flex:0 0 auto}
.brand:hover{color:var(--ink)}
.brand__logo{width:46px;height:46px;flex:0 0 auto}
.brand__txt{display:flex;flex-direction:column;line-height:1.28}
.brand__name{font-size:19px;font-weight:800;letter-spacing:.06em}
.brand__en{font-size:11.5px;font-family:Consolas,Menlo,monospace;color:var(--ink-3);letter-spacing:.06em}

.nav{flex:1 1 auto;min-width:0}
.nav__list{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}
.nav__list > li{flex:0 0 auto}
.nav__link{
  display:inline-block;padding:9px 13px;border-radius:var(--r);
  color:var(--ink-2);font-size:15px;font-weight:600;white-space:nowrap;
  border:1px solid transparent;
}
.nav__link:hover{color:var(--ink);border-color:var(--line);background:var(--panel)}
.nav__link.is-on{color:var(--brand);border-color:rgba(53,224,200,.34);background:rgba(53,224,200,.08)}

.header-act{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.header-act__tel{display:inline-flex;align-items:center;gap:7px;color:var(--ink-2);font-size:14.5px;font-weight:600;white-space:nowrap}
.header-act__tel:hover{color:var(--brand)}
.header-act__tel svg{width:16px;height:16px}

.nav-toggle{
  display:none;align-items:center;gap:9px;flex:0 0 auto;
  padding:9px 14px;border:1px solid var(--line);border-radius:var(--r);
  background:var(--panel);color:var(--ink-2);font-size:14px;
}
.nav-toggle__b{display:flex;flex-direction:column;gap:4px;width:18px}
.nav-toggle__b i{display:block;height:2px;background:currentColor;border-radius:2px}

/* ---------------------------------------------------------------
   5. 按钮 / 标签 / 控件
   --------------------------------------------------------------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:11px 20px;border-radius:var(--r);border:1px solid transparent;
  font-size:15px;font-weight:700;line-height:1.3;white-space:nowrap;
  background:var(--panel);color:var(--ink);
}
.btn:hover{color:var(--ink)}
.btn > .btn__t{color:inherit;font-size:inherit;line-height:inherit;font-weight:inherit}
.btn svg{width:16px;height:16px}
.btn--solid{background:var(--brand);color:var(--brand-ink)}
.btn--solid:hover{color:var(--brand-ink);filter:brightness(1.08)}
.btn--amber{background:var(--amber);color:var(--amber-ink)}
.btn--amber:hover{color:var(--amber-ink);filter:brightness(1.06)}
.btn--outline{background:transparent;border-color:var(--line-2);color:var(--ink)}
.btn--outline:hover{border-color:var(--brand);color:var(--brand)}
.btn--sm{padding:9px 15px;font-size:14px}
.btn--block{display:flex;width:100%}
.btn--sq{padding:0 20px;height:52px;border-radius:0 var(--r) var(--r) 0}
.btn:disabled{opacity:.62;cursor:not-allowed}

.pill{
  display:inline-block;padding:3px 10px;border-radius:999px;
  background:rgba(53,224,200,.13);color:var(--brand);
  font-size:12.5px;font-weight:700;white-space:nowrap;
}
.sec--paper .pill{background:rgba(11,111,98,.1)}

.chip{
  display:inline-block;padding:8px 16px;border-radius:999px;
  border:1px solid var(--line);background:var(--panel);color:var(--ink-2);
  font-size:14px;font-weight:600;white-space:nowrap;
}
.chip:hover{color:var(--ink);border-color:var(--line-2)}
.chip.is-on{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}
.chip.is-on:hover{color:var(--brand-ink)}

.filter{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:24px}
.filter__empty{margin:0 0 18px;padding:14px 16px;border:1px dashed var(--line-2);border-radius:var(--r);color:var(--ink-3);font-size:14.5px}

.pager{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:32px}
.pager__i{
  display:inline-flex;align-items:center;gap:6px;min-width:42px;height:42px;padding:0 13px;
  border:1px solid var(--line);border-radius:var(--r);background:var(--panel);
  color:var(--ink-2);font-size:14.5px;font-weight:700;font-variant-numeric:tabular-nums;
}
.pager__i:hover{color:var(--ink);border-color:var(--line-2)}
.pager__i.is-on{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}
.pager__i.is-disabled{color:var(--ink-3);cursor:not-allowed}
.pager__i svg{width:15px;height:15px}
.pager__gap{color:var(--ink-3);padding:0 4px}

/* ---------------------------------------------------------------
   6. 刻度尺：全站签名纹样
   --------------------------------------------------------------- */
.scale-rule{display:block;width:288px;height:22px;color:var(--line-2)}
.sec-head__rule{display:none;color:var(--line-2)}
.sec-head__rule .scale-rule{width:168px;height:14px}

/* ---------------------------------------------------------------
   7. 区块标题
   --------------------------------------------------------------- */
.sec-head{
  display:flex;align-items:flex-end;flex-wrap:wrap;gap:18px;
  padding-bottom:22px;margin-bottom:34px;
  border-bottom:1px solid var(--line);
}
.sec-head__no{
  font-family:Consolas,Menlo,monospace;font-size:44px;font-weight:700;line-height:1;
  color:var(--deco);flex:0 0 auto;letter-spacing:-.02em;
}
.sec-head__txt{flex:1 1 260px;min-width:0}
.sec-head__kicker{
  font-family:Consolas,Menlo,monospace;font-size:12px;letter-spacing:.16em;
  color:var(--amber);margin-bottom:6px;
}
.sec-head__title{font-size:clamp(22px,2.4vw,30px);font-weight:800;letter-spacing:.01em;line-height:1.32}
.sec-head__desc{margin-top:9px;font-size:14.5px;color:var(--ink-3)}
.sec-head__more{
  display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;
  color:var(--ink-2);font-size:14.5px;font-weight:700;
}
.sec-head__more:hover{color:var(--brand)}
.sec-head__more svg{width:15px;height:15px}
.sec-head--s{border-bottom:0;padding-bottom:0;margin-bottom:20px;align-items:center}
.sec-head--s .sec-head__no{font-size:30px}
.sec-head--s .sec-head__title{font-size:20px}
.sec-head--s .sec-head__txt{flex:1 1 auto}

/* ---------------------------------------------------------------
   8. Hero
   --------------------------------------------------------------- */
.hero{position:relative;overflow:hidden;background:var(--bg);padding-top:64px}
.hero__deco{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.hero__grid{
  position:absolute;top:-60px;left:0;width:100%;height:calc(100% + 120px);
  display:block;opacity:.95;
}
.hero__arc{
  display:block;position:absolute;right:-140px;top:-140px;width:520px;height:520px;
  border-radius:50%;border:1px solid rgba(53,224,200,.16);
}
.hero__inner{
  position:relative;z-index:1;
  display:grid;grid-template-columns:minmax(0,1fr);gap:38px;
  padding-block:26px 46px;
}
.hero__main{min-width:0}
.hero__kicker{
  font-family:Consolas,Menlo,monospace;font-size:12px;letter-spacing:.18em;
  color:var(--brand);margin-bottom:14px;
}
.hero__title{
  font-size:clamp(30px,4.6vw,54px);font-weight:800;line-height:1.2;letter-spacing:.01em;
}
.hero__title-em{display:block;color:var(--brand)}
.hero__sub{margin-top:16px;max-width:34em;font-size:16px;color:var(--ink-2)}
.hero__search{display:flex;margin-top:26px;max-width:560px}
.hero__input{
  flex:1 1 auto;min-width:0;height:52px;padding:0 16px;
  background:var(--panel);border:1px solid var(--line-2);border-right:0;
  border-radius:var(--r) 0 0 var(--r);color:var(--ink);font-size:15px;
}
.hero__input::placeholder{color:var(--ink-3)}
.hero__input:focus{outline:0;border-color:var(--brand)}
.hero__hot{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;font-size:13.5px}
.hero__hot > span{color:var(--ink-3)}
.hero__hot a{
  padding:3px 11px;border:1px solid var(--line);border-radius:999px;
  color:var(--ink-2);font-size:13px;
}
.hero__hot a:hover{border-color:var(--brand);color:var(--brand)}
.hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}

/* Hero 右侧：今日要闻 */
.today{
  background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:22px 22px 18px;box-shadow:var(--shadow);min-width:0;
}
.today__kicker{font-family:Consolas,Menlo,monospace;font-size:11.5px;letter-spacing:.18em;color:var(--amber)}
.today__t{font-size:20px;font-weight:800;margin:6px 0 16px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.today__i{border-bottom:1px dashed var(--line)}
.today__i:last-child{border-bottom:0}
.today__i > a{display:flex;gap:12px;padding:12px 0;color:var(--ink)}
.today__i > a:hover{color:var(--brand)}
.today__d{
  font-family:Consolas,Menlo,monospace;font-size:15px;font-weight:700;
  color:var(--ink-3);flex:0 0 auto;line-height:1.6;
}
.today__b{display:flex;flex-direction:column;gap:5px;min-width:0}
.today__title{display:block;font-size:15px;font-weight:600;line-height:1.55}
.today__meta{display:block;font-size:12.5px;color:var(--ink-3)}
.today__more{
  display:inline-flex;align-items:center;gap:7px;margin-top:14px;
  padding-top:14px;border-top:1px solid var(--line);font-size:14px;font-weight:700;
}
.today__more svg{width:15px;height:15px}

/* Hero 数据条 */
.hero__stats-wrap{padding-bottom:0}
.hero__stats{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.hero__stat{padding:20px 0 20px 18px;border-left:1px solid var(--line)}
.hero__stat:first-child{border-left:0;padding-left:0}
.hero__stat-n{
  display:block;font-family:Consolas,Menlo,monospace;font-size:clamp(24px,2.6vw,34px);
  font-weight:700;color:var(--brand);line-height:1.15;font-variant-numeric:tabular-nums;
}
.hero__stat-t{display:block;margin-top:5px;font-size:14.5px;font-weight:700;color:var(--ink)}
.hero__stat-s{display:block;font-size:12.5px;color:var(--ink-3)}
.hero__scale{color:var(--line-2);padding-block:14px 0}
.hero__scale .scale-rule{width:100%;height:18px}

/* ---------------------------------------------------------------
   9. 法规层级树（全站签名结构）
   --------------------------------------------------------------- */
.cat-tree{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.cat-tree__g{
  background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:16px 18px 14px;min-width:0;
  transition:border-color .2s,transform .2s;
}
.cat-tree__g:hover{border-color:var(--line-2);transform:translateY(-2px)}
.cat-tree__head{
  display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;
  align-items:center;gap:12px;color:var(--ink);padding-bottom:12px;
  border-bottom:1px solid var(--line);
}
.cat-tree__head:hover{color:var(--brand)}
.cat-tree__no{
  font-family:Consolas,Menlo,monospace;font-size:13px;font-weight:700;
  color:var(--ink-3);letter-spacing:.06em;
}
.cat-tree__ico{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:9px;flex:0 0 auto;
  background:rgba(53,224,200,.1);color:var(--brand);
}
.cat-tree__ico svg{width:20px;height:20px}
.cat-tree__t{font-size:18px;font-weight:800;min-width:0}
.cat-tree__n{font-size:12.5px;color:var(--ink-3);white-space:nowrap}
.cat-tree__n b{font-family:Consolas,Menlo,monospace;font-size:15px;color:var(--ink-2)}
.cat-tree__arrow{width:15px;height:15px;color:var(--ink-3)}
.cat-tree__head:hover .cat-tree__arrow{color:var(--brand)}

.cat-tree__subs{
  margin-top:12px;padding-left:22px;
  border-left:1px dashed var(--line-2);
}
.cat-tree__sub > a{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;gap:10px;padding:6px 0;color:var(--ink-2);font-size:14.5px;
  position:relative;
}
.cat-tree__sub > a:hover{color:var(--brand)}
.cat-tree__dot{
  position:absolute;left:-27px;width:9px;height:9px;border-radius:50%;
  background:var(--bg-2);border:2px solid var(--line-2);
}
.cat-tree__sub > a:hover .cat-tree__dot{border-color:var(--brand)}
.cat-tree__sn{min-width:0}
.cat-tree__sc{
  font-family:Consolas,Menlo,monospace;font-size:12.5px;color:var(--ink-3);
}

/* ---------------------------------------------------------------
   10. 带缩略图：焦点横卡 + 横向图文卡
   --------------------------------------------------------------- */
.pick-main{margin-bottom:22px}
.focus{
  display:grid;grid-template-columns:minmax(0,1fr);gap:0;
  background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);
  overflow:hidden;transition:border-color .2s;
}
.focus:hover{border-color:var(--line-2)}
.focus__media{display:block;overflow:hidden}
.focus__media img{width:100%;height:100%;object-fit:cover}
.focus__body{padding:24px 24px 22px;min-width:0}
.focus__meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;color:var(--ink-3);margin-bottom:12px}
.focus__title{font-size:clamp(19px,2vw,25px);font-weight:800;line-height:1.42;margin-bottom:12px}
.focus__title a{color:var(--ink)}
.focus__title a:hover{color:var(--brand)}
.focus__desc{font-size:15px;color:var(--ink-2);margin-bottom:16px}
.focus__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--ink-3)}

.tgrid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.tcard{
  display:grid;grid-template-columns:minmax(0,1fr);gap:0;
  background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);
  overflow:hidden;min-width:0;transition:border-color .2s,transform .2s;margin-bottom: 24px;
}
.tcard:hover{border-color:var(--line-2);transform:translateY(-2px)}
.tcard__media{display:block;position:relative;overflow:hidden}
.tcard__media img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.tcard__badge{
  position:absolute;left:12px;top:12px;
  padding:3px 10px;border-radius:999px;
  background:rgba(6,14,26,.82);color:var(--brand);
  font-size:12px;font-weight:700;border:1px solid rgba(53,224,200,.34);
}
.tcard__body{padding:16px 18px 18px;min-width:0}
.tcard__title{font-size:16.5px;font-weight:700;line-height:1.5}
.tcard__title a{color:var(--ink)}
.tcard__title a:hover{color:var(--brand)}
.tcard__desc{margin-top:10px;font-size:14.5px;color:var(--ink-2)}
.tcard__meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;font-size:12.5px;color:var(--ink-3)}
.tcard--lead .tcard__title{font-size:clamp(19px,2vw,24px)}
.tcard--lead .tcard__media img{height:100%;aspect-ratio:auto}
.tcard--lead .tcard__body{padding:22px 24px 24px}

/* ---------------------------------------------------------------
   11. 无缩略图：条文行（双列） / 卷宗便签卡（三列）
   --------------------------------------------------------------- */
.row-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0 44px}
.row-item{border-bottom:1px solid var(--line);min-width:0}
.row-item__in{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;
  align-items:start;gap:14px;padding:16px 0 15px 0;
  position:relative;color:var(--ink);min-width:0;
}
.row-item__in::before{
  content:"";position:absolute;left:-14px;top:18px;bottom:18px;width:3px;border-radius:3px;
  background:var(--brand);transform:scaleY(0);transform-origin:top;
  transition:transform .22s;
}
.row-item__in:hover::before{transform:scaleY(1)}
.row-item__no{
  font-family:Consolas,Menlo,monospace;font-size:14px;font-weight:700;
  color:var(--ink-3);line-height:1.7;
}
.row-item__b{display:flex;flex-direction:column;gap:6px;min-width:0}
.row-item__cat{display:block;font-size:12.5px;font-weight:700;color:var(--amber)}
.row-item__t{display:block;font-size:16px;font-weight:600;line-height:1.55}
.row-item__in:hover .row-item__t{color:var(--brand)}
.row-item__m{
  font-family:Consolas,Menlo,monospace;font-size:12.5px;color:var(--ink-3);
  white-space:nowrap;line-height:1.75;
}

.note-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.note-card{
  background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);
  border-top:3px solid var(--brand);min-width:0;
  transition:border-color .2s,transform .2s;
}
.note-card:hover{transform:translateY(-2px);border-color:var(--line-2);border-top-color:var(--amber)}
.note-card__in{display:flex;flex-direction:column;gap:10px;padding:18px 18px 16px;color:var(--ink);height:100%}
.note-card__top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.note-card__no{font-family:Consolas,Menlo,monospace;font-size:14px;font-weight:700;color:var(--ink-3)}
.note-card__cat{font-size:12.5px;font-weight:700;color:var(--brand)}
.note-card__t{display:block;font-size:16px;font-weight:700;line-height:1.5}
.note-card__in:hover .note-card__t{color:var(--brand)}
.note-card__d{display:block;font-size:14px;color:var(--ink-2);flex:1 1 auto}
.note-card__f{display:block;font-size:12.5px;color:var(--ink-3);padding-top:10px;border-top:1px solid var(--line)}

/* 列表页清单行 */
.listlines{border-top:1px solid var(--line)}
.listline{border-bottom:1px solid var(--line);min-width:0}
.listline__in{
  display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;
  gap:6px 14px;padding:16px 0;color:var(--ink);min-width:0;
}
.listline__no{
  font-family:Consolas,Menlo,monospace;font-size:14px;font-weight:700;
  color:var(--ink-3);line-height:1.7;
}
.listline__b{display:flex;flex-direction:column;gap:6px;min-width:0}
.listline__cat{display:block;font-size:12.5px;font-weight:700;color:var(--amber)}
.listline__t{display:block;font-size:16.5px;font-weight:600;line-height:1.55}
.listline__in:hover .listline__t{color:var(--brand)}
.listline__m{
  display:flex;gap:14px;grid-column:2;font-size:12.5px;color:var(--ink-3);
  font-family:Consolas,Menlo,monospace;
}

/* ---------------------------------------------------------------
   12. 关于本站
   --------------------------------------------------------------- */
.about{display:grid;grid-template-columns:minmax(0,1fr);gap:34px;align-items:start}
.about__kicker{font-family:Consolas,Menlo,monospace;font-size:12px;letter-spacing:.18em;color:var(--amber)}
.about__title{margin-top:8px;font-size:clamp(21px,2.3vw,28px);font-weight:800;line-height:1.35}
.about__d{margin-top:14px;font-size:15px;color:var(--ink-2);max-width:38em}
.about__sign{margin-top:18px;font-size:14px;color:var(--ink-3)}
.about__stats{
  display:grid;grid-template-columns:minmax(0,1fr);gap:14px;
}
.about__stat{
  display:flex;align-items:center;gap:16px;
  background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--brand);
  border-radius:var(--r);padding:16px 18px;
}
.about__stat-n{
  font-family:Consolas,Menlo,monospace;font-size:30px;font-weight:700;
  color:var(--brand);line-height:1;flex:0 0 auto;
}
.about__stat-b{display:flex;flex-direction:column;min-width:0}
.about__stat-t{display:block;font-size:15px;font-weight:700}
.about__stat-s{display:block;font-size:12.5px;color:var(--ink-3)}

/* ---------------------------------------------------------------
   13. 咨询区（全站唯一浅色区）
   --------------------------------------------------------------- */
.consult{display:grid;grid-template-columns:minmax(0,1fr);gap:38px;align-items:start}
.consult__kicker{font-family:Consolas,Menlo,monospace;font-size:12px;letter-spacing:.18em;color:var(--brand)}
.consult__title{margin-top:8px;font-size:clamp(22px,2.6vw,32px);font-weight:800;line-height:1.32}
.consult__d{margin-top:14px;font-size:15.5px;color:var(--ink-2);max-width:36em}
.flowsteps{margin-top:26px;display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.flowstep{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;
  padding:16px 0;border-top:1px solid var(--line);
}
.flowstep__no{
  font-family:Consolas,Menlo,monospace;font-size:20px;font-weight:700;
  color:var(--brand);line-height:1.3;
}
.flowstep__b{display:flex;flex-direction:column;gap:4px;min-width:0}
.flowstep__b b{font-size:16px}
.flowstep__b > span{font-size:14.5px;color:var(--ink-2)}

.form-card{
  position:relative;background:var(--panel);color:var(--ink);
  border:1px solid var(--line);border-radius:var(--r-lg);
  padding:26px 26px 24px;box-shadow:var(--shadow);min-width:0;
}
.form-card__band{
  display:block;position:absolute;left:26px;top:-3px;height:3px;width:74px;
  background:var(--brand);
}
.form-card__kicker{font-family:Consolas,Menlo,monospace;font-size:11.5px;letter-spacing:.16em;color:var(--brand)}
.form-card__t{margin-top:6px;font-size:22px;font-weight:800;color:var(--ink)}
.form-card__d{margin-top:8px;font-size:14px;color:var(--ink-2)}
.req{color:var(--amber);font-style:normal}

.form-alert{
  display:none;margin-top:16px;padding:12px 14px;border-radius:var(--r);
  font-size:14px;border:1px solid var(--line-2);
}
.form-alert.is-on{display:block}
.form-alert.is-ok{background:rgba(53,224,200,.12);border-color:rgba(53,224,200,.45);color:var(--ink)}
.form-alert.is-err{background:rgba(255,107,107,.1);border-color:rgba(255,107,107,.4);color:var(--ink)}

.form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:20px}
.field{display:flex;flex-direction:column;gap:7px;min-width:0}
.field--full{grid-column:1/-1}
.field__l{font-size:13.5px;font-weight:700;color:var(--ink-2)}
.field__i{
  width:100%;padding:11px 13px;border-radius:var(--r);
  background:var(--panel-2);border:1px solid var(--line);color:var(--ink);
  font-size:15px;line-height:1.5;
}
.field__i::placeholder{color:var(--ink-3)}
.field__i:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px rgba(53,224,200,.16)}
.field__ta{resize:vertical;min-height:104px}
.field__sel{padding-right:12px}
.field--check{flex-direction:row}
.field.is-invalid .field__i{border-color:#ff8b7a;box-shadow:0 0 0 3px rgba(255,139,122,.16)}
.field.is-invalid .field__l{color:#ffb3a6}

.check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:13.5px;color:var(--ink-2)}
.check > input{position:absolute;opacity:0;width:1px;height:1px}
.check__b{
  flex:0 0 auto;width:18px;height:18px;margin-top:2px;border-radius:5px;
  border:1px solid var(--line-2);background:var(--panel-2);position:relative;
}
.check > input:checked + .check__b{background:var(--brand);border-color:var(--brand)}
.check > input:checked + .check__b::after{
  content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;
  border:solid var(--brand-ink);border-width:0 2px 2px 0;transform:rotate(45deg);
}
.check > input:focus-visible + .check__b{outline:2px solid var(--brand);outline-offset:2px}
.check__t{min-width:0}
.field.is-invalid .check__b{border-color:#ff8b7a}

.form__foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.form__foot > span{font-size:12.5px;color:var(--ink-3)}

/* ---------------------------------------------------------------
   14. FAQ
   --------------------------------------------------------------- */
.faq-list{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.faq{
  background:var(--panel);border:1px solid var(--line);border-radius:var(--r);
  overflow:hidden;align-self:start;
}
.faq[open]{border-color:var(--line-2)}
.faq__q{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;
  padding:16px 18px;cursor:pointer;list-style:none;
}
.faq__q::-webkit-details-marker{display:none}
.faq__q::marker{content:""}
.faq__no{font-family:Consolas,Menlo,monospace;font-size:14px;font-weight:700;color:var(--ink-3)}
.faq__t{font-size:16px;font-weight:700;min-width:0}
.faq__ico{color:var(--ink-3);transition:transform .22s}
.faq__ico svg{width:18px;height:18px}
.faq[open] .faq__ico{transform:rotate(180deg);color:var(--brand)}
.faq__a{padding:0 18px 18px;border-top:1px solid var(--line)}
.faq__a > p{padding-top:14px;font-size:14.5px;color:var(--ink-2)}

/* ---------------------------------------------------------------
   15. 友情链接
   --------------------------------------------------------------- */
.link-cloud{}
.link-cloud__t{
  font-size:14px;font-weight:800;color:var(--ink);margin-bottom:12px;
  padding-left:11px;border-left:3px solid var(--brand);
}
.link-tags{display:flex;flex-wrap:wrap;gap:9px}
.link-tags a{
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 14px;border:1px solid var(--line);border-radius:999px;
  background:var(--panel);color:var(--ink-2);font-size:13.5px;
}
.link-tags a:hover{border-color:var(--brand);color:var(--brand)}
.link-tags svg{width:13px;height:13px}
.link-cloud__note{margin-top:24px;font-size:13px;color:var(--ink-3)}

/* ---------------------------------------------------------------
   16. 侧栏
   --------------------------------------------------------------- */
.news-layout,.art-layout{
  display:grid;grid-template-columns:minmax(0,1fr);gap:34px;
  padding-block:46px 76px;
}
.news-main,.art-main{min-width:0}
/* 侧栏栏体：不吸顶、不内滚，整栏跟随页面滚动 */
.side-rail{display:flex;flex-direction:column;gap:20px;min-width:0}
.widget{
  background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:20px;min-width:0;
}
.widget__t{
  font-size:16.5px;font-weight:800;padding-bottom:12px;margin-bottom:14px;
  border-bottom:1px solid var(--line);
}
.widget__kicker{font-family:Consolas,Menlo,monospace;font-size:11.5px;letter-spacing:.16em;color:var(--amber)}
.widget__t--big{font-size:18px;border-bottom:0;padding-bottom:0;margin-bottom:10px}
.widget__d{font-size:14px;color:var(--ink-3)}
.widget__tel{display:flex;align-items:center;gap:8px;margin-top:14px;font-family:Consolas,Menlo,monospace;font-size:15px;color:var(--ink-2)}
.widget--cta{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}
.widget--cta .widget__kicker{color:inherit;opacity:.8}
.widget--cta .widget__t--big{color:inherit}
.widget--cta .widget__d{color:inherit}
.widget--cta .widget__tel{color:inherit}
.widget--cta .btn{background:var(--brand-ink);color:var(--brand);margin-top:16px}
.widget--cta .btn > .btn__t{color:inherit}

.hot{border-top:1px solid var(--line)}
.hot__i{border-bottom:1px solid var(--line)}
.hot__i:last-child{border-bottom:0}
.hot__i > a{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:start;padding:11px 0;color:var(--ink-2);font-size:14.5px}
.hot__i > a:hover{color:var(--brand)}
.hot__no{
  font-family:Consolas,Menlo,monospace;font-size:14px;font-weight:700;
  color:var(--ink-3);line-height:1.6;
}
.hot__i:nth-child(-n+3) .hot__no{color:var(--brand)}
.hot__t{min-width:0;line-height:1.55}

.catlist{border-top:1px solid var(--line)}
.catlist > li{border-bottom:1px solid var(--line)}
.catlist > li:last-child{border-bottom:0}
.catlist a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;color:var(--ink-2);font-size:14.5px}
.catlist a:hover{color:var(--brand)}
.catlist__n{font-family:Consolas,Menlo,monospace;font-size:13px;color:var(--ink-3)}

.lawlist{border-top:1px solid var(--line)}
.lawlist > li{border-bottom:1px solid var(--line)}
.lawlist > li:last-child{border-bottom:0}
.lawlist a{display:flex;flex-direction:column;gap:4px;padding:11px 0;color:var(--ink-2);font-size:14.5px}
.lawlist a:hover{color:var(--brand)}
.lawlist__n{line-height:1.5}
.lawlist__d{font-family:Consolas,Menlo,monospace;font-size:12.5px;color:var(--ink-3)}

.promiselist{display:flex;flex-direction:column;gap:13px}
.promiselist > li{display:flex;flex-direction:column;gap:3px}
.promiselist__t{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:700}
.promiselist__t svg{width:15px;height:15px;color:var(--brand)}
.promiselist__d{font-size:13.5px;color:var(--ink-3);padding-left:23px}

.toc{border-top:1px solid var(--line)}
.toc__i{border-bottom:1px solid var(--line)}
.toc__i:last-child{border-bottom:0}
.toc__link{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:start;padding:10px 0;color:var(--ink-2);font-size:14px}
.toc__link:hover{color:var(--brand)}
.toc__no{font-family:Consolas,Menlo,monospace;font-size:12.5px;color:var(--ink-3);line-height:1.7}
.toc__t{min-width:0;line-height:1.55}
.toc__link.is-on{color:var(--brand);font-weight:700}
.toc__link.is-on .toc__no{color:var(--brand)}

/* ---------------------------------------------------------------
   17. 内页 banner / 面包屑
   --------------------------------------------------------------- */
.page-banner{position:relative;overflow:hidden;background:var(--bg-2);border-bottom:1px solid var(--line)}
.page-banner__deco{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.page-banner__art{
  position:absolute;right:0;top:0;height:100%;width:auto;max-width:none;
  opacity:.62;
}
.page-banner__wm{
  position:absolute;right:30px;bottom:-28px;
  font-size:190px;font-weight:800;line-height:1;
  color:var(--ink);opacity:.045;
}
.page-banner__inner{position:relative;z-index:1;padding-block:52px 44px}
.page-banner__kicker{font-family:Consolas,Menlo,monospace;font-size:12px;letter-spacing:.18em;color:var(--brand)}
.page-banner__title{
  margin-top:10px;font-size:clamp(26px,3.4vw,40px);font-weight:800;line-height:1.28;
  max-width:26em;
}
.page-banner__sub{margin-top:12px;font-size:15px;color:var(--ink-2);max-width:42em}
.page-banner__meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;color:var(--ink-3)}
.page-banner__title--art{margin-top:16px;font-size:clamp(23px,2.9vw,34px);max-width:24em}
.page-banner__stats{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;
  margin-top:30px;border-top:1px solid var(--line-2);
}
.pb-i{padding:16px 0 0 18px;border-left:1px solid var(--line-2)}
.pb-i:first-child{border-left:0;padding-left:0}
.pb-n{
  display:block;font-family:Consolas,Menlo,monospace;font-size:clamp(22px,2.4vw,30px);
  font-weight:700;color:var(--brand);line-height:1.15;font-variant-numeric:tabular-nums;
}
.pb-t{display:block;font-size:13px;color:var(--ink-3)}

.crumb{background:var(--bg);border-bottom:1px solid var(--line)}
.crumb__inner{display:flex;align-items:center;gap:14px;padding-block:13px;flex-wrap:wrap}
.crumb__lead{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-3);flex:0 0 auto}
.crumb__lead svg{width:14px;height:14px}
.crumb__list{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px;min-width:0}
.crumb__item{display:inline-flex;align-items:center;gap:8px;color:var(--ink-2);min-width:0}
.crumb__item a{color:var(--ink-2)}
.crumb__item a:hover{color:var(--brand)}
.crumb__item > span{color:var(--ink-3);overflow-wrap:anywhere}
.crumb__sep{width:13px;height:13px;color:var(--line-2)}

/* ---------------------------------------------------------------
   18. 文章页
   --------------------------------------------------------------- */
.art-lede{
  font-size:16.5px;line-height:1.85;color:var(--ink);
  padding:20px 22px;background:var(--panel);border:1px solid var(--line);
  border-left:3px solid var(--brand);border-radius:var(--r);margin-bottom:32px;
}
.art-body{font-size:16px;line-height:1.9;color:var(--ink-2)}
.art-body > h2{
  margin:40px 0 16px;padding-left:14px;border-left:4px solid var(--brand);
  font-size:clamp(19px,2vw,23px);font-weight:800;line-height:1.45;color:var(--ink);
  scroll-margin-top:96px;
}
.art-body > h2:first-child{margin-top:0}
.art-body > h3{
  margin:28px 0 12px;font-size:17.5px;font-weight:800;color:var(--ink);
  padding-left:13px;position:relative;
}
.art-body > h3::before{
  content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;
  background:var(--amber);transform:rotate(45deg);
}
.art-body > p{margin:0 0 16px}
.art-body > ul,.art-body > ol{margin:0 0 18px;padding-left:22px}
.art-body > ul{list-style:disc}
.art-body > ol{list-style:decimal}
.art-body > ul > li,.art-body > ol > li{margin-bottom:9px;padding-left:4px}
.art-body > ul > li::marker{color:var(--brand)}
.art-body > ol > li::marker{color:var(--brand);font-family:Consolas,Menlo,monospace}
.art-body strong{color:var(--ink)}
.art-body blockquote{
  margin:24px 0;padding:18px 22px;background:var(--panel);
  border:1px solid var(--line);border-left:3px solid var(--amber);
  border-radius:var(--r);font-size:15.5px;color:var(--ink-2);
}
.tipbox{
  display:flex;gap:12px;align-items:flex-start;
  margin:22px 0;padding:16px 18px;border-radius:var(--r);
  background:rgba(53,224,200,.08);border:1px solid rgba(53,224,200,.3);
  color:var(--ink-2);font-size:15px;
}
.tipbox svg{width:18px;height:18px;color:var(--brand);flex:0 0 auto;margin-top:4px}
.tbl-wrap{overflow-x:auto;margin:24px 0;border:1px solid var(--line);border-radius:var(--r)}
.tbl{width:100%;border-collapse:collapse;min-width:520px;font-size:14.5px}
.tbl th{
  background:var(--panel-2);color:var(--ink);font-weight:700;text-align:left;
  padding:12px 14px;border-bottom:1px solid var(--line-2);white-space:nowrap;
}
.tbl td{padding:12px 14px;border-bottom:1px solid var(--line);color:var(--ink-2);vertical-align:top}
.tbl tbody tr:last-child td{border-bottom:0}
.fig{margin:26px 0}
.fig img{width:100%;height:auto;border:1px solid var(--line);border-radius:var(--r)}
.fig figcaption{margin-top:10px;font-size:13.5px;color:var(--ink-3);text-align:center}

.art-tags{display:flex;flex-wrap:wrap;gap:9px;margin:30px 0 0}
.art-tags a{
  display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border-radius:999px;
  border:1px solid var(--line);background:var(--panel);color:var(--ink-2);font-size:13.5px;
}
.art-tags a:hover{border-color:var(--brand);color:var(--brand)}
.art-tags svg{width:13px;height:13px}
.art-note{
  display:flex;gap:11px;align-items:flex-start;margin-top:22px;padding:15px 17px;
  border:1px dashed var(--line-2);border-radius:var(--r);
  font-size:13.5px;color:var(--ink-3);
}
.art-note svg{width:15px;height:15px;flex:0 0 auto;margin-top:4px;color:var(--ink-3)}

.prevnext{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:30px}
.prevnext__i{
  display:flex;flex-direction:column;gap:7px;padding:16px 18px;
  background:var(--panel);border:1px solid var(--line);border-radius:var(--r);
  color:var(--ink);min-width:0;
}
.prevnext__i:hover{border-color:var(--brand)}
.prevnext__k{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-3)}
.prevnext__k svg{width:15px;height:15px}
.prevnext__t{font-size:15.5px;font-weight:700;line-height:1.5}
.prevnext__i:hover .prevnext__t{color:var(--brand)}
.prevnext__i--next{text-align:right}
.prevnext__i--next .prevnext__k,.prevnext__i--next .prevnext__t{justify-content:flex-end}

.art-sec{margin-top:44px}
.row-grid--sm,.note-grid--sm{gap:0 40px}

/* ---------------------------------------------------------------
   19. 页脚
   --------------------------------------------------------------- */
.site-footer{background:#070c16;border-top:1px solid var(--line);padding-top:44px}
.footer-quick{
  display:flex;align-items:center;gap:20px;flex-wrap:wrap;
  padding-bottom:22px;border-bottom:1px solid var(--line);
}
.footer-quick__t{font-family:Consolas,Menlo,monospace;font-size:12px;letter-spacing:.16em;color:var(--ink-3)}
.footer-quick__l{display:flex;flex-wrap:wrap;gap:10px 22px}
.footer-quick__l a{color:var(--ink-2);font-size:14.5px}
.footer-quick__l a:hover{color:var(--brand)}
.footer-main{
  display:grid;grid-template-columns:minmax(0,1fr);gap:30px;
  padding-block:34px 30px;
}
.footer-brand{min-width:0}
.footer-brand__logo{width:46px;height:46px;margin-bottom:12px}
.footer-brand__n{font-size:18px;font-weight:800}
.footer-brand__s{margin-top:6px;font-size:13.5px;color:var(--ink-3);max-width:30em}
.footer-brand__meta{margin-top:16px;display:flex;flex-direction:column;gap:9px}
.footer-brand__meta > li{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;color:var(--ink-2)}
.footer-brand__meta a{color:var(--ink-2)}
.footer-brand__meta a:hover{color:var(--brand)}
.footer-brand__meta svg{width:15px;height:15px;flex:0 0 auto;margin-top:4px;color:var(--ink-3)}
.footer-col__t{font-size:14.5px;font-weight:800;color:var(--ink);margin-bottom:13px;padding-left:11px;border-left:3px solid var(--brand)}
.footer-col__l{display:flex;flex-direction:column;gap:9px}
.footer-col__l a{color:var(--ink-2);font-size:14px}
.footer-col__l a:hover{color:var(--brand)}
.footer-bar{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;
  padding-block:18px 22px;border-top:1px solid var(--line);
  font-size:13px;color:var(--ink-3);
}
.footer-bar__note{max-width:48em}

/* ---------------------------------------------------------------
   20. 移动端固定底栏 / 返回顶部
   --------------------------------------------------------------- */
.mobile-bar{
  position:fixed;left:0;right:0;bottom:0;z-index:70;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  background:#070c16;border-top:1px solid var(--line);
  padding-bottom:env(safe-area-inset-bottom,0);
}
.mobile-bar__i{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  padding:10px 4px 11px;color:var(--ink-2);font-size:12px;
}
.mobile-bar__i svg{width:20px;height:20px}
.mobile-bar__i--solid{background:var(--brand);color:var(--brand-ink)}
.mobile-bar__i--solid:hover{color:var(--brand-ink)}

.totop{
  position:fixed;right:16px;bottom:76px;z-index:65;
  display:inline-flex;flex-direction:column;align-items:center;gap:2px;
  width:52px;padding:9px 0;border-radius:var(--r);
  background:rgba(20,32,58,.9);border:1px solid var(--line-2);color:var(--ink-2);
  font-size:11.5px;backdrop-filter:blur(6px);
}
.totop:hover{color:var(--brand);border-color:var(--brand)}
.totop svg{width:18px;height:18px}

/* ---------------------------------------------------------------
   21. 入场动画（渐进增强：默认可见，仅在 html 带标记类时隐藏）
   --------------------------------------------------------------- */
.reveal{opacity:1;transform:none}
html.js-reveal .reveal{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}
html.js-reveal .reveal.is-in{opacity:1;transform:none}
html.js-reveal .side-rail .reveal{transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  html.js-reveal .reveal{opacity:1;transform:none;transition:none}
  .cat-tree__g,.tcard,.note-card{transition:none}
}
@media print{
  html.js-reveal .reveal{opacity:1!important;transform:none!important}
}

/* ==========================================================================
   22. 媒体查询（统一放在文件末尾，避免「基础规则靠后反压媒体规则」）
   ========================================================================== */

/* --- 窄屏收紧 --- */
@media (max-width:620px){
  :root{--gut:16px}
  .sec,.sec--alt{padding-block:54px}
  .topbar__note{display:none}
  .header-act{display:none}
  .nav-toggle{margin-left:auto}
  .brand__en{display:none}
  .hero{padding-top:44px}
  .hero__cta .btn{flex:1 1 100%}
  .cat-tree__subs{padding-left:16px}
  .cat-tree__dot{left:-21px}
  .sec-head__no{font-size:34px}
  .page-banner__wm{font-size:120px;right:14px;bottom:-14px}
  .totop{right:12px;bottom:72px;width:46px}
}

/* --- 抽屉导航（≤1099px）：无 JS 时导航整体展开且可点 --- */
@media (max-width:1099px){
  .header-main{gap:10px 22px}
  .nav-toggle{display:inline-flex}
  .nav{flex:1 0 100%;order:4;min-width:0}
  .header-side{order:3}
  .site-header.is-collapsible .nav{max-height:0;overflow:hidden;transition:max-height .3s ease}
  .site-header.is-collapsible.is-open .nav{max-height:640px}
  .nav__list{flex-wrap:wrap;gap:6px;padding-block:10px}
  .nav__list > li{flex:0 0 auto}
  .nav__link{padding:10px 14px;border-color:var(--line);background:var(--panel)}
  .nav__list::before{
    content:"";flex:1 0 100%;height:1px;background:var(--line);margin-bottom:8px;
  }
  /* 无 JS 时汉堡按钮点了没反应 —— 直接藏掉，导航本就整体展开 */
  .site-header:not(.is-collapsible) .nav-toggle{display:none}
  .site-header:not(.is-collapsible) .nav{max-height:none;overflow:visible}
}

/* --- 平板起 --- */
@media (min-width:621px){
  .hero__stats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .page-banner__stats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .about__stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .prevnext{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:760px){
  .tgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tcard--lead{grid-template-columns:minmax(0,42%) minmax(0,1fr)}
  .cat-tree{grid-template-columns:repeat(2,minmax(0,1fr))}
  .focus{grid-template-columns:minmax(0,44%) minmax(0,1fr)}
  .faq-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .flowsteps{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}
  .listline__in{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}
  .listline__m{grid-column:auto;flex-direction:column;gap:2px;text-align:right;white-space:nowrap}
}
@media (min-width:980px){
  .sec,.sec--alt{padding-block:88px}
  .news-layout,.art-layout{grid-template-columns:minmax(0,1fr) 320px;gap:46px}
  .row-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .row-grid--sm{gap:0 40px}
  .note-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .note-grid--sm{gap:18px}
  .about{grid-template-columns:minmax(0,1fr) 340px;gap:46px}
  .about__stats{grid-template-columns:minmax(0,1fr);gap:14px}
  .consult{grid-template-columns:minmax(0,1fr) minmax(340px,460px);gap:46px}
  .flowsteps{grid-template-columns:minmax(0,1fr)}
  .footer-main{grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr))}
}
@media (min-width:1000px){
  .tgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tgrid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1100px){
  .header-main{flex-wrap:nowrap}
  .header-side{order:0}
  .nav{order:0}
  .nav-toggle{display:none}
  .sec-head__rule{display:inline-flex;flex:1 1 auto;justify-content:flex-end}
  .hero__inner{grid-template-columns:minmax(0,1fr) 400px;gap:52px;padding-block:44px 58px}
  body .mobile-bar{display:none}
  .totop{bottom:24px}
}

/* 高对比度偏好下取消半透明顶栏，避免文字压在半透明层上 */
@media (prefers-reduced-transparency:reduce){
  .site-header{background:#0b1220}
}
