:root {
  --wrap:1280px;
  --header-h:88px;
  --h1:56px;
  --h2:40px;
  --h3:20px;
  --body:16px;
  --small:14px;
  --micro:12px;
  --display:28px;
  --ink:#0b1513;
  --ink2:#46524e;
  --ink3:#7d8985;
  --black:#000000;
  --paper:#ffffff;
  --line:#e4e9e7;
  --line-light:#edf1ef;
  --line-strong:#c9d2ce;
  --window-line:#e1e7e4;
  --soft:#f7f9f8;
  --soft2:#eff3f1;
  --pine:#0f2b24;
  --pine2:#163a31;
  --pine-hover:#1d2a27;
  --pine-ink:#e3eee9;
  --pine-mute:#8fa9a0;
  --pine-line:rgba(255,255,255,.09);
  --pine-overlay:rgba(255,255,255,.08);
  --pine-overlay-strong:rgba(255,255,255,.12);
  --pine-border:rgba(255,255,255,.18);
  --jade:#2f8c6b;
  --jade-ink:#1d6a50;
  --jade-tint:#ecf5f1;
  --jade-light:#5fc29d;
  --jade-label:#8fd1b6;
  --jade-hatch:#a9d8c4;
  --jade-hatch-light:#d6ede3;
  --jade-ring:rgba(47,140,107,.15);
  --netflix:#e50914;
  --mail-ink:#333333;
  --mail-muted:#555555;
  --mail-faint:#999999;
  --mail-code:#111111;
  --mail-soft:#f3f3f3;
  --art-line:#c3cdc9;
  --arrow:#b9c4c0;
  --shadow-ink:rgba(11,21,19,.55);
  --shadow-button:rgba(11,21,19,.6);
  --shadow-window:rgba(15,43,36,.35);
  --shadow-subtle:rgba(15,43,36,.04);
  --shadow-float:rgba(15,43,36,.28);
  --shadow-hairline:rgba(15,43,36,.05);
  --shadow-art:rgba(15,43,36,.4);
  --shadow-mini:rgba(15,43,36,.3);
  --stripe:rgba(15,43,36,.035);
  --scrim:rgba(11,21,19,.42);
  --sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI","PingFang SC","Hiragino Sans GB","Noto Sans SC","Microsoft YaHei",sans-serif;
  --mono:"SF Mono","JetBrains Mono",Menlo,Consolas,"Liberation Mono",monospace;
  --r1:10px;
  --r2:20px;
  --rp:999px;
  --radius-control:var(--rp);
  --radius-card:var(--r2);
  --s1:8px;
  --s2:12px;
  --s3:16px;
  --s4:24px;
  --s5:32px;
  --s6:64px;
  --s7:128px;
}
* { box-sizing:border-box; margin:0; padding:0; }
html { background:var(--paper); scroll-behavior:smooth; scroll-padding-top:calc(var(--header-h) + var(--s5)); }
body { font-family:var(--sans); font-size:var(--body); line-height:1.7; color:var(--ink); -webkit-font-smoothing:antialiased; background:var(--paper); }
a { color:inherit; text-decoration:none; }
ul { list-style:none; }
button,input,textarea { font-family:inherit; }
button { cursor:pointer; }
button,a,input,textarea,summary { -webkit-tap-highlight-color:transparent; }
button { border:0; }
button:disabled { cursor:wait; opacity:.6; }
img,svg { vertical-align:middle; }
img { max-width:100%; }
svg { flex:none; }
[hidden] { display:none !important; }
:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.wrap { width:min(var(--wrap), calc(100% - 80px)); margin:0 auto; }
.mono { font-family:var(--mono); letter-spacing:0; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.skip-link { position:fixed; top:var(--s3); left:var(--s3); z-index:200; padding:var(--s2) var(--s4); border-radius:var(--rp); background:var(--ink); color:var(--paper); transform:translateY(-160%); }
.skip-link:focus { transform:none; }
.top { height:var(--header-h); border-bottom:1px solid var(--line-light); background:var(--paper); color:var(--ink); position:sticky; top:0; z-index:50; }
.top .wrap { height:100%; display:flex; align-items:center; }
.brand { display:flex; align-items:center; gap:var(--s2); font-size:var(--h3); font-weight:600; letter-spacing:-.01em; color:var(--ink); flex:none; }
.brand img { width:32px; height:32px; flex:none; }
.nav { display:flex; gap:var(--s5); margin-left:72px; font-size:var(--body); color:var(--ink2); }
.nav a { display:flex; align-items:center; gap:4px; white-space:nowrap; }
.nav a:hover { color:var(--ink); }
.nav a[aria-current="page"] { background:var(--jade-tint); color:var(--ink); border-radius:var(--rp); padding:4px var(--s2); }
.nav svg { width:12px; height:12px; }
.nav-r { margin-left:auto; display:flex; align-items:center; gap:var(--s2); }
.pill,.button { display:inline-flex; align-items:center; justify-content:center; gap:var(--s1); min-height:48px; padding:0 var(--s4); border:1px solid transparent; border-radius:var(--rp); font-size:var(--body); line-height:1.35; font-weight:500; cursor:pointer; text-align:center; }
.pill-line,.button-secondary { border:1px solid var(--line); color:var(--ink); background:var(--paper); }
.pill-line:hover,.button-secondary:hover { border-color:var(--line-strong); background:var(--soft); color:var(--ink); }
.pill-dark,.button-primary { background:var(--ink); color:var(--paper); box-shadow:0 12px 24px -12px var(--shadow-ink); }
.pill-dark:hover,.button-primary:hover { background:var(--pine-hover); color:var(--paper); }
.pill svg { width:14px; height:14px; }
.sm { min-height:36px; padding:0 var(--s3); border:1px solid transparent; border-radius:var(--rp); font-size:var(--small); line-height:1.35; font-weight:500; display:inline-flex; align-items:center; justify-content:center; gap:var(--s1); white-space:nowrap; background:transparent; }
.sm svg { width:14px; height:14px; }
.sm-dark { background:var(--ink); color:var(--paper); }
.sm-dark:hover { background:var(--pine-hover); color:var(--paper); }
.sm-line { border:1px solid var(--line); color:var(--ink); background:var(--paper); }
.sm-line:hover { background:var(--soft2); color:var(--ink); }
.sm-ghost { background:transparent; color:var(--ink2); }
.sm-ghost:hover { background:var(--soft2); color:var(--ink); }
.chevron { display:block; width:7px; height:7px; border-right:1px solid currentColor; border-bottom:1px solid currentColor; flex:none; transform:rotate(45deg); }
.lang { position:relative; }
.lang-trigger { position:relative; padding-right:42px; white-space:nowrap; }
.lang-trigger .chevron { position:absolute; right:20px; top:50%; transform:translateY(calc(-50% - .14em)) rotate(45deg); }
.lang-menu,.filter-menu { position:absolute; top:calc(100% + var(--s2)); right:0; z-index:70; min-width:180px; padding:var(--s1); border:1px solid var(--line-strong); border-radius:var(--r1); background:var(--paper); color:var(--ink); box-shadow:0 16px 32px -20px var(--shadow-window); }
.lang-menu a,.filter-menu button { display:flex; align-items:center; width:100%; padding:var(--s1) var(--s2); border-radius:var(--r1); font-size:var(--small); line-height:1.5; background:var(--paper); color:var(--ink2); text-align:left; }
.lang-menu a:hover,.lang-menu a[aria-current],.filter-menu button:hover,.filter-menu [aria-selected="true"] { background:var(--soft2); color:var(--ink); }
.mobile-menu-button { display:none; width:40px; height:40px; align-items:center; justify-content:center; border:1px solid var(--line); border-radius:var(--rp); background:var(--paper); color:var(--ink); }
.mobile-menu-button svg { width:18px; height:18px; }
.nav-drawer { position:fixed; top:calc(var(--header-h) + var(--s1)); left:var(--s3); right:auto; z-index:80; width:min(320px, calc(100% - 32px)); padding:var(--s2); border:1px solid var(--line); border-radius:var(--r2); background:var(--paper); color:var(--ink); box-shadow:0 20px 48px -20px var(--shadow-window); text-align:left; }
.nav-drawer a { display:flex; align-items:center; min-height:44px; padding:var(--s2) var(--s3); border-radius:var(--r1); font-size:var(--small); }
.nav-drawer a:hover { background:var(--soft); color:var(--ink); }
.hero { padding:96px 0 var(--s7); }
.hero-head { text-align:center; }
.hero h1 { font-size:var(--h1); line-height:1.28; font-weight:500; letter-spacing:-.02em; color:var(--black); }
h1 em { font-style:normal; }
.lead { max-width:640px; margin:var(--s4) auto 0; font-size:var(--h3); line-height:1.6; color:var(--ink2); }
.toggle { display:inline-flex; gap:var(--s2); margin-top:var(--s5); }
.toggle a { min-height:52px; padding:0 28px; border:1px solid var(--line); background:var(--paper); color:var(--ink2); border-radius:var(--rp); display:inline-flex; align-items:center; justify-content:center; gap:var(--s1); font-size:var(--body); line-height:1.35; font-weight:500; }
.toggle a svg { width:16px; height:16px; }
.toggle .tg-temp { background:var(--ink); border-color:var(--ink); color:var(--paper); box-shadow:0 14px 28px -14px var(--shadow-button); }
.toggle a:hover { background:var(--pine-hover); border-color:var(--pine-hover); color:var(--paper); }
.stage { display:grid; margin-top:var(--s6); position:relative; scroll-margin-top:calc(var(--header-h) + var(--s4)); }
.win { grid-area:1/1; height:648px; min-height:600px; border:1px solid var(--window-line); border-radius:var(--r2); overflow:hidden; background:var(--paper); display:grid; grid-template-columns:232px minmax(0,1fr); box-shadow:0 40px 80px -48px var(--shadow-window),0 2px 8px var(--shadow-subtle); }
.side { background:var(--pine); color:var(--pine-ink); padding:var(--s4) var(--s3); display:flex; flex-direction:column; min-width:0; }
.side-mark { display:flex; align-items:center; gap:var(--s1); padding:0 var(--s1); height:40px; font-size:var(--small); font-weight:600; }
.side-mark img { width:24px; height:24px; }
.side-cap { margin:var(--s5) var(--s1) var(--s1); font-size:var(--micro); color:var(--pine-mute); letter-spacing:.04em; }
.side-item { display:flex; align-items:center; gap:var(--s2); height:40px; padding:0 var(--s2); border-radius:var(--r1); font-size:var(--small); background:var(--pine); color:var(--pine-ink); }
.side-item svg { width:16px; height:16px; }
.side-item b { margin-left:auto; font-weight:500; font-size:var(--micro); font-family:var(--mono); }
.side-item.on { background:var(--pine2); color:var(--pine-ink); }
.side-dim { color:var(--pine-mute); }
.ttl { margin:var(--s1) var(--s1) 0; padding:var(--s3); border-radius:var(--r1); background:var(--pine2); color:var(--pine-ink); }
.ttl-k { font-size:var(--micro); color:var(--pine-mute); }
.ttl-v { font-family:var(--mono); font-size:var(--display); line-height:1.3; color:var(--paper); margin-top:4px; }
.ttl-bar { display:grid; grid-template-columns:repeat(8,1fr); gap:4px; margin-top:var(--s2); }
.ttl-bar i { height:4px; border-radius:var(--rp); background:var(--pine-overlay-strong); }
.ttl-bar i.f { background:var(--jade-light); }
.ttl-note { font-size:var(--micro); line-height:1.6; color:var(--pine-mute); margin-top:var(--s2); }
.ttl-btn { margin-top:var(--s3); min-height:36px; width:100%; border-radius:var(--rp); border:1px solid var(--pine-border); display:flex; align-items:center; justify-content:center; gap:var(--s1); font-size:var(--small); background:transparent; color:var(--paper); }
.ttl-btn:hover { background:var(--pine-ink); color:var(--pine); }
.ttl-btn svg { width:14px; height:14px; }
.side-foot { margin-top:auto; padding:var(--s3) var(--s1) 0; border-top:1px solid var(--pine-line); font-size:var(--micro); line-height:1.6; color:var(--pine-mute); }
.side-foot a { display:flex; align-items:center; gap:4px; margin-top:4px; font-size:var(--small); color:var(--paper); }
.side-foot svg { width:12px; height:12px; }
.main { display:grid; grid-template-rows:72px minmax(0,1fr); min-width:0; min-height:0; }
.bar { display:flex; align-items:center; gap:var(--s3); padding:0 var(--s4); border-bottom:1px solid var(--line); min-width:0; }
.addr-k { font-size:var(--micro); color:var(--ink3); }
.addr { font-family:var(--mono); font-size:18px; letter-spacing:0; white-space:nowrap; color:var(--ink); font-weight:500; }
.address-block { min-width:0; }
.live { margin-left:auto; display:flex; align-items:center; gap:var(--s1); font-size:var(--micro); color:var(--ink3); white-space:nowrap; }
.live i { width:8px; height:8px; border-radius:var(--rp); background:var(--jade); box-shadow:0 0 0 4px var(--jade-ring); }
.panes { display:grid; grid-template-columns:340px minmax(0,1fr); min-height:0; }
.list { border-right:1px solid var(--line); display:flex; flex-direction:column; min-height:0; min-width:0; }
.list-h { min-height:56px; display:flex; align-items:center; justify-content:space-between; padding:0 20px; font-size:var(--body); font-weight:600; }
.list-h span { font-size:var(--micro); font-weight:400; color:var(--ink3); }
.mail-list { overflow-y:auto; min-height:0; }
.row { width:100%; height:76px; display:grid; grid-template-columns:36px minmax(0,1fr); gap:var(--s2); align-items:center; padding:0 20px; border-top:1px solid var(--line); background:var(--paper); color:var(--ink); text-align:left; font-family:var(--sans); }
.row.on,.row.is-active { background:var(--jade-tint); color:var(--ink); box-shadow:inset 3px 0 0 var(--jade); }
.row:hover { background:var(--soft); color:var(--ink); }
.row:last-of-type { border-bottom:1px solid var(--line); }
.av { width:36px; height:36px; border-radius:var(--r1); display:flex; align-items:center; justify-content:center; font-size:var(--body); font-weight:600; background:var(--pine); color:var(--paper); flex:none; }
.av-n { background:var(--netflix); color:var(--paper); }
.av-u { background:var(--black); color:var(--paper); }
.row-content { min-width:0; }
.row-t { display:flex; align-items:center; justify-content:space-between; gap:var(--s1); font-size:var(--small); font-weight:600; line-height:1.4; }
.row-t em,.row-t time { font-style:normal; font-weight:400; font-size:var(--micro); color:var(--ink3); white-space:nowrap; }
.row-s { font-size:var(--small); line-height:1.4; color:var(--ink); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.row-p { font-size:var(--micro); line-height:1.4; color:var(--ink3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.empty { margin:auto 0 var(--s6); text-align:center; font-size:var(--micro); color:var(--ink3); }
.empty svg { width:48px; height:48px; display:block; margin:0 auto var(--s2); }
.read { display:grid; grid-template-rows:auto minmax(0,1fr) 64px; min-width:0; min-height:0; background:var(--paper); color:var(--ink); overflow:auto; }
.read-h { padding:20px var(--s5) var(--s3); border-bottom:1px solid var(--line); }
.read-h h3 { font-size:var(--h3); font-weight:600; line-height:1.4; letter-spacing:-.01em; overflow-wrap:anywhere; }
.from { display:flex; align-items:flex-start; gap:var(--s2); margin-top:var(--s2); }
.from .av { width:36px; height:36px; font-size:var(--body); }
.from-n { font-size:var(--small); font-weight:600; display:flex; align-items:center; gap:var(--s1); line-height:1.3; }
.badge,.status-pill { display:inline-flex; align-items:center; gap:var(--s1); width:fit-content; font-size:var(--micro); font-weight:500; line-height:1.35; padding:4px var(--s1); border-radius:var(--rp); background:var(--soft2); color:var(--ink2); }
.badge-active,.status-pill.is-active { background:var(--jade-tint); color:var(--jade-ink); }
.from-to { font-size:var(--micro); color:var(--ink3); line-height:1.4; overflow-wrap:anywhere; }
.from-time { margin-left:auto; align-self:center; font-size:var(--micro); color:var(--ink3); white-space:nowrap; }
.read-b { overflow:auto; padding:20px var(--s5) 0; min-height:0; }
.mail { max-width:460px; font-family:Helvetica,Arial,var(--sans); }
.mail-top { height:44px; background:var(--black); color:var(--paper); display:flex; align-items:center; padding:0 20px; border-radius:var(--r1) var(--r1) 0 0; }
.mail-top b { color:var(--netflix); font-size:var(--h3); letter-spacing:.12em; font-weight:600; }
.mail-top svg { width:20px; height:24px; margin-right:var(--s1); color:var(--netflix); }
.mail-in { padding:var(--s3) 20px 0; }
.mail-in h4 { font-size:var(--body); font-weight:600; line-height:1.4; }
.mail-in p { font-size:var(--small); line-height:1.6; color:var(--mail-ink); margin-top:var(--s1); }
.code { margin-top:var(--s2); height:64px; border-radius:var(--r1); background:var(--mail-soft); display:flex; align-items:center; justify-content:center; font-family:var(--mono); font-size:var(--display); font-weight:600; letter-spacing:.32em; color:var(--mail-code); }
.mail-meta { display:grid; grid-template-columns:56px minmax(0,1fr); gap:4px var(--s2); margin-top:var(--s2); font-size:var(--micro); color:var(--mail-muted); line-height:1.5; }
.mail-meta dt { color:var(--mail-faint); }
.mail-btn { display:inline-flex; margin-top:var(--s2); min-height:32px; padding:0 var(--s3); align-items:center; justify-content:center; background:var(--netflix); color:var(--paper); font-size:var(--micro); font-weight:600; border-radius:var(--r1); }
.mail-in .mail-dis { margin-top:var(--s2); font-size:var(--micro); color:var(--mail-faint); line-height:1.5; }
.read-f { border-top:1px solid var(--line); display:flex; align-items:center; gap:var(--s1); padding:0 var(--s5); }
.reader-back { display:none; }
.mail-frame { display:block; border:0; width:100%; min-height:320px; background:var(--paper); color:var(--ink); }
.mail-text { white-space:pre-wrap; overflow-wrap:anywhere; font-family:var(--mono); font-size:var(--small); background:var(--paper); color:var(--ink); }
.read.is-real .demo-pill { display:none; }
.demo-notification { grid-area:1/1; justify-self:end; align-self:end; margin:0 -40px -40px 0; width:272px; background:var(--paper); color:var(--ink); border-radius:var(--r2); padding:var(--s3); box-shadow:0 24px 48px -16px var(--shadow-float),0 0 0 1px var(--shadow-hairline); z-index:2; }
.toast-k { display:flex; align-items:center; gap:var(--s1); font-size:var(--micro); color:var(--ink3); }
.toast-k svg { width:16px; height:16px; }
.toast-t { font-size:var(--small); font-weight:600; margin-top:var(--s1); }
.toast-c { display:flex; align-items:center; justify-content:space-between; width:100%; margin-top:var(--s1); padding:var(--s1) var(--s2); border-radius:var(--r1); background:var(--soft); color:var(--ink); }
.toast-c b { font-family:var(--mono); font-size:var(--h3); letter-spacing:.2em; font-weight:600; }
.toast-c span { font-size:var(--micro); color:var(--jade-ink); font-weight:500; }
.art-row { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--s5); margin-top:144px; align-items:end; }
.hero-art { display:grid; grid-column:1/9; min-width:0; }
.hero-art .art-photo { grid-area:1/1; width:100%; height:clamp(22rem,38vw,34rem); object-fit:cover; border-radius:var(--r2); display:block; }
.hero-art picture { grid-area:1/1; display:block; min-width:0; }
.hero-art picture .art-photo { height:clamp(22rem,38vw,34rem); }
.hero-art .float-card { grid-area:1/1; align-self:end; justify-self:start; margin:1.5rem; background:var(--paper); color:var(--ink); border-radius:var(--r2); padding:var(--s3) 20px; display:flex; gap:var(--s3); align-items:center; box-shadow:0 24px 48px -20px var(--shadow-art); z-index:1; }
.float-card svg { width:40px; height:40px; flex:none; }
.fc-t { font-size:var(--small); font-weight:600; line-height:1.4; }
.fc-t span { font-family:var(--mono); font-weight:500; }
.fc-s { font-size:var(--micro); color:var(--ink3); line-height:1.6; }
.art-side { grid-column:9/13; padding-bottom:var(--s1); }
.art-side h2 { font-size:var(--display); font-weight:500; letter-spacing:-.02em; line-height:1.4; }
.art-side p { margin-top:var(--s3); color:var(--ink2); }
.stats { margin-top:var(--s5); display:grid; }
.stats li { display:flex; align-items:baseline; justify-content:space-between; gap:var(--s3); padding:var(--s3) 0; }
.stats li+li { border-top:1px solid var(--line); }
.stats b { font-size:var(--display); font-weight:500; letter-spacing:-.02em; }
.stats span { font-size:var(--small); color:var(--ink2); }
.sec { padding:var(--s7) 0; }
.sec-soft { background:var(--soft); color:var(--ink); }
.eyebrow { font-size:var(--small); font-weight:500; color:var(--jade-ink); margin:0 0 20px; }
.h2 { font-size:var(--h2); line-height:1.35; font-weight:500; letter-spacing:-.02em; color:var(--black); margin-top:20px; }
.sec-head { text-align:center; max-width:800px; margin:0 auto; }
.sec-head .eyebrow { margin-bottom:20px; }
.sec-head p:not(.eyebrow),.section-intro { margin:20px auto 0; font-size:var(--h3); line-height:1.6; color:var(--ink2); max-width:680px; }
.opts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s4); margin-top:var(--s6); }
.opt { background:var(--paper); color:var(--ink); border-radius:var(--r2); padding:var(--s5); display:flex; flex-direction:column; min-width:0; }
.opt h3 { font-size:var(--h3); font-weight:600; line-height:1.4; margin-top:var(--s3); }
.opt-i { width:40px; height:40px; border-radius:var(--r1); background:var(--soft2); color:var(--ink); display:flex; align-items:center; justify-content:center; }
.opt-i svg { width:20px; height:20px; }
.opt dl { margin-top:var(--s4); display:grid; gap:var(--s3); }
.opt dt { font-size:var(--micro); font-weight:600; color:var(--ink3); letter-spacing:.04em; }
.opt dd { font-size:var(--body); color:var(--ink2); margin-top:4px; }
.opt-pick { background:var(--pine); color:var(--pine-ink); }
.opt-pick h3 { color:var(--paper); }
.opt-pick .opt-i { background:var(--pine-overlay); color:var(--pine-ink); }
.opt-pick dt { color:var(--jade-label); }
.opt-pick dd { color:var(--pine-ink); }
.opt-tag { margin-left:auto; font-size:var(--micro); padding:4px var(--s2); border-radius:var(--rp); background:var(--pine2); color:var(--paper); line-height:1.4; }
.opt-top { display:flex; align-items:center; }
.feats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s4); margin-top:var(--s6); }
.feat { border-radius:var(--r2); background:var(--soft); color:var(--ink); overflow:hidden; display:flex; flex-direction:column; min-width:0; }
.feat-art { height:248px; display:flex; align-items:center; justify-content:center; padding:var(--s5); background:repeating-linear-gradient(135deg,transparent 0 11px,var(--stripe) 11px 12px),var(--soft2); color:var(--ink); }
.feat-txt { padding:var(--s5); }
.feat-txt h3 { font-size:var(--h3); font-weight:600; line-height:1.4; }
.feat-txt p { margin-top:var(--s2); color:var(--ink2); }
.trade { margin-top:var(--s3); padding-top:var(--s3); border-top:1px solid var(--line); font-size:var(--small); color:var(--ink2); }
.trade b { color:var(--ink); font-weight:600; }
.mini { width:100%; background:var(--paper); color:var(--ink); border-radius:var(--r1); padding:var(--s3); box-shadow:0 16px 32px -20px var(--shadow-mini); }
.mini-k { font-size:var(--micro); color:var(--ink3); }
.mini-addr { display:flex; align-items:center; justify-content:space-between; gap:var(--s1); margin-top:var(--s1); min-height:44px; border:1px solid var(--line); border-radius:var(--rp); padding:0 4px 0 var(--s3); }
.mini-addr .mono { font-size:var(--small); font-weight:500; white-space:nowrap; min-width:0; overflow:hidden; text-overflow:ellipsis; }
.mini-addr .sm { height:36px; }
.mini-ok { display:flex; align-items:center; gap:var(--s1); margin-top:var(--s2); font-size:var(--micro); color:var(--jade-ink); }
.mini-ok svg { width:14px; height:14px; }
.mrow { display:grid; grid-template-columns:28px minmax(0,1fr) auto; gap:var(--s2); align-items:center; height:56px; }
.mrow+.mrow { border-top:1px solid var(--line); }
.mrow .av { width:28px; height:28px; font-size:var(--micro); border-radius:var(--r1); }
.mrow b { font-size:var(--small); font-weight:600; display:block; line-height:1.3; }
.mrow small { font-size:var(--micro); color:var(--ink3); line-height:1.3; }
.new { font-size:var(--micro); font-weight:600; color:var(--jade-ink); background:var(--jade-tint); padding:4px var(--s1); border-radius:var(--rp); line-height:1; }
.scale { display:grid; grid-template-columns:repeat(24,minmax(0,1fr)); gap:3px; margin-top:var(--s2); }
.scale i { height:24px; border-radius:var(--rp); background:var(--soft2); }
.scale i.a { background:var(--jade); }
.scale i.b { background:repeating-linear-gradient(135deg,var(--jade-hatch) 0 3px,var(--jade-hatch-light) 3px 6px); }
.scale-l { display:flex; justify-content:space-between; margin-top:var(--s1); font-family:var(--mono); font-size:var(--micro); color:var(--ink3); }
.legend { display:flex; gap:var(--s3); margin-top:var(--s2); font-size:var(--micro); color:var(--ink2); }
.legend span { display:flex; align-items:center; gap:6px; }
.legend i { width:10px; height:10px; border-radius:var(--rp); background:var(--jade); }
.legend i.b { background:repeating-linear-gradient(135deg,var(--jade-hatch) 0 3px,var(--jade-hatch-light) 3px 6px); }
.fwd { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:96px; align-items:center; }
.fwd-txt>p:not(.eyebrow) { margin-top:20px; font-size:var(--h3); line-height:1.6; color:var(--ink2); }
.ticks { margin-top:var(--s5); display:grid; gap:var(--s3); }
.ticks li { display:flex; gap:var(--s2); color:var(--ink2); }
.ticks svg { width:20px; height:20px; flex:none; margin-top:3px; }
.ticks b { color:var(--ink); font-weight:600; }
.fwd-cta { display:flex; flex-wrap:wrap; gap:var(--s2); margin-top:40px; }
.flow { background:var(--paper); color:var(--ink); border-radius:var(--r2); padding:48px; box-shadow:0 40px 80px -56px var(--shadow-window); min-width:0; }
.flow-row { display:grid; grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr) 64px minmax(0,1fr); align-items:center; }
.node { text-align:center; min-width:0; }
.node-i { width:64px; height:64px; margin:0 auto; border-radius:var(--r2); background:var(--soft2); color:var(--ink); display:flex; align-items:center; justify-content:center; }
.node-i svg { width:28px; height:28px; }
.node-i.d { background:var(--pine); color:var(--pine-ink); }
.node b { display:block; margin-top:var(--s3); font-size:var(--small); font-weight:600; }
.node small { display:block; font-size:var(--micro); color:var(--ink3); line-height:1.5; margin-top:4px; }
.arrow svg { width:64px; height:16px; display:block; }
.flow-tbl { margin-top:40px; border-top:1px solid var(--line); }
.flow-tbl>div { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto; gap:var(--s3); align-items:center; min-height:56px; border-bottom:1px solid var(--line); font-size:var(--small); }
.flow-tbl .mono { font-size:var(--small); overflow-wrap:anywhere; }
.flow-tbl svg { width:16px; height:16px; }
.flow-tbl .badge { justify-self:end; }
.steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:48px; margin-top:var(--s6); }
.step-n { width:40px; height:40px; border-radius:var(--rp); border:1px solid var(--line); display:flex; align-items:center; justify-content:center; font-family:var(--mono); font-size:var(--small); color:var(--ink); }
.step h3 { font-size:var(--h3); font-weight:600; line-height:1.4; margin-top:var(--s4); }
.step p { margin-top:var(--s1); color:var(--ink2); }
.guides { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s4); margin-top:80px; }
.guide { display:flex; align-items:center; gap:var(--s4); padding:var(--s5); border-radius:var(--r2); background:var(--soft); color:var(--ink); min-width:0; }
.guide:hover { background:var(--soft2); color:var(--ink); }
.guide-i { width:56px; height:56px; border-radius:var(--r2); background:var(--paper); color:var(--ink); display:flex; align-items:center; justify-content:center; flex:none; }
.guide-i svg { width:24px; height:24px; }
.guide h3 { font-size:var(--h3); font-weight:600; line-height:1.4; }
.guide p { font-size:var(--small); color:var(--ink2); margin-top:4px; }
.guide>svg { width:20px; height:20px; margin-left:auto; flex:none; }
.faq { display:grid; grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:96px; }
.faq-l p:not(.eyebrow) { margin-top:20px; color:var(--ink2); }
.faq-l a { display:inline-flex; margin-top:var(--s4); font-weight:500; color:var(--jade-ink); gap:4px; align-items:center; }
.faq-l a svg { width:14px; height:14px; }
.qa { background:var(--paper); color:var(--ink); border-radius:var(--r2); padding:var(--s1) var(--s5); }
.qa>div,.qa>details { padding:var(--s4) 0; }
.qa>div+div,.qa>details+details { border-top:1px solid var(--line); }
.qa h3,.qa summary { font-size:var(--body); font-weight:600; line-height:1.5; }
.qa p { margin-top:var(--s1); color:var(--ink2); }
.qa a { color:var(--jade-ink); font-weight:500; }
.qa summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:var(--s3); cursor:pointer; }
.qa summary::-webkit-details-marker { display:none; }
.qa summary .chevron { margin-right:3px; }
.qa details[open] summary .chevron { rotate:180deg; transform:rotate(45deg); }
.qa details[open] p { padding-bottom:var(--s1); }
.cta { text-align:center; padding:160px 0; }
.cta .h2 { font-size:var(--h1); line-height:1.28; margin-top:20px; }
.cta p:not(.eyebrow) { margin:var(--s4) auto 0; max-width:560px; font-size:var(--h3); line-height:1.6; color:var(--ink2); }
.cta-b,.actions { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s2); margin-top:40px; }
.cta-b,.centered .actions { justify-content:center; }
.foot { background:var(--soft); color:var(--ink); padding:80px 0 48px; }
.foot-g { display:grid; grid-template-columns:minmax(0,4fr) repeat(3,minmax(0,2fr)); gap:48px; }
.foot-b p { margin-top:var(--s3); font-size:var(--small); color:var(--ink2); max-width:380px; }
.foot-b .mail-l { display:inline-flex; margin-top:var(--s3); padding:var(--s1) var(--s3); border:1px solid var(--line); border-radius:var(--rp); font-family:var(--mono); font-size:var(--small); color:var(--ink); background:var(--paper); max-width:100%; overflow-wrap:anywhere; }
.foot-b .mail-l:hover { background:var(--ink); color:var(--paper); }
.foot h4 { font-size:var(--small); font-weight:600; }
.foot ul { margin-top:var(--s3); display:grid; gap:var(--s2); font-size:var(--small); color:var(--ink2); }
.foot ul a { overflow-wrap:anywhere; }
.foot ul a:hover { color:var(--ink); }
.foot-x { margin-top:var(--s6); padding-top:var(--s4); border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:var(--s4); font-size:var(--micro); color:var(--ink3); }
.toast { position:fixed; left:50%; bottom:var(--s4); transform:translate(-50%, 12px); z-index:150; width:max-content; max-width:min(430px, calc(100% - 32px)); padding:var(--s2) 20px; border:1px solid var(--pine-border); border-radius:var(--r1); background:var(--ink); color:var(--paper); box-shadow:0 12px 24px -12px var(--shadow-ink); font-size:var(--small); text-align:center; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .18s,transform .18s,visibility .18s; }
.toast.show { opacity:1; visibility:visible; transform:translate(-50%,0); }
.empty-host { display:grid; place-items:center; min-width:0; }
.empty-state { width:min(420px, calc(100% - 32px)); height:auto; min-height:0; padding:20px; border:1px solid var(--line); border-radius:var(--r1); background:var(--soft); color:var(--ink); text-align:center; margin:var(--s4) auto; }
.empty-state h3 { font-size:var(--body); line-height:1.4; font-weight:600; }
.empty-state p { font-size:var(--small); color:var(--ink2); margin-top:var(--s1); }
.field-label { display:block; font-size:var(--small); font-weight:500; margin-bottom:var(--s1); }
input:not([type="checkbox"]):not([type="radio"]),textarea { width:100%; min-width:0; min-height:48px; border:1px solid var(--line-strong); border-radius:var(--rp); padding:var(--s2) var(--s3); font-size:var(--small); line-height:1.5; background:var(--paper); color:var(--ink); outline:none; }
textarea { min-height:144px; border-radius:var(--r1); resize:vertical; }
input::placeholder,textarea::placeholder { font-size:var(--small); color:var(--ink3); }
input:not([type="checkbox"]):not([type="radio"]):focus,textarea:focus { border-color:var(--ink); box-shadow:inset 0 0 0 1px var(--ink); }
.form-stack { display:grid; gap:var(--s3); }
.form-notice { font-size:var(--small); color:var(--ink2); padding:var(--s2) 0; }
.form-error { color:var(--jade-ink); font-size:var(--small); }
.table-scroll { width:100%; overflow-x:auto; margin-top:var(--s4); margin-bottom:var(--s5); }
table { border-collapse:collapse; width:100%; text-align:left; font-size:var(--small); }
th,td { border-bottom:1px solid var(--line); padding:var(--s3); vertical-align:top; }
th { font-weight:500; background:var(--soft2); color:var(--ink2); }
.filter { position:relative; display:inline-block; }
.filter-trigger { display:inline-flex; align-items:center; gap:var(--s2); width:auto; min-height:40px; margin-block:var(--s3); padding:var(--s1) var(--s3); border:1px solid var(--line-strong); border-radius:var(--rp); background:var(--paper); color:var(--ink); font-size:var(--small); line-height:1.35; }
.filter-menu { left:0; right:auto; min-width:160px; }
.modal-layer { position:fixed; inset:0; z-index:120; display:grid; place-items:center; padding:var(--s3); background:var(--scrim); color:var(--ink); }
.modal { width:min(420px,100%); max-height:calc(100dvh - 32px); overflow:auto; border-radius:var(--r2); padding:var(--s5); background:var(--paper); color:var(--ink); box-shadow:0 24px 48px -16px var(--shadow-float); }
.modal h2 { font-size:var(--h3); line-height:1.4; font-weight:600; margin:var(--s2) 0 0; }
.modal p { font-size:var(--small); color:var(--ink2); margin-top:var(--s2); }
.modal .actions { justify-content:flex-end; margin-top:var(--s4); }
.modal-icon { width:40px; height:40px; border-radius:var(--r1); background:var(--soft2); color:var(--ink); display:grid; place-items:center; }
.page-hero { padding:80px 0 var(--s6); }
.page-hero h1 { font-size:var(--h1); font-weight:500; letter-spacing:-.02em; line-height:1.28; }
.page-hero .section-intro { margin-left:0; }
.page-hero.centered { text-align:center; }
.page-hero.centered .section-intro { margin-left:auto; }
.login-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:80px; align-items:center; padding:80px 0 var(--s7); }
.login-story h1 { font-size:var(--h1); line-height:1.28; font-weight:500; letter-spacing:-.02em; }
.login-story p:not(.eyebrow) { margin-top:var(--s4); color:var(--ink2); }
.case-entry-surface { background:var(--soft); color:var(--ink); border:1px solid var(--line); border-radius:var(--r2); padding:48px; min-width:0; }
.case-entry-surface h2,
[data-code-pane] h2 {
  font-size:20px;
  line-height:1.4;
  font-weight:500;
}
.case-entry-surface form,.case-entry-surface .login-pane { margin-top:var(--s4); }
.login-pane { display:grid; gap:var(--s3); }
.case-entry-surface .actions { margin-top:var(--s4); }
.case-entry-surface .actions .sm { min-height:40px; background:var(--paper); color:var(--ink); border:1px solid var(--line-strong); }
.desk-wrap { padding:var(--s6) 0 var(--s7); }
.desk-session { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:var(--s3); margin-bottom:48px; }
.session-email { font-family:var(--mono); font-size:var(--small); overflow-wrap:anywhere; }
.desk-alias { padding:var(--s5); border:1px solid var(--line); border-radius:var(--r2); background:var(--paper); color:var(--ink); }
.desk-archive { margin-top:48px; padding:var(--s5); border-radius:var(--r2); background:var(--soft); color:var(--ink); }
.desk-alias h2,.desk-archive h2,.surface-safety h2 { font-size:var(--display); line-height:1.4; font-weight:500; }
.alias-compose { display:flex; align-items:center; gap:var(--s2); margin-top:var(--s4); }
.alias-input { display:flex; align-items:center; gap:var(--s2); min-width:0; flex:1; border:1px solid var(--line-strong); border-radius:var(--rp); padding-right:var(--s3); background:var(--paper); color:var(--ink); }
.alias-input:focus-within { border-color:var(--ink); box-shadow:inset 0 0 0 1px var(--ink); }
.alias-input input:not([type="checkbox"]):not([type="radio"]) { flex:1; border:0; background:var(--paper); color:var(--ink); }
.alias-input input:not([type="checkbox"]):not([type="radio"]):focus { border:0; box-shadow:none; }
.alias-suffix { font-family:var(--mono); font-size:var(--small); color:var(--ink2); border-radius:0 var(--rp) var(--rp) 0; }
.alias-compose button { min-height:48px; font-size:var(--small); }
.alias-list { margin-top:var(--s5); display:grid; gap:var(--s2); }
.alias-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:var(--s3); border-bottom:1px solid var(--line); padding:var(--s3) 0; }
.alias-address { font-family:var(--mono); font-size:var(--small); overflow-wrap:anywhere; }
.alias-actions { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s1); }
.archive-toolbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--s3); margin:var(--s4) 0 var(--s5); }
.archive-list { display:grid; gap:var(--s2); }
.archive-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:var(--s3); width:100%; padding:var(--s3); border:1px solid var(--line); border-radius:var(--r1); background:var(--paper); color:var(--ink); text-align:left; font:inherit; }
.archive-row strong { font-size:var(--small); font-weight:500; display:block; }
.archive-row small { font-size:var(--micro); color:var(--ink2); overflow-wrap:anywhere; }
.archive-meta { display:flex; align-items:center; gap:var(--s2); font-size:var(--micro); white-space:nowrap; }
.archive-detail { min-width:0; max-width:100%; overflow-wrap:anywhere; margin-top:var(--s5); padding:var(--s5); border:1px solid var(--line); border-radius:var(--r2); background:var(--paper); color:var(--ink); }
.archive-detail-head { display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:var(--s3); margin-bottom:var(--s4); }
.archive-detail-head h3 { font-size:var(--h3); line-height:1.4; }
.archive-detail-head .sm { flex:none; align-self:flex-start; }
.surface-safety { margin-top:48px; padding:var(--s5); border-radius:var(--r2); background:var(--soft2); color:var(--ink); }
.twofa-idle { display:flex; align-items:center; justify-content:space-between; gap:var(--s4); }
.twofa-status { display:flex; align-items:center; gap:var(--s2); margin-top:var(--s2); margin-bottom:var(--s4); font-size:var(--small); }
[data-2fa-badge] { margin:0; background:var(--paper); color:var(--ink2); border:1px solid var(--line-strong); }
[data-twofa-start] { align-self:center; flex:none; min-height:48px; width:auto; }
.twofa-setup { margin-top:var(--s5); margin-bottom:var(--s4); padding-top:var(--s4); border-top:1px solid var(--line-strong); }
.security-scan-layout { display:grid; grid-template-columns:180px minmax(0,1fr); gap:var(--s5); align-items:start; }
.twofa-qr { width:180px; height:180px; aspect-ratio:1; object-fit:contain; background:var(--paper); color:var(--ink); border-radius:var(--r1); }
.security-instructions { display:grid; gap:var(--s4); list-style:none; counter-reset:setup; }
.security-instructions li { display:grid; grid-template-columns:28px minmax(0,1fr); gap:var(--s2); counter-increment:setup; }
.security-instructions li::before { content:counter(setup); width:28px; height:28px; border-radius:var(--rp); display:grid; place-items:center; background:var(--paper); color:var(--ink); font-family:var(--mono); font-size:var(--micro); }
.twofa-secret { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s2); margin-top:var(--s2); color:var(--ink); }
.twofa-secret code { font-family:var(--mono); color:var(--ink); font-size:var(--small); overflow-wrap:anywhere; }
.twofa-secret button { width:auto; flex:none; }
.twofa-actions { display:flex; flex-wrap:wrap; align-items:center; gap:var(--s2); margin-top:var(--s4); }
.twofa-actions input { width:180px; }
.twofa-actions button { min-height:48px; }
.article-wrap { width:min(var(--wrap), calc(100% - 80px)); margin:auto; }
.article-layout { display:grid; max-width:1280px; grid-template-columns:240px minmax(0,1fr); gap:80px; align-items:start; padding-bottom:var(--s7); }
.article-toc { position:sticky; top:calc(var(--header-h) + var(--s3)); border:1px solid var(--line); border-radius:var(--r2); padding:var(--s4); background:var(--soft); color:var(--ink); font-size:var(--small); }
.article-toc h2 { font-size:var(--body); line-height:1.5; font-weight:500; }
.article-toc ol { padding-left:20px; margin-top:var(--s3); }
.article-toc li+li { margin-top:var(--s2); }
.article-toc .badge { margin-top:var(--s3); }
.prose { min-width:0; font-size:var(--body); color:var(--ink2); }
.prose h2 { font-size:var(--display); line-height:1.4; font-weight:500; color:var(--ink); margin:48px 0 var(--s4); }
.prose h3 { font-size:var(--h3); line-height:1.5; font-weight:500; color:var(--ink); margin:var(--s5) 0 var(--s3); }
.prose p+p { margin-top:var(--s3); }
.prose ul,.prose ol { margin:var(--s4) 0 var(--s5); padding-left:var(--s4); }
.prose ul { list-style:disc; }
.prose a { color:var(--jade-ink); text-decoration:underline; text-underline-offset:3px; }
.prose .pill-dark { color:var(--paper); text-decoration:none; }
.prose .pill-line { color:var(--ink); text-decoration:none; }
.prose pre { padding:var(--s4); background:var(--soft); color:var(--ink); border-radius:var(--r1); overflow:auto; margin:var(--s4) 0 var(--s5); font-family:var(--mono); font-size:var(--small); }
.prose blockquote { margin:var(--s4) 0 var(--s5); padding:var(--s4); background:var(--soft); color:var(--ink); border-radius:var(--r1); }
.post-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s4); margin-top:var(--s5); }
.post-card { display:flex; flex-direction:column; padding:var(--s5); background:var(--soft); color:var(--ink); border:1px solid var(--line); border-radius:var(--r2); }
.post-card:hover { background:var(--soft2); color:var(--ink); }
.post-card h2 { font-size:var(--h3); line-height:1.4; font-weight:500; margin:var(--s4) 0 var(--s2); }
.post-card time { font-size:var(--micro); color:var(--ink3); margin-top:var(--s3); }
.recommend-float { position:fixed; right:var(--s4); bottom:var(--s4); z-index:40; width:min(320px, calc(100% - 32px)); border:1px solid var(--line); border-radius:var(--r2); background:var(--paper); color:var(--ink); box-shadow:0 24px 48px -16px var(--shadow-float); overflow:hidden; }
.recommend-float-head { display:flex; justify-content:space-between; align-items:center; gap:var(--s2); padding:var(--s3); background:var(--soft); color:var(--ink2); font-size:var(--micro); }
.float-close { display:grid; place-items:center; width:28px; height:28px; flex:none; border-radius:var(--rp); background:var(--paper); color:var(--ink); border:1px solid var(--line); }
.recommend-float-body { padding:var(--s4); }
.recommend-float h3 { font-size:var(--body); line-height:1.4; font-weight:500; }
.recommend-float p { font-size:var(--small); color:var(--ink2); margin-top:var(--s2); }
.recommend-float .pill { margin-top:var(--s4); max-width:100%; white-space:normal; height:auto; padding:var(--s2) var(--s4); }
@media (max-width:1100px) {
  .nav { gap:20px; margin-left:var(--s5); font-size:var(--small); }
  .nav-r { gap:var(--s1); }
  .nav-r .pill { padding-left:var(--s3); padding-right:var(--s3); font-size:var(--small); }
  .nav-r .lang-trigger { padding-right:36px; }
  .lang-trigger .chevron { right:16px; }
  .win { grid-template-columns:188px minmax(0,1fr); }
  .panes { grid-template-columns:minmax(240px, .8fr) minmax(0,1.2fr); }
  .bar { gap:var(--s2); padding:0 var(--s3); }
  .bar .live { display:none; }
  .addr { font-size:var(--body); }
  .read-h { padding-left:20px; padding-right:20px; }
  .read-b,.read-f { padding-left:20px; padding-right:20px; }
  .read-f { gap:4px; }
  .read-f .sm { padding:0 var(--s2); font-size:var(--micro); }
  .demo-notification { margin-right:-16px; }
  .fwd,.faq { gap:48px; }
  .flow { padding:var(--s5); }
  .flow-row { grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr) 32px minmax(0,1fr); }
  .arrow svg { width:32px; }
  .flow-tbl>div { gap:var(--s1); }
  .flow-tbl .mono { font-size:var(--micro); }
  .feat-art { padding:20px; }
  .opt,.feat-txt { padding:var(--s4); }
  .steps { gap:var(--s4); }
  .foot-g { gap:var(--s5); }
  .login-layout { grid-template-columns:minmax(0,1fr); max-width:var(--wrap); gap:48px; }
}
@media (max-width:860px) {
  :root { --header-h:76px; --h1:44px; --h2:32px; --s7:88px; }
  .wrap { width:calc(100% - 48px); }
  .top .wrap { gap:var(--s3); }
  .nav { display:none; }
  .mobile-menu-button { display:inline-flex; order:-1; }
  .nav-r { margin-left:auto; }
  .hero { padding-top:72px; }
  .win { grid-template-columns:160px minmax(0,1fr); height:648px; }
  .side { padding:var(--s4) var(--s2); }
  .side-mark { gap:6px; padding:0; font-size:var(--micro); }
  .ttl { margin-left:0; margin-right:0; padding:var(--s2); }
  .ttl-v { font-size:24px; }
  .main { grid-template-rows:112px minmax(0,1fr); }
  .bar { flex-wrap:wrap; align-content:center; row-gap:var(--s1); }
  .address-block { width:100%; }
  .panes { grid-template-columns:minmax(0,1fr); }
  .list { border-right:0; }
  .read { display:none; }
  .demo-notification { margin-right:0; width:250px; }
  .art-row { margin-top:112px; gap:var(--s4); }
  .hero-art { grid-column:1/8; }
  .art-side { grid-column:8/13; }
  .hero-art .art-photo,.hero-art picture .art-photo { height:420px; }
  .hero-art .float-card { margin:var(--s3); padding:var(--s2); gap:var(--s2); }
  .opts,.feats { gap:var(--s3); }
  .opt,.feat-txt { padding:20px; }
  .feat-art { height:220px; padding:var(--s2); }
  .mini { padding:var(--s2); }
  .mini-addr { padding-left:var(--s1); }
  .mini-addr .mono { font-size:var(--micro); }
  .mini-addr .sm { padding:0 var(--s1); font-size:var(--micro); }
  .mrow { gap:6px; }
  .mrow small { font-size:var(--micro); }
  .fwd { grid-template-columns:minmax(0,1fr); gap:48px; }
  .flow-tbl .mono { font-size:var(--small); }
  .faq { grid-template-columns:minmax(0,1fr); gap:40px; }
  .guides { gap:var(--s3); }
  .guide { padding:var(--s4); gap:var(--s3); }
  .guide-i { width:40px; height:40px; }
  .guide h3 { font-size:var(--body); }
  .foot-g { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .foot-b { grid-column:1/-1; }
  .foot-b p { max-width:560px; }
  .foot-x { flex-direction:column; gap:var(--s1); }
  .article-wrap { width:calc(100% - 48px); }
  .article-layout { grid-template-columns:minmax(0,1fr); gap:var(--s5); }
  .article-toc { position:static; }
  .reader-open { overflow:hidden; }
  .reader-open .top { visibility:hidden; }
  .reader-open .hero,.reader-open .stage,.reader-open .wrap { transform:none; animation:none; }
  .reader-open .demo-notification { visibility:hidden; }
  .read.mobile-reader { display:flex; flex-direction:column; position:fixed; inset:0; width:100%; height:100dvh; max-height:none; z-index:110; overflow-y:auto; padding-top:var(--header-h); background:var(--paper); color:var(--ink); }
  .mobile-reader .reader-back { display:flex; position:sticky; top:0; z-index:3; justify-content:space-between; gap:var(--s2); padding:var(--s2) var(--s3); border-bottom:1px solid var(--line); background:var(--paper); color:var(--ink); }
  .mobile-reader .read-h { padding:20px; }
  .mobile-reader .read-b { flex:1 0 auto; overflow:visible; padding:20px; }
  .mobile-reader .read-f { position:sticky; bottom:0; min-height:64px; flex-wrap:wrap; padding:var(--s2) 20px; background:var(--paper); color:var(--ink); }
  .alias-compose { flex-wrap:wrap; }
  .alias-input { flex-basis:100%; }
  .twofa-idle { align-items:flex-start; }
}
@media (max-width:560px) {
  :root { --header-h:72px; --h1:38px; --h2:28px; --s7:72px; }
  .wrap { width:calc(100% - 32px); }
  .top .wrap { gap:var(--s2); }
  .brand { gap:var(--s1); font-size:18px; }
  .brand img { width:28px; height:28px; }
  .mobile-menu-button { width:36px; height:36px; flex:none; }
  .nav-r { gap:var(--s1); }
  .nav-r .pill { min-height:40px; padding-left:var(--s3); padding-right:var(--s3); font-size:var(--micro); }
  .nav-r .lang-trigger { width:40px; height:40px; min-height:40px; padding:0; font-size:0; overflow:hidden; background:var(--paper); color:var(--ink); }
  .lang-trigger .language-name { display:none; }
  .lang-trigger .globe { width:16px; height:16px; margin-left:-7px; }
  .lang-trigger .chevron { width:6px; height:6px; right:6px; }
  .lang-menu { right:-48px; }
  .hero { padding-top:56px; }
  .hero h1 { line-height:1.32; }
  .lead { margin-top:20px; font-size:var(--body); line-height:1.7; max-width:360px; }
  .toggle { display:flex; justify-content:center; flex-wrap:wrap; gap:var(--s2); margin-top:28px; }
  .toggle a { min-height:48px; padding:0 20px; font-size:var(--small); }
  .stage { margin-top:40px; }
  .win { display:flex; flex-direction:column; height:auto; min-height:0; }
  .side { padding:var(--s3); display:grid; grid-template-columns:minmax(0,1fr) auto; gap:var(--s2); }
  .side-mark { font-size:var(--small); align-self:center; }
  .side>.side-cap,.side>.side-item,.side-foot { display:none; }
  .ttl { margin:0; padding:0; border-radius:0; background:transparent; color:var(--pine-ink); display:grid; grid-template-columns:auto auto; column-gap:var(--s2); align-items:center; }
  .ttl-k { font-size:var(--micro); }
  .ttl-v { font-size:18px; grid-column:1; margin:0; }
  .ttl-bar,.ttl-note { display:none; }
  .ttl-btn { grid-column:2; grid-row:1/3; margin:0; padding:0 var(--s2); min-height:36px; width:auto; font-size:var(--micro); }
  .main { display:flex; flex-direction:column; }
  .bar { padding:var(--s3); gap:var(--s1); }
  .addr { font-size:var(--body); }
  .address-block { margin-bottom:4px; overflow-x:auto; }
  .bar .sm { min-height:36px; font-size:var(--micro); padding:0 var(--s2); }
  .panes { display:block; }
  .list { min-height:272px; }
  .list-h { padding:0 var(--s3); min-height:52px; }
  .row { padding:0 var(--s3); }
  .empty { margin:var(--s4) 0; }
  .empty svg { width:32px; height:32px; margin-bottom:var(--s1); }
  .demo-notification { display:none; }
  .art-row { grid-template-columns:minmax(0,1fr); margin-top:64px; gap:var(--s5); }
  .hero-art,.art-side { grid-column:auto; }
  .hero-art .art-photo,.hero-art picture .art-photo { height:340px; }
  .hero-art .float-card { margin:var(--s2); max-width:calc(100% - 24px); }
  .fc-s { font-size:var(--micro); }
  .art-side h2 { font-size:var(--display); }
  .stats { margin-top:var(--s4); }
  .stats li { padding:var(--s2) 0; }
  .sec-head p:not(.eyebrow),.section-intro { font-size:var(--body); }
  .opts,.feats { grid-template-columns:minmax(0,1fr); gap:var(--s3); margin-top:40px; }
  .opt,.feat-txt { padding:var(--s5); }
  .feat-art { height:224px; padding:var(--s5); }
  .mini-addr .mono { font-size:var(--small); }
  .mini-addr .sm { padding:0 var(--s3); font-size:var(--small); }
  .fwd-txt>p:not(.eyebrow) { font-size:var(--body); }
  .fwd-cta { margin-top:var(--s5); }
  .fwd-cta .pill { padding:var(--s2) 20px; font-size:var(--small); }
  .flow { padding:var(--s4) var(--s3); }
  .flow-row { grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr); }
  .arrow svg { width:20px; }
  .node-i { width:48px; height:48px; }
  .node b { font-size:var(--micro); }
  .node small { font-size:var(--micro); }
  .flow-tbl>div { grid-template-columns:minmax(0,1fr) auto; gap:var(--s1); padding:var(--s2) 0; }
  .flow-tbl>div>svg { display:none; }
  .flow-tbl>div>.mono:nth-of-type(2) { grid-column:1; color:var(--ink3); }
  .flow-tbl .badge { grid-column:2; grid-row:1/3; }
  .flow-tbl .mono { font-size:var(--micro); }
  .steps { grid-template-columns:minmax(0,1fr); gap:var(--s5); margin-top:40px; }
  .step { display:grid; grid-template-columns:40px minmax(0,1fr); column-gap:var(--s3); align-items:start; }
  .step-n { grid-row:1/3; }
  .step h3 { margin-top:4px; font-size:var(--body); }
  .step p { grid-column:2; margin-top:var(--s1); }
  .guides { grid-template-columns:minmax(0,1fr); margin-top:48px; }
  .guide { padding:var(--s4); gap:var(--s3); }
  .guide>svg { width:16px; }
  .qa { padding:var(--s1) var(--s4); }
  .cta { padding:88px 0; }
  .cta p:not(.eyebrow) { font-size:var(--body); }
  .cta-b { gap:var(--s2); margin-top:var(--s5); }
  .cta-b .pill { padding:var(--s2) 20px; font-size:var(--small); }
  .foot { padding:56px 0 var(--s5); }
  .foot-g { grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s5) var(--s4); }
  .foot-b { grid-column:1/-1; }
  .foot-x { margin-top:40px; }
  .foot-b .mail-l { font-size:var(--micro); }
  .page-hero { padding:48px 0 40px; }
  .login-layout { padding-top:48px; gap:var(--s5); }
  .case-entry-surface { padding:var(--s4); }
  .login-story h1 { font-size:var(--h1); line-height:1.28; }
  .desk-wrap { padding-top:40px; }
  .desk-alias,.desk-archive,.surface-safety { padding:var(--s4); }
  .alias-compose { display:grid; grid-template-columns:minmax(0,1fr); }
  .alias-input { flex-direction:column; align-items:stretch; }
  .alias-suffix { align-self:flex-end; }
  .alias-row { grid-template-columns:minmax(0,1fr); }
  .alias-actions { justify-content:flex-start; }
  .archive-row { grid-template-columns:minmax(0,1fr); }
  .archive-meta { justify-content:flex-start; }
  .archive-detail { padding:var(--s3); }
  .twofa-idle { flex-direction:column; gap:var(--s4); }
  [data-twofa-start] { align-self:flex-start; }
  .security-scan-layout { grid-template-columns:minmax(0,1fr); }
  .twofa-qr { justify-self:start; }
  .twofa-actions { align-items:center; }
  .twofa-actions input { flex:1; width:140px; }
  .twofa-actions button { font-size:var(--small); padding-left:var(--s3); padding-right:var(--s3); }
  .article-wrap { width:calc(100% - 32px); }
  .post-grid { grid-template-columns:minmax(0,1fr); }
  .recommend-float { right:var(--s3); bottom:var(--s3); }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none !important; transition:none !important; }
}

