/* RefKYC 样式表。类名统一 rk- 前缀；页面级类名是 body 上的 rk-pg-<页面类别>。
   改了这个文件，把 hugo.toml 里的 assetRev 加 1。 */
:root{
  --bg:#F3F2EA;
  --card:#FFFFFF;
  --ink:#1B1D22;
  --sub:#5A5F6A;
  --body:#3A3E47;
  --line:#E0DED2;
  --line-strong:#CBC8BA;
  --accent:#3B2FB8;
  --accent-deep:#2D2393;
  --accent-tint:#F3F1FC;
  --accent-edge:#D8D3F1;
  --row-hover:#F8F7F0;
  --track:#D8D5C8;
  --soft:#FAF9F4;
  --foot:#E9E8DD;
  --night:#1B1D22;
  --night-sub:#A9ADB8;

  --blue:#2B6FE3;   --blue-bg:#E7EFFC;  --blue-ink:#1A4CAB;
  --green:#1F9D55;  --green-bg:#E3F3E9; --green-ink:#136A38;
  --amber:#C77D00;  --amber-bg:#FAEFD8; --amber-ink:#855200;
  --red:#D2412D;    --red-bg:#FBE8E4;   --red-ink:#A12D1C;

  --sans:"Atkinson Hyperlegible","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",sans-serif;
  --mono:"Spline Sans Mono","SF Mono",Menlo,Consolas,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",monospace;

  --pad:16px;
  --rail:376px;
  --gutter:48px;
  --measure:744px;
  --r-s:4px;
  --r-m:6px;
  --r-l:8px;

  /* 卡面压在底色上的那一点厚度：一条贴边的细影，招牌组件（进度板）再加一道收得很紧的落影 */
  --lift:0 1px 2px rgba(27,29,34,.045);
  --lift-board:0 1px 2px rgba(27,29,34,.05),0 14px 26px -22px rgba(27,29,34,.34);
  /* 刻线：分区之间那条线下面再压一道亮边 */
  --groove:inset 0 1px 0 rgba(255,255,255,.7);
  /* 刻度：每 8px 一短格、每 40px 一长格，进度板板头与页脚上沿共用 */
  --ticks:repeating-linear-gradient(90deg,var(--line-strong) 0 1px,transparent 1px 40px) 0 0/100% 6px no-repeat,repeating-linear-gradient(90deg,var(--line-strong) 0 1px,transparent 1px 8px) 0 0/100% 3px no-repeat;
  --ease:cubic-bezier(.2,.7,.3,1);
  --quick:.14s;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:20px}
body{display:flex;flex-direction:column;min-height:100vh;margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-wrap:anywhere;text-autospace:normal}
body > main{flex:1 0 auto;width:100%}
h1,h2,h3,h4,p,ol,ul,dl,dd,figure,table{margin:0;padding:0}
ol,ul{list-style:none}
a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:var(--r-s)}
::selection{background:#DAD5F6;color:var(--ink)}
svg{display:block;flex:none}
img{max-width:100%;height:auto}
button,input{font:inherit;color:inherit}
.rk-wrap{max-width:1440px;margin:0 auto;padding:0 var(--pad)}
/* 标题和清单里的文章标题：认 auto-phrase 的浏览器按词断行，不把一个词拆在两行 */
.rk-log__title,.rk-shelf li a,.rk-entry__title,.rk-lines a,.rk-also a,.rk-toc a,.rk-prose h2,.rk-prose h3,.rk-faq__item h3,.rk-roll__side h1,.rk-stop__name{word-break:auto-phrase;text-wrap:pretty}
.rk-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.rk-skip{position:absolute;left:8px;top:-60px;z-index:10;background:var(--ink);color:#fff;padding:10px 14px;border-radius:var(--r-s);text-decoration:none}
.rk-skip:focus{top:8px}

/* ---------- 页头 ---------- */
.rk-top{position:relative;border-bottom:1px solid var(--line);background:var(--bg);box-shadow:0 1px 0 rgba(255,255,255,.75)}
.rk-top__in{display:grid;grid-template-columns:1fr auto;align-items:center}
.rk-logo{display:inline-flex;align-items:center;gap:8px;min-height:48px;justify-self:start;color:var(--ink);text-decoration:none;font:700 21px/1 var(--sans);letter-spacing:-.015em}
.rk-logo__mark{color:var(--accent)}
.rk-seek{grid-row:1;grid-column:2;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 4px 0 10px;border-radius:var(--r-m);color:var(--sub);text-decoration:none;font-size:14.5px;transition:color var(--quick),border-color var(--quick)}
.rk-seek:hover{color:var(--accent)}
.rk-menu{grid-row:2;grid-column:1 / -1;border-top:1px solid var(--line);margin:0 calc(var(--pad) * -1);padding:0 var(--pad)}
/* 手机上五条排不下时可以横着滑，不出滚动条 */
.rk-menu ul{display:flex;justify-content:space-between;gap:20px;overflow-x:auto;scrollbar-width:none}
.rk-menu ul::-webkit-scrollbar{display:none}
.rk-menu a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:none;font-size:14.5px;white-space:nowrap;box-shadow:inset 0 -2px 0 transparent;transition:color var(--quick),box-shadow var(--quick)}
.rk-menu a:hover{color:var(--accent)}
.rk-menu a[aria-current]{color:var(--accent);font-weight:700;box-shadow:inset 0 -2px 0 var(--accent)}
.rk-menu a:focus-visible{outline-offset:-3px}

/* ---------- 状态标签 ---------- */
.rk-tag{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 8px 0 7px;border-radius:var(--r-s);font:500 12.5px/1 var(--mono);letter-spacing:.02em;white-space:nowrap;vertical-align:middle;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--dot) 18%,transparent)}
.rk-tag::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--dot)}
.rk-tag--blue{background:var(--blue-bg);color:var(--blue-ink);--dot:var(--blue)}
.rk-tag--green{background:var(--green-bg);color:var(--green-ink);--dot:var(--green)}
.rk-tag--amber{background:var(--amber-bg);color:var(--amber-ink);--dot:var(--amber)}
.rk-tag--red{background:var(--red-bg);color:var(--red-ink);--dot:var(--red)}
.rk-tag--lg{height:30px;padding:0 11px 0 9px;gap:7px;font-size:14px;font-weight:600}
.rk-tag--lg::before{width:8px;height:8px}

