/* 基底：重置、排版、焦点
   焦点方案（用户要求“选中就选中，不要有变化，不要黄框”）：
   1 鼠标、触摸点击不出任何外框和底色变化
   2 文本输入框获得焦点时外观不变，闪烁的光标就是提示
   3 只有键盘操作时，按钮、链接、行出现贴身的墨色细线 + 纸色加深 3%，不用金、黄、蓝、白 */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent}
body{min-height:100vh;font-family:var(--font-serif);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:400;letter-spacing:0;color:var(--ink);background:var(--paper)}
/* 与总站同一张纸：极淡噪点，不拦截点击 */
body::before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
body.locked{overflow:hidden}

h1,h2,h3,h4{font-weight:500;line-height:var(--lh-title);color:var(--ink);letter-spacing:.02em}
p{color:var(--ink-soft)}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
ul,ol{list-style:none}
button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}
button{background:none;border:0;cursor:pointer;-webkit-appearance:none;appearance:none;text-align:inherit}
summary{list-style:none;cursor:pointer}
summary::-webkit-details-marker{display:none}
::selection{background:rgba(176,141,80,.2);color:inherit}
[hidden]{display:none!important}

.num,time,.money{font-family:var(--font-data);font-variant-numeric:tabular-nums;letter-spacing:0}
.i{width:18px;height:18px;flex:none}
.i-sm{width:14px;height:14px;flex:none}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-80px;z-index:200;padding:10px 16px;border-radius:var(--r-1);background:var(--ink);color:var(--paper);font-size:var(--fs-small)}
.skip:focus{top:12px}
.muted{color:var(--ink-faint)}
.soft{color:var(--ink-soft)}

/* ── 焦点 ── */
:focus{outline:none}
:focus-visible{outline:none;outline-offset:0}
.kbd :where(a,button,summary,[role="tab"],[role="option"],[role="button"],[tabindex]:not([tabindex="-1"])):focus-visible{
  background-color:var(--focus-bg);
  box-shadow:inset 0 0 0 1px var(--focus-ink);
  transition:none}
/* 胶囊按钮已有轮廓：把轮廓压深，不再外画一圈 */
.kbd .btn:focus-visible{border-color:var(--focus-ink);box-shadow:inset 0 0 0 1px var(--focus-ink)}
/* 文字链接：给下划线，不给底块 */
.kbd .link:focus-visible,.kbd .top-link:focus-visible{background:none;box-shadow:none;text-decoration:underline;text-decoration-color:var(--focus-ink);text-decoration-thickness:2px;text-underline-offset:.3em}
/* 文本输入：鼠标点进去外观不变；只有键盘 Tab 进来时下划线变实（见 forms.css） */
input,textarea{caret-color:var(--ink)}
:where(input,textarea):focus{box-shadow:none;background-color:transparent}
/* 自绘勾选、单选、开关：小控件留 3px 纸色再画 1px 墨线 */
.kbd .check:focus-visible,.kbd .radio:focus-visible,.kbd .switch:focus-visible{box-shadow:0 0 0 3px var(--paper),0 0 0 4px var(--focus-ink)}
/* 浏览器自动填充不许出现浅蓝、浅黄、白底 */
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--ink);caret-color:var(--ink);
  -webkit-box-shadow:0 0 0 1000px var(--paper) inset;box-shadow:0 0 0 1000px var(--paper) inset;transition:background-color 9999s}
input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}
@media (forced-colors:active){:focus-visible{outline:2px solid CanvasText!important;outline-offset:2px}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