/* Access and workspace extensions share the confirmed home tokens. */
.case-access { min-height:760px; }
.access-card-head { display:grid; justify-items:start; gap:var(--s3); }
.access-card-head h2 { letter-spacing:-.02em; }
.access-card-head>p { font-size:var(--small); color:var(--ink2); }
.access-glyph { width:48px; height:48px; display:grid; place-items:center; border:1px solid var(--line-strong); border-radius:var(--r1); background:var(--paper); color:var(--pine); }
.access-glyph svg { width:24px; height:24px; }
.access-route { display:flex; align-items:center; gap:var(--s3); margin-top:var(--s5); padding:var(--s4); border:1px solid var(--line); border-radius:var(--r2); background:var(--soft); color:var(--ink); }
.access-route strong { font-size:var(--small); font-weight:500; }
.access-route p { font-size:var(--small); margin-top:4px; }
.access-route-mark { display:grid; place-items:center; width:40px; height:40px; flex:none; color:var(--jade-ink); }
.access-route-mark svg { width:28px; height:28px; }
.login-story .access-return { margin-top:var(--s5); font-size:var(--small); }
.access-return a { color:var(--jade-ink); text-decoration:underline; text-underline-offset:4px; }
.case-entry-surface .login-pane>form { margin-top:0; }
.login-delivery-note { padding:var(--s2) var(--s3); border:1px solid var(--line); border-radius:var(--r1); background:var(--paper); color:var(--ink2); font-size:var(--small); overflow-wrap:anywhere; }
.login-delivery-note strong { color:var(--ink); font-weight:500; }
.access-secondary-actions { display:flex; align-items:center; flex-wrap:wrap; gap:var(--s2); }
.access-secondary-actions .sm { min-height:44px; background:var(--paper); color:var(--ink); border:1px solid var(--line-strong); }
.access-secondary-actions .sm:hover { background:var(--soft2); color:var(--ink); }
.access-boundary { margin-top:var(--s5); padding-top:var(--s4); border-top:1px solid var(--line); font-size:var(--micro); line-height:1.7; color:var(--ink2); }
.access-authenticator-help { font-size:var(--small); color:var(--ink2); }
.access-error { margin-top:var(--s4); padding:var(--s2) var(--s3); border:1px solid var(--line-strong); border-radius:var(--r1); background:var(--paper); color:var(--ink); }
.otp-input { font-family:var(--mono); letter-spacing:.22em; }
.case-workspace { max-width:var(--wrap); }
.case-workspace .desk-session { margin-bottom:var(--s5); }
.session-summary { display:flex; align-items:center; gap:var(--s3); min-width:0; }
.session-caption { color:var(--ink2); font-size:var(--micro); }
.session-indicator { width:9px; height:9px; flex:none; border-radius:var(--rp); background:var(--jade); box-shadow:0 0 0 5px var(--jade-ring); }
.session-controls { display:flex; align-items:center; flex-wrap:wrap; gap:var(--s3); }
.workspace-notice { padding:var(--s3) var(--s4); margin-bottom:var(--s4); border:1px solid var(--line-strong); border-radius:var(--r1); background:var(--soft2); color:var(--ink); font-size:var(--small); }
.case-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--s5); }
.case-section-head>div { min-width:0; }
.case-section-head h1 { font-size:var(--display); line-height:1.4; font-weight:500; letter-spacing:-.02em; }
.case-section-head .eyebrow,.surface-safety .eyebrow { margin-bottom:20px; }
.desk-intro { margin-top:20px; max-width:760px; font-size:var(--small); color:var(--ink2); }
.case-section-icon { display:grid; place-items:center; flex:none; width:64px; height:64px; border-radius:var(--r2); background:var(--soft2); color:var(--pine); }
.case-section-icon svg { width:32px; height:32px; }
.alias-field-help { margin-top:var(--s2); font-size:var(--micro); color:var(--ink2); }
.alias-identity { display:flex; align-items:center; flex-wrap:wrap; gap:var(--s2); min-width:0; }
.alias-identity .alias-address { min-width:0; }
.alias-actions .sm { font-size:var(--micro); }
.case-workspace .desk-alias { padding:40px; }
.case-workspace .desk-archive { padding:40px; }
.case-workspace .empty-state { margin-top:var(--s5); margin-bottom:0; }
.case-workspace .archive-empty-state { width:100%; background:var(--paper); color:var(--ink); }
.alias-stats-panel { margin-top:var(--s5); padding:var(--s4); border:1px solid var(--line); border-radius:var(--r1); background:var(--soft); color:var(--ink); }
.alias-stats-panel h2 { font-size:var(--h3); }
.stats-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s3); }
.stats-metrics>div { padding:var(--s3); border:1px solid var(--line); border-radius:var(--r1); background:var(--paper); color:var(--ink); }
.stats-metrics dt { font-size:var(--micro); color:var(--ink2); }
.stats-metrics dd { font-size:var(--display); font-family:var(--mono); line-height:1.4; }
.stats-sender-label { margin-top:var(--s4); font-size:var(--small); font-weight:500; }
.stats-senders { margin-top:var(--s2); font-size:var(--small); color:var(--ink2); overflow-wrap:anywhere; }
.stats-senders li+li { margin-top:var(--s1); }
.archive-row>span { min-width:0; }
.archive-row strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.archive-row:hover { background:var(--soft2); color:var(--ink); border-color:var(--line-strong); }
.archive-row small { display:block; margin-top:4px; }
.archive-reader-actions { display:flex; align-items:center; justify-content:space-between; gap:var(--s2); margin-bottom:var(--s4); }
.archive-reader-actions .sm { flex:none; align-self:center; }
.archive-detail-head>div { min-width:0; }
.archive-sender { margin-top:var(--s2); font-size:var(--small); color:var(--ink2); overflow-wrap:anywhere; }
.archive-time { font-size:var(--micro); color:var(--ink3); }
.archive-body { min-width:0; max-width:100%; min-height:240px; max-height:640px; overflow:auto; background:var(--paper); color:var(--ink); }
.archive-attachments { display:flex; align-items:center; flex-wrap:wrap; gap:var(--s2); margin-top:var(--s4); padding-top:var(--s4); border-top:1px solid var(--line); }
.attachment-download { height:auto; max-width:100%; min-height:40px; padding:var(--s2) var(--s3); white-space:normal; overflow-wrap:anywhere; }
.twofa-idle>div { min-width:0; }
.surface-safety .desk-intro { max-width:760px; }
.security-instructions strong { font-size:var(--small); font-weight:500; }
.security-instructions p { margin-top:var(--s1); font-size:var(--small); color:var(--ink2); }
.twofa-disable-panel { margin-top:var(--s4); font-size:var(--small); color:var(--ink2); }
.twofa-disable-panel .twofa-actions { margin-top:var(--s3); }
.twofa-actions input { min-height:48px; }
.twofa-actions .sm { flex:none; }
.row { position:relative; padding-right:24px; }
.row-content,.row-t,.row-s,.row-p { display:block; }
.row-t { display:flex; align-items:center; }
.row-sender { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.row time { align-self:center; }
.unread-dot { position:absolute; left:10px; top:50%; width:5px; height:5px; border-radius:var(--rp); background:var(--jade); transform:translateY(-50%); }
.mail-list.empty-host { flex:1; }
.reader-empty-host { min-height:240px; height:100%; }
.read:has(.reader-empty-host) { grid-template-rows:auto minmax(0,1fr); }
.cid-notice { margin-bottom:var(--s3); padding:var(--s2) var(--s3); border:1px solid var(--line); border-radius:var(--r1); background:var(--soft); color:var(--ink2); font-size:var(--small); }
.address-focus .bar { box-shadow:inset 0 0 0 2px var(--jade); }
.live { border:0; background:transparent; font-family:var(--sans); cursor:pointer; }
.bar .addr { text-overflow:clip; }
.mail-frame { min-width:0; max-width:100%; }
.modal .mail-text { margin-top:var(--s4); max-height:55dvh; overflow:auto; padding:var(--s3); border:1px solid var(--line); border-radius:var(--r1); background:var(--soft); color:var(--ink); }
@media (max-width:1100px) {
  .case-access { min-height:0; }
  .login-story { max-width:680px; }
  .case-entry-surface { max-width:680px; width:100%; }
}
@media (max-width:860px) {
  body.reader-open .top { visibility:visible; z-index:50; }
  body.archive-reader-open { overflow:hidden; }
  .read.mobile-reader { border-radius:0; }
  .archive-mobile-reader { display:flex; flex-direction:column; position:fixed; inset:0; z-index:110; width:100%; height:100dvh; max-height:100dvh; margin:0; padding:var(--header-h) 0 0; border:0; border-radius:0; overflow-y:auto; background:var(--paper); color:var(--ink); transform:none; animation:none; }
  .archive-mobile-reader .archive-reader-actions { position:sticky; top:0; z-index:3; margin:0; padding:var(--s2) var(--s3); border-bottom:1px solid var(--line); background:var(--paper); color:var(--ink); }
  .archive-mobile-reader .archive-detail-head { margin:0; padding:var(--s4) var(--s3); }
  .archive-mobile-reader .archive-body { flex:1 0 auto; min-height:320px; max-height:none; overflow:visible; padding:0 var(--s3) var(--s4); }
  .archive-mobile-reader .archive-attachments { margin:var(--s3); }
}
@media (max-width:720px) {
  .alias-row { grid-template-columns:minmax(0,1fr); }
  .alias-identity { display:grid; justify-items:start; }
  .alias-address { width:100%; overflow-wrap:anywhere; }
  .archive-row { grid-template-columns:minmax(0,1fr); gap:var(--s2); }
  .archive-meta { flex-wrap:wrap; }
  .case-workspace .desk-alias,.case-workspace .desk-archive { padding:var(--s4); }
  .alias-compose { display:grid; grid-template-columns:minmax(0,1fr); }
  .alias-input { flex-direction:column; align-items:stretch; }
  .alias-suffix { align-self:flex-end; }
}
@media (max-width:560px) {
  .case-access { gap:40px; }
  .login-story h1 { font-size:var(--h2); }
  .access-route { padding:var(--s3); }
  .case-entry-surface { padding:var(--s4); }
  .access-boundary { margin-top:var(--s4); }
  .case-section-icon { display:none; }
  .case-section-head h1,.case-section-head h2 { font-size:var(--display); }
  .case-workspace .desk-session { align-items:flex-start; gap:var(--s4); }
  .session-controls { gap:var(--s2); }
  .stats-metrics { gap:var(--s1); }
  .stats-metrics>div { padding:var(--s2); }
  .stats-metrics dd { font-size:var(--h3); }
  .case-workspace .alias-stats-panel { padding:var(--s3); }
  .twofa-actions { align-items:center; }
  .twofa-actions input { min-width:100px; }
  .twofa-actions button { white-space:normal; }
  .security-scan-layout { gap:var(--s4); }
  .archive-reader-actions .sm { max-width:48%; white-space:normal; height:auto; min-height:40px; padding:var(--s2) var(--s3); }
  .case-workspace .surface-safety { margin-top:var(--s5); }
}


/* Missing chrome components use the existing home tokens. */
.hero-actions {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:var(--s2);
}
.tg-fwd {
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.stage-temp {
  min-width:0;
}
.reader-letterhead {
  min-width:0;
}
.reveal {
  opacity:1;
}
.brand-name {
  display:inline-block;
  flex:none;
  white-space:nowrap;
  color:var(--ink);
}
.footer-column-heading {
  display:block;
  font-size:var(--small);
  font-weight:600;
  color:var(--ink);
}
.status-pill.is-paused {
  background:var(--soft2);
  color:var(--ink2);
  border:1px solid var(--line-strong);
}
.identity-suffix {
  border-radius:0 var(--rp) var(--rp) 0;
}
[data-reader]:not(.mobile-reader) [data-reader-close] {
  display:none;
}
[data-site-nav] a {
  white-space:nowrap;
}
[data-site-nav] a[aria-current="page"] {
  background:var(--jade-tint);
  color:var(--ink);
  border-radius:var(--rp);
  padding:4px var(--s2);
}
html[lang="zh"] h1 {
  text-wrap:balance;
}
html[lang="zh"] h2 {
  text-wrap:balance;
}
header {
  position:sticky;
  top:0;
  z-index:100;
}
.section-head {
  margin-bottom:40px;
}
.content-head {
  margin-bottom:40px;
}
.custom-select {
  margin-block:var(--s3);
}
[data-filter-trigger]:not(.filter-trigger) {
  display:inline-flex;
  align-items:center;
  gap:var(--s2);
  min-height:40px;
  margin-block:var(--s3);
  padding:var(--s1) var(--s3);
  border:1px solid var(--line-strong);
  border-radius:var(--rp);
  background:var(--paper);
  color:var(--ink);
  font-size:var(--small);
  line-height:1.35;
}
[data-twofa-confirm-form]:not(.twofa-actions) [data-twofa-confirm] {
  margin-top:var(--s4);
}
.twofa-actions [data-twofa-confirm] {
  margin-top:0;
}
.archive-detail iframe {
  min-width:0;
  max-width:100%;
}
[data-reader-body] div:has(>svg):has(>div) {
  align-items:flex-start;
}
[data-reader-body] div:has(>svg):has(>span) {
  align-items:flex-start;
}
[data-lang-trigger] .chevron {
  position:absolute;
  top:50%;
  right:16px;
  transform:translateY(calc(-50% - .14em)) rotate(45deg);
}
@media (max-width:560px) {
  .nav-r .lang-trigger .chevron {
    right:6px;
  }
}


.top {
  position: sticky;
  top: 0;
  z-index: 100;
}

.mail-top {
  align-items: flex-start;
}

.brand .brand-name,
.footer-brand .brand-name {
  display: inline-block;
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  overflow: visible;
  white-space: nowrap;
  text-indent: 0;
  clip-path: none;
}


/* Privacy notice extends the confirmed home surfaces and type scale. */
.privacy-hero {
  padding-bottom:var(--s7);
}
.privacy-hero h1 {
  max-width:1000px;
  margin-inline:auto;
}
.privacy-hero .section-intro {
  max-width:760px;
  font-size:var(--body);
  line-height:1.85;
}
.privacy-policy-meta {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:var(--s3);
  margin-top:var(--s4);
  font-size:var(--micro);
  color:var(--ink3);
}
.privacy-legal-glance {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--s4);
  margin-top:var(--s6);
  text-align:left;
}
.privacy-glance-card {
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.privacy-glance-index {
  font-size:var(--micro);
  color:var(--ink2);
}
.privacy-glance-card h2 {
  margin-top:var(--s4);
  font-size:var(--h3);
  line-height:1.5;
  font-weight:500;
  letter-spacing:-.02em;
}
.privacy-glance-number {
  margin-top:var(--s4);
  font-size:var(--h2);
  line-height:1.35;
  font-weight:500;
  letter-spacing:-.02em;
  color:var(--pine);
}
.privacy-glance-number span {
  font-size:var(--small);
  font-weight:400;
  letter-spacing:0;
  color:var(--ink2);
}
.privacy-glance-card>p:not(.privacy-glance-number) {
  margin-top:var(--s3);
  font-size:var(--small);
  line-height:1.8;
  color:var(--ink2);
}
.privacy-glance-card>a {
  display:inline-block;
  margin-top:var(--s5);
  font-size:var(--small);
  line-height:1.6;
  color:var(--jade-ink);
  text-underline-offset:4px;
}
.privacy-glance-card>a:hover {
  text-decoration:underline;
}
.privacy-layout {
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  gap:80px;
  align-items:start;
  padding-bottom:var(--s7);
}
.privacy-directory {
  position:sticky;
  top:calc(var(--header-h) + var(--s5));
  min-width:0;
  padding:var(--s4);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
}
.privacy-directory-title {
  font-size:var(--small);
  font-weight:500;
}
.privacy-directory ol {
  margin-top:var(--s4);
  padding-left:20px;
  font-size:var(--small);
  color:var(--ink2);
}
.privacy-directory li+li {
  margin-top:var(--s2);
}
.privacy-directory a {
  overflow-wrap:anywhere;
}
.privacy-directory a:hover {
  color:var(--jade-ink);
  text-decoration:underline;
  text-underline-offset:4px;
}
.privacy-directory-note {
  margin-top:var(--s5);
  font-size:var(--micro);
  line-height:1.8;
  color:var(--ink2);
}
.privacy-directory-link {
  display:block;
  margin-top:var(--s3);
  font-size:var(--micro);
  color:var(--jade-ink);
}
.privacy-prose {
  min-width:0;
  max-width:100%;
  line-height:1.9;
}
.privacy-prose h2 {
  margin:20px 0 var(--s4);
  font-size:var(--display);
  line-height:1.45;
  font-weight:500;
  letter-spacing:-.02em;
  color:var(--ink);
}
.privacy-prose h3 {
  margin:var(--s5) 0 var(--s3);
  font-size:var(--h3);
  line-height:1.5;
  font-weight:500;
  color:var(--ink);
}
.privacy-prose strong {
  color:var(--ink);
  font-weight:500;
}
.privacy-section {
  min-width:0;
  scroll-margin-top:calc(var(--header-h) + var(--s5));
}
.privacy-section+.privacy-section {
  margin-top:var(--s6);
}
.privacy-table-scroll {
  margin-top:var(--s4);
  margin-bottom:var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r1);
  background:var(--paper);
  color:var(--ink2);
}
.privacy-data-table {
  min-width:620px;
  font-size:var(--small);
  line-height:1.75;
}
.privacy-data-table caption {
  padding:var(--s3);
  background:var(--soft);
  color:var(--ink2);
  font-size:var(--micro);
  text-align:left;
  caption-side:top;
}
.privacy-data-table th {
  background:var(--soft2);
  color:var(--ink);
}
.privacy-data-table tbody th {
  width:24%;
  background:var(--paper);
  color:var(--ink);
}
.privacy-data-table th,.privacy-data-table td {
  padding:var(--s3);
  border-color:var(--line);
}
.privacy-data-table tbody tr:last-child th,.privacy-data-table tbody tr:last-child td {
  border-bottom:0;
}
.privacy-note {
  margin:var(--s5) 0;
  padding:var(--s4);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.privacy-note h3 {
  margin:0 0 var(--s2);
  font-size:var(--body);
}
.privacy-note p {
  font-size:var(--small);
  color:var(--ink2);
}
.privacy-control-list li+li {
  margin-top:var(--s3);
}
.privacy-action-list {
  display:grid;
  gap:var(--s3);
  margin:var(--s4) 0 var(--s5);
}
.privacy-action-list>div {
  min-width:0;
  padding:var(--s4);
  border:1px solid var(--line);
  border-radius:var(--r1);
  background:var(--paper);
  color:var(--ink2);
}
.privacy-action-list dt {
  font-size:var(--body);
  font-weight:500;
  color:var(--ink);
}
.privacy-action-list dd {
  margin-top:var(--s1);
  font-size:var(--small);
  line-height:1.8;
}
.privacy-contact-card {
  margin:var(--s4) 0 var(--s5);
  padding:var(--s5);
  border-radius:var(--r2);
  background:var(--soft2);
  color:var(--ink);
}
.privacy-contact-card h3 {
  margin:0 0 var(--s3);
}
.privacy-contact-card ol {
  margin:0 0 var(--s5);
  padding-left:var(--s4);
  font-size:var(--small);
  color:var(--ink2);
}
.privacy-contact-card li+li {
  margin-top:var(--s2);
}
.privacy-contact-card .pill {
  max-width:100%;
  height:auto;
  min-height:48px;
  padding:var(--s2) var(--s4);
  white-space:normal;
  background:var(--ink);
  color:var(--paper);
  text-decoration:none;
}
.privacy-contact-card .pill:hover {
  background:var(--pine-hover);
  color:var(--paper);
}
.privacy-ending {
  margin-top:var(--s6);
  padding:var(--s5);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
  text-align:center;
}
.privacy-ending>p {
  font-size:var(--h3);
  font-weight:500;
}
.privacy-ending .actions {
  margin-top:var(--s4);
  justify-content:center;
}
.privacy-ending .pill {
  max-width:100%;
  height:auto;
  min-height:48px;
  padding:var(--s2) var(--s4);
  white-space:normal;
}
@media (max-width:860px) {
  .privacy-hero {
    padding-top:var(--s6);
    padding-bottom:var(--s6);
  }
  .privacy-legal-glance {
    gap:var(--s3);
    margin-top:40px;
  }
  .privacy-glance-card {
    padding:var(--s4);
  }
  .privacy-glance-number {
    font-size:var(--display);
  }
  .privacy-layout {
    grid-template-columns:minmax(0,1fr);
    gap:48px;
  }
  .privacy-directory {
    position:static;
  }
  .privacy-directory ol {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--s2) var(--s5);
    padding-left:20px;
  }
  .privacy-directory li+li {
    margin-top:0;
  }
  .privacy-directory-note {
    margin-top:var(--s4);
  }
  .privacy-prose h2 {
    font-size:var(--display);
  }
  .privacy-prose h3 {
    font-size:var(--h3);
  }
}
@media (max-width:560px) {
  .privacy-hero {
    padding-top:48px;
    padding-bottom:48px;
  }
  .privacy-hero h1 {
    font-size:var(--h2);
    line-height:1.45;
  }
  .privacy-hero h1 br {
    display:none;
  }
  .privacy-legal-glance {
    grid-template-columns:minmax(0,1fr);
  }
  .privacy-glance-card {
    padding:var(--s4);
  }
  .privacy-glance-card h2 {
    margin-top:var(--s3);
  }
  .privacy-glance-number {
    margin-top:var(--s3);
  }
  .privacy-glance-card>a {
    margin-top:var(--s4);
  }
  .privacy-directory ol {
    grid-template-columns:minmax(0,1fr);
  }
  .privacy-prose h2 {
    font-size:var(--display);
    line-height:1.5;
  }
  .privacy-note,.privacy-action-list>div,.privacy-contact-card,.privacy-ending {
    padding:var(--s4);
  }
  .privacy-section+.privacy-section {
    margin-top:48px;
  }
  .privacy-ending .actions {
    align-items:stretch;
    flex-direction:column;
  }
}


/* Terms extend the confirmed home surfaces and type scale. */
.terms-hero { padding-bottom:80px; }
.terms-hero h1 { max-width:960px; margin:0 auto; }
.terms-hero .section-intro { max-width:720px; }
.terms-version { margin-top:var(--s4); font-size:var(--micro); color:var(--ink3); }
.terms-glance.legal-glance { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s4); margin-top:var(--s6); text-align:left; }
.terms-glance-card { display:flex; flex-direction:column; align-items:flex-start; min-width:0; padding:var(--s5); border:1px solid var(--line); border-radius:var(--r2); background:var(--soft); color:var(--ink); }
.terms-glance-card:hover { border-color:var(--line-strong); background:var(--soft2); color:var(--ink); }
.terms-glance-number { font-size:var(--micro); color:var(--jade-ink); }
.terms-glance-card h2 { margin-top:var(--s4); font-size:var(--h3); line-height:1.5; font-weight:500; letter-spacing:-.02em; color:var(--ink); }
.terms-glance-card p { margin-top:var(--s2); font-size:var(--small); color:var(--ink2); }
.terms-glance-link { display:inline-flex; align-items:center; gap:var(--s2); margin-top:auto; padding-top:var(--s4); font-size:var(--micro); font-weight:500; color:var(--jade-ink); }
.terms-layout { padding-top:var(--s4); }
.terms-toc a:hover { text-decoration:underline; text-underline-offset:4px; }
.terms-toc-note { margin-top:var(--s4); font-size:var(--micro); color:var(--ink2); }
.terms-toc-note a { color:var(--jade-ink); text-decoration:underline; text-underline-offset:3px; }
.terms-prose { min-width:0; }
.terms-opening { font-size:var(--body); line-height:1.85; color:var(--ink2); }
.terms-section { margin-top:var(--s6); scroll-margin-top:calc(var(--header-h) + var(--s5)); }
.terms-section-index { margin:0 0 20px; font-size:var(--micro); color:var(--jade-ink); }
.terms-prose h2 { margin:0 0 var(--s4); font-size:var(--display); font-weight:500; line-height:1.4; letter-spacing:-.02em; color:var(--ink); }
.terms-prose h3 { font-size:var(--h3); font-weight:500; line-height:1.5; color:var(--ink); }
.terms-section>p:not(.terms-section-index) { line-height:1.85; }
.terms-boundary-table { margin-top:var(--s5); margin-bottom:var(--s5); border:1px solid var(--line); border-radius:var(--r1); background:var(--paper); color:var(--ink); }
.terms-boundary-table table { min-width:560px; table-layout:fixed; }
.terms-boundary-table caption { padding:var(--s3); text-align:left; font-size:var(--small); font-weight:500; background:var(--paper); color:var(--ink); }
.terms-boundary-table th:first-child { width:25%; }
.terms-boundary-table tbody th { background:var(--paper); color:var(--ink); }
.terms-boundary-table td { color:var(--ink2); overflow-wrap:anywhere; }
.terms-boundary-table tr:last-child th,.terms-boundary-table tr:last-child td { border-bottom:0; }
.terms-use-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s3); margin-top:var(--s5); margin-bottom:var(--s5); }
.terms-use-card { min-width:0; padding:var(--s4); border:1px solid var(--line); border-radius:var(--r2); background:var(--soft); color:var(--ink); }
.terms-use-heading { display:flex; align-items:flex-start; gap:var(--s2); }
.terms-use-symbol { display:grid; place-items:center; width:28px; height:28px; flex:none; border:1px solid var(--line-strong); border-radius:var(--rp); background:var(--paper); color:var(--pine); font-family:var(--mono); font-size:var(--body); line-height:1; }
.terms-use-card .terms-use-heading h3 { margin:0; font-size:var(--body); line-height:1.7; }
.terms-use-card ul { margin:var(--s4) 0 0; padding-left:20px; font-size:var(--small); color:var(--ink2); }
.terms-use-card li+li { margin-top:var(--s3); }
.terms-support { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--s4); margin-top:var(--s5); padding:var(--s4); border:1px solid var(--line); border-radius:var(--r2); background:var(--soft); color:var(--ink); }
.terms-support>div { flex:1 1 240px; min-width:0; }
.terms-support h3 { margin:0; font-size:var(--body); }
.terms-support p { margin-top:var(--s1); font-size:var(--small); color:var(--ink2); }
.terms-support .pill { max-width:100%; white-space:normal; height:auto; padding:var(--s2) var(--s4); }
.terms-end { margin-top:80px; text-align:center; }
.terms-end>p { color:var(--ink2); }
.terms-end .actions { justify-content:center; margin-top:var(--s4); }
.terms-end .pill { max-width:100%; white-space:normal; height:auto; padding:var(--s2) var(--s4); }
.terms-top-link { display:inline-flex; align-items:center; gap:var(--s1); margin-top:var(--s5); font-size:var(--small); }
@media (max-width:860px) {
  .terms-hero { padding-bottom:48px; }
  .terms-glance.legal-glance { gap:var(--s3); margin-top:48px; }
  .terms-glance-card { padding:var(--s4); }
  .terms-layout { padding-top:0; }
  .terms-toc ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s2) var(--s4); }
  .terms-toc li+li { margin-top:0; }
  .terms-section { margin-top:48px; }
  .terms-end { margin-top:var(--s6); }
}
@media (max-width:560px) {
  .terms-hero h1 { font-size:var(--h2); line-height:1.4; }
  .terms-glance.legal-glance { grid-template-columns:minmax(0,1fr); margin-top:var(--s5); }
  .terms-glance-card h2 { margin-top:20px; }
  .terms-glance-link { padding-top:var(--s3); }
  .terms-toc ol { grid-template-columns:minmax(0,1fr); }
  .terms-use-grid { grid-template-columns:minmax(0,1fr); }
  .terms-prose h2 { font-size:var(--display); }
  .terms-support { align-items:flex-start; }
  .terms-support>div { flex-basis:100%; }
}