/* ---------- 按钮 ---------- */
/* 实心靛紫。上沿一道亮边、下沿一道暗边；图标在一条细分隔线右边。悬停加深、图标往右上挪一点，按下整体沉 1px。 */
.rk-go{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:0 16px 0 20px;border-radius:var(--r-m);background:var(--accent);color:#fff;font:700 16px/1 var(--sans);letter-spacing:.02em;text-decoration:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.17),inset 0 -1px 0 rgba(0,0,0,.26),0 1px 2px rgba(45,35,147,.32);transition:background-color var(--quick),box-shadow var(--quick),transform .08s}
.rk-go svg{box-sizing:content-box;padding:8px 0 8px 12px;border-left:1px solid rgba(255,255,255,.28)}
.rk-go svg path{transition:transform var(--quick) var(--ease)}
.rk-go:hover{background:var(--accent-deep);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset 0 -1px 0 rgba(0,0,0,.3),0 3px 8px -2px rgba(45,35,147,.5)}
.rk-go:hover svg path{transform:translate(.9px,-.9px)}
.rk-go:active{transform:translateY(1px);box-shadow:inset 0 1px 3px rgba(0,0,0,.34)}
.rk-go:focus-visible{outline-offset:3px;border-radius:var(--r-m)}
.rk-go__note{margin-top:8px;color:var(--sub);font-size:13px;line-height:1.45}
/* 首页按钮下面的第二句（谁该先看第 01 步）另起一行，一行排不下时两行排匀；
   句里的站内文字链不从中间断开，上下各多出一圈可点的范围，不占行高 */
.rk-go__first{display:block;margin-top:3px;color:var(--body);text-wrap:balance}
.rk-go__first a{padding:9px 1px;font-weight:700;white-space:nowrap;text-decoration-color:rgba(59,47,184,.42);transition:text-decoration-color var(--quick)}
.rk-go__first a:hover{text-decoration-color:currentColor}

/* ---------- 首屏 ---------- */
.rk-hero{padding:16px 0 30px}
.rk-hero__grid{display:grid;gap:18px}
.rk-lede h1{font:700 26px/1.28 var(--sans);letter-spacing:-.01em;text-wrap:balance}
.rk-lede h1 span{display:inline-block;white-space:nowrap}
.rk-lede__intro{text-wrap:pretty;margin-top:8px;color:var(--sub);font-size:15px;line-height:1.6}
.rk-out{margin-top:14px}

.rk-ask h2{color:var(--sub);font:500 12.5px/1.4 var(--mono);letter-spacing:.06em}
.rk-ask ul{margin-top:8px;border-top:1px solid var(--line-strong)}
.rk-ask li{border-bottom:1px solid var(--line)}
.rk-ask a{display:flex;align-items:center;gap:12px;min-height:46px;padding:9px 0;color:var(--ink);font-size:14.5px;line-height:1.45;text-decoration:none;transition:color var(--quick)}
.rk-ask a::after{content:"";flex:none;width:7px;height:7px;margin-left:auto;border-right:1.6px solid var(--line-strong);border-top:1.6px solid var(--line-strong);transform:rotate(45deg) translate(-2px,2px);transition:transform var(--quick) var(--ease),border-color var(--quick)}
.rk-ask a:hover{color:var(--accent)}
.rk-ask a:hover::after{border-color:var(--accent);transform:rotate(45deg)}

/* ---------- 进度板 ---------- */
/* 一块状态面板：板头下沿一排刻度；左边一条进度轨把 7 行串起来，每个节点是一枚按状态上色的环，
   环外留一圈底色把轨断开；悬停或聚焦时这一行的节点点亮、箭头右移。每行的底色走 --row，节点外圈跟着它变。 */
.rk-board{container:rkboard / inline-size;background:var(--card);border:1px solid var(--line-strong);border-radius:var(--r-l);box-shadow:var(--lift-board);overflow:hidden}
.rk-board__top{position:relative;display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 14px 15px;border-bottom:1px solid var(--line-strong)}
.rk-board__top::after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:6px;background:var(--ticks);transform:scaleY(-1)}
.rk-board__top h2{font:700 15px/1.4 var(--sans);letter-spacing:.01em}
.rk-board__top p{color:var(--sub);font:400 12px/1.4 var(--mono);font-variant-numeric:tabular-nums}
.rk-board__cols{display:none}
.rk-node + .rk-node{border-top:1px solid var(--line)}
.rk-node__link{--row:var(--card);position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"num name tag" ". point point";column-gap:10px;row-gap:3px;align-items:start;padding:12px 14px;background:var(--row);color:var(--ink);text-decoration:none;transition:background-color var(--quick)}
.rk-node__link::before{content:"";position:absolute;left:19px;top:-1px;bottom:0;width:2px;background:var(--track)}
.rk-node:first-child .rk-node__link::before{top:24px}
.rk-node:last-child .rk-node__link::before{bottom:auto;height:25px}
.rk-node__link:focus-visible{outline-offset:-3px;border-radius:var(--r-m)}
.rk-node__num{grid-area:num;display:flex;align-items:center;gap:8px;height:24px;font:600 13px/24px var(--mono);font-variant-numeric:tabular-nums}
.rk-node__num::before{content:"";position:relative;z-index:1;flex:none;width:12px;height:12px;border-radius:50%;border:2.5px solid var(--dot);background:var(--card);box-shadow:0 0 0 3px var(--row);transition:background-color var(--quick),box-shadow var(--quick)}
.rk-node__name{grid-area:name;font-weight:700;font-size:16px;line-height:24px;transition:color var(--quick)}
.rk-node__point{grid-area:point;text-wrap:pretty;color:var(--sub);font-size:14px;line-height:21px}
.rk-node .rk-tag{grid-area:tag;justify-self:end}
.rk-node__checked{display:none;grid-area:checked;color:var(--sub);font:400 12px/24px var(--mono);font-variant-numeric:tabular-nums}
.rk-node__chev{display:none;grid-area:chev;color:var(--line-strong);margin-top:5px;transition:transform var(--quick) var(--ease),color var(--quick)}
.rk-node--blue{--dot:var(--blue)}
.rk-node--green{--dot:var(--green)}
.rk-node--amber{--dot:var(--amber)}
.rk-node--red{--dot:var(--red)}
@media (hover:hover){
  .rk-node__link:hover{--row:var(--row-hover)}
  .rk-node__link:hover .rk-node__num::before{background:var(--dot)}
  .rk-node__link:hover .rk-node__name{color:var(--accent)}
  .rk-node__link:hover .rk-node__chev{color:var(--accent);transform:translateX(3px)}
}
.rk-node__link:focus-visible .rk-node__num::before,.rk-node__link:active .rk-node__num::before{background:var(--dot)}
.rk-node__link:active{--row:#F2F0E7}

/* 编辑推荐那一行：淡紫底、左缘一条靛紫、上下两条线换成紫调，节点外面多套一圈细环 */
.rk-node--pick .rk-node__link{--row:var(--accent-tint);grid-template-areas:". pick pick" "num name tag" ". point point";box-shadow:inset 3px 0 0 var(--accent)}
.rk-node.rk-node--pick,.rk-node--pick + .rk-node{border-top-color:var(--accent-edge)}
.rk-node--pick .rk-node__link::before{background:var(--accent-edge)}
.rk-node--pick .rk-node__num::before{box-shadow:0 0 0 3px var(--row),0 0 0 4.5px rgba(59,47,184,.42)}
.rk-node--pick .rk-node__link:active{--row:#E6E2F8}
@media (hover:hover){
  .rk-node--pick .rk-node__link:hover{--row:#ECE9FA}
}
.rk-node__pick{grid-area:pick;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-bottom:2px}
.rk-pick__badge{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--r-s);background:var(--accent);color:#fff;font:600 12px/1 var(--mono);letter-spacing:.04em}
.rk-pick__text{color:var(--accent);font-weight:700;font-size:14.5px;line-height:22px}

.rk-board--lite .rk-node__link{grid-template-areas:"num name tag";align-items:center;min-height:50px;padding-top:9px;padding-bottom:9px}
.rk-board--lite .rk-node:first-child .rk-node__link::before{top:50%}
.rk-board--lite .rk-node:last-child .rk-node__link::before{height:50%}

.rk-board__end{padding:12px 14px 14px;border-top:1px solid var(--line-strong);background:var(--soft)}
.rk-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}
.rk-legend li{display:flex;flex-direction:column;align-items:flex-start;gap:4px;color:var(--sub);font-size:12.5px;line-height:1.45}
.rk-board__src{margin-top:12px;padding-top:10px;border-top:1px dashed var(--line-strong);color:var(--sub);font-size:12.5px;line-height:1.5}

@container rkboard (min-width:780px){
  .rk-board__top{padding:13px 20px 17px}
  .rk-board__top::after{left:20px;right:20px}
  .rk-board__cols{display:grid;grid-template-columns:48px 112px minmax(0,1fr) 88px 96px 14px;column-gap:16px;padding:7px 20px;border-bottom:1px solid var(--line);background:var(--soft);color:var(--sub);font-size:12px;line-height:18px;letter-spacing:.04em}
  .rk-board__cols span:first-child{grid-column:1 / 3}
  .rk-node__link{grid-template-columns:48px 112px minmax(0,1fr) 88px 96px 14px;grid-template-areas:"num name point tag checked chev";column-gap:16px;row-gap:0;padding:15px 20px}
  .rk-node__link::before{left:25px}
  .rk-node:first-child .rk-node__link::before{top:27px}
  .rk-node:last-child .rk-node__link::before{height:28px}
  .rk-node__point{font-size:14.5px;line-height:23px}
  .rk-node .rk-tag{justify-self:start}
  .rk-node__checked{display:block}
  .rk-node__chev{display:block}
  .rk-node--pick .rk-node__link{grid-template-areas:". pick pick pick pick pick" "num name point tag checked chev"}
  .rk-node__pick{margin-bottom:8px}
  .rk-board--lite .rk-node__link{grid-template-columns:48px minmax(0,1fr) auto 14px;grid-template-areas:"num name tag chev";padding:9px 20px}
  .rk-board--lite .rk-node__chev{margin-top:0}
  .rk-board__end{padding:13px 20px 14px}
  .rk-legend{display:flex;flex-wrap:wrap;gap:8px 20px}
  .rk-legend li{flex-direction:row;align-items:center;gap:8px}
  .rk-board__src{margin-top:12px}
}

/* ---------- 首屏之下的区块 ---------- */
/* 每一块 = 左栏标题 + 右边一块面板。区块之间一条细线（下压一道亮边）。
   左栏标题挂在一枚和进度板同款的环上，环下面接一小段轨，一直走到左栏的说明文字底下。
   面板 = 板头（名称 + 等宽小字的个数，下沿一排刻度，和进度板板头同一把尺）+ 一行一行的内容；
   每行整行可点：标题那条链接用 ::after 撑满整行，悬停时这一行底色变浅、箭头右移，键盘聚焦时整行描边。 */
.rk-sec{padding:30px 0;border-top:1px solid var(--line);box-shadow:var(--groove)}
.rk-sec__grid{display:grid;gap:16px}
.rk-sec__side{position:relative;padding-left:24px}
.rk-sec__side::before{content:"";position:absolute;left:5px;top:24px;bottom:2px;width:2px;background:linear-gradient(var(--track) 60%,rgba(216,213,200,0))}
.rk-sec__side h2{position:relative;font:700 21px/1.3 var(--sans);letter-spacing:-.01em}
.rk-sec__side h2::before{content:"";position:absolute;left:-24px;top:8px;width:12px;height:12px;border:2.5px solid var(--accent);border-radius:50%;background:var(--bg);box-sizing:border-box}
.rk-sec__side p{margin-top:6px;color:var(--sub);font-size:14.5px;line-height:1.6;text-wrap:pretty}
.rk-sec__side p a{text-decoration-color:rgba(59,47,184,.42)}
.rk-sec__side p a:hover{text-decoration-color:currentColor}
.rk-keys{margin-top:14px;display:grid;gap:8px}
.rk-keys li{display:grid;grid-template-columns:104px minmax(0,1fr);gap:10px;align-items:start;color:var(--sub);font-size:13px;line-height:24px}

.rk-panel{min-width:0;background:var(--card);border:1px solid var(--line-strong);border-radius:var(--r-l);box-shadow:var(--lift);overflow:hidden}
.rk-phead{position:relative;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 12px;padding:11px 14px 15px;border-bottom:1px solid var(--line-strong)}
.rk-phead::after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:6px;background:var(--ticks);transform:scaleY(-1)}
.rk-phead__t{font:700 15px/1.4 var(--sans);letter-spacing:.01em}
.rk-phead__n{color:var(--sub);font:400 12px/1.4 var(--mono);font-variant-numeric:tabular-nums}
.rk-chev{color:var(--line-strong);transition:transform var(--quick) var(--ease),color var(--quick)}

/* 地区对照预览：说明只显示两行（全文在 HTML 里，整行悬停的提示里也是全文） */
.rk-regions{width:100%;border-collapse:collapse;font-size:14.5px}
.rk-regions th,.rk-regions td{text-align:left;vertical-align:top;font-weight:400}
.rk-regions thead th{color:var(--sub);font-size:12px;line-height:18px;letter-spacing:.04em;background:var(--soft)}
.rk-regions tbody tr{--row:var(--card);position:relative;background:var(--row);transition:background-color var(--quick)}
.rk-regions tbody th{font-weight:700;font-size:16px;line-height:24px}
.rk-regions tbody th a{color:var(--ink);text-decoration:none;transition:color var(--quick)}
.rk-regions tbody th a::after{content:"";position:absolute;inset:0}
.rk-regions tbody th a:focus-visible{outline:0}
.rk-regions tbody th a:focus-visible::after{outline:3px solid var(--accent);outline-offset:-3px;border-radius:var(--r-m)}
.rk-regions__note span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-wrap:pretty;color:var(--sub);line-height:23px}
.rk-regions__checked{display:flex;align-items:center;gap:8px;color:var(--sub);font:400 12px/24px var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.rk-regions__checked .rk-chev{margin-left:auto}
.rk-panel__end{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:10px 14px;border-top:1px solid var(--line-strong);background:var(--soft);color:var(--sub);font-size:12.5px;line-height:1.5}
/* 「看完整对照表」：描边的次级按钮，右边一格等宽小字写表的行数 */
.rk-more{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-left:auto;padding:0 12px 0 14px;border:1px solid var(--line-strong);border-radius:var(--r-m);background:var(--card);box-shadow:var(--lift);color:var(--ink);font-size:14.5px;font-weight:700;text-decoration:none;transition:border-color var(--quick),color var(--quick)}
.rk-more span{padding-left:10px;border-left:1px solid var(--line);color:var(--sub);font:400 12px/1 var(--mono);font-variant-numeric:tabular-nums}
.rk-more svg{color:var(--accent);transition:transform var(--quick) var(--ease)}
.rk-more:hover{border-color:var(--accent);color:var(--accent)}
.rk-more:hover svg{transform:translateX(3px)}
.rk-more:active{transform:translateY(1px)}

@media (max-width:759px){
  .rk-regions,.rk-regions tbody{display:block}
  .rk-regions thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .rk-regions tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"place tag" "note note" "checked checked";gap:4px 10px;padding:13px 14px 10px}
  .rk-regions tbody tr + tr{border-top:1px solid var(--line)}
  .rk-regions tbody th{grid-area:place}
  .rk-regions__tag{grid-area:tag}
  .rk-regions__note{grid-area:note}
  .rk-regions__checked{grid-area:checked;font-size:11.5px;line-height:20px}
}
@media (min-width:760px){
  .rk-regions thead th{padding:7px 16px 7px 0;border-bottom:1px solid var(--line)}
  .rk-regions tbody th,.rk-regions tbody td{padding:14px 16px 14px 0}
  .rk-regions tr > :first-child{padding-left:20px;width:148px}
  .rk-regions tr > :nth-child(2){width:132px}
  .rk-regions tr > :last-child{width:118px;padding-right:20px}
  .rk-regions tbody tr + tr > *{border-top:1px solid var(--line)}
  .rk-regions__lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .rk-panel__end{padding:10px 20px}
}