/* Template preview tutorial surfaces. */
.bench-hero {
  padding-bottom:var(--s7);
}
.bench-hero .eyebrow {
  margin-bottom:20px;
}
.bench-hero .actions {
  justify-content:center;
}
.bench-scope {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--s5);
  margin-top:80px;
  text-align:left;
}
.bench-scope>div {
  min-width:0;
  padding:var(--s4);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.bench-index {
  display:block;
  font-family:var(--mono);
  font-size:var(--micro);
  line-height:1.5;
  color:var(--jade-ink);
  letter-spacing:0;
}
.bench-scope p {
  margin-top:var(--s2);
  font-size:var(--small);
  color:var(--ink2);
}
.bench-scope a,
.bench-prep-list a,
.bench-text-link {
  color:var(--jade-ink);
  text-decoration:underline;
  text-underline-offset:4px;
}
.bench-prep {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
  gap:var(--s5);
  margin-top:var(--s6);
  align-items:start;
}
.bench-prep-sheet {
  min-width:0;
  padding:40px;
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
}
.bench-prep-sheet>h3,
.bench-choice h3,
.bench-review>h3,
.bench-boundary h3,
.bench-record h3,
.bench-scene h3 {
  font-size:var(--h3);
  line-height:1.4;
  font-weight:500;
  letter-spacing:-.01em;
}
.bench-prep-list {
  list-style:none;
  display:grid;
  gap:var(--s5);
  margin-top:var(--s5);
}
.bench-prep-list li {
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  gap:var(--s3);
  align-items:start;
}
.bench-prep-list h4 {
  font-size:var(--body);
  line-height:1.5;
  font-weight:500;
}
.bench-prep-list p {
  margin-top:var(--s1);
  font-size:var(--small);
  color:var(--ink2);
}
.bench-choice-stack {
  display:grid;
  gap:var(--s4);
  min-width:0;
}
.bench-choice {
  padding:var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
  min-width:0;
}
.bench-choice h3 {
  margin-top:var(--s3);
}
.bench-choice>p {
  margin-top:var(--s2);
  color:var(--ink2);
  font-size:var(--small);
}
.bench-note {
  font-size:var(--small);
  line-height:1.7;
  color:var(--ink2);
  padding-top:var(--s3);
}
.bench-text-link {
  display:inline-flex;
  max-width:100%;
  margin-top:var(--s4);
  font-size:var(--small);
  font-weight:500;
}
.bench-run-note {
  display:flex;
  align-items:flex-start;
  gap:var(--s3);
  max-width:880px;
  margin:48px auto 0;
  padding:var(--s4);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink2);
  font-size:var(--small);
}
.bench-run-note svg {
  width:24px;
  height:24px;
  color:var(--jade-ink);
}
.bench-run-note strong {
  font-weight:500;
  color:var(--ink);
}
.bench-reading-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--s4);
  margin-top:var(--s6);
  align-items:stretch;
}
.bench-letter {
  min-width:0;
  overflow:hidden;
  border:1px solid var(--window-line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
  box-shadow:0 20px 48px -36px var(--shadow-window);
}
.bench-letter-caption {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:var(--s2);
  padding:var(--s3) var(--s4);
  background:var(--soft2);
  color:var(--ink2);
  font-size:var(--micro);
}
.bench-envelope {
  display:flex;
  align-items:center;
  gap:var(--s2);
  padding:var(--s4);
  border-bottom:1px solid var(--line);
}
.bench-envelope>div {
  min-width:0;
}
.bench-envelope h3 {
  font-size:var(--body);
  line-height:1.5;
  font-weight:500;
  overflow-wrap:anywhere;
}
.bench-envelope p {
  margin-top:4px;
  font-size:var(--micro);
  color:var(--ink3);
  overflow-wrap:anywhere;
}
.bench-letter .mail {
  max-width:none;
  margin:var(--s4);
}
.bench-letter .mail-top {
  border-radius:var(--r1);
  align-items:center;
}
.bench-letter .mail-in {
  padding:var(--s4) 0 0;
}
.bench-letter .mail-meta {
  grid-template-columns:56px minmax(0,1fr);
}
.bench-letter .mail-meta dd {
  overflow-wrap:anywhere;
}
.bench-letter .code {
  letter-spacing:.12em;
}
.bench-letter-takeaway {
  margin:var(--s4);
  padding-top:var(--s4);
  border-top:1px solid var(--line);
  font-size:var(--small);
  color:var(--ink2);
}
.bench-letter-takeaway strong {
  font-weight:500;
  color:var(--ink);
}
.bench-review {
  margin-top:48px;
  padding:var(--s5);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
}
.bench-review-list {
  display:grid;
  margin-top:var(--s4);
}
.bench-review-list>div {
  display:grid;
  grid-template-columns:160px minmax(0,1fr);
  gap:var(--s4);
  padding:var(--s4) 0;
}
.bench-review-list>div+div {
  border-top:1px solid var(--line);
}
.bench-review-list dt {
  display:flex;
  align-items:baseline;
  gap:var(--s3);
  font-size:var(--body);
  font-weight:500;
}
.bench-review-list dd {
  font-size:var(--small);
  color:var(--ink2);
}
.bench-table-scroll {
  margin-top:var(--s6);
  margin-bottom:0;
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
}
.bench-table {
  min-width:760px;
  table-layout:fixed;
}
.bench-table caption {
  padding:var(--s4);
  text-align:left;
  font-size:var(--small);
  font-weight:500;
  color:var(--ink2);
  background:var(--paper);
}
.bench-table th,
.bench-table td {
  padding:var(--s4);
  line-height:1.75;
  overflow-wrap:anywhere;
}
.bench-table thead th:first-child {
  width:15%;
}
.bench-table tbody th {
  background:var(--paper);
  color:var(--ink);
}
.bench-table td {
  color:var(--ink2);
}
.bench-table tbody tr:last-child th,
.bench-table tbody tr:last-child td {
  border-bottom:0;
}
.bench-boundary {
  max-width:920px;
  margin:48px auto 0;
}
.bench-boundary p {
  margin-top:var(--s3);
  font-size:var(--body);
  color:var(--ink2);
}
.bench-record {
  margin-top:var(--s6);
  padding:40px;
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
}
.bench-record-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:var(--s4);
}
.bench-record-head h3 {
  margin-top:var(--s3);
}
.bench-record-result {
  display:inline-flex;
  padding:var(--s1) var(--s3);
  border:1px solid var(--line-strong);
  border-radius:var(--rp);
  background:var(--soft);
  color:var(--ink2);
  font-size:var(--small);
}
.bench-record-fields {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--s4) var(--s5);
  margin-top:var(--s5);
}
.bench-record-fields>div {
  min-width:0;
}
.bench-record-fields dt {
  font-size:var(--micro);
  color:var(--ink3);
}
.bench-record-fields dd {
  margin-top:4px;
  font-size:var(--small);
  overflow-wrap:anywhere;
}
.bench-record>.bench-note {
  margin-top:var(--s5);
  border-top:1px solid var(--line);
}
.bench-scenes {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--s4);
  margin-top:48px;
}
.bench-scene {
  padding:var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
  min-width:0;
}
.bench-scene h3 {
  margin-top:var(--s4);
}
.bench-scene p {
  margin-top:var(--s2);
  font-size:var(--small);
  color:var(--ink2);
}
.bench-final {
  background:var(--soft);
  color:var(--ink);
  margin-bottom:var(--s6);
}
.bench-final .actions {
  justify-content:center;
}
.bench-final .pill,
.bench-hero .pill {
  max-width:100%;
  height:auto;
  padding-top:var(--s2);
  padding-bottom:var(--s2);
  white-space:normal;
}
@media (max-width:860px) {
  .bench-hero {
    padding-top:var(--s6);
  }
  .bench-scope {
    gap:var(--s3);
    margin-top:48px;
  }
  .bench-scope>div {
    padding:var(--s3);
  }
  .bench-prep {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s4);
    margin-top:40px;
  }
  .bench-prep-sheet,
  .bench-record {
    padding:var(--s5);
  }
  .bench-choice-stack {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .bench-choice {
    padding:var(--s4);
  }
  .bench-reading-grid {
    grid-template-columns:minmax(0,1fr);
    margin-top:40px;
  }
  .bench-letter .mail {
    max-width:520px;
    margin:var(--s4) auto;
    padding-inline:var(--s4);
  }
  .bench-review {
    padding:var(--s4);
  }
  .bench-review-list>div {
    grid-template-columns:128px minmax(0,1fr);
    gap:var(--s3);
  }
  .bench-table-scroll {
    margin-top:40px;
  }
  .bench-table th,
  .bench-table td {
    padding:var(--s3);
  }
  .bench-record {
    margin-top:40px;
  }
  .bench-scenes {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s3);
    margin-top:var(--s5);
  }
  .bench-scene {
    padding:var(--s4);
  }
  .bench-final {
    margin-bottom:var(--s5);
  }
}
@media (max-width:560px) {
  .bench-scope {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s2);
  }
  .bench-hero {
    padding-top:48px;
  }
  .bench-hero h1 {
    font-size:var(--h2);
    line-height:1.4;
  }
  .bench-prep-sheet,
  .bench-choice,
  .bench-record {
    padding:var(--s4);
  }
  .bench-choice-stack {
    grid-template-columns:minmax(0,1fr);
  }
  .bench-prep-list {
    gap:var(--s4);
  }
  .bench-run-note {
    margin-top:var(--s5);
    padding:var(--s3);
    gap:var(--s2);
  }
  .bench-letter-caption,
  .bench-envelope {
    padding:var(--s3);
  }
  .bench-letter .mail {
    margin:var(--s3) 0;
    padding-inline:var(--s3);
  }
  .bench-letter-takeaway {
    margin:var(--s3);
    padding-top:var(--s3);
  }
  .bench-review {
    margin-top:var(--s5);
    padding:var(--s3);
  }
  .bench-review-list>div {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s2);
  }
  .bench-review-list dt {
    gap:var(--s2);
  }
  .bench-boundary {
    margin-top:var(--s5);
  }
  .bench-record-fields {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s3);
  }
  .bench-record-result {
    max-width:100%;
  }
}