/* 最近更新：一条更新记录。等宽日期 + 轨上的环形节点（最新那一条是实心的）+ 标题、两行摘要、栏目与类别 */
.rk-log{--row:var(--card);position:relative;padding:13px 14px 15px 42px;background:var(--row);transition:background-color var(--quick)}
.rk-log + .rk-log{border-top:1px solid var(--line)}
.rk-log::before{content:"";position:absolute;left:19px;top:0;bottom:0;width:2px;background:var(--track)}
.rk-log:first-child::before{top:24px}
.rk-log:last-child::before{bottom:auto;height:24px}
.rk-log:only-child::before{display:none}
.rk-log::after{content:"";position:absolute;left:14px;top:18px;width:12px;height:12px;border:2.5px solid var(--accent);border-radius:50%;background:var(--card);box-shadow:0 0 0 3px var(--row);box-sizing:border-box;transition:background-color var(--quick),box-shadow var(--quick)}
.rk-log:first-child::after{background:var(--accent)}
.rk-log__date{display:block;color:var(--sub);font:500 12.5px/22px var(--mono);font-variant-numeric:tabular-nums}
.rk-log__title{display:block;margin-top:2px;color:var(--ink);font-weight:700;font-size:16.5px;line-height:1.45;text-decoration:none;transition:color var(--quick)}
.rk-log__title::after{content:"";position:absolute;inset:0;z-index:1}
.rk-log__title:focus-visible{outline:0}
.rk-log__title:focus-visible::after{outline:3px solid var(--accent);outline-offset:-3px;border-radius:var(--r-m)}
.rk-log__sum{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;margin-top:4px;text-wrap:pretty;color:var(--sub);font-size:14px;line-height:1.65}
.rk-log__node{margin-top:7px;color:var(--sub);font:400 12px/22px var(--mono)}
.rk-log__shelf{display:inline-flex;align-items:center;height:20px;margin-right:9px;padding:0 6px;border:1px solid var(--line-strong);border-radius:var(--r-s);color:var(--ink);font-family:var(--sans);font-size:12px;vertical-align:1px}

/* 全部文章：每个栏目一块小面板，条目前面是样式表数的 01、02（计数器 rkshelf） */
.rk-shelves{display:grid;gap:16px;align-items:start}
.rk-shelf{min-width:0;background:var(--card);border:1px solid var(--line-strong);border-radius:var(--r-l);box-shadow:var(--lift);overflow:hidden;counter-reset:rkshelf}
.rk-shelf h3{position:relative;display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 14px 15px;border-bottom:1px solid var(--line-strong);font:700 15px/1.4 var(--sans);letter-spacing:.01em}
.rk-shelf h3::after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:6px;background:var(--ticks);transform:scaleY(-1)}
.rk-shelf h3 a{display:inline-flex;align-items:center;min-height:24px;color:var(--ink);text-decoration:none;transition:color var(--quick)}
.rk-shelf h3 a::after{content:"";width:6px;height:6px;margin-left:8px;border-right:1.5px solid currentColor;border-top:1.5px solid currentColor;transform:rotate(45deg);opacity:.45}
.rk-shelf h3 a:hover{color:var(--accent)}
.rk-shelf h3 span{flex:none;color:var(--sub);font:400 12px/1.4 var(--mono);font-variant-numeric:tabular-nums}
.rk-shelf li{counter-increment:rkshelf}
.rk-shelf li + li{border-top:1px solid var(--line)}
.rk-shelf li a{display:grid;grid-template-columns:30px minmax(0,1fr) 10px;align-items:baseline;column-gap:6px;min-height:44px;padding:10px 14px;background:var(--card);color:var(--ink);font-size:14.5px;line-height:1.5;text-decoration:none;transition:color var(--quick),background-color var(--quick)}
.rk-shelf li a::before{content:counter(rkshelf,decimal-leading-zero);color:var(--sub);font:500 12px/1 var(--mono);font-variant-numeric:tabular-nums;transition:color var(--quick)}
.rk-shelf li a::after{content:"";align-self:center;width:7px;height:7px;border-right:1.6px solid var(--line-strong);border-top:1.6px solid var(--line-strong);transform:rotate(45deg) translate(-2px,2px);transition:transform var(--quick) var(--ease),border-color var(--quick)}
.rk-shelf li a:focus-visible{outline-offset:-3px}

/* 按类别找：一块面板里一行一个类别，名称 + 一句导语摘要 + 篇数比例条 */
.rk-cats li + li{border-top:1px solid var(--line)}
.rk-cats a{--row:var(--card);display:grid;grid-template-columns:minmax(0,1fr) auto 14px;grid-template-areas:"name n chev" "gist gist gist";gap:4px 12px;align-items:center;min-height:56px;padding:13px 14px 14px;background:var(--row);color:var(--ink);text-decoration:none;transition:background-color var(--quick)}
.rk-cats a:focus-visible{outline-offset:-3px}
.rk-cats strong{grid-area:name;font-size:16px;line-height:24px;transition:color var(--quick)}
.rk-cats__gist{grid-area:gist;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;color:var(--sub);font-size:14px;line-height:1.6;text-wrap:pretty}
.rk-cats__n{grid-area:n;display:flex;align-items:center;gap:10px}
.rk-cats__n svg{width:56px;height:6px;border-radius:3px;overflow:hidden}
.rk-cats__track{fill:var(--track)}
.rk-cats__fill{fill:var(--accent)}
.rk-cats__n b{min-width:3.4em;color:var(--ink);font:500 12.5px/1 var(--mono);font-variant-numeric:tabular-nums;text-align:right}
.rk-cats .rk-chev{grid-area:chev}

@media (hover:hover){
  .rk-regions tbody tr:hover,.rk-log:hover,.rk-cats a:hover{--row:var(--row-hover)}
  .rk-regions tbody tr:hover th a,.rk-log:hover .rk-log__title,.rk-cats a:hover strong{color:var(--accent)}
  .rk-regions tbody tr:hover .rk-chev,.rk-cats a:hover .rk-chev{color:var(--accent);transform:translateX(3px)}
  .rk-log:not(:first-child):hover::after{background:var(--accent-tint)}
  .rk-shelf li a:hover{background:var(--row-hover);color:var(--accent)}
  .rk-shelf li a:hover::before{color:var(--accent)}
  .rk-shelf li a:hover::after{border-color:var(--accent);transform:rotate(45deg)}
}

/* 类别页底部「其它类别」：不做成一排小卡，只是带上沿粗线的文字行，右边等宽小字写篇数 */
.rk-doors{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 28px}
.rk-doors a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:8px 0;border-top:1px solid var(--line-strong);color:var(--ink);text-decoration:none;transition:color var(--quick),border-color var(--quick)}
.rk-doors a:hover{border-top-color:var(--accent);color:var(--accent)}
.rk-doors strong{font-size:15.5px;line-height:1.4}
.rk-doors span{flex:none;color:var(--sub);font:400 12px/1 var(--mono);font-variant-numeric:tabular-nums}

/* ---------- 面包屑 ---------- */
.rk-trail ol{display:flex;flex-wrap:wrap;align-items:center;gap:2px 0;color:var(--sub);font-size:13px;line-height:1.5}
.rk-trail li{display:inline-flex;align-items:center;min-width:0}
.rk-trail li + li::before{content:"/";margin:0 8px;color:var(--line-strong)}
.rk-trail a{position:relative;display:inline-flex;align-items:center;min-height:32px;color:var(--sub);text-decoration:none;transition:color var(--quick)}
/* 看着是 32px 高的一行小字，上下各多出 6px 的点击区 */
.rk-trail a::after{content:"";position:absolute;left:-4px;right:-4px;top:-6px;bottom:-6px}
.rk-trail a:hover{color:var(--accent);text-decoration:underline}
.rk-trail [aria-current]{display:inline-block;max-width:12em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ---------- 列表类页面（栏目 / 类别 / 类别索引 / 总目录 / 站务 / 搜索） ---------- */
.rk-roll{display:grid;gap:20px;padding-top:14px;padding-bottom:40px}
.rk-roll__side h1{margin-top:8px;font:700 28px/1.25 var(--sans);letter-spacing:-.01em;text-wrap:balance}
.rk-roll__kind{margin-top:8px;color:var(--accent);font:600 12.5px/1.4 var(--mono);letter-spacing:.06em}
.rk-roll__kind + h1{margin-top:2px}
.rk-roll__count{margin-top:8px;color:var(--sub);font:400 12.5px/1.5 var(--mono);font-variant-numeric:tabular-nums}
.rk-roll__intro{margin-top:14px}
.rk-roll__intro.rk-prose{font-size:15px;line-height:1.75;color:var(--body)}
.rk-roll__intro.rk-prose > * + *{margin-top:.8em}

/* 导语折叠：全文一直在 HTML 里。手机宽度且脚本可用时先显示 3 行，按钮由 rk.js 接管
   （导语本来就只比 3 行多一点时，它会挂上 rk-fold--fits 取消折叠并把按钮收掉）。
   不开脚本、或浏览器不认 scripting 这个媒体特性时，下面整段不生效：全文照常显示，按钮不出现。 */
.rk-fold__btn{display:none}
@media (max-width:599px) and (scripting:enabled){
  .rk-fold:not(.rk-fold--open):not(.rk-fold--fits){max-height:calc(15px * 1.75 * 3);overflow:hidden;-webkit-mask-image:linear-gradient(#000 60%,rgba(0,0,0,.35));mask-image:linear-gradient(#000 60%,rgba(0,0,0,.35))}
  .rk-fold__btn{display:inline-flex;align-items:center;gap:4px;min-height:44px;margin:0 0 -8px;padding:0;border:0;background:none;color:var(--accent);font-size:14.5px;font-weight:700;cursor:pointer}
  .rk-fold__btn::after{content:"";width:7px;height:7px;margin:-4px 0 0 2px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg)}
  .rk-fold__btn[aria-expanded="true"]::after{margin-top:4px;transform:rotate(225deg)}
}

.rk-entries{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--lift);overflow:hidden}
.rk-entries:empty{display:none}
.rk-entry{display:grid;gap:2px;padding:14px;transition:background-color var(--quick)}
.rk-entry + .rk-entry{border-top:1px solid var(--line)}
.rk-entry__day{color:var(--sub);font:500 12.5px/22px var(--mono);font-variant-numeric:tabular-nums}
.rk-entry__title{display:block;color:var(--ink);font-weight:700;font-size:17px;line-height:1.45;text-decoration:none;transition:color var(--quick)}
.rk-entry__title:hover{color:var(--accent);text-decoration:underline}
.rk-entry__gist{margin-top:4px;text-wrap:pretty;color:var(--sub);font-size:14.5px;line-height:1.65}
.rk-entry__where{margin-top:6px;color:var(--sub);font:400 12px/1.5 var(--mono)}
@media (hover:hover){
  .rk-entry:hover{background:var(--row-hover)}
}

.rk-turn{display:flex;align-items:center;gap:18px;margin-top:16px;color:var(--sub);font:400 13px/1 var(--mono)}
.rk-turn a{display:inline-flex;align-items:center;min-height:44px;font-family:var(--sans);font-size:14.5px;font-weight:700}

.rk-beside{padding-bottom:44px}
.rk-beside h2{padding-top:22px;border-top:1px solid var(--line);font:700 17px/1.4 var(--sans)}
.rk-beside .rk-doors{margin-top:12px}

.rk-stops{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--lift);overflow:hidden}
.rk-stop{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:4px 10px;align-items:start;padding:14px}
.rk-stop + .rk-stop{border-top:1px solid var(--line)}
.rk-stop__no{color:var(--sub);font:600 13px/26px var(--mono);font-variant-numeric:tabular-nums}
.rk-stop__name{color:var(--ink);font-weight:700;font-size:17px;line-height:26px;text-decoration:none;transition:color var(--quick)}
.rk-stop__name:hover{color:var(--accent);text-decoration:underline}
.rk-stop__body p{margin-top:2px;color:var(--sub);font-size:14.5px;line-height:1.65}
.rk-stop__count{color:var(--sub);font:400 12px/26px var(--mono);white-space:nowrap}

/* 左栏的页内 / 站务跳转清单：左边一条 2px 的轨，当前那一条在轨上亮起一段靛紫 */
.rk-jump{margin-top:18px;border-left:2px solid var(--track)}
.rk-jump li{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-left:-2px;padding-left:14px;border-left:2px solid transparent}
.rk-jump li:has(a[aria-current]){border-left-color:var(--accent)}
.rk-jump a{display:flex;align-items:center;flex:1;min-height:44px;color:var(--ink);font-size:14.5px;text-decoration:none;transition:color var(--quick)}
.rk-jump a:hover{color:var(--accent)}
.rk-jump a[aria-current]{color:var(--accent);font-weight:700}
.rk-jump span{color:var(--sub);font:400 12px/1 var(--mono);font-variant-numeric:tabular-nums}

.rk-group{scroll-margin-top:20px}
.rk-group + .rk-group{margin-top:30px}
.rk-group h2{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--line-strong);font:700 19px/1.4 var(--sans)}
.rk-group h2 a{color:var(--ink);text-decoration:none}
.rk-group h2 a:hover{color:var(--accent);text-decoration:underline}
.rk-group h2 span{color:var(--sub);font:400 12px/1 var(--mono);font-variant-numeric:tabular-nums}
.rk-lines li{display:grid;gap:0 16px;padding:11px 0;border-bottom:1px solid var(--line)}
.rk-lines time{color:var(--sub);font:400 12.5px/22px var(--mono);font-variant-numeric:tabular-nums}
.rk-lines a{color:var(--ink);font-size:15.5px;line-height:1.5;text-decoration:none;transition:color var(--quick)}
.rk-lines a:hover{color:var(--accent);text-decoration:underline}

.rk-sheet{padding:18px 16px 22px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--lift)}