/* Arrival evidence page. */
.arrival-hero {
  padding-bottom:var(--s7);
}
.arrival-hero h1 {
  max-width:1000px;
  margin:0 auto;
  font-size:var(--h1);
  line-height:1.28;
}
.arrival-hero .section-intro {
  max-width:740px;
}
.arrival-timing {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--s5);
  max-width:960px;
  margin:80px auto 0;
  padding:var(--s5);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
  text-align:left;
}
.arrival-timing-item {
  min-width:0;
}
.arrival-timing-label {
  display:block;
  margin-bottom:var(--s2);
  font-size:var(--micro);
  font-weight:500;
  color:var(--jade-ink);
}
.arrival-timing-item strong {
  display:block;
  font-size:var(--h3);
  font-weight:500;
  line-height:1.4;
}
.arrival-timing-item p {
  margin-top:var(--s2);
  font-size:var(--small);
  color:var(--ink2);
}
.arrival-evidence-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--s4);
  margin-top:var(--s6);
}
.arrival-evidence-card {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  padding:var(--s5);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
}
.arrival-evidence-card h3 {
  margin-top:var(--s4);
  font-size:var(--h3);
  line-height:1.5;
  font-weight:500;
}
.arrival-evidence-card>p {
  margin-top:var(--s2);
  font-size:var(--small);
  color:var(--ink2);
}
.arrival-evidence-list {
  display:grid;
  gap:var(--s2);
  margin:var(--s4) 0 var(--s5);
  padding-left:18px;
  list-style:disc;
  color:var(--ink2);
  font-size:var(--small);
}
.arrival-text-link {
  display:inline-block;
  max-width:100%;
  color:var(--jade-ink);
  font-size:var(--small);
  font-weight:500;
  text-decoration:underline;
  text-underline-offset:4px;
  overflow-wrap:anywhere;
}
.arrival-text-link:hover {
  color:var(--ink);
}
.arrival-evidence-card>.arrival-text-link {
  margin-top:auto;
}
.arrival-workbench {
  margin-top:var(--s6);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
  box-shadow:0 24px 56px -40px var(--shadow-window);
  overflow:hidden;
}
.arrival-workbench-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--s4);
  padding:var(--s5);
  background:var(--soft);
  color:var(--ink);
}
.arrival-workbench-head>div {
  min-width:0;
  max-width:720px;
}
.arrival-workbench-head p {
  margin-top:var(--s3);
  color:var(--ink2);
  font-size:var(--small);
}
.arrival-workbench-head>svg {
  width:40px;
  height:40px;
  color:var(--jade-ink);
}
.arrival-form {
  padding:var(--s5);
}
.arrival-question-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--s5);
}
.arrival-question {
  min-width:0;
  border:0;
}
.arrival-question legend {
  display:block;
  width:100%;
  padding:0;
  font-size:var(--body);
  font-weight:600;
  line-height:1.5;
}
.arrival-question>p {
  min-height:48px;
  margin-top:var(--s2);
  color:var(--ink2);
  font-size:var(--small);
}
.arrival-options {
  display:grid;
  gap:var(--s2);
  margin-top:var(--s4);
}
.arrival-option {
  display:flex;
  align-items:flex-start;
  gap:var(--s2);
  min-height:52px;
  padding:var(--s2);
  border:1px solid var(--line);
  border-radius:var(--r1);
  background:var(--paper);
  color:var(--ink2);
  cursor:pointer;
  font-size:var(--small);
  line-height:1.6;
}
.arrival-option input {
  flex:none;
  width:16px;
  height:16px;
  margin-top:3px;
  accent-color:var(--jade-ink);
  cursor:pointer;
}
.arrival-option span {
  min-width:0;
  overflow-wrap:anywhere;
}
.arrival-option:hover {
  border-color:var(--line-strong);
  background:var(--soft);
  color:var(--ink);
}
.arrival-option:has(input:checked) {
  border-color:var(--jade);
  background:var(--jade-tint);
  color:var(--ink);
}
.arrival-option:has(input:focus-visible) {
  outline:2px solid var(--ink);
  outline-offset:3px;
}
.arrival-form-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s2);
  margin-top:40px;
}
.arrival-form-actions p {
  margin-left:var(--s2);
  color:var(--ink3);
  font-size:var(--micro);
}
.arrival-result {
  margin:0 var(--s5) var(--s5);
  padding:var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r1);
  background:var(--soft);
  color:var(--ink);
  scroll-margin-top:calc(var(--header-h) + var(--s4));
}
.arrival-result h3 {
  margin-top:var(--s4);
  font-size:var(--h3);
  line-height:1.5;
  font-weight:500;
}
.arrival-result>p {
  max-width:880px;
  margin-top:var(--s2);
  font-size:var(--body);
  color:var(--ink2);
}
.arrival-result-steps {
  display:grid;
  gap:var(--s2);
  margin:var(--s4) 0 0;
  padding-left:22px;
  font-size:var(--small);
  color:var(--ink2);
}
.arrival-result>.arrival-text-link {
  margin-top:var(--s4);
}
.arrival-state-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--s4);
  margin-top:var(--s6);
}
.arrival-state-card {
  min-width:0;
  padding:var(--s5);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
}
.arrival-state-card h3 {
  margin-top:var(--s3);
  font-size:var(--h3);
  line-height:1.5;
  font-weight:500;
}
.arrival-state-card>p {
  margin-top:var(--s2);
  color:var(--ink2);
}
.arrival-state-card dl {
  display:grid;
  grid-template-columns:84px minmax(0,1fr);
  gap:var(--s2) var(--s3);
  margin-top:var(--s4);
  font-size:var(--small);
}
.arrival-state-card dt {
  font-weight:500;
  color:var(--ink);
}
.arrival-state-card dd {
  color:var(--ink2);
}
.arrival-section-note {
  max-width:880px;
  margin:var(--s5) auto 0;
  color:var(--ink2);
  font-size:var(--small);
  text-align:center;
}
.arrival-split {
  display:grid;
  grid-template-columns:minmax(0,4fr) minmax(0,7fr);
  align-items:start;
  gap:96px;
}
.arrival-section-heading {
  min-width:0;
}
.arrival-section-heading .section-intro {
  font-size:var(--body);
  margin-left:0;
}
.arrival-section-heading>.arrival-text-link {
  margin-top:var(--s5);
}
.arrival-retest-list {
  display:grid;
  gap:var(--s5);
  list-style:none;
}
.arrival-retest-list li {
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  gap:var(--s4);
  align-items:start;
}
.arrival-retest-list h3 {
  margin-top:4px;
  font-size:var(--h3);
  line-height:1.5;
  font-weight:500;
}
.arrival-retest-list p {
  margin-top:var(--s2);
  color:var(--ink2);
}
.arrival-record-surface {
  margin-top:var(--s6);
  padding:var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
}
.arrival-record-surface .table-scroll {
  margin-top:0;
}
.arrival-record-surface table {
  min-width:680px;
}
.arrival-record-surface th:first-child {
  width:22%;
}
.arrival-record-surface tbody th {
  background:var(--paper);
  color:var(--ink);
}
.arrival-record-surface td {
  color:var(--ink2);
}
.arrival-table-caption {
  padding-bottom:var(--s4);
  text-align:left;
  font-size:var(--small);
  color:var(--ink2);
}
.arrival-record-note {
  padding:var(--s4);
  border-radius:var(--r1);
  background:var(--soft);
  color:var(--ink);
}
.arrival-record-note strong {
  font-size:var(--body);
  font-weight:500;
}
.arrival-record-note p {
  margin-top:var(--s2);
  color:var(--ink2);
  font-size:var(--small);
}
.arrival-record-note a {
  color:var(--jade-ink);
  text-decoration:underline;
  text-underline-offset:3px;
}
.arrival-final {
  padding-top:var(--s6);
}
.arrival-final .cta-b .pill {
  max-width:100%;
  height:auto;
  padding-block:var(--s2);
  white-space:normal;
}
@media (max-width:860px) {
  .arrival-timing {
    margin-top:var(--s6);
    gap:var(--s4);
  }
  .arrival-evidence-grid {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s3);
  }
  .arrival-evidence-card {
    padding:var(--s5);
  }
  .arrival-question-grid {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s5);
  }
  .arrival-question>p {
    min-height:0;
  }
  .arrival-options {
    margin-top:var(--s3);
  }
  .arrival-form-actions p {
    flex-basis:100%;
    margin:var(--s1) 0 0;
  }
  .arrival-state-card {
    padding:var(--s4);
  }
  .arrival-state-card dl {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s1);
  }
  .arrival-state-card dd+dt {
    margin-top:var(--s2);
  }
  .arrival-split {
    grid-template-columns:minmax(0,1fr);
    gap:48px;
  }
  .arrival-section-heading {
    max-width:680px;
  }
  .arrival-record-surface {
    padding:var(--s4);
  }
}
@media (max-width:560px) {
  .arrival-timing {
    grid-template-columns:minmax(0,1fr);
    padding:var(--s4);
    gap:var(--s5);
    margin-top:48px;
  }
  .arrival-hero .actions {
    gap:var(--s2);
    margin-top:var(--s5);
  }
  .arrival-hero .actions .pill {
    min-height:48px;
    max-width:100%;
    height:auto;
    padding:var(--s2) var(--s3);
    font-size:var(--small);
    white-space:normal;
  }
  .arrival-evidence-grid,
  .arrival-state-grid,
  .arrival-workbench,
  .arrival-record-surface {
    margin-top:40px;
  }
  .arrival-evidence-card {
    padding:var(--s4);
  }
  .arrival-workbench-head {
    padding:var(--s4);
    align-items:flex-start;
  }
  .arrival-workbench-head>svg {
    width:28px;
    height:28px;
  }
  .arrival-form {
    padding:var(--s4);
  }
  .arrival-form-actions {
    margin-top:var(--s5);
  }
  .arrival-form-actions .pill {
    padding:var(--s2) var(--s3);
    font-size:var(--small);
    max-width:100%;
    height:auto;
    white-space:normal;
  }
  .arrival-result {
    margin:var(--s1) var(--s4) var(--s4);
    padding:var(--s4);
  }
  .arrival-result>p {
    font-size:var(--small);
  }
  .arrival-state-grid {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s3);
  }
  .arrival-retest-list li {
    gap:var(--s3);
  }
  .arrival-retest-list h3 {
    font-size:var(--body);
  }
  .arrival-record-surface {
    padding:var(--s3);
  }
  .arrival-record-note {
    padding:var(--s3);
  }
  .arrival-final {
    padding-top:40px;
  }
}