/* ---------- 站内搜索 ---------- */
.rk-find label{display:block;color:var(--sub);font-size:13px;line-height:1.5}
.rk-find__row{display:flex;gap:8px;margin-top:6px}
.rk-find input{flex:1;min-width:0;height:50px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--r-m);background:var(--card);box-shadow:inset 0 1px 2px rgba(27,29,34,.05);font-size:16px;transition:border-color var(--quick)}
.rk-find input:focus{border-color:var(--accent)}
.rk-find button{flex:none;height:50px;padding:0 20px;border:1px solid var(--ink);border-radius:var(--r-m);background:var(--ink);color:#fff;font-weight:700;font-size:15px;letter-spacing:.04em;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.14);transition:background-color var(--quick),transform .08s}
.rk-find button:hover{background:#000}
.rk-find button:active{transform:translateY(1px)}
.rk-find__state{min-height:22px;margin:12px 0 10px;color:var(--sub);font:400 12.5px/22px var(--mono)}
.rk-find__state:empty{margin:0;min-height:0}

/* ---------- 404 ---------- */
.rk-lost{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;padding-top:32px;padding-bottom:56px}
.rk-lost__say{max-width:34em}
/* 「404」做成一枚状态标签的样子：红点 + 等宽数字 */
.rk-lost__code{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 10px 0 9px;border-radius:var(--r-s);background:var(--red-bg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--red) 18%,transparent);color:var(--red-ink);font:600 13.5px/1 var(--mono);letter-spacing:.06em;font-variant-numeric:tabular-nums}
.rk-lost__code::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--red)}
.rk-lost h1{margin-top:12px;font:700 30px/1.25 var(--sans);letter-spacing:-.01em}
.rk-lost .rk-prose{margin-top:12px;color:var(--sub)}
.rk-lost__ways{margin-top:22px;border-top:1px solid var(--line-strong)}
.rk-lost__ways li{border-bottom:1px solid var(--line)}
.rk-lost__ways a{display:flex;align-items:center;gap:12px;min-height:50px;color:var(--ink);font-weight:700;text-decoration:none;transition:color var(--quick)}
.rk-lost__ways a::after{content:"";flex:none;width:7px;height:7px;margin-left:auto;border-right:1.6px solid var(--line-strong);border-top:1.6px solid var(--line-strong);transform:rotate(45deg) translate(-2px,2px);transition:transform var(--quick) var(--ease),border-color var(--quick)}
.rk-lost__ways a:hover{color:var(--accent)}
.rk-lost__ways a:hover::after{border-color:var(--accent);transform:rotate(45deg)}

/* ---------- 文章页 ---------- */
/* .rk-post 是一张网格；<article class="rk-post__art"> 自己不占格子，它里面的标题区、封面、正文列
   与栏外的面包屑、左栏、标签条、相关阅读一起排进这张网格。手机单列，用 order 把目录排到正文前面；
   宽屏两列，左栏从封面那一行起一直跨到底，跟着滚动但不会越过这张网格（所以碰不到页脚）。
   栏宽分两档：读的文字（段落、小标题、样式块、封面、问答、三列以内的表）不超过 --measure；四列以上的表可以放宽到整个右栏。 */
.rk-post{display:grid;grid-template-columns:minmax(0,1fr);padding-top:14px;padding-bottom:44px}
.rk-post__art{display:contents}
.rk-post__top{order:1}
.rk-post__art > .rk-cover{order:2;margin:18px 0 0}
.rk-post__rail{order:3;min-width:0}
.rk-post__col{order:4}
.rk-post > .rk-strip{order:5}
.rk-post > .rk-also{order:6}
/* 标题断行：先让浏览器按词断（认 auto-phrase 的才生效），再把两行排匀 */
.rk-post__top h1{margin-top:8px;max-width:25em;font:700 27px/1.3 var(--sans);letter-spacing:-.01em;text-wrap:balance;word-break:auto-phrase}
.rk-byline{display:flex;flex-wrap:wrap;gap:2px 0;margin-top:12px;color:var(--sub);font:400 12.5px/22px var(--mono);font-variant-numeric:tabular-nums}
.rk-byline a{color:var(--ink);font-family:var(--sans);font-size:14px;font-weight:700;text-decoration:none}
.rk-byline a:hover{color:var(--accent);text-decoration:underline}
.rk-byline span::before{content:"·";margin:0 9px;color:var(--line-strong)}
.rk-post__col{min-width:0;max-width:880px;margin-top:18px}
.rk-post__col > *,.rk-post > .rk-strip,.rk-post > .rk-also{max-width:var(--measure)}
.rk-post__col > .rk-prose{max-width:none}
.rk-pg-post .rk-prose > *{max-width:var(--measure)}
.rk-pg-post .rk-prose > .rk-tscroll--c4,.rk-pg-post .rk-prose > .rk-tscroll--c5{max-width:none}

/* 目录。正文滚到哪一节，rk.js 给那一条挂 aria-current="location"；不开脚本时只是一张普通的目录 */
.rk-toc{margin-top:18px;padding:12px 14px 6px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--lift)}
.rk-toc h2{color:var(--sub);font:500 12.5px/1.4 var(--mono);letter-spacing:.06em}
.rk-toc ol{margin-top:6px;counter-reset:rktoc}
.rk-toc li{counter-increment:rktoc;border-top:1px solid var(--line)}
.rk-toc li:first-child{border-top:0}
.rk-toc a{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:baseline;min-height:44px;padding:11px 0;color:var(--ink);font-size:14.5px;line-height:1.45;text-decoration:none;transition:color var(--quick)}
.rk-toc a::before{content:counter(rktoc,decimal-leading-zero);color:var(--sub);font:500 12px/1 var(--mono);font-variant-numeric:tabular-nums;transition:color var(--quick)}
.rk-toc a:hover,.rk-toc a[aria-current]{color:var(--accent)}
.rk-toc a[aria-current]::before{color:var(--accent)}
.rk-facts{display:none}

/* 封面：标题区之下、正文之上，占满正文栏宽。
   截图（shot 短代码）：任何宽度下都不放大。<img> 的显示宽度就是它的 width 属性（= 图片的像素宽，样式表不另写 width），
   栏比图窄时跟着栏缩小（全站 img 的 max-width:100% + height:auto）；比栏窄的图靠左。
   <figure> 收到和图一样宽，图注跟着图的宽度走（图注自己不撑宽 figure：width:0 + min-width:100%）；
   图很窄时图注至少留 280px（栏更窄就占满栏），不至于挤成一条。
   两种图的 <img> 都带像素宽高，加载前就按比例留好位置。图注左边一条细线，和「依据」那一行同一种写法。 */
.rk-cover{max-width:var(--measure)}
.rk-shot{width:fit-content;min-width:min(100%,280px)}
.rk-prose .rk-shot{margin:1.5em 0}
.rk-cover img,.rk-shot img{display:block;border:1px solid var(--line);border-radius:var(--r-m);background:var(--card);box-shadow:var(--lift)}
.rk-cover img{width:100%}
.rk-shot figcaption{width:0;min-width:100%}
.rk-cover figcaption,.rk-shot figcaption{margin-top:10px;padding-left:11px;border-left:2px solid var(--line-strong);color:var(--sub);font-size:13px;line-height:1.55;text-wrap:pretty}

/* 正文 */
.rk-prose{font-size:16.5px;line-height:1.8;text-wrap:pretty}
.rk-prose > * + *{margin-top:1.05em}
.rk-prose h2{margin-top:2.1em;padding-top:1em;border-top:1px solid var(--line-strong);font:700 22px/1.35 var(--sans);letter-spacing:-.005em}
.rk-prose h2:first-child{margin-top:0;padding-top:0;border-top:0}
.rk-prose h3{margin-top:1.7em;font:700 18.5px/1.4 var(--sans)}
.rk-prose h3::before{content:"";display:inline-block;width:7px;height:7px;margin-right:9px;border-radius:1px;background:var(--accent);vertical-align:.12em}
.rk-prose h4{margin-top:1.4em;font:700 16.5px/1.4 var(--sans)}
.rk-prose h2 + *,.rk-prose h3 + *,.rk-prose h4 + *{margin-top:.65em}
.rk-prose ul,.rk-prose ol{padding-left:1.4em}
.rk-prose ul{list-style:disc}
.rk-prose ol{list-style:decimal}
.rk-prose li + li{margin-top:.4em}
.rk-prose li::marker{color:var(--sub)}
.rk-prose ol > li::marker{font-family:var(--mono);font-size:.86em;font-variant-numeric:tabular-nums}
/* 正文里的文字链带下划线；放进正文的按钮不算文字链，保持自己的样子 */
.rk-prose a:where(:not(.rk-go)){text-decoration:underline;text-decoration-color:rgba(59,47,184,.42);transition:text-decoration-color var(--quick)}
.rk-prose a:where(:not(.rk-go)):hover{text-decoration-color:currentColor}
.rk-prose strong{font-weight:700}
.rk-prose code{padding:1px 5px;border-radius:var(--r-s);background:#ECEADF;font:400 .9em/1.4 var(--mono)}
.rk-prose blockquote{margin:1.05em 0 0;padding:2px 0 2px 14px;border-left:2px solid var(--line-strong);color:var(--sub)}
.rk-prose hr{height:1px;border:0;background:var(--line)}

/* 文章页的二级小标题带编号（01、02……），和目录里的编号是同一套。编号由样式表数，HTML 里没有 */
.rk-pg-post .rk-prose{counter-reset:rkh2}
.rk-pg-post .rk-prose > h2{counter-increment:rkh2}
.rk-pg-post .rk-prose > h2::before{content:counter(rkh2,decimal-leading-zero);display:block;margin-bottom:7px;color:var(--accent);font:600 12.5px/1 var(--mono);letter-spacing:.06em;font-variant-numeric:tabular-nums}

/* 四种样式块。要点句：加粗、大一号、左边一条靛紫竖线；附注：浅底细框 + 小字「附注」；
   风险提醒：淡红底、左红条 + 小字「风险提醒」；步骤列表：01、02 的小方框，竖线相连。
   两个小字标签前面各有一枚圆点（附注是空心环、风险提醒是实心红点），和状态标签是同一种写法。 */
.rk-prose .rk-key{margin-top:1.35em;padding:3px 0 3px 17px;border-left:3px solid var(--accent);font-weight:700;font-size:1.07em;line-height:1.65}
.rk-prose .rk-note,.rk-note{padding:13px 16px 14px;border:1px solid var(--line);border-radius:var(--r-m);background:var(--soft);color:var(--body);font-size:15px;line-height:1.7}
.rk-prose .rk-note::before{content:"附注";display:block;margin-bottom:5px;padding-left:15px;background:radial-gradient(circle at 4px 50%,transparent 0 2.2px,var(--sub) 2.4px 3.8px,transparent 4px) no-repeat;color:var(--sub);font:500 12px/1.4 var(--mono);letter-spacing:.08em}
.rk-prose .rk-warn{padding:13px 16px 14px;border-radius:var(--r-m);background:var(--red-bg);box-shadow:inset 3px 0 0 var(--red);box-shadow:inset 3px 0 0 var(--red),inset 0 0 0 1px color-mix(in srgb,var(--red) 16%,transparent);color:#5E1F15;font-size:15px;line-height:1.7}
.rk-prose .rk-warn::before{content:"风险提醒";display:block;margin-bottom:5px;padding-left:15px;background:radial-gradient(circle at 4px 50%,var(--red) 0 3.6px,transparent 4px) no-repeat;color:var(--red-ink);font:600 12px/1.4 var(--mono);letter-spacing:.08em}
.rk-prose ol.rk-steps{list-style:none;padding-left:0;counter-reset:rkstep}
.rk-prose ol.rk-steps > li{position:relative;counter-increment:rkstep;margin-top:0;padding:0 0 17px 47px}
.rk-prose ol.rk-steps > li:last-child{padding-bottom:0}
.rk-prose ol.rk-steps > li::before{content:counter(rkstep,decimal-leading-zero);position:absolute;left:0;top:3px;z-index:1;display:flex;align-items:center;justify-content:center;width:31px;height:24px;border:1.5px solid var(--green);border-radius:var(--r-s);background:var(--card);color:var(--green-ink);font:600 12.5px/1 var(--mono);font-variant-numeric:tabular-nums}
.rk-prose ol.rk-steps > li::after{content:"";position:absolute;left:14.5px;top:27px;bottom:-3px;width:2px;background:var(--track)}
.rk-prose ol.rk-steps > li:last-child::after{display:none}
.rk-basis{padding:1px 0 1px 12px;border-left:2px solid var(--line-strong);color:var(--sub);font-size:14px;line-height:1.65}

/* 表格。窄屏上可以横着滑：还能往右（左）滑时，rk.js 挂上 rk-tscroll--more（--back），那一侧的边缘渐隐作提示 */
.rk-tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--r-m);background:var(--card);box-shadow:var(--lift)}
.rk-tscroll table{width:100%;min-width:480px;border-collapse:collapse;font-size:14.5px;line-height:1.65;font-variant-numeric:tabular-nums}
.rk-tscroll th,.rk-tscroll td{min-width:5.5em;padding:10px 13px;text-align:left;vertical-align:top}
/* 首列多半是「你的情况」这类说明文字，窄屏上至少留出五六个字一行；列多的表整体再放宽，靠横向滚动看 */
.rk-tscroll td:first-child{min-width:7.5em}
.rk-tscroll--c4 table{min-width:600px}
.rk-tscroll--c5 table{min-width:700px}
.rk-tscroll th{padding-top:8px;padding-bottom:8px;border-bottom:1px solid var(--line);background:var(--soft);color:var(--sub);font-weight:400;font-size:12.5px;letter-spacing:.04em;white-space:nowrap}
.rk-tscroll tbody tr + tr > *{border-top:1px solid var(--line)}
.rk-tscroll tbody tr{transition:background-color var(--quick)}
.rk-tscroll .rk-ta-right{text-align:right}
.rk-tscroll .rk-ta-center{text-align:center}
.rk-tscroll--more{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 40px),rgba(0,0,0,.18));mask-image:linear-gradient(to right,#000 calc(100% - 40px),rgba(0,0,0,.18))}
.rk-tscroll--back{-webkit-mask-image:linear-gradient(to right,rgba(0,0,0,.18),#000 40px);mask-image:linear-gradient(to right,rgba(0,0,0,.18),#000 40px)}
.rk-tscroll--more.rk-tscroll--back{-webkit-mask-image:linear-gradient(to right,rgba(0,0,0,.18),#000 40px,#000 calc(100% - 40px),rgba(0,0,0,.18));mask-image:linear-gradient(to right,rgba(0,0,0,.18),#000 40px,#000 calc(100% - 40px),rgba(0,0,0,.18))}
@media (hover:hover){
  .rk-tscroll tbody tr:hover{background:var(--row-hover)}
}

/* 卡片。默认在正文之后；带 rk-outcard--mid 时在正文中间，
   这时它前后都是正文，上下各留一段：上面离上一节的末段远一点；下面紧跟小标题时用小标题自己的上边距，紧跟别的再留一段 */
.rk-outcard{margin-top:32px;padding:16px;border:1px solid var(--line-strong);border-radius:var(--r-l);background:var(--card);box-shadow:var(--lift-board)}
.rk-outcard__lead{margin-bottom:14px;font-size:15px;line-height:1.65;text-wrap:pretty}
.rk-prose > .rk-outcard--mid{margin-top:2em}
.rk-prose > .rk-outcard--mid + :where(:not(h2,h3)){margin-top:2em}

/* 问答：每一问前面一个等宽的 Q1、Q2（样式表数的） */
.rk-faq{margin-top:36px;padding-top:24px;border-top:1px solid var(--line-strong);counter-reset:rkfaq}
.rk-faq h2{font:700 21px/1.35 var(--sans);letter-spacing:-.005em}
.rk-faq h2 + .rk-faq__item{margin-top:6px}
.rk-faq__item{counter-increment:rkfaq;display:grid;grid-template-columns:36px minmax(0,1fr);padding:15px 0 16px}
.rk-faq__item + .rk-faq__item{border-top:1px solid var(--line)}
.rk-faq__item::before{content:"Q" counter(rkfaq);grid-row:1 / span 2;color:var(--accent);font:600 12.5px/25px var(--mono);font-variant-numeric:tabular-nums}
.rk-faq__item h3,.rk-faq__item p{grid-column:2}
.rk-faq__item h3{font:700 16.5px/1.5 var(--sans)}
.rk-faq__item p{margin-top:6px;color:var(--body);font-size:15.5px;line-height:1.75}

.rk-strip{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:32px;padding-top:16px;border-top:1px solid var(--line)}
.rk-strip__label{margin-right:4px;color:var(--sub);font:500 12.5px/1 var(--mono);letter-spacing:.06em}
.rk-chip{display:inline-flex;align-items:center;min-height:32px;padding:0 11px;border:1px solid var(--line-strong);border-radius:var(--r-s);background:var(--card);color:var(--ink);font-size:13.5px;text-decoration:none;transition:color var(--quick),border-color var(--quick)}
/* 带链接的标签看着还是 32px 高，上下各多出 6px 的点击区 */
a.rk-chip{position:relative}
a.rk-chip::after{content:"";position:absolute;left:0;right:0;top:-6px;bottom:-6px}
a.rk-chip:hover{border-color:var(--accent);color:var(--accent)}
.rk-chip--plain{border-style:dashed;background:transparent;color:var(--sub)}

.rk-also{margin-top:32px}
.rk-also h2{padding-bottom:8px;border-bottom:1px solid var(--line-strong);font:700 17px/1.4 var(--sans)}
.rk-also li{padding:13px 0;border-bottom:1px solid var(--line)}
.rk-also a{display:block;color:var(--ink);font-weight:700;font-size:15.5px;line-height:1.5;text-decoration:none;transition:color var(--quick)}
.rk-also a:hover{color:var(--accent);text-decoration:underline}
.rk-also span{display:block;margin-top:3px;color:var(--sub);font-size:14px;line-height:1.6}

/* ---------- 对照工具页 ---------- */
.rk-tool__top{padding-top:14px}
.rk-tool__top h1{margin-top:8px;max-width:25em;font:700 27px/1.3 var(--sans);letter-spacing:-.01em;text-wrap:balance;word-break:auto-phrase}
.rk-tool__lead{margin-top:10px;max-width:44em;color:var(--sub);font-size:15px;line-height:1.7}
.rk-tool__grid{display:grid;gap:16px;padding-top:20px;padding-bottom:8px}
.rk-tool__grid--read{padding-top:30px;padding-bottom:44px}
.rk-tool__grid--read + .rk-tool__grid--read{padding-top:0;margin-top:-20px}
.rk-tool__rail h2{font:700 21px/1.3 var(--sans);letter-spacing:-.01em}
.rk-tool__stamp{margin-top:6px;color:var(--sub);font:400 12.5px/1.5 var(--mono);font-variant-numeric:tabular-nums}
.rk-tool__main{min-width:0}
.rk-tool__main.rk-prose{max-width:var(--measure)}
.rk-tool__main.rk-prose > h3:first-child{margin-top:0}
.rk-tool__main > .rk-faq{max-width:var(--measure)}

.rk-filter label{display:block;color:var(--sub);font-size:13px;line-height:1.5}
.rk-filter input{display:block;width:100%;height:50px;margin-top:6px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--r-m);background:var(--card);box-shadow:inset 0 1px 2px rgba(27,29,34,.05);font-size:17px;transition:border-color var(--quick)}
.rk-filter input:focus{border-color:var(--accent)}
.rk-filter__states{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}
.rk-state{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--r-m);background:var(--card);box-shadow:var(--lift);font-size:14.5px;cursor:pointer;transition:border-color var(--quick),background-color var(--quick),color var(--quick)}
.rk-state::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--dot,var(--line-strong))}
.rk-state b{color:var(--sub);font:500 12.5px/1 var(--mono);font-variant-numeric:tabular-nums}
.rk-state:hover{border-color:var(--ink)}
.rk-state:active{transform:translateY(1px)}
.rk-state[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.rk-state[aria-pressed="true"] b{color:#D5D7DD}
.rk-state--blue{--dot:var(--blue)}
.rk-state--amber{--dot:var(--amber)}
.rk-state--red{--dot:var(--red)}

/* 深色结果卡：大号等宽数字 + 一条按状态分段的比例条（段与段之间留 2px 的缝） */
.rk-tally{padding:16px 16px 14px;border-radius:var(--r-l);background:var(--night);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 14px 26px -22px rgba(27,29,34,.6);color:#fff}
.rk-tally__label{color:var(--night-sub);font:400 12.5px/1.4 var(--mono);letter-spacing:.04em}
.rk-tally__num{display:flex;align-items:baseline;gap:10px;margin-top:4px}
.rk-tally__num b{font:600 56px/1 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.rk-tally__num span{color:#E4E5EA;font-size:14px;line-height:1.4}
.rk-tally__bar{width:100%;height:12px;margin-top:14px;border-radius:3px;background:#34373F;overflow:hidden}
.rk-tally__bar rect{stroke:var(--night);stroke-width:2;vector-effect:non-scaling-stroke}
.rk-fill--blue{fill:#6AA3F5}
.rk-fill--amber{fill:#F0A92B}
.rk-fill--red{fill:#EE6A55}
.rk-tally__split{margin-top:12px}
.rk-tally__split li{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:14px;line-height:1.4}
.rk-tally__split b{margin-left:auto;font:500 14px/1 var(--mono);font-variant-numeric:tabular-nums}
.rk-dot{flex:none;width:9px;height:9px;border-radius:50%}
.rk-dot--blue{background:#6AA3F5}
.rk-dot--amber{background:#F0A92B}
.rk-dot--red{background:#EE6A55}
.rk-tally__when{margin-top:10px;padding-top:10px;border-top:1px solid #34373F;color:var(--night-sub);font:400 12px/1.4 var(--mono)}

/* 对照表是一张真的 <table>。窄屏：表头收起，每行排成一块（居住地 + 状态 / 说明与依据 / 详见）；≥760px 恢复成表格的行列 */
.rk-grid{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--lift);overflow:hidden}
.rk-lut{width:100%;border-collapse:collapse}
.rk-lut th,.rk-lut td{padding:0;text-align:left;vertical-align:top;font-weight:400}
.rk-row{scroll-margin-top:20px;transition:background-color var(--quick)}
.rk-row:target{background:var(--accent-tint);box-shadow:inset 3px 0 0 var(--accent)}
.rk-row .rk-row__place{font-weight:700;font-size:17px;line-height:30px}
.rk-row__note{text-wrap:pretty;color:var(--body);font-size:14.5px;line-height:1.65}
.rk-row__basis{margin-top:2px}
.rk-row__basis summary{display:flex;align-items:center;gap:4px;width:fit-content;min-height:44px;color:var(--accent);font-size:13.5px;list-style:none;cursor:pointer}
.rk-row__basis summary::-webkit-details-marker{display:none}
.rk-row__basis summary:hover{text-decoration:underline;text-underline-offset:3px}
.rk-row__basis summary svg{transition:transform var(--quick) var(--ease)}
.rk-row__basis[open] summary svg{transform:rotate(180deg)}
.rk-row__cite{margin-bottom:4px;padding:10px 12px 11px;border-left:2px solid var(--line-strong);border-radius:0 var(--r-s) var(--r-s) 0;background:var(--soft)}
.rk-row:target .rk-row__cite{background:var(--card)}
.rk-row__whole{margin-bottom:8px;font-size:14.5px;line-height:1.6}
.rk-row__src{font-size:14.5px;line-height:1.6}
.rk-row__src + .rk-row__src{margin-top:4px}
.rk-row__when{margin-top:6px;color:var(--sub);font:400 12px/1.5 var(--mono)}
.rk-row__more a{display:inline-flex;align-items:center;min-height:44px;font-size:14.5px;font-weight:700;white-space:nowrap}
.rk-void{margin-top:12px;padding:14px;border:1px dashed var(--line-strong);border-radius:var(--r-l);color:var(--sub);font-size:14.5px;line-height:1.65}
@media (max-width:759px){
  .rk-lut,.rk-lut tbody{display:block}
  .rk-lut thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .rk-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"place state" "note note" "more more";gap:6px 12px;padding:14px 14px 4px}
  .rk-row + .rk-row{border-top:1px solid var(--line)}
  .rk-row__place{grid-area:place}
  .rk-row__state{grid-area:state}
  .rk-row__note{grid-area:note}
  .rk-row__more{grid-area:more;margin-top:-6px}
  .rk-row__more:empty{display:none}
  /* 「看依据」收着的时候，「详见」和它排在同一行（靠右）；展开依据后「详见」回到依据下面自己一行 */
  @supports selector(:has(*)){
    .rk-row:not(:has(.rk-row__basis[open])) .rk-row__more{position:absolute;right:14px;bottom:6px;display:flex;margin-top:0}
  }
}

/* ---------- 页脚 ---------- */
/* 上沿一排刻度（和进度板板头是同一把尺）；站务链接排成一张有横线的格子（手机两格一行、宽屏四格一行），
   和面板里的行是同一种分隔；最底下一条虚线（和进度板板脚那条一样）之后是年份，
   年份前面四枚状态色圆点，和文章封面右上角的四点是同一个记号 */
.rk-end{--foot-line:#D5D3C5;position:relative;background:var(--foot);border-top:1px solid var(--line-strong)}
.rk-end::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--ticks)}
.rk-end__grid{display:grid;gap:14px;padding-top:30px;padding-bottom:24px}
.rk-end .rk-logo{min-height:44px}
.rk-end__mail{display:flex;align-items:center;min-height:44px;width:fit-content;font:400 13.5px/1 var(--mono);text-decoration-color:rgba(59,47,184,.42)}
.rk-end__mail:hover{text-decoration-color:currentColor}
.rk-end__year{display:flex;align-items:center;padding:13px 0 22px;border-top:1px dashed var(--line-strong);color:var(--sub);font:400 12px/1.6 var(--mono);font-variant-numeric:tabular-nums}
.rk-end__year::before{content:"";flex:none;width:6px;height:6px;margin-right:40px;border-radius:50%;background:var(--blue);box-shadow:10px 0 0 var(--green),20px 0 0 var(--amber),30px 0 0 var(--red)}
.rk-end__note{color:#4E535D;font-size:14px;line-height:1.7;max-width:46em;text-wrap:pretty}
.rk-end__note a{color:inherit}
.rk-end__links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;margin-top:16px;border-top:1px solid var(--line-strong)}
.rk-end__links li{border-bottom:1px solid var(--foot-line)}
.rk-end__links a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;color:var(--ink);font-size:14.5px;text-decoration:none;transition:color var(--quick)}
.rk-end__links a::after{content:"";flex:none;width:6px;height:6px;margin-right:3px;border-right:1.5px solid var(--line-strong);border-top:1.5px solid var(--line-strong);transform:rotate(45deg);transition:transform var(--quick) var(--ease),border-color var(--quick)}
.rk-end__links a:hover{color:var(--accent)}
.rk-end__links a:hover::after{border-color:var(--accent);transform:translateX(2px) rotate(45deg)}
.rk-end__links a:focus-visible{outline-offset:-2px}

/* ---------- 窄屏专用 ---------- */
@media (max-width:479px){
  .rk-out .rk-go,.rk-outcard .rk-go{width:100%}
}
@media (max-width:1099px){
  .rk-roll--doc .rk-jump{display:none}
}
@media (min-width:480px){
  .rk-go{display:inline-flex}
}

/* ---------- 中屏 ---------- */
@media (min-width:760px){
  :root{--pad:32px}
  .rk-top__in{display:flex;gap:36px;min-height:64px}
  .rk-logo{min-height:44px;font-size:22px}
  .rk-menu{border-top:0;margin:0;padding:0;flex:1;align-self:stretch}
  .rk-menu ul{justify-content:flex-start;gap:26px;height:100%;overflow:visible}
  /* 导航条目和页头一样高：当前栏目的那条 2px 靛紫正好压在页头的底线上 */
  .rk-menu a{min-height:64px;font-size:15px}
  .rk-menu a:hover{box-shadow:inset 0 -2px 0 var(--line-strong)}
  .rk-menu a[aria-current],.rk-menu a[aria-current]:hover{box-shadow:inset 0 -2px 0 var(--accent)}
  .rk-seek{position:relative;min-height:38px;padding:0 12px;border:1px solid var(--line-strong);background:var(--card);box-shadow:var(--lift);color:var(--ink)}
  .rk-seek::after{content:"";position:absolute;left:0;right:0;top:-4px;bottom:-4px}
  .rk-seek svg{color:var(--sub)}
  .rk-seek:hover{border-color:var(--accent);color:var(--accent)}
  .rk-seek:hover svg{color:var(--accent)}
  .rk-hero{padding:36px 0 44px}
  .rk-hero__grid{gap:22px}
  .rk-lede h1{font-size:34px;line-height:1.26}
  .rk-lede__intro{margin-top:12px;font-size:16px;line-height:1.7;max-width:34em}
  .rk-out{margin-top:20px}
  .rk-go{min-height:50px;padding:0 18px 0 22px}
  .rk-sec{padding:44px 0}
  .rk-sec__side h2{font-size:22px}
  .rk-keys{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 20px}
  .rk-keys li{grid-template-columns:1fr;gap:4px;line-height:1.5}
  /* 更新记录：日期一栏 96px，轨走在日期和正文之间 */
  .rk-log{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:40px;padding:16px 20px 17px}
  .rk-log::before{left:135px}
  .rk-log:first-child::before{top:28px}
  .rk-log:last-child::before{height:28px}
  .rk-log::after{left:130px;top:22px}
  .rk-log__date{line-height:24px}
  .rk-log__title{margin-top:0;line-height:24px}
  .rk-log__sum{margin-top:5px}
  .rk-phead,.rk-shelf h3{padding:13px 20px 17px}
  .rk-phead::after,.rk-shelf h3::after{left:20px;right:20px}
  .rk-shelves{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto 1fr;grid-auto-flow:row dense}
  .rk-shelf:first-child{grid-row:span 2}
  .rk-shelf li a{padding:10px 18px 10px 20px}
  .rk-cats a{grid-template-columns:176px minmax(0,1fr) auto 14px;grid-template-areas:"name gist n chev";gap:0 20px;min-height:64px;padding:14px 20px}
  .rk-cats__gist{-webkit-line-clamp:2;line-clamp:2}
  .rk-cats__n svg{width:72px}
  .rk-end__links{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:24px}
  .rk-trail [aria-current]{max-width:24em}
  .rk-roll{padding-top:22px;padding-bottom:56px}
  .rk-roll__side h1{font-size:34px}
  .rk-entry{grid-template-columns:104px minmax(0,1fr);gap:0 16px;padding:17px 20px 18px}
  .rk-entry__day{line-height:26px}
  .rk-stop{grid-template-columns:40px minmax(0,1fr) auto;gap:4px 14px;padding:16px 20px}
  .rk-lines li{grid-template-columns:104px minmax(0,1fr)}
  .rk-lines time{line-height:24px}
  .rk-sheet{padding:26px 30px 30px}
  .rk-post{padding-top:22px;padding-bottom:60px}
  .rk-post__top h1,.rk-tool__top h1{font-size:36px;line-height:1.26}
  .rk-post__art > .rk-cover,.rk-toc,.rk-post__col{margin-top:22px}
  /* 竖着的截图（多半是手机屏）在宽屏下连图注一起限宽 360px */
  .rk-prose .rk-shot--tall{max-width:360px}
  .rk-prose{font-size:17px}
  .rk-prose h2{font-size:24px}
  .rk-prose h3{font-size:19px}
  .rk-tscroll table{font-size:15px}
  .rk-outcard{padding:20px 22px 20px}
  .rk-faq__item{grid-template-columns:40px minmax(0,1fr)}
  .rk-tool__top{padding-top:22px}
  .rk-tool__lead{font-size:16px}
  .rk-lut thead th{padding:7px 16px 7px 0;border-bottom:1px solid var(--line);background:var(--soft);color:var(--sub);font-size:12px;line-height:18px;letter-spacing:.04em}
  .rk-row > th,.rk-row > td{padding:15px 16px 9px 0}
  .rk-lut tr > :first-child{width:184px;padding-left:20px}
  .rk-lut tr > :nth-child(2){width:140px}
  .rk-lut tr > :last-child{width:76px;padding-right:20px}
  .rk-row + .rk-row > *{border-top:1px solid var(--line)}
  .rk-row:hover{background:var(--row-hover)}
  .rk-row:target:hover{background:var(--accent-tint)}
  .rk-row > .rk-row__note{line-height:1.7;padding-top:18px}
  .rk-row__basis summary{position:relative;min-height:36px}
  .rk-row__more a{position:relative;min-height:30px}
  .rk-row__basis summary::after,.rk-row__more a::after{content:"";position:absolute;left:-6px;right:-6px;top:-7px;bottom:-7px}
  .rk-row__basis summary::after{top:-4px;bottom:-4px}
  .rk-end__grid{padding-top:40px;padding-bottom:40px}
}

/* ---------- 宽屏：左栏 + 右侧内容 ---------- */
@media (min-width:1100px){
  :root{--pad:48px}
  .rk-hero__grid{grid-template-columns:var(--rail) minmax(0,1fr);grid-template-areas:"lede board" "ask board";grid-template-rows:auto 1fr;column-gap:var(--gutter);row-gap:26px}
  .rk-lede{grid-area:lede}
  .rk-board{grid-area:board}
  .rk-lost .rk-board{grid-area:auto}
  .rk-ask{grid-area:ask}
  .rk-sec__grid,.rk-end__grid,.rk-roll,.rk-post,.rk-tool__grid,.rk-lost{grid-template-columns:var(--rail) minmax(0,1fr);column-gap:var(--gutter)}
  .rk-hero{padding:40px 0 52px}
  .rk-lede h1{font-size:35px;line-height:1.24}
  .rk-lede__intro{margin-top:16px}
  .rk-out{margin-top:22px}
  .rk-sec{padding:48px 0}
  .rk-sec__grid{align-items:start}
  .rk-sec__side{position:sticky;top:20px}
  .rk-keys{grid-template-columns:1fr;gap:8px}
  .rk-keys li{grid-template-columns:104px minmax(0,1fr);gap:10px;line-height:24px}
  .rk-roll{align-items:start;padding-top:28px}
  .rk-lost{align-items:start;padding-top:48px;padding-bottom:72px}
  .rk-roll__side{position:sticky;top:20px}
  .rk-post{align-items:start;grid-template-rows:auto auto auto auto auto 1fr}
  .rk-post > .rk-trail{grid-area:1 / 1 / 2 / -1}
  .rk-post__top{grid-area:2 / 1 / 3 / -1;padding-bottom:22px;border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(255,255,255,.7)}
  .rk-post__art > .rk-cover{grid-area:3 / 2;margin-top:26px}
  .rk-post__col{grid-area:4 / 2;margin-top:26px}
  .rk-cover + .rk-post__col{margin-top:24px}
  .rk-post > .rk-strip{grid-area:5 / 2}
  .rk-post > .rk-also{grid-area:6 / 2}
  .rk-post__rail{grid-area:3 / 1 / 7 / 2;position:sticky;top:20px;max-height:calc(100vh - 40px);margin-top:26px;overflow-y:auto;scrollbar-width:thin}
  /* 宽屏的目录不要卡面：左边一条 2px 的轨，读到的那一节在轨上亮起一段靛紫 */
  .rk-toc{margin-top:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
  .rk-toc ol{margin-top:10px;border-left:2px solid var(--track)}
  .rk-toc li,.rk-toc li:first-child{border-top:0}
  .rk-toc a{margin-left:-2px;padding:10px 0 10px 14px;border-left:2px solid transparent;transition:color var(--quick),border-color var(--quick)}
  .rk-toc a[aria-current]{border-left-color:var(--accent)}
  .rk-facts{display:block;border-top:1px solid var(--line-strong)}
  .rk-toc + .rk-facts{margin-top:24px}
  .rk-facts div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13.5px;line-height:22px}
  .rk-facts dt{color:var(--sub)}
  .rk-facts dd{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:13px}
  .rk-facts a{color:var(--ink)}
  .rk-tool__grid{align-items:start}
  .rk-tool__grid:not(.rk-tool__grid--read) .rk-tool__rail{position:sticky;top:20px}
  .rk-end__grid{padding-top:44px;padding-bottom:40px}
}

/* ---------- 动效 ---------- */
/* 只有颜色、底色和几像素的位移，都在 0.14 秒以内；页内跳转平滑滚动。系统设了「减少动态效果」时全部关掉 */
@media (prefers-reduced-motion:no-preference){
  html{scroll-behavior:smooth}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none !important;animation:none !important;scroll-behavior:auto !important}
}