/* Notebook index and long-form reading surfaces. */
.notebook-index {
  padding-bottom:var(--s7);
}
.notebook-hero {
  padding-top:96px;
  padding-bottom:var(--s6);
}
.notebook-hero .eyebrow {
  margin-bottom:20px;
}
.notebook-hero h1 {
  max-width:960px;
  margin-inline:auto;
  font-size:var(--h1);
  font-weight:500;
  line-height:1.28;
  letter-spacing:-.02em;
  color:var(--black);
}
.notebook-hero .section-intro {
  max-width:720px;
  margin-top:20px;
  font-size:var(--body);
  line-height:1.85;
}
.notebook-count {
  display:flex;
  width:fit-content;
  max-width:100%;
  margin-top:var(--s4);
  background:var(--soft2);
  color:var(--ink2);
}
.notebook-hero.centered .notebook-count {
  margin-inline:auto;
}
.notebook-list-section {
  min-width:0;
}
.notebook-post-grid {
  margin-top:0;
  gap:var(--s5);
  align-items:stretch;
}
.notebook-post-card {
  min-width:0;
  height:100%;
  padding:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
  transition:border-color .18s,box-shadow .18s;
}
.notebook-post-card:hover {
  border-color:var(--line-strong);
  background:var(--paper);
  color:var(--ink);
  box-shadow:0 24px 48px -36px var(--shadow-window);
}
.notebook-card-art {
  display:grid;
  place-items:center;
  padding:var(--s4);
  background:var(--soft);
  color:var(--pine);
}
.notebook-card-art svg {
  display:block;
  width:100%;
  height:200px;
}
.notebook-svg-paper {
  fill:var(--paper);
  stroke:var(--line-strong);
  stroke-width:1;
}
.notebook-svg-line {
  stroke:var(--line-strong);
  stroke-width:1;
  stroke-linecap:round;
}
.notebook-svg-accent {
  fill:var(--jade);
}
.notebook-svg-muted {
  fill:var(--line-strong);
}
.notebook-svg-soft {
  fill:var(--soft2);
}
.notebook-svg-trace {
  stroke:var(--jade-ink);
  stroke-width:1.4;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.notebook-card-copy {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  flex:1;
  min-width:0;
  padding:var(--s5);
}
.notebook-post-card .badge {
  max-width:100%;
  background:var(--soft2);
  color:var(--ink2);
  white-space:normal;
}
.notebook-post-card h2 {
  margin:var(--s4) 0 0;
  font-size:var(--display);
  font-weight:500;
  line-height:1.45;
  letter-spacing:-.02em;
  overflow-wrap:anywhere;
  color:var(--ink);
}
.notebook-card-copy>p {
  margin-top:var(--s3);
  font-size:var(--body);
  font-weight:400;
  line-height:1.85;
  color:var(--ink2);
}
.notebook-card-meta {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s2) var(--s4);
  margin-top:var(--s4);
  font-size:var(--micro);
  line-height:1.6;
  color:var(--ink3);
}
.notebook-post-card .notebook-card-meta time {
  margin:0;
  font-size:var(--micro);
  color:var(--ink3);
}
.notebook-card-open {
  display:flex;
  align-items:center;
  gap:var(--s2);
  margin-top:auto;
  padding-top:var(--s5);
  font-size:var(--small);
  font-weight:500;
  line-height:1.6;
  color:var(--jade-ink);
}
.notebook-card-open svg {
  width:20px;
  height:20px;
}
.notebook-post-card:hover .notebook-card-open {
  color:var(--ink);
}
.notebook-article-hero {
  padding-top:var(--s6);
  padding-bottom:var(--s6);
}
.notebook-crumbs {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s2);
  margin:0 0 var(--s5);
  font-size:var(--small);
  line-height:1.6;
  color:var(--ink2);
}
.notebook-crumbs a {
  text-decoration:underline;
  text-underline-offset:4px;
}
.notebook-crumbs a:hover {
  color:var(--jade-ink);
}
.notebook-crumbs svg {
  width:12px;
  height:12px;
  color:var(--ink3);
}
.notebook-crumbs [aria-current="page"] {
  min-width:0;
  overflow-wrap:anywhere;
  color:var(--ink);
}
.notebook-article-hero .eyebrow {
  margin:0 0 20px;
}
.notebook-article-hero h1 {
  max-width:1080px;
  margin:0;
  font-size:var(--h1);
  font-weight:500;
  line-height:1.3;
  letter-spacing:-.02em;
  color:var(--black);
  overflow-wrap:anywhere;
}
.notebook-article-hero .section-intro {
  max-width:850px;
  margin:20px 0 0;
  font-size:var(--h3);
  line-height:1.7;
  color:var(--ink2);
}
.notebook-article-meta {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s2) var(--s3);
  margin-top:var(--s5);
  font-size:var(--small);
  line-height:1.6;
  color:var(--ink2);
}
.notebook-article-meta .badge {
  margin:0;
  max-width:100%;
  white-space:normal;
  background:var(--soft2);
  color:var(--ink2);
}
.notebook-reading-shell {
  width:min(var(--wrap), calc(100% - 80px));
  margin-inline:auto;
  padding-bottom:var(--s7);
}
.notebook-layout {
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  align-items:start;
  gap:80px;
  min-width:0;
}
.notebook-toc {
  position:sticky;
  top:calc(var(--header-h) + var(--s3));
  min-width:0;
  padding:var(--s4);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.notebook-toc h2,
.notebook-toc summary {
  margin:0;
  font-size:var(--body);
  font-weight:500;
  line-height:1.6;
  color:var(--ink);
}
.notebook-toc summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--s3);
  list-style:none;
  cursor:pointer;
}
.notebook-toc summary::-webkit-details-marker {
  display:none;
}
.notebook-toc summary .chevron {
  margin-right:3px;
}
.notebook-toc details[open] summary .chevron {
  rotate:180deg;
  transform:rotate(45deg);
}
.notebook-toc ol {
  margin:var(--s4) 0 0;
  padding-left:20px;
  font-size:var(--small);
  line-height:1.7;
  color:var(--ink2);
}
.notebook-toc li+li {
  margin-top:var(--s2);
}
.notebook-toc a {
  overflow-wrap:anywhere;
}
.notebook-toc a:hover {
  color:var(--jade-ink);
  text-decoration:underline;
  text-underline-offset:4px;
}
.notebook-toc .badge,
.notebook-toc [data-post-count],
.notebook-toc-count {
  display:flex;
  width:fit-content;
  max-width:100%;
  margin:var(--s3) 0 0;
  background:var(--paper);
  color:var(--ink2);
}
.notebook-prose {
  min-width:0;
  max-width:100%;
  font-size:var(--body);
  font-weight:400;
  line-height:1.9;
  color:var(--ink2);
  overflow-wrap:anywhere;
}
.notebook-prose>section {
  scroll-margin-top:calc(var(--header-h) + var(--s5));
}
.notebook-prose>section+section {
  margin-top:var(--s6);
}
.notebook-prose h2 {
  margin:48px 0 20px;
  font-size:var(--display);
  font-weight:500;
  line-height:1.45;
  letter-spacing:-.02em;
  color:var(--ink);
}
.notebook-prose>section>h2:first-child,
.notebook-prose>h2:first-child {
  margin-top:0;
}
.notebook-prose h3 {
  margin:var(--s5) 0 var(--s3);
  font-size:var(--h3);
  font-weight:500;
  line-height:1.5;
  color:var(--ink);
}
.notebook-prose h4 {
  margin:var(--s4) 0 var(--s2);
  font-size:var(--body);
  font-weight:500;
  line-height:1.6;
  color:var(--ink);
}
.notebook-prose p+p {
  margin-top:var(--s3);
}
.notebook-prose strong {
  font-weight:500;
  color:var(--ink);
}
.notebook-prose a:not(.pill):not(.button) {
  color:var(--jade-ink);
  text-decoration:underline;
  text-underline-offset:4px;
}
.notebook-prose a:not(.pill):not(.button):hover {
  color:var(--ink);
}
.notebook-prose ul,
.notebook-prose ol {
  margin:var(--s4) 0 var(--s5);
  padding-left:var(--s4);
}
.notebook-prose ul {
  list-style:disc;
}
.notebook-prose li+li {
  margin-top:var(--s2);
}
.notebook-prose code {
  font-family:var(--mono);
  font-size:var(--small);
  letter-spacing:0;
  color:var(--ink);
}
.notebook-prose :not(pre)>code {
  padding:2px 6px;
  border-radius:var(--r1);
  background:var(--soft2);
  color:var(--ink);
  overflow-wrap:anywhere;
}
.notebook-prose pre {
  max-width:100%;
  margin:var(--s4) 0 var(--s5);
  padding:var(--s4);
  border:1px solid var(--line);
  border-radius:var(--r1);
  background:var(--soft);
  color:var(--ink);
  overflow-x:auto;
  font-family:var(--mono);
  font-size:var(--small);
  line-height:1.8;
  tab-size:2;
}
.notebook-prose pre code {
  white-space:pre;
  overflow-wrap:normal;
}
.notebook-prose blockquote,
.notebook-note {
  margin:var(--s5) 0;
  padding:var(--s4);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.notebook-note>h3,
.notebook-prose blockquote>h3 {
  margin:0 0 var(--s2);
  font-size:var(--body);
}
.notebook-note>p {
  font-size:var(--small);
  color:var(--ink2);
}
.notebook-table-scroll {
  max-width:100%;
  margin:var(--s4) 0 var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r1);
  overflow-x:auto;
  background:var(--paper);
  color:var(--ink);
}
.notebook-table-scroll table {
  min-width:620px;
  font-size:var(--small);
  line-height:1.75;
}
.notebook-table-scroll caption {
  padding:var(--s3);
  text-align:left;
  font-size:var(--small);
  font-weight:500;
  background:var(--soft);
  color:var(--ink2);
}
.notebook-table-scroll th {
  background:var(--soft2);
  color:var(--ink);
}
.notebook-table-scroll tbody th {
  background:var(--paper);
  color:var(--ink);
}
.notebook-table-scroll th,
.notebook-table-scroll td {
  padding:var(--s3);
  border-color:var(--line);
}
.notebook-table-scroll tbody tr:last-child th,
.notebook-table-scroll tbody tr:last-child td {
  border-bottom:0;
}
.notebook-figure {
  margin:var(--s5) 0;
}
.notebook-figure>img,
.notebook-figure>svg {
  display:block;
  max-width:100%;
  height:auto;
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.notebook-figure figcaption {
  margin-top:var(--s3);
  font-size:var(--micro);
  line-height:1.8;
  color:var(--ink3);
}
.notebook-evidence-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
  gap:var(--s3);
  margin:var(--s4) 0 var(--s5);
}
.notebook-evidence-card {
  min-width:0;
  padding:var(--s4);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.notebook-evidence-card h3 {
  margin:0 0 var(--s2);
  font-size:var(--body);
}
.notebook-evidence-card p,
.notebook-evidence-card ul {
  font-size:var(--small);
  color:var(--ink2);
}
.notebook-evidence-card ul {
  margin-bottom:0;
}
.notebook-end-card {
  margin-top:var(--s6);
  padding:40px;
  border-radius:var(--r2);
  background:var(--soft2);
  color:var(--ink);
  text-align:center;
}
.notebook-prose .notebook-end-card h2 {
  margin:0;
  font-size:var(--display);
  line-height:1.45;
}
.notebook-end-card>p {
  max-width:640px;
  margin:20px auto 0;
  font-size:var(--body);
  line-height:1.85;
  color:var(--ink2);
}
.notebook-end-card .actions {
  justify-content:center;
  margin-top:var(--s5);
}
.notebook-end-card .pill,
.notebook-end-card .button {
  max-width:100%;
  height:auto;
  min-height:48px;
  padding:var(--s2) var(--s4);
  white-space:normal;
  text-decoration:none;
}
.notebook-prose .notebook-end-card .pill-dark,
.notebook-prose .notebook-end-card .button-primary {
  background:var(--ink);
  color:var(--paper);
}
.notebook-prose .notebook-end-card .pill-dark:hover,
.notebook-prose .notebook-end-card .button-primary:hover {
  background:var(--pine-hover);
  color:var(--paper);
}
.notebook-prose .notebook-end-card .pill-line,
.notebook-prose .notebook-end-card .button-secondary {
  border-color:var(--line-strong);
  background:var(--paper);
  color:var(--ink);
}
.notebook-prose .notebook-end-card .pill-line:hover,
.notebook-prose .notebook-end-card .button-secondary:hover {
  background:var(--soft);
  color:var(--ink);
}
.notebook-related {
  margin-top:var(--s6);
}
.notebook-related>h2 {
  margin:0 0 var(--s4);
}
.notebook-related-link {
  display:block;
  padding:var(--s4);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--ink);
}
.notebook-related-link:hover {
  background:var(--soft);
  color:var(--ink);
}
.notebook-related-link time {
  display:block;
  margin-top:var(--s2);
  font-size:var(--micro);
  color:var(--ink3);
}
.notebook-recommend .recommend-float-head {
  background:var(--soft);
  color:var(--ink2);
}
.notebook-recommend .float-close {
  background:var(--paper);
  color:var(--ink);
}
.notebook-recommend .float-close:hover {
  background:var(--ink);
  color:var(--paper);
}
.notebook-recommend .float-close svg {
  width:12px;
  height:12px;
}
.notebook-recommend .recommend-float-body>p {
  margin-top:var(--s2);
}
.notebook-recommend .pill {
  max-width:100%;
  height:auto;
  min-height:44px;
  padding:var(--s2) var(--s3);
  line-height:1.35;
  white-space:normal;
  background:var(--ink);
  color:var(--paper);
}
.notebook-recommend .pill:hover {
  background:var(--pine-hover);
  color:var(--paper);
}
.notebook-toc-mobile {
  display:none;
}
@media (max-width:1100px) {
  .notebook-layout {
    grid-template-columns:220px minmax(0,1fr);
    gap:40px;
  }
}
@media (max-width:860px) {
  .notebook-hero {
    padding-top:var(--s6);
    padding-bottom:48px;
  }
  .notebook-hero h1 {
    max-width:720px;
  }
  .notebook-post-grid {
    gap:var(--s4);
  }
  .notebook-card-art {
    padding:var(--s3);
  }
  .notebook-card-art svg {
    height:160px;
  }
  .notebook-card-copy {
    padding:var(--s4);
  }
  .notebook-post-card h2 {
    font-size:var(--h3);
  }
  .notebook-card-copy>p {
    font-size:var(--small);
  }
  .notebook-reading-shell {
    width:calc(100% - 48px);
  }
  .notebook-layout {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s5);
  }
  .notebook-article-hero {
    padding-top:48px;
    padding-bottom:40px;
  }
  .notebook-article-hero .section-intro {
    font-size:var(--body);
  }
  .notebook-toc {
    position:static;
    padding:var(--s3) var(--s4);
  }
  .notebook-toc-desktop {
    display:none;
  }
  .notebook-toc-mobile {
    display:block;
  }
  .notebook-toc details:not([open]) {
    padding:0;
  }
  .notebook-toc details[open] {
    padding-bottom:var(--s2);
  }
  .notebook-prose h2 {
    font-size:var(--display);
  }
  .notebook-end-card {
    padding:var(--s5);
  }
}
@media (max-width:560px) {
  .notebook-hero {
    padding-top:48px;
    padding-bottom:40px;
  }
  .notebook-hero h1 {
    font-size:var(--h2);
    line-height:1.45;
  }
  .notebook-hero .section-intro {
    max-width:360px;
    line-height:1.8;
  }
  .notebook-post-grid {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s4);
  }
  .notebook-card-art svg {
    height:160px;
  }
  .notebook-card-copy {
    padding:var(--s4);
  }
  .notebook-post-card h2 {
    font-size:var(--h3);
    line-height:1.5;
  }
  .notebook-card-open {
    padding-top:var(--s5);
  }
  .notebook-reading-shell {
    width:calc(100% - 32px);
  }
  .notebook-article-hero h1 {
    font-size:var(--h2);
    line-height:1.45;
  }
  .notebook-crumbs {
    margin-bottom:var(--s5);
    font-size:var(--micro);
  }
  .notebook-article-meta {
    margin-top:var(--s4);
    font-size:var(--micro);
  }
  .notebook-prose h2 {
    font-size:var(--display);
    line-height:1.5;
  }
  .notebook-prose>section+section {
    margin-top:48px;
  }
  .notebook-evidence-grid {
    grid-template-columns:minmax(0,1fr);
  }
  .notebook-prose pre,
  .notebook-note,
  .notebook-prose blockquote,
  .notebook-end-card {
    padding:var(--s4);
  }
  .notebook-end-card .actions {
    flex-direction:column;
    align-items:stretch;
  }
  .notebook-end-card .pill,
  .notebook-end-card .button {
    width:100%;
  }
}


/* Evidence article extends the confirmed notebook shell. */
.evidence-hero {
  padding:96px 0 var(--s6);
}
.evidence-crumb {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s2);
  margin-bottom:var(--s5);
  font-size:var(--small);
  color:var(--ink2);
}
.evidence-crumb a:hover {
  color:var(--jade-ink);
  text-decoration:underline;
  text-underline-offset:4px;
}
.evidence-hero h1 {
  max-width:1100px;
  font-size:var(--h1);
  font-weight:500;
  line-height:1.3;
  letter-spacing:-.02em;
  color:var(--ink);
}
.evidence-hero .section-intro {
  max-width:850px;
  margin:var(--s4) 0 0;
  font-size:var(--body);
  line-height:1.85;
}
.evidence-meta {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s1) var(--s3);
  width:fit-content;
  max-width:100%;
  margin-top:var(--s5);
  padding:var(--s1) var(--s3);
  border:1px solid var(--line);
  border-radius:var(--rp);
  background:var(--soft);
  color:var(--ink2);
  font-size:var(--micro);
  line-height:1.7;
}
.evidence-meta>span {
  display:inline-flex;
  align-items:center;
  gap:var(--s3);
}
.evidence-meta>span::before {
  content:"";
  width:3px;
  height:3px;
  border-radius:var(--rp);
  background:var(--ink3);
}
.evidence-layout {
  grid-template-columns:240px minmax(0,1fr);
  gap:var(--s6);
}
.evidence-toc {
  top:calc(var(--header-h) + var(--s3));
  z-index:2;
  padding:var(--s4);
  background:var(--soft);
  color:var(--ink);
}
.evidence-toc summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--s3);
  list-style:none;
  font-size:var(--body);
  font-weight:500;
  cursor:pointer;
}
.evidence-toc summary::-webkit-details-marker {
  display:none;
}
.evidence-toc summary .chevron {
  margin-right:3px;
}
.evidence-toc details[open] summary .chevron {
  rotate:180deg;
  transform:rotate(45deg);
}
.evidence-toc ol {
  margin-top:var(--s4);
  padding-left:20px;
  font-size:var(--micro);
  line-height:1.65;
  color:var(--ink2);
}
.evidence-toc li+li {
  margin-top:var(--s1);
}
.evidence-toc a:hover {
  color:var(--jade-ink);
  text-decoration:underline;
  text-underline-offset:3px;
}
.evidence-toc .evidence-count {
  margin-top:var(--s4);
  border:1px solid var(--line);
  background:var(--paper);
  color:var(--ink2);
}
.evidence-prose {
  line-height:1.85;
}
.evidence-section {
  scroll-margin-top:calc(var(--header-h) + var(--s5));
}
.evidence-section+.evidence-section {
  margin-top:var(--s6);
}
.evidence-prose .evidence-section h2 {
  margin:0 0 var(--s4);
  font-size:var(--display);
  line-height:1.45;
  font-weight:500;
  letter-spacing:-.02em;
}
.evidence-prose h3 {
  margin:var(--s5) 0 var(--s3);
  font-size:var(--h3);
  font-weight:500;
}
.evidence-prose strong {
  font-weight:500;
  color:var(--ink);
}
.evidence-prose li {
  margin-block:0;
}
.evidence-prose li+li {
  margin-top:var(--s1);
}
.evidence-prose code {
  font-family:var(--mono);
  font-size:var(--small);
  letter-spacing:0;
  overflow-wrap:anywhere;
  color:var(--ink);
}
.evidence-table {
  margin:var(--s4) 0 var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r1);
  background:var(--paper);
  color:var(--ink2);
}
.evidence-table table {
  min-width:600px;
  line-height:1.75;
}
.evidence-table caption {
  padding:var(--s3);
  text-align:left;
  font-size:var(--micro);
  background:var(--soft);
  color:var(--ink2);
}
.evidence-table thead th {
  background:var(--soft2);
  color:var(--ink);
}
.evidence-table tbody th {
  width:23%;
  background:var(--paper);
  color:var(--ink);
}
.evidence-table tbody tr:last-child th,
.evidence-table tbody tr:last-child td {
  border-bottom:0;
}
.evidence-note {
  margin-top:var(--s5);
  padding:var(--s4);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.evidence-prose .evidence-note h3 {
  margin:0 0 var(--s2);
  font-size:var(--body);
}
.evidence-note p {
  font-size:var(--small);
  color:var(--ink2);
}
.evidence-ticket {
  margin:var(--s4) 0 var(--s5);
  padding:var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.evidence-prose .evidence-ticket h3 {
  margin:0 0 var(--s4);
  font-size:var(--body);
}
.evidence-ticket dl {
  display:grid;
  gap:var(--s3);
}
.evidence-ticket dl>div {
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:var(--s3);
  font-size:var(--small);
}
.evidence-ticket dt {
  font-weight:500;
}
.evidence-ticket dd {
  color:var(--ink2);
}
.evidence-end {
  margin-top:80px;
  padding:48px var(--s5);
  border-radius:var(--r2);
  background:var(--soft2);
  color:var(--ink);
  text-align:center;
}
.evidence-end-icon {
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  margin:0 auto var(--s4);
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--pine);
}
.evidence-end-icon svg {
  width:32px;
  height:32px;
}
.evidence-prose .evidence-end h2 {
  margin:0;
  font-size:var(--display);
  line-height:1.45;
  font-weight:500;
}
.evidence-end>p {
  margin-top:20px;
  font-size:var(--body);
  color:var(--ink2);
}
.evidence-end .actions {
  justify-content:center;
  margin-top:var(--s5);
}
.evidence-prose .evidence-end .pill {
  max-width:100%;
  height:auto;
  padding:var(--s2) var(--s4);
  white-space:normal;
  text-decoration:none;
}
.evidence-prose .evidence-end .pill-dark {
  border:0;
  background:var(--ink);
  color:var(--paper);
}
.evidence-prose .evidence-end .pill-dark:hover {
  background:var(--pine-hover);
  color:var(--paper);
}
.evidence-float {
  z-index:40;
}
.evidence-float .recommend-float-head {
  position:relative;
  min-height:52px;
  padding-right:56px;
}
.evidence-float .float-close {
  position:absolute;
  top:12px;
  right:12px;
  background:var(--paper);
  color:var(--ink);
}
.evidence-float .float-close svg {
  width:16px;
  height:16px;
}
.evidence-float-actions {
  display:flex;
  align-items:stretch;
  flex-wrap:wrap;
  gap:var(--s1);
  margin-top:var(--s4);
}
.evidence-float .evidence-float-actions .pill {
  flex:1 1 110px;
  margin:0;
  min-height:44px;
  height:auto;
  max-width:100%;
  padding:var(--s2) var(--s3);
  font-size:var(--small);
  line-height:1.35;
  white-space:normal;
}
@media (min-width:861px) {
  .evidence-toc {
    max-height:calc(100dvh - var(--header-h) - var(--s5));
    overflow-y:auto;
  }
}
@media (max-width:1100px) {
  .evidence-layout {
    grid-template-columns:220px minmax(0,1fr);
    gap:var(--s5);
  }
}
@media (max-width:860px) {
  .evidence-hero {
    padding-top:96px;
    padding-bottom:48px;
  }
  .evidence-layout {
    grid-template-columns:minmax(0,1fr);
    gap:48px;
  }
  .evidence-toc {
    position:static;
  }
  .evidence-toc ol {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:var(--s5);
    row-gap:var(--s1);
    font-size:var(--small);
  }
  .evidence-toc li+li {
    margin-top:0;
  }
}
@media (max-width:560px) {
  .evidence-hero h1 {
    font-size:var(--h2);
    line-height:1.45;
  }
  .evidence-hero h1 br {
    display:none;
  }
  .evidence-crumb {
    font-size:var(--micro);
    gap:var(--s1);
    margin-bottom:var(--s4);
  }
  .evidence-meta {
    gap:var(--s1) var(--s2);
    padding-inline:var(--s2);
  }
  .evidence-meta>span {
    gap:var(--s2);
  }
  .evidence-toc {
    padding:var(--s3);
  }
  .evidence-toc ol {
    grid-template-columns:minmax(0,1fr);
  }
  .evidence-prose .evidence-section h2 {
    font-size:var(--h3);
    line-height:1.6;
  }
  .evidence-prose h3 {
    font-size:var(--body);
  }
  .evidence-section+.evidence-section {
    margin-top:48px;
  }
  .evidence-ticket {
    padding:var(--s4);
  }
  .evidence-ticket dl>div {
    grid-template-columns:minmax(0,1fr);
    gap:4px;
  }
  .evidence-end {
    margin-top:var(--s6);
    padding:var(--s5) var(--s4);
  }
  .evidence-prose .evidence-end h2 {
    font-size:var(--h3);
  }
  .evidence-end .actions {
    flex-direction:column;
    align-items:stretch;
  }
  .evidence-float .recommend-float-body {
    padding:var(--s3);
  }
  .evidence-float p {
    font-size:var(--micro);
  }
}


/* Request-trace article extends the confirmed home system. */
.trace-article {
  min-width:0;
}
.trace-hero {
  position:static;
  z-index:auto;
  padding:96px 0 var(--s6);
  background:var(--paper);
  color:var(--ink);
}
.trace-crumb {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s2);
  margin-bottom:var(--s5);
  font-size:var(--micro);
  line-height:1.6;
  color:var(--ink2);
}
.trace-crumb a:hover {
  color:var(--jade-ink);
  text-decoration:underline;
  text-underline-offset:4px;
}
.trace-crumb>span[aria-hidden] {
  color:var(--ink3);
}
.trace-hero .eyebrow {
  margin:0 0 20px;
}
.trace-hero h1 {
  max-width:1040px;
  font-size:var(--h1);
  line-height:1.28;
  font-weight:500;
  letter-spacing:-.02em;
  color:var(--black);
}
.trace-hero .section-intro {
  max-width:820px;
  margin:var(--s4) 0 0;
  font-size:var(--h3);
  line-height:1.75;
  color:var(--ink2);
}
.trace-meta {
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s1) var(--s4);
  max-width:100%;
  margin-top:var(--s5);
  padding:var(--s2) var(--s3);
  border:1px solid var(--line);
  border-radius:var(--rp);
  background:var(--soft);
  color:var(--ink2);
  font-size:var(--micro);
  line-height:1.5;
}
.trace-meta time {
  font-family:var(--mono);
  letter-spacing:0;
}
.trace-layout {
  grid-template-columns:248px minmax(0,1fr);
  gap:var(--s6);
}
.trace-toc {
  z-index:2;
  top:calc(var(--header-h) + var(--s3));
  padding:var(--s4);
  max-height:calc(100dvh - var(--header-h) - var(--s5));
  overflow-y:auto;
  background:var(--soft);
  color:var(--ink2);
}
.trace-toc details {
  padding:0;
}
.trace-toc summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--s3);
  list-style:none;
  cursor:pointer;
  font-size:var(--small);
  font-weight:500;
  color:var(--ink);
}
.trace-toc summary::-webkit-details-marker {
  display:none;
}
.trace-toc summary .chevron {
  margin-right:3px;
}
.trace-toc details[open] summary .chevron {
  rotate:180deg;
  transform:rotate(45deg);
}
.trace-toc ol {
  margin-top:var(--s4);
  padding-left:20px;
  font-size:var(--micro);
  line-height:1.65;
}
.trace-toc li+li {
  margin-top:var(--s1);
}
.trace-toc li::marker {
  color:var(--ink3);
  font-family:var(--mono);
}
.trace-toc a {
  overflow-wrap:anywhere;
}
.trace-toc li a:hover {
  color:var(--jade-ink);
  text-decoration:underline;
  text-underline-offset:4px;
}
.trace-toc .trace-count {
  margin-top:var(--s4);
  border:1px solid var(--line);
  background:var(--paper);
  color:var(--ink2);
}
.trace-prose {
  min-width:0;
  line-height:1.9;
}
.trace-opening {
  padding:var(--s4);
  border-radius:var(--r1);
  background:var(--soft);
  color:var(--ink2);
  font-size:var(--small);
}
.trace-section {
  margin-top:var(--s6);
  scroll-margin-top:calc(var(--header-h) + var(--s5));
}
.trace-section h2 {
  margin:0 0 var(--s4);
  font-size:var(--display);
  font-weight:500;
  line-height:1.45;
  letter-spacing:-.02em;
  color:var(--ink);
}
.trace-section h3 {
  margin:var(--s5) 0 var(--s3);
  font-size:var(--h3);
  font-weight:500;
  line-height:1.5;
  color:var(--ink);
}
.trace-prose code {
  font-family:var(--mono);
  font-size:var(--small);
  letter-spacing:0;
  color:var(--ink);
  overflow-wrap:anywhere;
}
.trace-prose li+li {
  margin-top:var(--s1);
}
.trace-prose ul,
.trace-prose ol {
  margin:var(--s4) 0 var(--s5);
}
.trace-callout,
.trace-checklist {
  margin:var(--s5) 0;
  padding:var(--s4);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.trace-callout h3,
.trace-checklist h3 {
  margin:0 0 var(--s2);
  font-size:var(--body);
  font-weight:500;
}
.trace-callout p,
.trace-checklist li {
  font-size:var(--small);
  color:var(--ink2);
}
.trace-checklist ul {
  margin:var(--s3) 0 0;
}
.trace-table {
  margin-top:var(--s5);
  margin-bottom:var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r1);
  background:var(--paper);
  color:var(--ink2);
}
.trace-table table {
  min-width:680px;
  font-size:var(--small);
  line-height:1.75;
}
.trace-table caption {
  padding:var(--s3);
  text-align:left;
  font-size:var(--micro);
  background:var(--soft);
  color:var(--ink2);
}
.trace-table th {
  font-weight:500;
}
.trace-table tbody th {
  background:var(--paper);
  color:var(--ink);
}
.trace-table th,
.trace-table td {
  padding:var(--s3);
  border-color:var(--line);
}
.trace-table tbody tr:last-child th,
.trace-table tbody tr:last-child td {
  border-bottom:0;
}
.trace-example {
  margin:var(--s5) 0;
  padding:var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
}
.trace-example-label {
  font-size:var(--micro);
  font-weight:500;
  color:var(--jade-ink);
}
.trace-example dl {
  display:grid;
  gap:var(--s3);
  margin-top:var(--s4);
}
.trace-example dl>div {
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:var(--s3);
  font-size:var(--small);
}
.trace-example dt {
  font-weight:500;
  color:var(--ink);
}
.trace-example dd {
  color:var(--ink2);
}
.trace-final-card {
  margin-top:var(--s5);
  padding:48px var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r2);
  background:var(--soft);
  color:var(--ink);
  text-align:center;
}
.trace-final-icon {
  display:grid;
  place-items:center;
  width:64px;
  height:64px;
  margin-inline:auto;
  border-radius:var(--r2);
  background:var(--paper);
  color:var(--pine);
}
.trace-final-icon svg {
  width:40px;
  height:40px;
}
.trace-final-card h3 {
  margin:var(--s4) 0 0;
  font-size:var(--h3);
  line-height:1.5;
  font-weight:500;
}
.trace-final-card>p {
  max-width:560px;
  margin:var(--s3) auto 0;
  font-size:var(--body);
  color:var(--ink2);
}
.trace-final-card .actions {
  justify-content:center;
  margin-top:var(--s5);
}
.trace-prose .trace-final-card .pill {
  max-width:100%;
  height:auto;
  min-height:48px;
  padding:var(--s2) var(--s4);
  white-space:normal;
  text-decoration:none;
}
.trace-prose .trace-final-card .pill-dark {
  border-color:transparent;
  background:var(--ink);
  color:var(--paper);
}
.trace-prose .trace-final-card .pill-dark:hover {
  background:var(--pine-hover);
  color:var(--paper);
}
.trace-prose .trace-final-card .pill-line {
  border-color:var(--line-strong);
  background:var(--paper);
  color:var(--ink);
}
.trace-prose .trace-final-card .pill-line:hover {
  background:var(--soft2);
  color:var(--ink);
}
.trace-recommend {
  z-index:40;
}
.trace-recommend .recommend-float-head {
  position:relative;
  min-height:52px;
  padding-right:56px;
}
.trace-recommend .float-close {
  position:absolute;
  right:var(--s2);
  top:var(--s2);
  border:1px solid var(--line);
  background:var(--paper);
  color:var(--ink);
}
.trace-recommend .float-close:hover {
  background:var(--soft2);
  color:var(--ink);
}
.trace-recommend .recommend-float-body {
  padding:var(--s4);
}
.trace-recommend-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s2);
  margin-top:var(--s4);
}
.trace-recommend .trace-recommend-actions .pill {
  min-height:40px;
  height:auto;
  margin-top:0;
  max-width:100%;
  padding:var(--s2) var(--s3);
  font-size:var(--small);
  line-height:1.35;
  white-space:normal;
}
@media (max-width:1100px) {
  .trace-layout {
    grid-template-columns:224px minmax(0,1fr);
    gap:var(--s5);
  }
  .trace-toc {
    padding:var(--s3);
  }
}
@media (max-width:860px) {
  .trace-layout {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s5);
  }
  .trace-toc {
    position:static;
    max-height:none;
    overflow:visible;
    padding:var(--s3) var(--s4);
  }
  .trace-toc ol {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--s1) var(--s5);
  }
  .trace-toc li+li {
    margin-top:0;
  }
  .trace-section:first-of-type {
    margin-top:48px;
  }
}
@media (max-width:560px) {
  .trace-hero {
    padding-top:96px;
    padding-bottom:40px;
  }
  .trace-crumb {
    margin-bottom:var(--s5);
    column-gap:var(--s1);
  }
  .trace-hero h1 {
    font-size:var(--h2);
    line-height:1.45;
  }
  .trace-hero h1 br {
    display:none;
  }
  .trace-hero .section-intro {
    font-size:var(--body);
    line-height:1.85;
  }
  .trace-meta {
    gap:var(--s1) var(--s3);
    padding:var(--s2) var(--s3);
  }
  .trace-toc ol {
    grid-template-columns:minmax(0,1fr);
  }
  .trace-section {
    margin-top:48px;
  }
  .trace-section h2 {
    font-size:var(--h3);
    line-height:1.6;
  }
  .trace-section h3 {
    font-size:var(--body);
  }
  .trace-opening,
  .trace-callout,
  .trace-checklist,
  .trace-example {
    padding:var(--s3);
  }
  .trace-example dl>div {
    grid-template-columns:minmax(0,1fr);
    gap:4px;
  }
  .trace-final-card {
    padding:var(--s5) var(--s4);
  }
  .trace-final-card .actions {
    align-items:stretch;
    flex-direction:column;
  }
  .trace-final-card>p {
    font-size:var(--small);
  }
  .trace-recommend {
    width:min(320px, calc(100% - 32px));
  }
}


.trace-repro {
  list-style:decimal;
  padding-left:var(--s4);
  margin:var(--s4) 0 var(--s5);
}
.evidence-page {
  min-width:0;
}
.article-cta {
  min-width:0;
}
