/* Le Coin. Fonts: Libre Franklin (headlines), Instrument Sans (body), Space Grotesk (wordmark only), Geist Mono (figures). SIL OFL 1.1, self-hosted. */
@font-face{font-family:"LC Franklin";src:url(/fonts/LibreFranklin-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"LC Franklin";src:url(/fonts/LibreFranklin-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"LC Franklin";src:url(/fonts/LibreFranklin-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"LC Franklin";src:url(/fonts/LibreFranklin-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"LC Franklin";src:url(/fonts/LibreFranklin-800.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"LC Sans";src:url(/fonts/InstrumentSans-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"LC Sans";src:url(/fonts/InstrumentSans-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"LC Sans";src:url(/fonts/InstrumentSans-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"LC Sans";src:url(/fonts/InstrumentSans-Italic-400.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"LC Sans";src:url(/fonts/InstrumentSans-Italic-700.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:"LC Mono";src:url(/fonts/GeistMono.woff2) format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"LC Grotesk";src:url(/fonts/SpaceGrotesk.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}

:root{
  --bg:#ffffff; --surface:#f6f7f6; --ink:#0E0F0F; --ink2:#3A3D3C; --muted:#3E4440; --faint:#5C615E;
  --line:#E2E3E0; --line2:#CDCFCB; --thumb:#D9DBD7; --thumb-ink:#5E625F;
  --em:#12805A; --em-ink:#0B6345; --em-soft:#E4F2EC;
  --band:#0C0D0D; --band2:#17191A; --band-line:#2A2D2E; --band-ink:#F2F3F1; --band-muted:#9EA3A0; --band-em:#3CC487;
  --sans:"LC Sans","Helvetica Neue",Arial,sans-serif; --display:"LC Franklin","LC Sans",sans-serif; --mono:"LC Mono",ui-monospace,Menlo,monospace; --logo:"LC Grotesk","LC Sans",sans-serif;
  --wrap:1328px;
}
body.dark{
  --bg:#0F1111; --surface:#151818; --ink:#ECEDEB; --ink2:#C3C7C4; --muted:#8F9592; --faint:#6E7471;
  --line:#262A2A; --line2:#343938; --thumb:#232727; --thumb-ink:#8A908D;
  --em:#3CC487; --em-ink:#5BD39C; --em-soft:#14301F;
  --band:#080909; --band2:#101212; --band-line:#232727;
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;background:#ffffff;color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.6;font-variant-numeric:tabular-nums lining-nums;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{color:var(--em-ink);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}
.mono{font-family:var(--mono)}
.num{font-family:var(--mono);font-variant-numeric:tabular-nums}

/* flags */
.mock{background:#E9EAE6;color:#2E302F;font-family:var(--mono);font-size:10.5px;letter-spacing:.03em;border-bottom:1px dashed #8A8E8B}
body.dark .mock{background:#1B1E1E;color:#B9BEBB;border-bottom-color:#444}
.mock .wrap{display:flex;justify-content:space-between;gap:12px;padding-top:4px;padding-bottom:4px}
.ph{font-family:var(--mono);font-size:9.5px;font-weight:400;letter-spacing:0;color:var(--muted);border:1px dashed var(--faint);padding:0 3px;margin-left:5px;white-space:nowrap;vertical-align:1px;text-transform:none;font-style:normal}
.is-ph,.is-ph a{color:var(--ink2)}

/* dark header band */
.band{background:var(--band);color:var(--band-ink)}
.strip{border-bottom:1px solid var(--band-line);font-size:12px}
.strip .wrap{display:flex;align-items:center;gap:0;height:38px;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.tk{display:flex;align-items:center;gap:8px;padding:0 18px 0 0;margin-right:18px;border-right:1px solid var(--band-line);height:22px}
.tk .sym{font-family:var(--mono);font-size:11px;color:var(--band-muted)}
.tk .px{font-family:var(--mono);font-size:12.5px;font-weight:500;color:var(--band-ink)}
.tk .ch{font-family:var(--mono);font-size:11.5px}
.up{color:var(--band-em)} .dn{color:var(--band-ink);opacity:.72}
.tk svg{display:block}
.snap{margin-left:auto;display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10.5px;color:var(--band-muted)}
.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--band-em)}
.dot.hollow{background:transparent;border:1.5px solid var(--band-em)}
.mast .wrap{display:flex;align-items:center;gap:22px;height:68px}
.logo{position:relative;display:inline-block;font-family:var(--logo);font-weight:700;font-size:32px;letter-spacing:-.035em;line-height:1;color:var(--band-ink);padding:6px 0 0 9px}
.logo:hover{color:var(--band-ink);text-decoration:none}
.logo .bk{position:absolute;left:0;top:0;width:11px;height:11px;border-top:2.5px solid var(--band-em);border-left:2.5px solid var(--band-em)}
.logo .i{position:relative;display:inline-block}
.logo .stem{display:inline-block;clip-path:inset(0.42em 0 0 0)}
.logo .cd{position:absolute;left:50%;top:-.02em;width:.2em;height:.2em;margin-left:-.1em;border-radius:50%;background:var(--band-em);z-index:1}
.tag{font-size:12.5px;color:var(--band-muted);border-left:1px solid var(--band-line);padding-left:16px;line-height:1.3}
.mast .sp{flex:1}
.mast .meta{font-family:var(--mono);font-size:11px;color:var(--band-muted);text-align:right;line-height:1.5}
.btn{display:inline-block;font-family:var(--sans);font-size:12.5px;font-weight:600;border:1px solid var(--band-ink);color:var(--band-ink);padding:6px 11px;border-radius:2px}
.btn:hover{background:var(--band-ink);color:var(--band);text-decoration:none}

/* tabs */
.tabs{background:var(--surface);border-bottom:1px solid var(--line2)}
.tabs .wrap{display:flex;align-items:stretch;height:44px;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.tabs a{position:relative;display:flex;align-items:center;padding:0 14px;font-size:13.5px;font-weight:600;color:var(--ink2);border-right:1px solid var(--line)}
.tabs a:first-child{border-left:1px solid var(--line)}
.tabs a.on{color:var(--ink);background:var(--bg)}
.tabs a.on::before{content:"";position:absolute;left:5px;top:6px;width:7px;height:7px;border-top:2px solid var(--em);border-left:2px solid var(--em)}
.tabs a.on::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--ink)}
.tabs a.soon{color:var(--muted);font-weight:500}
.tabs a.soon small{font-family:var(--mono);font-size:9.5px;border:1px solid var(--line2);padding:1px 4px;margin-left:6px;border-radius:2px}
.tabs .sp{flex:1;border:0}
.tabs .r{font-weight:500;color:var(--muted);border:0 !important}

/* atoms */
.kick{display:flex;align-items:center;gap:8px;font-family:var(--display);font-size:14px;font-weight:700;letter-spacing:-0.01em;text-transform:none;color:var(--em-ink);margin:0 0 7px}
.kick .t{font-family:var(--mono);font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted);font-size:11px}
.kick .st{font-family:var(--mono);font-weight:500;letter-spacing:.02em;color:var(--em-ink);font-size:10.5px;display:inline-flex;align-items:center;gap:5px}
.kick .st i{width:6px;height:6px;border-radius:50%;background:var(--em);display:inline-block}
.chip{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;border:1px solid var(--line2);padding:1px 5px;border-radius:2px;color:var(--ink2)}
.chip.em{border-color:var(--em);color:var(--em-ink)}
.h-xl{font-size:41px;line-height:1.04;font-weight:650;font-stretch:88%;letter-spacing:-.018em;margin:0 0 10px}
.h-l{font-size:24px;line-height:1.12;font-weight:650;font-stretch:90%;letter-spacing:-.01em;margin:0 0 7px}
.h-m{font-size:17px;line-height:1.22;font-weight:620;font-stretch:94%;margin:0 0 4px}
.h-s{font-size:15px;line-height:1.28;font-weight:560;margin:0 0 3px}
.dek{font-size:17px;line-height:1.42;color:var(--ink2);margin:0 0 10px}
.dek-s{font-size:13.5px;line-height:1.42;color:var(--ink2);margin:0 0 6px}
.by{font-size:12px;color:var(--muted);line-height:1.45}
.by b{color:var(--ink);font-weight:600}
.t{font-family:var(--mono);font-size:10.5px;color:var(--muted)}
.mh{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--ink);padding:0 0 7px;margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.mh small{font-family:var(--mono);font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted);font-size:10.5px}
.thumb{position:relative;background:var(--thumb);aspect-ratio:16/10}
.thumb::after{content:attr(data-l);position:absolute;left:7px;bottom:6px;font-family:var(--mono);font-size:9.5px;color:var(--thumb-ink)}
.thumb.sq{aspect-ratio:1/1;width:76px;flex:none}
.thumb.sm{width:96px;aspect-ratio:4/3;flex:none}
/* typographic document thumbnail (real citation, not an illustration) */
.doc{background:var(--band);color:var(--band-ink);aspect-ratio:16/10;padding:12px 14px;display:flex;flex-direction:column;justify-content:space-between;font-family:var(--mono)}
.doc .a{font-size:10px;color:var(--band-muted);letter-spacing:.03em}
.doc .b{font-size:21px;font-weight:600;letter-spacing:-.01em;line-height:1.15}
.doc .c{font-size:10px;color:var(--band-muted);display:flex;justify-content:space-between}
.doc .c b{color:var(--band-em);font-weight:500}

/* homepage grid */
.g{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0}
.top{padding-top:20px}
.top .lead{grid-column:1/7;padding-right:26px;border-right:1px solid var(--line)}
.top .sec{grid-column:7/10;padding:0 20px;border-right:1px solid var(--line)}
.top .feed{grid-column:10/13;padding-left:20px}
.chart{border:1px solid var(--line2);background:var(--surface);margin:14px 0 0}
.chart .hd{display:flex;justify-content:space-between;align-items:baseline;padding:9px 12px;border-bottom:1px solid var(--line)}
.chart .hd b{font-size:13px;font-weight:650}
.chart .hd span{font-family:var(--mono);font-size:10.5px;color:var(--muted)}
.chart .bd{display:block}
.cols{position:relative;height:170px;margin:14px 14px 30px 46px;border-left:1px solid var(--line2);border-bottom:1px solid var(--ink)}
.cols .gl{position:absolute;left:0;right:0;border-top:1px dashed var(--line)}
.cols .gl span{position:absolute;left:-40px;top:-7px;width:34px;text-align:right;font-family:var(--mono);font-size:10px;color:var(--muted)}
.cols .grp{position:absolute;bottom:0;display:flex;align-items:flex-end;gap:6px;height:100%}
.cols .bar{width:54px;position:relative}
.cols .bar em{position:absolute;top:-17px;left:50%;transform:translateX(-50%);font-style:normal;font-family:var(--mono);font-size:10.5px;font-weight:500;white-space:nowrap}
.cols .bar.s{background:var(--ink)}
.cols .bar.b{background:var(--line2)}
.cols .bar.z{height:1px!important;background:var(--muted)}
.cols .xl{position:absolute;bottom:-21px;left:50%;transform:translateX(-50%);white-space:nowrap;text-align:center;font-family:var(--mono);font-size:10.5px;color:var(--muted)}
.kv{border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.kv div{padding:9px 12px;border-right:1px solid var(--line)}
.kv div:last-child{border-right:0}
.kv b{display:block;font-family:var(--mono);font-size:19px;font-weight:500;letter-spacing:-.01em}
.kv span{font-size:11px;color:var(--muted)}
.legend{display:flex;gap:14px;padding:0 12px 9px;font-size:11px;color:var(--muted)}
.legend i{display:inline-block;width:10px;height:10px;margin-right:5px;vertical-align:-1px}
.chart .src{border-top:1px solid var(--line);padding:7px 12px;font-size:10.5px;color:var(--muted);font-family:var(--mono)}
.sec .doc{margin-bottom:10px}
.list{margin:0;padding:0}
.list li{list-style:none;border-top:1px solid var(--line);padding:9px 0}
.list .row{display:flex;gap:12px;justify-content:space-between;align-items:flex-start}
.feedl{margin:0;padding:0}
.feedl>li{list-style:none;display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;padding:8px 0;border-top:1px solid var(--line)}
.feedl>li>.t{padding-top:2px}
.feedl .sx{display:flex;gap:6px;align-items:center;margin-bottom:2px}
.feedl .h-s{font-size:14px;margin:0}
.feedl .lib{font-size:12px;color:var(--muted);margin-top:2px}
.brf{border:1px solid var(--line2);background:var(--surface);margin-bottom:14px}
.brf>div{padding:9px 11px;border-top:1px solid var(--line)}
.brf>div:first-child{border-top:0}
.brf .w{display:flex;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:3px}
.brf .w span{font-family:var(--mono);font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted)}

.row2{margin-top:26px;border-top:1px solid var(--ink);padding-top:16px}
.row2 .pm{grid-column:1/6;padding-right:22px;border-right:1px solid var(--line)}
.row2 .lb{grid-column:6/13;padding-left:22px}
.pmc{border:1px solid var(--line2);background:var(--surface);margin-bottom:12px}
.pmc .q{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:10px 12px 6px}
.pmc .q b{font-size:14.5px;font-weight:620;line-height:1.25}
.pmc .big{font-family:var(--mono);font-size:30px;font-weight:500;letter-spacing:-.02em;line-height:1}
.pmc .big small{display:block;font-size:10px;font-weight:400;color:var(--muted);letter-spacing:0;text-align:right;margin-top:3px}
.pbar{height:4px;background:var(--line);margin:4px 12px 8px}
.pbar i{display:block;height:100%;background:var(--ink2)}
.pmc .ft{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding:6px 12px;font-family:var(--mono);font-size:10px;color:var(--muted)}
.ladder{margin:0;padding:0 12px 4px}
.ladder li{list-style:none;display:grid;grid-template-columns:90px minmax(0,1fr) 46px 86px;gap:10px;align-items:center;padding:5px 0;border-top:1px solid var(--line);font-size:12.5px}
.ladder .k{font-family:var(--mono);font-size:12px}
.ladder .v{font-family:var(--mono);font-size:13px;font-weight:500;text-align:right}
.ladder .ba{font-family:var(--mono);font-size:10px;color:var(--muted);text-align:right}
.ladder .pbar{margin:0}
.note{font-size:11px;color:var(--muted);line-height:1.45;margin:6px 0 0}
.tbl{width:100%;border-collapse:collapse;font-size:13px}
.tbl th{text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--ink);padding:0 10px 6px 0;white-space:nowrap}
.tbl td{border-bottom:1px solid var(--line);padding:8px 10px 8px 0;vertical-align:top}
.tbl td.n,.tbl th.n{text-align:right;font-family:var(--mono);font-size:12px}
.tbl .nm{font-weight:620;font-size:14px}
.tbl .sub{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:1px}
.tbl tr.new td:first-child{box-shadow:none;padding-left:8px}
.lbside{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:22px}
.callout{border:1px solid var(--line2);background:var(--surface);padding:11px 12px;font-size:13px;line-height:1.45}
.callout h4{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin:0 0 6px}
.callout p{margin:0 0 7px;color:var(--ink2)}

.row3{margin-top:26px;border-top:1px solid var(--ink);padding-top:16px}
.row3 .a{grid-column:1/7;padding-right:22px;border-right:1px solid var(--line)}
.row3 .b{grid-column:7/10;padding:0 20px;border-right:1px solid var(--line)}
.row3 .c{grid-column:10/13;padding-left:20px}
.pp2{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:16px}
.soonbar{margin-top:24px;border:1px solid var(--line2);display:flex;align-items:center;gap:16px;padding:10px 14px;font-size:13px;background:var(--surface)}
.soonbar b{font-size:11px;letter-spacing:.06em;text-transform:uppercase}

/* footer */
.foot{margin-top:36px;background:var(--band);color:var(--band-muted);font-size:12px;padding:24px 0 26px}
.foot .cols6{display:grid;grid-template-columns:1.6fr repeat(6,1fr);gap:18px}
.foot h5{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--band-ink);margin:0 0 7px}
.foot ul{margin:0;padding:0}.foot li{list-style:none;padding:2px 0}
.foot a:hover{color:var(--band-ink)}
.foot .logo{font-size:26px}
.foot p{margin:8px 0 0;line-height:1.5}
.foot .disc{border-top:1px solid var(--band-line);margin-top:18px;padding-top:12px;display:grid;grid-template-columns:2fr 1fr;gap:28px;font-size:11px;line-height:1.55}
.foot .disc p{margin:0 0 6px}
.foot .disc b{color:var(--band-ink)}
.foot .fine{margin-top:8px;display:flex;gap:14px;flex-wrap:wrap;font-size:11px;font-family:var(--mono)}

/* article */
.crumb{font-family:var(--mono);font-size:11px;color:var(--muted);padding:16px 0 0;text-transform:uppercase;letter-spacing:.03em}
.ahead{display:grid;grid-template-columns:minmax(0,860px) 1fr;padding-top:12px}
.ahead h1{font-size:46px;line-height:1.03;font-weight:650;font-stretch:86%;letter-spacing:-.02em;margin:2px 0 12px}
.ahead .dek{font-size:19px;max-width:760px}
.byline{display:flex;flex-wrap:wrap;align-items:center;gap:6px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);margin-top:16px;font-size:12.5px;color:var(--ink2)}
.byline>span{padding:9px 16px 9px 0;margin-right:16px;border-right:1px solid var(--line)}
.byline>span:last-child{border-right:0}
.byline b{color:var(--ink);font-weight:620}
.seatover{display:inline-block;line-height:1.35;vertical-align:middle}
.byline .mono{font-size:11.5px}
.pstat{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px;border:1px solid var(--line2);padding:2px 6px;border-radius:2px}
.pstat i{width:7px;height:7px;border-radius:50%;border:1.5px solid var(--em)}
.art{display:grid;grid-template-columns:minmax(0,690px) minmax(0,1fr);gap:0 52px;padding-top:20px}
.body{font-size:17.5px;line-height:1.62;color:var(--ink)}
.body p{margin:0 0 16px}
.body pre{margin:0 0 18px;padding:12px 14px;overflow-x:auto;background:var(--surface);border:1px solid var(--line);font-family:var(--mono);font-size:12px;line-height:1.45;white-space:pre}
.body pre code{font-family:inherit;font-size:inherit}
.plate-fig{border-top:2px solid var(--ink);padding-top:14px}
.plate-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 12px}
.plate-top .mark{font-family:var(--logo);font-weight:700;font-size:16px;letter-spacing:-.03em;line-height:1}
.plate-top .meta{font-family:var(--mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);text-align:right}
.plate-fig h3{font-family:var(--display);font-weight:700;font-size:28px;letter-spacing:-.03em;line-height:1.12;margin:0 0 8px}
.plate-fig .lede{margin:0 0 18px;font-size:15.5px;line-height:1.45;color:var(--ink2)}
.sc{margin:0 0 18px;padding-top:14px;border-top:1px solid var(--line)}
.sc .k{margin:0 0 4px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--em-ink)}
.sc .d{margin:0 0 10px;font-size:15px;line-height:1.4;color:var(--ink)}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pair h4{margin:0 0 8px;font-family:var(--display);font-size:15px;font-weight:700;letter-spacing:-.02em}
.hops{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr);gap:6px;align-items:stretch;margin:0 0 8px}
.hop{background:#f4f5f3;border:1px solid var(--line);padding:8px 8px 7px}
.hop.cash{background:var(--em-soft);border-color:#d3ebdf}
.hop .n{display:block;font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--em-ink)}
.hop strong{display:block;margin:3px 0 2px;font-size:14px;letter-spacing:-.02em}
.hop p{margin:0;font-size:12px;line-height:1.35;color:var(--ink2)}
.arr{align-self:center;color:var(--em-ink);font-size:16px;line-height:1;text-align:center}
.plate-bar{display:flex;min-height:38px;margin:0;color:#fff;font-size:12.5px;font-weight:650;line-height:1.2}
.plate-bar span{display:flex;align-items:center;padding:6px 8px}
.plate-bar .fee{background:#2a2c2b;white-space:nowrap}
.plate-bar .mid{background:#111312;white-space:nowrap}
.plate-bar .keep{background:#12805A;flex:1;justify-content:center;text-align:center}
.pills{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px;padding:0;list-style:none}
.pills li{background:#111312;color:#fff;font-size:12.5px;font-weight:650;padding:6px 9px}
.sc .note{margin:8px 0 0;font-size:13px;line-height:1.4;color:var(--ink2)}
@media (max-width:760px){
  .plate-fig h3{font-size:22px}
  .plate-top{flex-direction:column;gap:4px}
  .plate-top .meta{text-align:left}
  .pair{grid-template-columns:1fr}
  .hops{grid-template-columns:1fr}
  .arr{transform:rotate(90deg);padding:2px 0}
  .plate-bar{flex-direction:column}
  .plate-bar span{white-space:normal}
  .plate-bar .keep{justify-content:flex-start}
}
.body blockquote.xquote{margin:0 0 16px;padding:2px 0 2px 14px;border-left:3px solid var(--em)}
.body blockquote.xquote p{margin:0}
.body .signoff{margin:22px 0 8px;font-weight:650}
.body h2{font-size:21px;font-weight:650;font-stretch:92%;letter-spacing:-.01em;margin:30px 0 8px;padding-top:12px;border-top:1px solid var(--line)}
.body table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.4;margin:4px 0 6px}
.body .tscroll{overflow-x:auto;margin:4px 0 6px}
.body .tscroll table{width:max-content;min-width:100%;margin:0}
.body .tscroll th,.body .tscroll td{white-space:nowrap}
.body th{text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--ink);padding:0 10px 6px 0;vertical-align:bottom}
.body td{border-bottom:1px solid var(--line);padding:7px 10px 7px 0;vertical-align:top}
.body tr.tot td{font-weight:650;border-bottom:1px solid var(--ink)}
.body .tsrc{font-family:var(--mono);font-size:10.5px;color:var(--muted);margin:0 0 18px}
.sources{margin-top:28px;border-top:1px solid var(--ink);padding-top:9px}
.sources h3{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px}
.sources ol{margin:0;padding-left:22px;font-size:13px;line-height:1.45;color:var(--ink2)}
.sources li{padding:4px 0;border-bottom:1px solid var(--line)}
.sources .u{display:block;font-family:var(--mono);font-size:10.5px;color:var(--muted);word-break:break-all}
.nfa{font-size:13.5px;font-weight:700;margin:18px 0 0;padding:9px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.proof{margin-top:18px;border:1px solid var(--ink);background:var(--surface);font-family:var(--mono);font-size:11.5px;line-height:1.6}
.proof .hd{display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:var(--bg);padding:6px 11px;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase}
.proof dl{display:grid;grid-template-columns:130px minmax(0,1fr);margin:0;padding:8px 11px;gap:2px 10px}
.proof dt{color:var(--muted)}
.proof dd{margin:0}
.proof .pend{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line2);padding:0 6px;border-radius:2px}
.proof .pend i{width:7px;height:7px;border-radius:50%;border:1.5px solid var(--em)}
.proof .ok{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line2);padding:0 6px;border-radius:2px}
.proof .ok i{width:7px;height:7px;border-radius:50%;background:var(--em);border:1.5px solid var(--em)}
.proof p{font-family:var(--sans);font-size:12px;color:var(--muted);margin:0;padding:8px 11px;border-top:1px solid var(--line);line-height:1.45}
.corr{font-size:12.5px;color:var(--ink2);margin-top:12px}
.aside .box{border:1px solid var(--line2);background:var(--surface);margin-bottom:16px}
.aside .box h4{display:flex;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin:0;padding:8px 11px;border-bottom:1px solid var(--line)}
.aside .box h4 span{font-family:var(--mono);font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted)}
.aside .box .in{padding:8px 11px}
.aside .figs{width:100%;border-collapse:collapse;font-size:12.5px}
.aside .figs td{padding:6px 11px;border-bottom:1px solid var(--line)}
.aside .figs tr:last-child td{border-bottom:0}
.aside .figs td.n{text-align:right;font-family:var(--mono);font-size:12.5px;font-weight:500;white-space:nowrap}
.aside .cal{font-size:13px;line-height:1.45}

/* brief */
.bhead{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:end;padding-top:12px}
.bhead h1{font-size:44px;line-height:1;font-weight:650;font-stretch:86%;letter-spacing:-.02em;margin:2px 0 8px}
.sched{border:1px solid var(--line2);background:var(--surface);font-size:12.5px}
.sched div{display:flex;justify-content:space-between;padding:7px 11px;border-top:1px solid var(--line)}
.sched div:first-child{border-top:0}
.sched b{font-weight:620}
.bgrid{display:grid;grid-template-columns:minmax(0,690px) minmax(0,1fr);gap:0 52px;padding-top:18px}
.bsec{margin-bottom:22px}
.bsec .mh{margin-bottom:6px}
.bitem{display:grid;grid-template-columns:30px minmax(0,1fr);padding:9px 0;border-bottom:1px solid var(--line);font-size:16px;line-height:1.55}
.bitem .n{font-family:var(--mono);font-size:11px;color:var(--muted);padding-top:4px}
.bitem p{margin:0}
.bitem .src{display:block;font-family:var(--mono);font-size:10.5px;color:var(--muted);margin-top:4px}
.caltab{width:100%;border-collapse:collapse;font-size:14px}
.caltab td{border-bottom:1px solid var(--line);padding:8px 12px 8px 0;vertical-align:top}
.caltab td:first-child{font-family:var(--mono);font-size:12px;white-space:nowrap;width:150px}

/* library */
.lhead{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:36px;padding-top:12px;align-items:start}
.lhead h1{font-size:46px;line-height:1;font-weight:650;font-stretch:86%;letter-spacing:-.02em;margin:2px 0 10px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line2);background:var(--surface)}
.stats div{padding:10px 12px;border-right:1px solid var(--line)}
.stats div:last-child{border-right:0}
.stats b{display:block;font-family:var(--mono);font-size:24px;font-weight:500}
.stats span{font-size:11px;color:var(--muted)}
.rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line);margin-top:14px}
.rules p{margin:0;padding:8px 14px 8px 0;font-size:13px;line-height:1.45;color:var(--ink2);border-bottom:1px solid var(--line)}
.rules b{color:var(--ink)}
.seg{display:flex;flex-wrap:wrap;border:1px solid var(--line2);background:var(--surface);margin:20px 0 14px;font-size:12.5px;font-weight:600}
.seg a{padding:8px 12px;border-right:1px solid var(--line);display:flex;gap:7px;align-items:center}
.seg a span{font-family:var(--mono);font-weight:400;font-size:11px;color:var(--muted)}
.seg a.on{background:var(--ink);color:var(--bg)}
.seg a.on span{color:var(--bg);opacity:.7}
.seg a.tagx{color:var(--muted);font-weight:500}
.ltbl td{padding-top:10px;padding-bottom:10px}
.ltbl .opn{font-size:12.5px;color:var(--ink2);line-height:1.4}
.ltbl .act{font-size:12px;white-space:nowrap}
.ltbl .act a{text-decoration:underline;text-decoration-color:var(--line2);text-underline-offset:2px}
.catrow td{background:var(--bg);font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--line2);padding-top:14px}
.catrow td span{font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted);margin-left:8px}

/* logo sheet */
.lsheet{padding:22px 0}
.lockups{display:grid;grid-template-columns:1.3fr 1fr;gap:0;border:1px solid var(--line2)}
.lockups>div{padding:34px 34px;min-height:220px;display:flex;flex-direction:column;justify-content:space-between}
.lockups .dk{background:var(--band)}
.lockups .lt{background:#FFFFFF}
.lockups .lt .logo{color:var(--ink)} .lockups .lt .logo .bk{border-color:var(--em)} .lockups .lt .logo .cd{background:var(--em)}
.lockups .cap{font-family:var(--mono);font-size:10.5px;color:var(--muted)}
.specs{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0;margin-top:18px;border-top:1px solid var(--ink)}
.specs>div{padding:12px 16px 12px 0}
.sw{display:flex;gap:0;border:1px solid var(--line2)}
.sw div{flex:1;height:64px;padding:6px 8px;font-family:var(--mono);font-size:10px;display:flex;align-items:flex-end}

/* responsive */
@media (max-width:1180px){
  .top .lead{grid-column:1/-1;padding-right:0;border-right:0;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:16px}
  .top .sec{grid-column:1/7;padding-left:0}
  .top .feed{grid-column:7/13}
  .row2 .pm,.row2 .lb{grid-column:1/-1;padding:0;border:0}
  .row2 .lb{margin-top:18px}
  .foot .cols6{grid-template-columns:repeat(4,1fr)}
  .foot .brand{grid-column:1/-1}
  .art,.bgrid{grid-template-columns:minmax(0,1fr) 300px;gap:0 32px}
}
@media (max-width:760px){
  .wrap{padding:0 16px}
  .mock .wrap span+span{display:none}
  .snap span.lg{display:none}
  .mast .wrap{height:auto;padding-top:12px;padding-bottom:12px;flex-wrap:wrap;gap:10px}
  .tag,.mast .meta{display:none}
  .logo{font-size:28px}
  .g{display:block}
  .top .lead,.top .sec,.top .feed,.row3 .a,.row3 .b,.row3 .c{padding:0!important;border:0!important}
  .top .sec,.top .feed,.row3 .b,.row3 .c{margin-top:20px;padding-top:14px!important;border-top:1px solid var(--line)!important}
  .h-xl{font-size:31px}
  .kv{grid-template-columns:1fr 1fr}
  .kv div{border-right:0;border-bottom:1px solid var(--line)}
  .kv div:nth-child(odd){border-right:1px solid var(--line)}
  .kv div:nth-last-child(-n+2){border-bottom:0}
  .cols .bar{width:30px}
  .lbside,.pp2{grid-template-columns:1fr}
  .tbl .hide-m{display:none}
  .ladder li{grid-template-columns:78px minmax(0,1fr) 40px}
  .ladder .ba{display:none}
  .foot .cols6{grid-template-columns:1fr 1fr}
  .foot .disc{grid-template-columns:1fr}
  .ahead,.art,.bgrid,.bhead,.lhead{grid-template-columns:1fr}
  .ahead h1,.bhead h1,.lhead h1{font-size:32px}
  .ahead .dek{font-size:17px}
  .byline>span{border-right:0;padding:6px 0;margin-right:0;width:100%;border-bottom:1px solid var(--line)}
  .byline>span:last-child{border-bottom:0}
  .body{font-size:17px}
  .body table{font-size:11.5px}
  .body .tscroll table{width:100%}
  .body .tscroll th:first-child,.body .tscroll td:first-child{white-space:normal}
  .body .tscroll th,.body .tscroll td{padding-right:8px}
  .aside{margin-top:24px}
  .proof dl{grid-template-columns:1fr}
  .proof dt{margin-top:4px}
  .stats{grid-template-columns:1fr 1fr}
  .rules{grid-template-columns:1fr}
}

/* lead: inside the filing */
.inside{margin:14px 0 0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink)}
.inside a{display:block;padding:9px 14px 10px 0;border-bottom:1px solid var(--line)}
.inside a:nth-child(even){padding-left:14px;border-left:1px solid var(--line)}
.inside b{display:block;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:2px}
.inside span{font-size:14px;line-height:1.35;font-weight:520}
.inside a:hover span{color:var(--em-ink)}
@media (max-width:760px){.inside{grid-template-columns:1fr}.inside a:nth-child(even){padding-left:0;border-left:0}}

@media (max-width:760px){
  .chart .hd{flex-direction:column;gap:2px}
  .pp2 .thumb{height:150px;min-height:0;aspect-ratio:auto}
  .mh{flex-direction:column;align-items:flex-start}
  .mh small{margin-top:2px}
}
.kv span{display:block;line-height:1.3;margin-top:2px}
@media (max-width:760px){ .kick .t{display:none} }

/* ===== footer: corner mark only by the header logo ===== */
.foot .logo .bk{display:none}

/* ===== Library deep dive (library-near.html) ===== */
.dive .crumb a:hover{color:var(--em-ink)}
.dive .crumb span{color:var(--ink)}
.dhead{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:0 48px;align-items:end;padding:14px 0 18px;border-bottom:1px solid var(--ink)}
.dhead .kick{display:flex;align-items:center;gap:8px}
.dhead h1{font-size:60px;line-height:1;font-weight:650;font-stretch:86%;letter-spacing:-.025em;margin:8px 0 12px}
.dhead .dek{font-size:19px;line-height:1.45;max-width:720px;margin:0;color:var(--ink2)}
.dmeta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line2);background:var(--surface)}
.dmeta>div{padding:10px 12px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:2px}
.dmeta>div:last-child{border-right:0}
.dmeta span{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.dmeta b{font-size:18px;font-weight:600;line-height:1.2}
.dmeta b.num{font-weight:500}
.dmeta em{font-style:normal;font-size:11px;color:var(--muted);line-height:1.3}
.dmeta em.num{font-size:10.5px}
.dmeta .ex{justify-content:center;background:var(--bg)}
.xbtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#085538;color:#fff;font-size:13px;font-weight:600;padding:8px 12px;border-radius:2px;white-space:nowrap;min-height:24px;text-decoration:none}
.xbtn:hover{background:var(--em-ink)}
.xbtn.wide{display:flex;margin-bottom:8px}
.dgrid{display:grid;grid-template-columns:220px minmax(0,700px) minmax(0,1fr);gap:0 44px;padding-top:24px;align-items:start}
.toc{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow:auto;font-size:13px;border-top:1px solid var(--ink);padding-top:8px}
.toc .th,.toc .th2{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.toc .th2{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.toc .th2 a{color:var(--ink)} .toc .th2 a:hover{color:var(--em-ink)}
.toc ol,.toc-m ol{list-style:none;margin:0;padding:0}
.toc li a{display:block;padding:4px 0 4px 10px;border-left:2px solid var(--line);color:var(--ink2);line-height:1.3}
.toc li.l2 a{font-weight:600;color:var(--ink);margin-top:4px}
.toc li.l3 a{padding-left:20px;font-size:12.5px}
.toc li a span{font-family:var(--mono);font-size:10.5px;color:var(--muted)}
.toc li a:hover{color:var(--em-ink)}
.toc li a.on{border-left-color:var(--ink);color:var(--ink);background:var(--surface)}
.toc-m{display:none}
.dbody{font-size:17px;line-height:1.62}
.dbody p{margin:0 0 15px}
.dbody h2{display:flex;gap:10px;align-items:baseline;font-size:26px;font-weight:650;font-stretch:90%;letter-spacing:-.015em;margin:34px 0 12px;padding-top:12px;border-top:1px solid var(--ink);scroll-margin-top:16px}
.dbody h2:first-child{margin-top:0}
.dbody h2 .sn{font-family:var(--mono);font-size:15px;font-weight:500;color:var(--muted);letter-spacing:0}
.dbody h3{font-size:18px;font-weight:650;margin:26px 0 8px;scroll-margin-top:16px}
.dbody code{font-family:var(--mono);font-size:.84em;background:var(--surface);border:1px solid var(--line);padding:0 4px;border-radius:2px;white-space:nowrap}
.cite{font-family:var(--mono);font-size:11px;color:var(--muted);vertical-align:2px;padding:0 1px;white-space:nowrap}
.cite:hover{color:var(--em-ink)}
.cite:target,.srcs li:target{background:var(--em-soft)}
.dbody ul.kf,.dbody ol.kf{margin:4px 0 18px;padding:0;border-top:1px solid var(--line)}
.dbody .kf li{list-style:none;padding:9px 0 9px 0;border-bottom:1px solid var(--line);font-size:16px;line-height:1.55}
.dbody .kf li strong{font-weight:680}
.dbody ul.kf li strong.blk{display:block;font-size:12px;letter-spacing:.05em;text-transform:uppercase;font-weight:700;margin-bottom:2px}
.dbody ol.kf{counter-reset:k}
.dbody ol.kf li{counter-increment:k;position:relative;padding-left:30px}
.dbody ol.kf li::before{content:counter(k) ".";position:absolute;left:0;top:11px;font-family:var(--mono);font-size:13px;color:var(--muted)}
.dbody p.lq strong{font-weight:680}
.tw{overflow-x:auto;margin:6px 0 20px;border-top:1px solid var(--ink)}
.dtbl{width:100%;border-collapse:collapse;font-size:14px;line-height:1.45}
.dtbl th{text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 14px 6px 0;border-bottom:1px solid var(--line2)}
.dtbl td{padding:9px 14px 9px 0;border-bottom:1px solid var(--line);vertical-align:top}
.dtbl td:first-child{font-family:var(--mono);font-size:12px;white-space:nowrap;width:150px;color:var(--ink2);padding-top:11px}
.dsrc h2,.dhist h2{font-size:20px}
.srcs{list-style:none;margin:0;padding:0;font-size:13.5px;line-height:1.5;color:var(--ink2)}
.srcs li{display:grid;grid-template-columns:34px minmax(0,1fr);padding:8px 0;border-bottom:1px solid var(--line);scroll-margin-top:16px}
.srcs .no{font-family:var(--mono);font-size:12px;color:var(--muted);padding-top:1px}
.srcs a.url{font-family:var(--mono);font-size:11.5px;color:var(--ink);word-break:break-all;text-decoration:underline;text-decoration-color:var(--line2);text-underline-offset:2px}
.srcs a.url:hover{color:var(--em-ink)}
.srcs code{font-family:var(--mono);font-size:11.5px;background:var(--surface);border:1px solid var(--line);padding:0 3px;border-radius:2px;word-break:break-all}
.srcs .bk{font-family:var(--mono);font-size:11px;color:var(--muted);margin-left:4px}
.srcs li.cs>div{border-left:2px solid var(--ink);padding-left:10px}
.srcs .rpc{display:inline-block;font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line2);padding:0 5px;border-radius:2px;margin-bottom:4px;color:var(--ink2)}
.srcs .ld{display:block;font-weight:600;color:var(--ink)}
.srcs .dt{display:block;margin-top:3px}
.srcs .xc{display:block;margin-top:5px;padding-top:5px;border-top:1px dashed var(--line2);font-size:12.5px;color:var(--muted)}
.dhist .lbl{font-size:13px;margin:0 0 4px}
.chlog{margin:0;padding:0;font-size:13.5px;line-height:1.5;color:var(--ink2)}
.chlog li{list-style:none;padding:8px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.drail{position:sticky;top:16px}
.drail .box{border:1px solid var(--line2);background:var(--surface);margin-bottom:14px}
.drail h4{display:flex;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin:0;padding:8px 11px;border-bottom:1px solid var(--line)}
.drail h4 span{font-family:var(--mono);font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted)}
.drail .in{padding:10px 11px;font-size:12.5px;line-height:1.45;color:var(--ink2)}
.drail .in p{margin:0 0 6px}.drail .in p:last-child{margin:0}
.rec{display:grid;grid-template-columns:72px minmax(0,1fr);margin:0;font-size:12.5px;line-height:1.4}
.rec dt,.rec dd{padding:7px 11px;border-bottom:1px solid var(--line);margin:0}
.rec dt{font-family:var(--mono);font-size:10.5px;color:var(--muted);text-transform:uppercase;padding-right:0}
.rec dd{padding-left:4px}
.rec dt:nth-last-child(2),.rec dd:last-child{border-bottom:0}
.rel{margin:44px 0 40px}
.relg{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
.relg li{display:grid;grid-template-columns:140px minmax(0,1fr) 60px;gap:0 12px;padding:10px 0;border-bottom:1px solid var(--line);align-items:baseline}
.relg .c{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;color:var(--muted)}
.relg a b{font-size:15px;font-weight:650}
.relg a:hover b{color:var(--em-ink)}
.relg .v{font-family:var(--mono);font-size:11px;color:var(--muted);text-align:right}
.relg p{grid-column:2/4;margin:2px 0 0;font-size:13px;line-height:1.45;color:var(--ink2)}
@media (max-width:1180px){
  .dhead{grid-template-columns:1fr}.dmeta{margin-top:16px}
  .dgrid{grid-template-columns:200px minmax(0,1fr)}
  .drail{position:static;grid-column:2;margin-top:24px}
}
@media (max-width:760px){
  .dhead h1{font-size:42px}.dhead .dek{font-size:17px}
  .dmeta{grid-template-columns:1fr 1fr}
  .dmeta>div:nth-child(2){border-right:0}
  .dmeta>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .dgrid{display:block;padding-top:8px}
  .toc{display:none}
  .toc-m{display:block;border:1px solid var(--line2);background:var(--surface);margin-top:14px}
  .toc-m summary{padding:10px 12px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
  .toc-m ol{padding:0 12px 10px}
  .toc-m li a{display:block;padding:5px 0;border-top:1px solid var(--line);font-size:14px}
  .toc-m li.l3 a{padding-left:14px;font-size:13px;color:var(--ink2)}
  .dbody{font-size:16.5px;padding-top:16px}
  .dbody h2{font-size:22px}
  .dtbl td:first-child{width:auto;white-space:normal;min-width:92px}
  .dbody code{white-space:normal;word-break:break-word}
  .relg{grid-template-columns:1fr}
  .relg li{grid-template-columns:1fr 50px}
  .relg .c{grid-column:1/3}
  .relg p{grid-column:1/3}
}
.dbody sup{font-size:.68em;line-height:0}
.srcs li:not(.cs) a.url{display:block;width:fit-content;margin-top:1px}
.relg li{grid-template-columns:118px minmax(0,1fr) 60px}
@media (max-width:760px){.relg li{grid-template-columns:1fr 50px}}
.cg{white-space:nowrap}

/* ===== figures (SVG, hand-built) ===== */
.dfig{margin:22px 0 26px;padding:12px 0 0;border-top:1px solid var(--ink)}
.dfig figcaption{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0 0 14px}
#fig-1 figcaption,#fig1 figcaption{display:block;min-width:0;margin:10px 0 14px;font-size:14px;line-height:1.45;color:var(--ink2)}
.dfig .fno{font-family:var(--mono);font-size:11.5px;font-weight:600;color:var(--em-ink);letter-spacing:.02em}
.dfig .fti{font-size:15px;font-weight:650;color:var(--ink)}
.dfig .fpend{margin-left:auto;font-family:var(--mono);font-size:9.5px;color:var(--muted);border:1px dashed var(--faint);padding:0 4px}
.fv-n{display:none}
.fx{display:block;width:100%;height:auto;overflow:visible}
.fx *{vector-effect:non-scaling-stroke}
.fx text{font-family:var(--sans);font-size:11.5px;fill:var(--ink2);font-variant-numeric:tabular-nums}
.fx .fx-th{font-size:12.5px;font-weight:650;fill:var(--ink)}
.fx .fx-thmono{font-family:var(--mono);font-size:12px;font-weight:500;fill:var(--ink)}
.fx .fx-ts{font-size:11px;fill:var(--ink2)}
.fx .fx-tsem{font-size:11px;font-weight:620;fill:var(--em-ink)}
.fx .fx-tm{font-family:var(--mono);font-size:10px;fill:var(--muted)}
.fx .fx-tmb{font-family:var(--mono);font-size:10px;font-weight:600;fill:var(--ink)}
.fx .fx-tmem{font-family:var(--mono);font-size:10.5px;font-weight:500;fill:var(--em-ink)}
.fx .fx-tmono{font-family:var(--mono);font-size:11px;fill:var(--ink)}
.fx .fx-tk{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;fill:var(--muted)}
.fx-l{stroke:var(--ink);stroke-width:1;fill:none}
.fx-l2{stroke:var(--ink);stroke-width:1.75;fill:none}
.fx-m{stroke:var(--line2);stroke-width:1;fill:none}
.fx-g{stroke:var(--line);stroke-width:1}
.fx-em{stroke:var(--em);stroke-width:1.25;fill:none}
.fx-em2{stroke:var(--em);stroke-width:2.25;fill:none}
.fx-box{fill:var(--surface);stroke:var(--ink);stroke-width:1}
.fx-boxem{fill:var(--em-soft);stroke:var(--em);stroke-width:1}
.fx-box2{fill:none;stroke:var(--line2);stroke-width:1}
.fx-cell{fill:var(--bg);stroke:var(--ink2);stroke-width:1}
.fx-dot{fill:var(--surface);stroke:var(--ink2);stroke-width:1}
.fx-dotem{fill:var(--em)}
.fx-dotk{fill:var(--ink)}
.fx-mk{fill:none;stroke:var(--ink);stroke-width:1}
.fx-mkem{fill:none;stroke:var(--em);stroke-width:1.25}
.fx-mkm{fill:none;stroke:var(--line2);stroke-width:1}
.dfig .fsrc{margin:12px 0 0;font-family:var(--mono);font-size:10.5px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
.dfig .fsrc code{font-size:10px}
@media (max-width:760px){.fv-w{display:none}.fv-n{display:block}.dfig .fpend{margin-left:0}}

/* ===== Proposed v0.2.3 markers (NEAR dive) ===== */
.srcs li.prop .fpend,.chlog li.prop::before{display:inline-block;font-family:var(--mono);font-size:9.5px;color:var(--muted);border:1px dashed var(--faint);padding:0 4px;margin:0 0 4px}
.srcs li.prop .fpend{display:table}
.chlog li.prop::before{content:'Proposed · pending Copy & Fact';display:table}
.vlbl{margin:0 0 6px;font-family:var(--mono);font-size:11px;color:var(--em-ink)}
.drail{position:static}

/* ===== v3.1 emerald warm-up (owner request, Oct. 6) =====
   One accent family only: --em (#12805A), --em-ink (darker, text), --em-soft (light tint). Falls stay ink with ▼. */
.band{border-bottom:3px solid var(--em)}
.tabs a.on::after{background:var(--em);height:3px;bottom:-1px}
.kick{color:var(--em-ink)}
.mh{border-bottom-color:var(--em)}
.chip.cat{background:var(--em-soft);border-color:var(--em-soft);color:var(--em-ink);font-weight:600}
.chip.em{background:var(--em-soft)}
.body a:not(.cite),.dbody p a:not(.cite),.dek a{color:var(--em-ink);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--em) 40%,transparent);text-underline-offset:3px}
.h-xl a:hover,.h-l a:hover,.h-m a:hover,.h-s a:hover{color:var(--em-ink)}
.cite{color:var(--em-ink)}
.cols .bar.s{background:var(--em)}
.pbar i{background:var(--em)}
.ladder .v{color:var(--em-ink)}
.pmc .big{color:var(--em-ink)}
.chart .kv b{color:var(--em-ink)}
.feedl .chip.em{background:var(--em-soft)}
.callout{background:var(--em-soft);border-color:var(--em-soft)}
.aside .box h4,.drail .box h4{background:var(--em-soft);border-bottom-color:var(--em-soft);color:var(--em-ink)}
.drail .box:first-child{border-color:var(--em)}
.proof .hd{background:var(--em-ink);color:#fff}
.proof .pend i,.proof .ok i,.pstat i{background:var(--em);border-color:var(--em)}
.nfa{border-top-color:var(--em)}
.dbody h2{border-top-color:var(--em)}
.dbody h2 .sn{color:var(--em-ink)}
.dbody p.lq strong{color:var(--em-ink)}
.toc li a.on{border-left-color:var(--em);color:var(--em-ink)}
.toc{border-top-color:var(--em)}
.dmeta{border-top:3px solid var(--em)}
.srcs li.cs>div{border-left-color:var(--em)}
.srcs .rpc{background:var(--em-soft);border-color:var(--em-soft);color:var(--em-ink)}
.tbl tr.new td:first-child{box-shadow:none}
.foot{border-top:3px solid var(--em)}
.foot h5{color:var(--band-em)}
.soonbar{border-left:3px solid var(--em)}
.inside{border-top-color:var(--em)}
.inside b{color:var(--em-ink)}
.relg .c{color:var(--em-ink)}
.lhead .stats b,.stats b{color:var(--em-ink)}
.seg a.on{background:var(--em-ink);color:#fff}
.seg a.on span{color:#fff;opacity:1}
.dfig{border-top-color:var(--em)}
body.dark .proof .hd{color:#0F1111}
body.dark .chip.cat{color:var(--em-ink)}
.xbtn{background:#085538;color:#fff} .xbtn:hover{background:var(--ink);color:#fff}
.dfig svg{overflow:visible}
/* AI-agent disclosure tag (authors.yml) */
.aitag{display:inline-block;font-family:var(--mono);font-size:9.5px;line-height:1;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--em-ink);border:1px solid var(--em);border-radius:2px;padding:2px 4px 2px;margin-left:3px;vertical-align:1px;text-decoration:none;white-space:nowrap;background:transparent}
.aitag:hover{background:var(--em-soft)}
#ai-disclosure{scroll-margin-top:16px}
@media (min-width:761px){.byline>span{padding-right:12px;margin-right:12px}.byline .aitag{margin-left:2px}}
.byline>span.brk{flex-basis:100%;height:0;padding:0;margin:0;border:0}
.byline>span:has(+ .brk){border-right:0}
.byline>span.brk ~ span{padding-top:0}
@media (max-width:760px){.byline>span.brk{display:none}.byline>span:has(+ .brk){border-bottom:1px solid var(--line)}}
/* ---------- tags (tags.yml) ---------- */
.tg{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:11px;font-weight:500;line-height:1;letter-spacing:.02em;color:var(--em-ink);border:1px solid var(--em);border-radius:2px;padding:6px 10px;min-height:24px;background:transparent;text-decoration:none;white-space:nowrap;cursor:pointer}
.tg.tg-category,.tg.tg-asset{background:var(--em-soft);border-color:var(--em-soft)}
.tg.tg-asset{font-weight:700}
a.tg:hover,button.tg:hover{border-color:var(--em-ink)}
.tg.sm{font-size:10px;padding:2px 5px}
.tg.on,button.tg[aria-pressed="true"]{background:var(--em-ink);border-color:var(--em-ink);color:#fff}
button.tg span{font-weight:400;opacity:.7}
.tagrow{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}
.tagrow .tl{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-right:4px}
.tagrow ul,.ftags{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.ftags{gap:4px;margin-top:6px}
.tagfilter{border:1px solid var(--line2);border-top:3px solid var(--em);background:var(--surface);padding:10px 12px 12px;margin:0 0 14px}
.tagfilter .tfh{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:8px;font-size:12.5px}
.tagfilter .tfh b{font-size:13px}
.tagfilter .tfh span{color:var(--muted)}
.tagfilter .tfs{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--em-ink)!important}
.tagfilter .tfc{font:inherit;font-size:11.5px;border:1px solid var(--line2);background:var(--bg);padding:2px 8px;border-radius:2px;cursor:pointer}
.tfg{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:5px 0;border-top:1px solid var(--line)}
.tfg .tfl{width:70px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.ltbl tr[hidden],.titems li[hidden]{display:none}
.taghead{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:14px 0 18px;border-bottom:1px solid var(--ink);margin-bottom:18px}
.taghead h1{display:flex;align-items:center;gap:14px;font-size:56px;line-height:1;font-weight:650;font-stretch:86%;letter-spacing:-.02em;margin:8px 0 12px}
.taghead h1 .tg{font-size:20px;padding:6px 10px}
.taghead h1 .tn{display:none}
.taghead .dek{font-size:18px;color:var(--ink2);max-width:720px;margin:0}
.tagstats{display:flex;border:1px solid var(--line2);border-top:3px solid var(--em);background:var(--surface)}
.tagstats>div{padding:10px 16px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:3px}
.tagstats>div:last-child{border-right:0}
.tagstats b{font-family:var(--mono);font-size:24px;font-weight:500;color:var(--em-ink)}
.tagstats span{font-size:11.5px;color:var(--muted)}
.tagstats .feedlink{font-family:var(--mono);font-size:12px;color:var(--em-ink);text-decoration:underline}
.tgrid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px}
.titems{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.titems .ti{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.titems .tt{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--muted)}
.titems .tt .num:first-child{color:var(--ink);font-weight:500}
.titems h2{font-size:24px;line-height:1.15;font-weight:650;font-stretch:90%;margin:3px 0 6px}
.titems h2 a:hover{color:var(--em-ink)}
.titems .meta{font-family:var(--mono);font-size:11px;color:var(--muted);margin:6px 0 0}
.titems .nores{padding:14px 0}
.dhead .tagrow{border-bottom:0;padding:10px 0 0}
@media (max-width:760px){
 .taghead,.tgrid{grid-template-columns:1fr}.taghead h1{font-size:40px}
 .tagstats{flex-wrap:wrap}.titems .ti{grid-template-columns:1fr;gap:6px}
 .tagfilter .tfs{margin-left:0;width:100%}.tfg .tfl{width:100%}
}
.ftags li.more{font-family:var(--mono);font-size:10px;color:var(--muted);align-self:center} .feedl .ftags{margin-top:5px} .ftags li{line-height:1}
.lc-photo-card{
  --lc-photo-pos: 100% 19%;
  --lc-photo-zoom: 1.25;
  --lc-shade: 1;
  position:relative; margin:0; width:100%; aspect-ratio:16/9; overflow:hidden;
  background:#0d0d0c; container-type:inline-size;
}
.lc-photo-card__img{
  position:absolute; inset:0; width:100%; height:100%; display:block;
  object-fit:cover; object-position:var(--lc-photo-pos);
  transform:scale(var(--lc-photo-zoom)); transform-origin:var(--lc-photo-pos);
}
.lc-photo-card__shade{
  position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(115% 100% at 0% 100%,
      rgb(8 9 8 / calc(var(--lc-shade) * .86)) 0%,
      rgb(8 9 8 / calc(var(--lc-shade) * .78)) 22%,
      rgb(8 9 8 / calc(var(--lc-shade) * .56)) 40%,
      rgb(8 9 8 / calc(var(--lc-shade) * .30)) 56%,
      rgb(8 9 8 / calc(var(--lc-shade) * .12)) 68%,
      rgb(8 9 8 / 0) 80%),
    linear-gradient(to top,
      rgb(8 9 8 / calc(var(--lc-shade) * .72)) 0%,
      rgb(8 9 8 / calc(var(--lc-shade) * .52)) 12%,
      rgb(8 9 8 / calc(var(--lc-shade) * .24)) 24%,
      rgb(8 9 8 / calc(var(--lc-shade) * .08)) 32%,
      rgb(8 9 8 / 0) 40%),
    linear-gradient(to bottom,
      rgb(8 9 8 / calc(var(--lc-shade) * .42)) 0%,
      rgb(8 9 8 / calc(var(--lc-shade) * .20)) 9%,
      rgb(8 9 8 / 0) 20%);
}
.lc-photo-card__grain{
  position:absolute; inset:0; pointer-events:none; opacity:.07; mix-blend-mode:overlay;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .5 0 0 0 0 .5 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.lc-photo-card__txt{ position:absolute; left:6cqw; bottom:6.667cqw; width:43.333cqw; }
.lc-photo-card__mark{ position:absolute; left:6cqw; top:4cqw; margin:0; font:700 2.333cqw/1 "LC Grotesk",sans-serif; letter-spacing:-.035em; color:#F2F3F1; }
.lc-photo-card__mark .i{ position:relative; display:inline-block; }
.lc-photo-card__mark .stem{ display:inline-block; clip-path:inset(0.42em 0 0 0); }
.lc-photo-card__mark .cd{ position:absolute; left:50%; top:-.02em; width:.2em; height:.2em; margin-left:-.1em; border-radius:50%; background:#3CC487; }
.lc-photo-card__rule{ width:3.667cqw; height:max(2px,.25cqw); background:#12805A; margin-bottom:1.333cqw; }
.lc-photo-card__kicker{ margin:0; font:600 2.167cqw/1 "LC Franklin",sans-serif; color:#fff; letter-spacing:.005em; }
.lc-photo-card__title{ margin:1.167cqw 0 0; font:800 5.833cqw/1 "LC Franklin",sans-serif; color:#fff; letter-spacing:-.028em; }
.lc-photo-card__credit{
  position:absolute; right:3.333cqw;  bottom:3.333cqw; margin:0;
  font:400 1.083cqw/1 "LC Franklin",sans-serif; color:#fff; opacity:.7; letter-spacing:.01em;
}
.lc-photo-credit-text{ margin:6px 0 0; font:400 12px/1.3 "LC Franklin",sans-serif; color:#5E625F; text-align:right; }

/* nav-dropdown (UX hub-nav-academy v3): plain text list, no cards/images, no link underlines */
.nav-dd{position:relative;display:flex}
/* Panel colours: one token set per tone (the tone prop on <NavDropdown>). light = the original UX spec. */
.nav-dd--tone-light{--dd-bg:#fff;--dd-border:#e5e5e5;--dd-ink:#111;--dd-hover-bg:#f5f5f5;--dd-hover-ink:#111;--dd-ring:#0b6b4f;--dd-cur:#0b6b4f}
.nav-dd--tone-emerald{--dd-bg:var(--em);--dd-border:var(--em-ink);--dd-ink:#fff;--dd-hover-bg:var(--em-ink);--dd-hover-ink:#fff;--dd-ring:#fff;--dd-cur:#fff}
.nav-dd--tone-black{--dd-bg:var(--band);--dd-border:var(--band-line);--dd-ink:var(--band-ink);--dd-hover-bg:var(--band-line);--dd-hover-ink:#fff;--dd-ring:var(--band-em);--dd-cur:var(--band-em)}
.nav-dd__btn{font:inherit;color:inherit;background:none;border:0;display:inline-flex;gap:6px;align-items:center;cursor:pointer;margin:0}
.nav-dd__chev{width:10px;height:6px;transition:transform .15s}.nav-dd__btn[aria-expanded=true] .nav-dd__chev{transform:rotate(180deg)}
.nav-dd__menu{margin:0;padding:6px 0;list-style:none;background:var(--dd-bg);border:1px solid var(--dd-border);border-radius:6px;box-shadow:0 6px 18px rgba(0,0,0,.06);z-index:60;min-width:180px}
.nav-dd__menu[hidden]{display:none}
.nav-dd--float .nav-dd__menu{position:fixed}
.nav-dd__menu li{margin:0;padding:0;border:0}
.nav-dd__menu a,.tabs .nav-dd__menu a{display:block;padding:9px 14px;font:400 14px/1.3 'Libre Franklin',sans-serif;color:var(--dd-ink);text-decoration:none;border:0;height:auto;white-space:nowrap}
.nav-dd__menu a:hover,.nav-dd__menu a:focus-visible{background:var(--dd-hover-bg);color:var(--dd-hover-ink);text-decoration:none}.nav-dd__menu a:focus-visible{outline:2px solid var(--dd-ring);outline-offset:-3px}
.nav-dd__menu a[aria-current=page]{color:var(--dd-cur);font-weight:600;box-shadow:inset 3px 0 var(--dd-cur)}
.nav-dd__btn:focus-visible{outline:2px solid #0b6b4f;outline-offset:-2px}
/* header strip: the button looks like the other tabs, active state uses the existing tab marks */
.tabs .nav-dd__btn{position:relative;display:flex;align-items:center;padding:0 14px;font-size:13.5px;font-weight:600;color:var(--ink2);border-right:1px solid var(--line);height:100%;font-family:inherit}
.tabs .nav-dd__btn.on{color:var(--ink);background:var(--bg)}
.tabs .nav-dd__btn.on::before{content:"";position:absolute;left:5px;top:6px;width:7px;height:7px;border-top:2px solid var(--em);border-left:2px solid var(--em)}
.tabs .nav-dd__btn.on::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--em)}
/* Menu drawer: accordion rows (44px+), items indented */
.ndrawer .nav-dd{display:block}
.ndrawer .nav-dd__btn{width:100%;justify-content:space-between;min-height:44px;padding:12px 0;font-size:17px;font-weight:600;text-align:left}
.ndrawer .nav-dd__menu{position:static;border:1px solid var(--dd-border);box-shadow:none;padding:4px 0;margin:4px 0 8px;border-radius:6px;background:var(--dd-bg)}
.ndrawer .nav-dd__menu a{padding:12px 18px 12px 34px;font-size:16px;min-height:44px;box-sizing:border-box}

.skip {
  position: absolute;
  left: -999px;
  top: 0;
  background: var(--bg);
  color: var(--ink);
  padding: 8px 12px;
  z-index: 20;
}
.skip:focus {
  left: 8px;
  top: 8px;
}
:focus-visible {
  outline: 2px solid var(--em);
  outline-offset: 2px;
}
.previewbar {
  background: #141615;
  color: #c9cdc9;
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: 0.03em;
  border-bottom: 1px solid var(--em);
}
.previewbar .wrap {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  padding-top: 6px;
  padding-bottom: 6px;
}
.previewbar a {
  color: var(--band-em);
}
.previewbar a:hover {
  color: #fff;
}
.row2 .lb.solo {
  grid-column: 1 / -1;
  padding-left: 0;
}
.empty {
  border: 1px solid var(--line2);
  background: var(--surface);
  padding: 14px 16px;
  color: var(--ink2);
  font-size: 14.5px;
  line-height: 1.5;
}
.empty p {
  margin: 0 0 8px;
}
.empty p:last-child {
  margin: 0;
}
.searchq {
  width: 100%;
  font: inherit;
  font-size: 18px;
  padding: 10px 12px;
  border: 1px solid var(--ink);
  border-radius: 2px;
  background: var(--surface);
  color: var(--ink);
}
.std h2 {
  font-size: 22px;
  font-weight: 650;
  margin: 28px 0 8px;
  scroll-margin-top: 16px;
}
.std p,
.std li {
  font-size: 16.5px;
  line-height: 1.55;
  color: var(--ink2);
}
.std ul {
  margin: 0 0 12px;
  padding-left: 1.2em;
}
.masthead-list {
  width: 100%;
  border-collapse: collapse;
}
.masthead-list th {
  text-align: left;
  font-size: 10.5px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--muted);
  border-bottom: 1px solid var(--ink);
  padding: 0 10px 6px 0;
}
.masthead-list td {
  border-bottom: 1px solid var(--line);
  padding: 8px 10px 8px 0;
  vertical-align: top;
}
.lc-contents {
  display: contents;
}
.story {
  display: grid;
  grid-template-columns: minmax(0, 690px) minmax(0, 1fr);
  column-gap: 52px;
  align-items: start;
}
.story .ahead {
  grid-column: 1 / -1;
  grid-row: 1;
}
.story .byline {
  grid-column: 1 / -1;
  grid-row: 2;
}
.story .tagrow,
.story .piece-out {
  grid-column: 1 / -1;
  grid-row: 3;
}
.story .body {
  grid-column: 1;
  grid-row: 4;
  padding-top: 8px;
}
.story .aside {
  grid-column: 2;
  grid-row: 4;
  padding-top: 20px;
}
.dive-frame {
  display: grid;
  grid-template-columns: 220px minmax(0, 700px) minmax(0, 1fr);
  column-gap: 44px;
  align-items: start;
}
.dive-frame .dhead {
  grid-column: 1 / -1;
  grid-row: 1;
}
.dive-frame .tagrow {
  grid-column: 1 / -1;
  grid-row: 2;
}
.dive-frame .toc {
  grid-column: 1;
  grid-row: 3;
}
.dive-frame .dbody {
  grid-column: 2;
  grid-row: 3;
  padding-top: 24px;
}
.dive-frame .drail {
  grid-column: 3;
  grid-row: 3;
  padding-top: 24px;
}
.dive-frame .toc-m {
  display: none;
}
.page-narrow {
  max-width: 760px;
}
.story .piece-out {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
  padding-top: 10px;
}
.box .boxh,
.dbody .box .boxh,
.aside .box .boxh,
.drail .box .boxh {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin: 0;
  padding: 8px 11px;
  background: var(--em-soft);
  border-bottom: 1px solid var(--em-soft);
  color: var(--em-ink);
}
.box .boxh span {
  font-family: var(--mono);
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  color: var(--em-ink);
}
.dbody .box,
.page-record {
  border: 1px solid var(--line2);
  background: var(--surface);
  margin: 0 0 18px;
}
.foot .fh {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: -0.01em;
  text-transform: none;
  color: var(--ink);
  margin: 0 0 7px;
}
.foot .disc b,
.foot h5 { color: var(--ink); }
.foot li a,
.fine a {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
}
.sources a.url,
.srcs a.url,
.sources .sub a {
  color: var(--em-ink);
  display: inline-block;
  min-height: 24px;
  line-height: 24px;
  overflow-wrap: anywhere;
}
.sources .sub {
  margin-top: 2px;
}
.seat {
  margin: 0 0 2px;
  color: var(--ink2);
  font-size: 15px;
}
.utcnote {
  margin: 8px 0 16px;
  font-family: var(--mono);
  font-size: 12px;
  color: var(--muted);
}
.sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media (max-width: 1180px) {
  .story {
    grid-template-columns: minmax(0, 1fr) 280px;
    column-gap: 28px;
  }
  .dive-frame {
    grid-template-columns: 180px minmax(0, 1fr);
  }
  .dive-frame .drail {
    grid-column: 1 / -1;
    grid-row: 4;
  }
}
@media (max-width: 760px) {
  .previewbar .wrap span + span {
    display: none;
  }
  .story,
  .dive-frame {
    display: flex;
    flex-direction: column;
  }
  .story .ahead,
  .story .byline,
  .story .tagrow,
  .story .piece-out,
  .story .body,
  .story .aside,
  .dive-frame .dhead,
  .dive-frame .tagrow,
  .dive-frame .toc-m,
  .dive-frame .dbody,
  .dive-frame .drail {
    grid-column: auto;
    grid-row: auto;
  }
  .story .ahead { order: 1; }
  .story .byline { order: 2; }
  .story .piece-out,
  .story .tagrow { order: 3; }
  .story .body { order: 4; min-width: 0; max-width: 100%; }
  .story .aside { order: 5; padding-top: 8px; }
  .dive-frame .dhead { order: 1; }
  .dive-frame .tagrow { order: 2; }
  .dive-frame .toc { display: none; }
  .dive-frame .toc-m { display: block; order: 3; }
  .dive-frame .dbody { order: 4; padding-top: 12px; }
  .dive-frame .drail { order: 5; }
}
@media print {
  .previewbar,
  .strip,
  .tabs,
  .foot,
  .aside,
  .drail,
  .toc,
  .toc-m,
  .tagfilter,
  .piece-out,
  .xbtn {
    display: none !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  * {
    scroll-behavior: auto !important;
  }
}
.callout .boxh {
  margin: 0 0 6px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
  color: var(--em-ink);
  background: transparent;
  padding: 0;
  border: 0;
}

h1, h2, h3, .h-xl, .h-l, .h-m, .h-s, .mh, .kick, .tabs a, .fh, .ahead h1, .dhead h1, .bhead h1, .lhead h1, .taghead h1 {
  font-family: var(--display);
  font-stretch: 100%;
  letter-spacing: -0.01em;
  line-height: 1.1;
}
.h-xl, .ahead h1, .dhead h1, .bhead h1, .lhead h1, .taghead h1 { font-weight: 800; }
.h-l, .h-m, .h-s, h2, h3, .mh { font-weight: 700; text-transform: none; letter-spacing: -0.01em; }
.mh { font-size: 18px; }
.logo { font-family: var(--logo); }
.previewbar, .tabs a.soon small, .tagrow .tl, .proof { font-family: var(--sans); letter-spacing: 0; text-transform: none; }
.strip .px, .strip .ch, td.n, .figs .n { font-family: var(--mono); font-variant-numeric: tabular-nums; }
.when { font-variant-numeric: tabular-nums; }
.body, .dbody, .dek { font-size: 18px; line-height: 1.6; }
.strip { background: #f6f7f6; color: var(--ink); border-bottom: 1px solid var(--line); }
.strip .tk .sym, .strip .snap, .strip .tk .px { color: var(--ink); }
.strip .tk .px, .strip .ch { font-family: var(--mono); }
.strip .up { color: var(--em-ink); }
.strip .tk { border-right-color: var(--line); }
.foot { background: #f6f7f6; color: var(--ink2); border-top: 1px solid var(--line); }
.foot a { color: inherit; }
.foot .logo { color: var(--ink); }
.page-record, .proof { background: #f6f7f6; font-family: var(--sans); }
.proof .hd { letter-spacing: 0; text-transform: none; font-family: var(--display); }
.box, .aside .box, .drail .box, .callout, .empty, .soonbar, .brf, .sched, .stats, .tagfilter, .tagstats {
  border: 0;
  border-top: 1px solid var(--line);
  background: transparent;
  box-shadow: none;
}
.tg, .tagfilter button.tg, .ftags a, .tagrow .tl {
  font-family: var(--sans);
  border: 0;
  background: transparent;
  padding: 0;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ink2);
  min-height: 0;
}
.tg:hover, button.tg[aria-pressed="true"] { color: var(--em-ink); }
.clocks { text-align: right; font-size: 12.5px; line-height: 1.35; color: var(--band-muted); white-space: nowrap; }
.clocks [data-date] { display: block; color: var(--band-ink); }
.clk { display: block; white-space: nowrap; }
.mast .wrap { height: auto; min-height: 68px; padding-top: 12px; padding-bottom: 12px; }
.front { display: grid; grid-template-columns: 1.45fr 0.7fr; gap: 28px; padding-top: 22px; align-items: start; }
.lead img, .thumb-16 { width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; display: block; }
.lead .kick { margin-top: 12px; }
.secondary { display: flex; flex-direction: column; gap: 16px; }
.sec-item { display: grid; grid-template-columns: 112px 1fr; gap: 12px; align-items: start; }
.sec-item img, .thumb-32 { width: 100%; height: auto; aspect-ratio: 3/2; object-fit: cover; display: block; }
.headlist-wrap, .librow { margin-top: 28px; }
.headlist { list-style: none; margin: 0; padding: 0; }
.headlist li { display: grid; grid-template-columns: 88px 1fr auto; gap: 12px; align-items: baseline; padding: 10px 0; border-bottom: 1px solid var(--line); }
.headlist a { font-family: var(--display); font-weight: 700; letter-spacing: -0.01em; }
.librow ul { list-style: none; margin: 12px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.librow b { display: block; font-family: var(--display); font-weight: 700; margin-top: 6px; }
.bcard { margin: 0 0 18px; }
.bcard .thumb-16 { width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; display: block; margin-bottom: 10px; }
.body figure.dfig picture { display: block; }
.body figure.dfig img { width: 100%; height: auto; display: block; }
.leadfig img { width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; display: block; }
.leadfig figcaption { font-size: 13px; color: var(--muted); margin-top: 6px; }
.ti { display: grid; grid-template-columns: 160px 1fr; gap: 14px; align-items: start; }
.ti-img img, .thumb-11 { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; display: block; }
.unpub { font-family: var(--sans); font-size: 13px; color: var(--em-ink); margin-right: 8px; }
.piece-out { margin: 8px 0 16px; }
.pdfblurb { display: flex; gap: 12px; align-items: baseline; flex-wrap: wrap; }
.crew { list-style: none; margin: 12px 0 8px; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 18px 24px; }
.signoff { margin: 4px 0 28px; font-family: var(--display); font-weight: 650; font-size: 15px; letter-spacing: -.01em; }
.crew a { display: grid; grid-template-columns: 160px 1fr; gap: 4px 12px; align-items: center; text-decoration: none; }
.crew img, .author img { width: 160px; height: 160px; border-radius: 0; object-fit: fill; background: none; filter: none; box-shadow: none; }
.crew img { grid-row: span 3; }
.crew b { font-family: var(--display); font-weight: 700; }
.author { display: grid; grid-template-columns: 160px 1fr; gap: 18px; align-items: center; margin-bottom: 22px; }
.author img { width: 160px; height: 160px; }
.chg { margin: 14px 0 4px; }
@media (max-width: 900px) {
  .front, .librow ul, .crew { grid-template-columns: 1fr; }
  .clocks .away { display: none; }
  .mast .btn { display: none; }
  .headlist li { grid-template-columns: 72px 1fr; }
  .headlist .t { display: none; }
}
@media (max-width: 720px) {
  body, .body, .dbody, .dek { font-size: 17px; }
  .ti { grid-template-columns: 96px 1fr; }
  .sec-item { grid-template-columns: 88px 1fr; }
}

/* Phone only. Desktop (761px and up) is unchanged. */
@media (max-width: 760px) {
  html, body {
    overflow-x: clip;
    max-width: 100%;
  }
  .previewbar,
  .strip,
  .band,
  .mast,
  .tabs {
    max-width: 100%;
  }
  .strip,
  .tabs,
  .band {
    overflow: hidden;
  }

  /* Every quote, its move, and the snapshot time. No sideways clip. */
  .strip .wrap {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: auto;
    min-height: 0;
    overflow: visible;
    white-space: normal;
    gap: 0;
    padding-top: 6px;
    padding-bottom: 6px;
  }
  .strip .tk {
    display: grid;
    grid-template-columns: 5.4em minmax(0, 1fr) auto;
    align-items: baseline;
    gap: 8px;
    width: auto;
    height: auto;
    margin: 0;
    padding: 4px 0;
    border: 0;
    white-space: nowrap;
  }
  .strip .tk + .tk {
    border-top: 1px solid var(--line);
  }
  .strip .tk svg {
    display: none;
  }
  .strip .tk .px {
    text-align: right;
  }
  .strip .snap {
    margin: 0;
    padding: 2px 0 3px;
    justify-content: flex-end;
  }

  /* Nav scrolls inside itself. The page does not. Corners stay on screen. */
  .tabs .wrap {
    max-width: 100%;
    min-width: 0;
    padding-left: 0;
    padding-right: 0;
    scroll-padding-left: 16px;
    scroll-snap-type: x proximity;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
  }
  .tabs .wrap::-webkit-scrollbar {
    display: none;
  }
  .tabs a {
    scroll-snap-align: start;
  }
  .tabs a:first-child {
    margin-left: 16px;
  }
  .tabs .wrap::after {
    content: "";
    flex: 0 0 36px;
  }
  .tabs::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 32px;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(246, 247, 246, 0), var(--surface) 78%);
  }
  .tabs {
    position: relative;
  }
}

/* Launch 1012, item 3: article pages use one centred column (no empty rail on the right). */
@media (min-width: 761px) {
  main.wrap > .story {
    grid-template-columns: minmax(0, 720px);
    justify-content: center;
    column-gap: 0;
  }
  main.wrap > .story .aside {
    grid-column: 1;
    grid-row: 5;
    padding-top: 24px;
  }
  main.wrap > .leadfig,
  main.wrap > .lc-photo-card,
  main.wrap > .crumb {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* Launch 1012, item 8: short lead card so the headline and first paragraph sit above the fold. */
main.wrap > .leadfig img { aspect-ratio: 16/5; object-position: 0 82%; }
main.wrap > .leadfig figcaption { margin-top: 4px; font-size: 12px; }
main.wrap > .lc-photo-card { aspect-ratio: 16/5; }

/* Launch 1012, item 6: plain About page, no avatars. */
.desklist { list-style: none; margin: 8px 0 20px; padding: 0; }
.desklist li { padding: 6px 0; border-bottom: 1px solid var(--line); }
.author { grid-template-columns: 1fr; }

/* Launch 1012, item 7: brief data tables (unpublished briefs only). */
.body table.btab { width: 100%; border-collapse: collapse; margin: 8px 0 16px; font-variant-numeric: tabular-nums; }
.body table.btab th, .body table.btab td { text-align: left; padding: 6px 8px; border-bottom: 1px solid var(--line); }

/* Launch 1012, item 9: CoinGecko marquee strip with visible attribution. */
.cgstrip { display: flex; align-items: center; gap: 12px; padding: 0 16px; min-height: 40px; }
.cgstrip gecko-coin-price-marquee-widget { flex: 1 1 auto; min-width: 0; display: block; }
.cgstrip .cgattr { flex: 0 0 auto; margin: 0; font: 500 11px/1.2 var(--mono, Arial, sans-serif); color: var(--muted); white-space: nowrap; }
.cgstrip .cgattr a { color: inherit; text-decoration: underline; }

/* Launch 1012, item 11: collapsible version history and corrections (outside lc-piece). */
details.dhist { margin-top: 28px; }
details.dhist > summary, details.corr > summary { cursor: pointer; list-style: revert; }
details.dhist > summary.mh { display: list-item; }


/* Fix 1: home. Newest article big on the left, the next 5 in a column on the right, then a headline list. */
.front { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 28px; padding-top: 14px; align-items: start; }
.front .lead .h-xl { font-size: 40px; margin: 6px 0 8px; }
.front .lead .dek { margin: 0 0 8px; }
.front .secondary { display: flex; flex-direction: column; gap: 12px; border-left: 1px solid var(--line); padding-left: 24px; }
.front .sec-item { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 12px; align-items: start; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.front .sec-item:last-child { border-bottom: 0; padding-bottom: 0; }
.front .sec-item .kick { margin: 0 0 2px; font-size: 11px; }
.front .sec-item .h-s { font-size: 15.5px; line-height: 1.25; margin: 0 0 2px; }
.front .sec-item .when { font-size: 12px; margin: 0; color: var(--muted); }
.headlist-wrap, .librow { margin-top: 18px; }
@media (max-width: 900px) { .front { grid-template-columns: 1fr; } .front .secondary { border-left: 0; padding-left: 0; } }

/* Fix 2 + 5: article and brief pages. One centred 720px column; lead card capped; headline, dek and body up top. */
@media (min-width: 761px) {
  main.wrap:has(> .story) { max-width: 768px; margin-left: auto; margin-right: auto; padding-left: 24px; padding-right: 24px; }
  main.wrap > .story { grid-template-columns: minmax(0, 1fr); column-gap: 0; justify-content: stretch; }
  main.wrap > .leadfig, main.wrap > .lc-photo-card, main.wrap > .crumb { max-width: none; margin-left: 0; margin-right: 0; }
  .story .ahead { grid-row: 1; }
  .story .byline { grid-row: 2; }
  .story .body { grid-row: 3; padding-top: 4px; }
  .story .piece-out, .story .tagrow { grid-row: 4; }
  main.wrap > .story .aside { grid-column: 1; grid-row: 5; padding-top: 12px; }
}
main.wrap > .leadfig { margin-top: 0; margin-bottom: 10px; }
main.wrap > .leadfig img { aspect-ratio: 32 / 9; max-height: 220px; object-fit: cover; object-position: 0 82%; }
main.wrap > .lc-photo-card { aspect-ratio: 32 / 9; max-height: 220px; }
main.wrap > .leadfig figcaption { margin-top: 3px; font-size: 11.5px; line-height: 1.3; }
.story .ahead h1 { font-size: 36px; line-height: 1.12; margin: 4px 0 8px; }
.story .ahead .dek { font-size: 18px; line-height: 1.45; margin: 0 0 6px; }
.story .byline { padding: 4px 0 6px; }
main.wrap > .crumb { margin: 10px 0 8px; }

/* Fix 5: dives. Drop the left TOC rail and the empty right rail; one centred 720px column. */
@media (min-width: 761px) {
  .dive-frame { grid-template-columns: minmax(0, 720px); justify-content: center; column-gap: 0; }
  .dive-frame .toc { display: none; }
  .dive-frame .toc-m { display: block; grid-column: 1; grid-row: 3; margin: 8px 0 0; }
  .dive-frame .dbody { grid-column: 1; grid-row: 4; padding-top: 10px; }
  .dive-frame .drail { grid-column: 1; grid-row: 5; padding-top: 12px; }
  .dhead { grid-template-columns: minmax(0, 1fr); padding: 10px 0 12px; }
  .dhead h1 { font-size: 44px; margin: 6px 0 8px; }
  main.wrap:has(> .dive-frame) > .crumb, main.wrap:has(> .dive-frame) > .leadfig { max-width: 720px; margin-left: auto; margin-right: auto; }
  main.wrap:has(> .dive-frame) > .dhist, main.wrap:has(> .dive-frame) > .proofslip, main.wrap:has(> .dive-frame) > .slip { max-width: 720px; margin-left: auto; margin-right: auto; }
}

/* Fix 3: page record without the gap above it; the in-article changelog duplicate is hidden (the version history below shows it). */
.dbody > .page-record { margin-top: 0; }
.dbody > .chg, .dbody > .chlog { display: none; }
.utcnote { margin: 4px 0 10px; }

/* Fix 3: version history: first entry in full, second peeks behind a fade, button expands. */
.clog { margin: 16px 0 8px; }
main.wrap > .clog { max-width: 720px; margin-left: auto; margin-right: auto; }
.clog .mh { margin-bottom: 4px; }
.clog .chlog { position: relative; }
.clog:not(.open) .chlog li:nth-child(n + 3) { display: none; }
.clog:not(.open) .chlog li:nth-child(2) { max-height: 2.2em; overflow: hidden; border-bottom: 0;
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, transparent 100%); mask-image: linear-gradient(to bottom, #000 0%, transparent 100%); }
.clog-toggle { display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; padding: 6px 10px; font: 600 13px/1.2 var(--sans); color: var(--em-ink); background: none; border: 1px solid var(--line2); border-radius: 2px; cursor: pointer; }
.clog-toggle .chev { font-size: 12px; }
.clog-toggle:focus-visible { outline: 2px solid var(--em-ink); outline-offset: 2px; }

/* Fix 4: no brief signup anywhere. */
.mast .btn, a.btn[href="/briefs/"], .signup, .bsignup { display: none !important; }

/* Fix 6: tighter vertical rhythm site-wide. */
.mh { margin-bottom: 8px; }
.std h2, .page-narrow h2 { margin-top: 22px; margin-bottom: 8px; }
.bsec, .homegrid { margin-top: 0; margin-bottom: 18px; }
.piece-out { margin: 4px 0 10px; }
.story .piece-out { padding-top: 6px; }
.dbody .box, .page-record { margin-bottom: 12px; }
.foot { margin-top: 24px; }
/* Fix 2 tuning: shorter card, one-line byline, so the body opens above the fold at 1280x800. */
main.wrap > .leadfig img, main.wrap > .lc-photo-card { aspect-ratio: 4 / 1; max-height: 180px; }
.story .ahead h1 { font-size: 32px; }
.story .ahead .dek { font-size: 17px; line-height: 1.4; }
.story .byline { display: flex; flex-wrap: wrap; align-items: center; column-gap: 12px; row-gap: 2px; padding: 4px 0 4px; font-size: 12.5px; }
.story .byline > * { margin: 0 !important; padding: 0 !important; border: 0 !important; }
.front .lead .thumb, .front .lead .lc-photo-card, .front .lead img { aspect-ratio: 16 / 7 !important; height: auto; max-height: 270px; object-fit: cover; }
.front .lead .h-xl { font-size: 34px; line-height: 1.12; }
.front .lead img { object-position: 0 100% !important; }

/* Banner lead (article pages only): a recomposed 72:19 asset, never cropped by CSS. Home card unchanged. */
main.wrap > .leadfig img { aspect-ratio: auto; max-height: none; height: auto; width: 100%; object-fit: fill; object-position: 50% 50%; }
main.wrap > .lc-photo-card { aspect-ratio: 72 / 19; max-height: none;  }
main.wrap > .lc-photo-card .lc-photo-card__mark { left: 24px; top: 16px; font-size: 18px; }
main.wrap > .lc-photo-card .lc-photo-card__txt { left: 24px; bottom: 20px; width: 60%; }
main.wrap > .lc-photo-card .lc-photo-card__rule { width: 20px; height: 2px; margin-bottom: 8px; }
main.wrap > .lc-photo-card .lc-photo-card__kicker { font-size: 14px; }
main.wrap > .lc-photo-card .lc-photo-card__title { margin-top: 6px; font-size: 32px; }
main.wrap > .lc-photo-card .lc-photo-card__credit { right: 14px; bottom: 12px; font-size: 10px; }

/* Lead images (UX/Design v2): 16:9 everywhere, the whole image, never cropped (outside lc-piece). */
img.thumb-lead,
.front .lead img.thumb-lead,
.bcard img.thumb-lead,
.pp2 img.thumb-lead { aspect-ratio: 16 / 9 !important; width: 100%; height: auto !important; max-height: none !important; object-fit: contain !important; object-position: 50% 50% !important; background: #fff; }
main.wrap > .leadfig.leadfig-lead { max-width: 1040px; }
main.wrap > .leadfig.leadfig-lead img { aspect-ratio: 16 / 9 !important; width: 100%; height: auto !important; max-height: none !important; object-fit: contain !important; object-position: 50% 50% !important; background: #fff; }

/* UX spec item 1 (<=900px): 52px sticky bar (wordmark, search, Menu), dark section strip with a
   fade + chevron cue, and the Menu drawer. Brand green = the live --em. */
.mast .mbtns, .ndrawer, .nscrim { display: none; }
@media (max-width: 900px) {
  .band { position: sticky; top: 0; z-index: 60; border-bottom: 0; }
  .mast .wrap { height: 52px !important; min-height: 52px !important; padding-top: 0 !important; padding-bottom: 0 !important; flex-wrap: nowrap !important; gap: 10px !important; }
  .mast .tag, .mast .clocks { display: none !important; }
  .mast .logo { font-size: 24px; }
  .mast .mbtns { display: flex; align-items: center; gap: 8px; margin-left: auto; }
  .mast .msrch, .mast .mbtn { position: relative; display: inline-flex; align-items: center; justify-content: center; height: 36px; border: 1px solid #444; border-radius: 6px; color: #fff; background: transparent; }
  .mast .msrch { width: 36px; }
  .mast .mbtn { gap: 6px; padding: 0 10px; font: 600 14px/1 var(--sans); cursor: pointer; }
  .mast .msrch::after, .mast .mbtn::after { content: ""; position: absolute; inset: -4px; min-width: 44px; min-height: 44px; }
  .mast .mbtn[aria-expanded="true"] { background: #fff; color: var(--band); }
  .mast .msrch:focus-visible, .mast .mbtn:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

  .tabs { position: relative; overflow: hidden; background: var(--band); border-bottom: 3px solid var(--em); }
  .tabs .wrap { height: auto; overflow-x: auto; scrollbar-width: none; padding: 0 32px 0 6px !important; }
  .tabs .wrap::-webkit-scrollbar { display: none; }
  .tabs .wrap::after { display: none; }
  .tabs a, .tabs a:first-child, .tabs .r { display: flex; align-items: center; padding: 11px 10px !important; margin: 0 !important; border: 0 !important; background: none !important; font: 500 14px/1.2 var(--sans) !important; color: #cfd2d0 !important; }
  .tabs a.on { color: #fff !important; box-shadow: inset 0 -3px 0 #fff; }
  .tabs a.on::before, .tabs a.on::after { display: none !important; }
  .tabs .sp { display: none; }
  .tabs a.r[href="/search/"] { display: none !important; }
  /* Right-edge cue: a 32px fade from transparent to the bar colour (with the chevron), hidden at the end. */
  .tabs::after { content: "\203A"; position: absolute; top: 0; right: 0; bottom: 3px; width: 32px; z-index: 2; display: flex; align-items: center; justify-content: flex-end; padding-right: 6px; box-sizing: border-box; font: 400 22px/1 var(--sans); color: #fff; pointer-events: none; background: linear-gradient(90deg, rgba(12,13,13,0), var(--band)); }
  .tabs.at-end::after { display: none; }

  .ndrawer:not([hidden]) { display: block; position: fixed; left: 0; right: 0; z-index: 70; max-height: calc(100vh - 60px); overflow-y: auto; background: #fff; padding: 8px 20px 20px; border-bottom: 3px solid var(--em); box-shadow: 0 8px 24px rgba(0,0,0,.25); }
  .nscrim:not([hidden]) { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 65; background: rgba(0,0,0,.4); }
  html.nav-lock, html.nav-lock body { overflow: hidden; }
  .ndrawer .nsearch { display: flex; align-items: center; gap: 8px; height: 44px; margin: 8px 0 6px; padding: 0 12px; border: 1px solid #bbb; border-radius: 6px; font: 400 16px/1 var(--sans); color: #555; }
  .ndrawer .nlabel { margin: 14px 0 2px; font: 500 12.5px/1.2 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: #777; }
  .ndrawer ul { list-style: none; margin: 0; padding: 0; }
  .ndrawer li a { display: flex; align-items: center; justify-content: space-between; min-height: 44px; padding: 11px 0; box-sizing: border-box; border-bottom: 1px solid var(--line); font: 600 18px/1.2 "LC Franklin", sans-serif; color: var(--ink); }
  .ndrawer li a::after { content: "\203A"; color: #999; font-weight: 400; }
  .ndrawer li a[aria-current="page"] { color: var(--em-ink); }
}

/* UX spec item 2: source lists (CSS only; article bytes unchanged, so no new link text, ids or wrappers).
   CSS-counter markers in a 20px green-outlined circle (Geist Mono 12.5px); each item 15px/1.42;
   the raw URL on its own line, 11.5px mono #666, wrapping anywhere. */
#lc-piece :is(#sources, #sources-list) + ol { list-style: none !important; counter-reset: lcsrc; padding-left: 0 !important; margin-left: 0; }
#lc-piece :is(#sources, #sources-list) + ol > li { list-style: none !important; display: block !important; position: relative; counter-increment: lcsrc; padding: 6px 0 6px 32px; font-size: 15px; line-height: 1.42; overflow-wrap: anywhere; }
#lc-piece :is(#sources, #sources-list) + ol > li::before { content: counter(lcsrc); position: absolute; left: 0; top: 6px; box-sizing: border-box; width: 20px; height: 20px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--em); border-radius: 50%; color: var(--em-ink); font: 500 12.5px/1 var(--mono); }
#lc-piece :is(#sources, #sources-list) + ol a[href^="http"] { display: block; width: fit-content; max-width: 100%; margin-top: 2px; font: 400 11.5px/1.45 var(--mono); color: #666; overflow-wrap: anywhere; word-break: normal; }
#lc-piece pre, #lc-piece code, #lc-piece table { max-width: 100%; overflow-x: auto; }

/* UX spec item 3: About sub-tabs. */
.subtabs { display: flex; flex-wrap: wrap; gap: 0; margin: 4px 0 14px; border-bottom: 1px solid #ccc; }
.subtabs a { display: inline-flex; align-items: center; padding: 9px 12px; font: 500 14.5px/1.2 var(--sans); color: var(--ink2); }
.subtabs a[aria-current="page"] { color: var(--ink); box-shadow: inset 0 -3px 0 var(--em); }

/* UX review Batch A, item 5: lead art in 16:9 boxes, whole image, never cropped (home lead, rail,
   lists, mobile, article). Learning Hub dive pages keep their own art (.leadfig without -lead). */
img.thumb-16, img.thumb-32,
.front .lead img.thumb, .front .lead .thumb, .sec-item img.thumb-32, .ti-img img.thumb-32, .bcard img.thumb-16 {
  aspect-ratio: 16 / 9 !important; width: 100%; height: auto !important; max-height: none !important;
  object-fit: contain !important; object-position: 50% 50% !important; background: #fff;
}
main.wrap > .leadfig.leadfig-lead figcaption { font-size: 12.5px; color: var(--muted); margin-top: 4px; }
main.wrap > .lc-photo-card { aspect-ratio: 16 / 9 !important; max-height: none; max-width: 1040px; }
main.wrap > .lc-photo-card .lc-photo-card__img { object-fit: contain; }

/* UX spec item 6: ticker 30px (28px mobile), --surface bg, 1px line, 13px; attribution 12.5px mono. */
.strip.cgstrip { min-height: 30px; height: 30px; padding-top: 0; padding-bottom: 0; background: var(--surface); border-bottom: 1px solid var(--line); font-size: 13px; overflow: hidden; }
.cgstrip .cgattr { font: 500 12.5px/1.2 var(--mono); }
@media (max-width: 900px) { .strip.cgstrip { min-height: 28px; height: 28px; } }

/* UX spec sections 0 + 10: shared tokens (what Batch A item 9 needs). Colours map to the live palette:
   the canonical brand green is the live --em (accent) / --em-ink (text). Fonts are the self-hosted house
   faces under their LC names. No orange. */
:root {
  --g: var(--em-ink); --g2: var(--em);
  --tag: #555555; --time: #666666; --mut: #5c5f5d;
  --f-brand: var(--logo); --f-head: "LC Franklin", sans-serif; --f-body: var(--sans); --f-mono: var(--mono);
  --fs-h1: 40px; --fs-h1-m: 25px; --lh-h1: 1.08;
  --fs-dek: 18px; --fs-list: 17px; --fs-rail: 17px; --fs-rail-m: 15px;
  --fs-body: 18.5px; --lh-body: 1.6;
  --fs-h2: 22px; --fs-kicker: 13px; --fs-label: 13.5px; --fs-meta: 13.5px;
  --fs-tag: 12.5px; --fs-url: 11.5px;
  --wrap: 1440px; --gutter: 24px; --rule: 3px;
  --meta-col: 190px; --body-col: 660px; --body-max: 620px; --rail: 520px; --col-gap: 44px;
  --rel-w: 128px; --rel-h: 72px; --tap: 44px;
}

/* UX spec item 9: article grid (layout outside article#lc-piece; the article bytes are unchanged).
   >=1100: meta 190 | body 660 | rail; 900-1099: meta | body, rail under body; <900: one column,
   meta folds into the article's own byline row, lead above the body. */
main.wrap:has(> .story.top) { max-width: var(--wrap); padding-left: var(--gutter); padding-right: var(--gutter); }
main.wrap > .story.top { display: grid; grid-template-columns: var(--meta-col) var(--body-col) minmax(0, 1fr); column-gap: var(--col-gap); row-gap: 0; justify-content: stretch; align-items: start;
  grid-template-areas: "meta body lead" "meta body rail" "meta body status" "meta out status"; grid-template-rows: auto auto 1fr auto; }
main.wrap > .story.top > .ameta { grid-area: meta; align-self: stretch; }
main.wrap > .story.top > .alead { grid-area: lead; min-width: 0; }
main.wrap > .story.top > #lc-piece { grid-area: body; min-width: 0; max-width: none; }
main.wrap > .story.top > .piece-out { grid-area: out; min-width: 0; }
main.wrap > .story.top > .aside { grid-area: status; display: block !important; min-width: 0; margin: 14px 0 0; position: static; width: auto; }
main.wrap > .story.top > .arail { grid-area: rail; min-width: 0; }
.story.top .alead .leadfig { margin: 0; max-width: none !important; }
.story.top .alead .leadfig img, .story.top .alead .lc-photo-card { width: 100%; max-width: none; }

.story.top #lc-piece .ahead h1 { font: 700 var(--fs-h1)/var(--lh-h1) var(--f-head); letter-spacing: -.01em; margin: 4px 0 10px; }
.story.top #lc-piece .ahead .dek { font-size: var(--fs-dek); line-height: 1.45; color: #333; }
.story.top #lc-piece .body { max-width: var(--body-max); margin-top: 18px; text-align: left; font-size: var(--fs-body); line-height: var(--lh-body); }
.story.top #lc-piece .body > p { margin: 0 0 14px; }

.ameta { font-size: var(--fs-meta); line-height: 1.45; color: var(--tag); padding-top: 6px; }
.ameta p { margin: 0 0 8px; }
.ameta b, .ameta .am-by { color: var(--ink); }
.ameta .am-seat { display: block; color: var(--tag); }
.ameta .am-time, .ameta .am-ver { font: 400 var(--fs-tag)/1.4 var(--f-mono); color: var(--time); }
.ameta a { color: var(--g); }
.ameta a.am-src { font-weight: 600; }
.ameta .am-toc { position: sticky; top: 16px; margin-top: 18px; padding-top: 10px; border-top: 1px solid var(--line); }
.ameta .am-l { font: 700 var(--fs-label)/1.2 var(--f-head); text-transform: uppercase; letter-spacing: .06em; color: var(--ink); margin-bottom: 6px; }
.ameta .am-toc ol { list-style: none; margin: 0; padding: 0; line-height: 1.9; }
.ameta .am-toc a { display: block; color: var(--ink2); padding-left: 8px; }
.ameta .am-toc a:hover { color: var(--g); box-shadow: inset 2px 0 0 var(--g); }

.arail { margin-top: 18px; }
.arail .ar-sec + .ar-sec { margin-top: 20px; }
.arail .ar-h { font: 700 var(--fs-label)/1.2 var(--f-head); text-transform: uppercase; letter-spacing: .06em; padding-bottom: 6px; border-bottom: 2px solid var(--ink); margin: 0; }
.arail ul { list-style: none; margin: 0; padding: 0; }
.arail .ar-rel li { display: grid; grid-template-columns: var(--rel-w) minmax(0, 1fr); gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line); align-items: start; }
.arail .ar-rel img.thumb { width: var(--rel-w); height: var(--rel-h) !important; }
.arail .ar-k { margin: 0 0 2px; font: 700 var(--fs-kicker)/1.2 var(--f-head); color: var(--g); }
.arail .ar-hl, .arail .ar-lat a { font: 700 var(--fs-rail)/1.22 var(--f-head); color: var(--ink); }
.arail .ar-lat li { padding: 9px 0; border-bottom: 1px solid var(--line); }
.arail .ar-lat a { display: block; font-weight: 600; line-height: 1.3; }
.arail .ar-when { display: block; margin-top: 2px; font: 400 var(--fs-tag)/1.3 var(--f-mono); color: var(--time); }

@media (min-width: 900px) { .story.top #lc-piece .byline { display: none !important; } }
@media (max-width: 1099px) {
  main.wrap > .story.top { grid-template-columns: var(--meta-col) minmax(0, 1fr); grid-template-rows: none;
    grid-template-areas: "meta lead" "meta body" "meta out" "meta rail" "meta status"; }
  .story.top .alead { margin-bottom: 14px; }
}
@media (max-width: 899px) {
  main.wrap:has(> .story.top) { padding-left: 16px; padding-right: 16px; }
  main.wrap > .story.top { grid-template-columns: minmax(0, 1fr); grid-template-areas: "lead" "body" "out" "rail" "status"; }
  main.wrap > .story.top > .ameta { display: none; }
  .story.top #lc-piece .ahead h1 { font-size: var(--fs-h1-m); line-height: 1.12; }
  .arail .ar-hl, .arail .ar-lat a { font-size: var(--fs-rail-m); }
}
main.wrap > .story.top > #lc-piece { display: block; }
.story.top #lc-piece > * { grid-column: auto; grid-row: auto; }
main.wrap:has(> .story.top) > .proof, main.wrap:has(> .story.top) > .clog, main.wrap:has(> .story.top) > .proofslip { max-width: calc(var(--meta-col) + var(--col-gap) + var(--body-col)); margin-left: 0; margin-right: auto; }
@media (min-width: 900px) { main.wrap:has(> .story.top) > .proof, main.wrap:has(> .story.top) > .clog { margin-left: calc(var(--meta-col) + var(--col-gap)); max-width: var(--body-col); } }

/* Batch A 12.5px label rules removed Oct. 16, 2026: replaced by the Option A label layer at the end of this file. */

/* Batch A acceptance: no sideways page scroll at 768 (the corrections table was 4px too wide). */
@media (max-width: 900px) { main table.tbl { display: block; max-width: 100%; overflow-x: auto; } }

/* UX spec item 10 (rest of the type scale; A already set the tokens and the 12.5px minimum).
   CSS only: article#lc-piece bytes are unchanged. */
h1.h-xl, .story.top #lc-piece .ahead h1, .page-narrow > h1, .std > h1, main.wrap > header h1, .lhead h1, .taghead h1 { font-family: var(--f-head); font-weight: 700; font-size: var(--fs-h1); line-height: var(--lh-h1); letter-spacing: -.01em; }
.dek { font-size: var(--fs-dek); line-height: 1.45; color: #333; }
.story.top #lc-piece .body h2 { font: 700 var(--fs-h2)/1.2 var(--f-head); border-top: 1px solid var(--line); padding-top: 14px; margin: 26px 0 10px; }
.kick { font-family: var(--f-head); font-weight: 700; font-size: var(--fs-kicker) !important; color: var(--g); }
.kick .t { font-family: var(--lbl-font); font-weight: 400; color: var(--tag); }
.tg, .tg.sm, button.tg { font-family: var(--f-mono); }
.tg { color: var(--tag); }
.when, time, .ar-when, .am-time { font-family: var(--f-mono); color: var(--time); }
.mh { font: 700 var(--fs-label)/1.2 var(--f-head); text-transform: uppercase; letter-spacing: .06em; border-bottom: 2px solid #111; padding: 0 0 6px; }
.mh a { font: 600 var(--fs-tag)/1.2 var(--f-body); text-transform: none; letter-spacing: 0; color: var(--g); }
.byline, .by { font-size: var(--fs-meta); color: var(--tag); }
.byline b, .by b { color: #111; }
@media (max-width: 899px) { h1.h-xl, .story.top #lc-piece .ahead h1, .page-narrow > h1, .std > h1, .lhead h1, .taghead h1 { font-size: var(--fs-h1-m); line-height: 1.12; } }

/* UX spec item 7 (>=901px): one sticky 56px black bar under the (non-sticky) 30px ticker, 3px green rule.
   Wordmark | 5 primary sections | Corrections, About | condensed clocks | 34px search. Tagline leaves the header. */
.cclk { display: none; }
@media (min-width: 901px) {
  .hdr { position: sticky; top: 0; z-index: 50; display: flex; align-items: stretch; gap: 0; height: 56px; box-sizing: content-box;
    background: #0b0c0c; border-bottom: 3px solid var(--g2); padding: 0 max(var(--gutter), calc((100% - var(--wrap)) / 2 + var(--gutter))); }
  .hdr .band, .hdr .mast, .hdr .mast .wrap, .hdr .tabs, .hdr .tabs .wrap { display: contents; }
  .hdr .mast .sp, .hdr .mast .tag, .hdr .mast .clocks, .hdr .mbtns .mbtn, .hdr .tabs .sp, .hdr .tabs a.r[href="/search/"] { display: none !important; }
  .hdr .logo { order: 1; align-self: center; margin-right: 28px; font-weight: 600; font-size: 27px; letter-spacing: -.02em; }
  .hdr .tabs a { order: 2; position: relative; display: flex; align-items: center; padding: 18px 11px 16px; border: 0 !important; background: none !important;
    font: 500 14.5px/1 var(--f-body); color: #d9dcda; white-space: nowrap; }
  .hdr .tabs a:first-child { border: 0 !important; }
  .hdr .tabs a:hover { color: #fff; }
  .hdr .tabs a.on { color: #fff; }
  .hdr .tabs a.on::before { display: none; }
  .hdr .tabs a.on::after { content: ""; position: absolute; left: 11px; right: 11px; bottom: 0; height: 3px; background: #fff; top: auto; }
  .hdr .tabs a.r { order: 3; padding: 18px 10px; font-size: 13.5px; font-weight: 400; color: #a9adab !important; }
  .hdr .tabs a.r1, .hdr .tabs a.r[href="/about/"] { margin-left: auto; }
  .hdr .tabs a.r.on, .hdr .tabs a.r[aria-current="page"] { color: #fff !important; }
  .hdr .cclk { order: 4; display: flex; align-items: center; margin-left: 14px; padding-left: 18px; border-left: 1px solid #333; align-self: center; height: 22px;
    font: 400 12.5px/1 var(--f-mono); color: #b9bdbb; white-space: nowrap; }
  .hdr .cclk b { color: #fff; font-weight: 500; }
  .hdr .mbtns { order: 5; display: flex; align-items: center; margin-left: 16px; }
  .hdr .mbtns .msrch { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border: 1px solid #3a3d3c; border-radius: 6px; color: #fff; }
  .hdr .mbtns .msrch:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
  .ameta .am-toc { top: 75px; }
}
@media (min-width: 901px) and (max-width: 1279px) { .hdr .cclk { display: none; } }
@media (max-width: 900px) { .hdr { display: contents; } }

/* UX spec item 8: home grid in the 1440 frame. Lead 880 (16:9 whole) | rail of 5 (168x95 thumbs);
   Latest 10 one-line rows (76px time | headline | 170px tag). */
main.wrap:has(> .front.home) { max-width: var(--wrap); padding-left: var(--gutter); padding-right: var(--gutter); }
.front.home { display: grid; grid-template-columns: 880px minmax(0, 1fr); gap: 40px; padding-top: 20px; align-items: start; }
.front.home .lead img.thumb { width: 100%; height: auto !important; aspect-ratio: 16 / 9 !important; max-height: none !important; }
.front.home .lead .kick { margin: 14px 0 0; }
.front.home .lead .kick .t { font: 500 13px/1.4 var(--lbl-font); color: var(--lbl-ink); }
.front.home .lead .h-xl { font-size: var(--fs-h1) !important; line-height: var(--lh-h1); margin: 6px 0 10px; }
.front.home .lead .dek { font-size: var(--fs-dek); line-height: 1.45; max-width: 68ch; margin: 0 0 10px; }
.front.home .secondary { display: block; border-left: 0; padding-left: 0; gap: 0; }
.front.home .secondary .mh { margin: 0; }
.front.home .sec-item { display: grid; grid-template-columns: 168px minmax(0, 1fr); gap: 14px; padding: 13px 0; border-bottom: 1px solid var(--line); align-items: start; }
.front.home .sec-item:last-child { border-bottom: 1px solid var(--line); padding-bottom: 13px; }
.front.home .sec-item img.thumb { width: 168px; height: 94.5px !important; }
.front.home .sec-item .kick { margin: 0; }
.front.home .sec-item .h-s { font: 700 var(--fs-rail)/1.22 var(--f-head); margin: 3px 0 4px; }
.front.home .sec-item .when { font-size: var(--fs-tag); margin: 0; }
main.wrap:has(> .front.home) .headlist-wrap { margin-top: 28px; }
main.wrap:has(> .front.home) .headlist li { display: grid; grid-template-columns: 76px minmax(0, 1fr) 170px; gap: 16px; align-items: baseline; padding: 9px 0; border-bottom: 1px solid var(--line); }
main.wrap:has(> .front.home) .headlist .when { font: 400 var(--fs-tag)/1.3 var(--f-mono); color: var(--time); white-space: nowrap; }
main.wrap:has(> .front.home) .headlist a { font: 600 var(--fs-list)/1.2 var(--f-head); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
main.wrap:has(> .front.home) .headlist .t { display: block; font: 400 var(--fs-tag)/1.3 var(--f-mono); color: var(--tag); text-align: right; }
@media (min-width: 1100px) and (max-width: 1439px) { .front.home { grid-template-columns: minmax(0, 1fr) 360px; } }
@media (max-width: 1099px) { .front.home { grid-template-columns: minmax(0, 1fr) 360px; } }
@media (max-width: 900px) {
  .front.home { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  main.wrap:has(> .front.home) .headlist li { grid-template-columns: 76px minmax(0, 1fr); }
  main.wrap:has(> .front.home) .headlist .t { display: none; }
}
@media (max-width: 600px) {
  main.wrap:has(> .front.home) { padding-left: 16px; padding-right: 16px; }
  .front.home .lead .h-xl { font-size: var(--fs-h1-m) !important; line-height: 1.12; }
  .front.home .lead .dek { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .front.home .sec-item { grid-template-columns: 112px minmax(0, 1fr); gap: 12px; padding: 11px 0; }
  .front.home .sec-item img.thumb { width: 112px; height: 63px !important; }
  .front.home .sec-item .h-s { font-size: var(--fs-rail-m); }
}
@media (max-width: 760px) { .mh { flex-direction: row !important; align-items: baseline !important; justify-content: space-between; } }

/* UX fix (Batch B): every small thumbnail shows its whole 16:9 image inside its own box:
   contain, centred, no offset, no transform, nothing wider than the box. */
img.thumb, img.thumb-16, img.thumb-32, img.thumb-11, .sec-item img, .ar-rel img, .ti-img img, .librow img {
  object-fit: contain !important; object-position: center !important; transform: none !important;
  margin: 0 !important; padding: 0 !important; max-width: 100% !important; box-sizing: border-box; background: #fff; display: block;
}
.sec-thumb, .ar-t, .ti-img { display: block; overflow: hidden; line-height: 0; }
img.thumb-11 { aspect-ratio: 1 / 1 !important; height: auto !important; }
/* thumb-fix-1016: mobile feed thumbnails in a 16:9 box at full width; whole image, no bands, no crop. Desktop unchanged. */
@media (max-width: 720px) {
  .ti-img img, img.thumb-11, .ti-img img.thumb-32 {
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    object-fit: contain !important;
    background: #fff !important;
  }
}

/* ---- Batch C · 11 Corrections ---- */
.corr-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px;margin-top:8px}
.corr-h1{font-family:"LC Franklin",var(--sans,sans-serif);font-size:40px;line-height:1.1;margin:4px 0 12px;color:#111}
.corr-intro{font-size:17px;line-height:1.5;max-width:78ch;color:#222;margin:0 0 18px}
.corr-policy{max-width:78ch;margin:0 0 22px}.corr-policy h2{font-size:20px;line-height:1.25;margin:22px 0 8px}.corr-policy ul{margin:0 0 12px;padding-left:1.2em}.corr-policy p{margin:0 0 12px}
.corr-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.corr-filters button{font:600 13.5px/1 var(--sans,sans-serif);padding:8px 12px;border:1px solid #bbb;border-radius:6px;background:#fff;color:#222;cursor:pointer}
.corr-filters button .n{font-family:var(--mono);font-weight:400;font-size:12.5px;color:#555;margin-left:4px}
.corr-filters button[aria-pressed="true"]{background:var(--em-ink);border-color:var(--em-ink);color:#fff}
.corr-filters button[aria-pressed="true"] .n{color:#fff}
.corr-filters button:focus-visible,.corr-list summary:focus-visible{outline:2px solid var(--em);outline-offset:2px}
.corr-list{border-top:1px solid #ddd}
.corr-list details.e{border-bottom:1px solid #ddd;padding:0 16px;border-left:3px solid transparent}
.corr-list details.e[open]{background:#f6faf8;border-left-color:var(--em-ink)}
.corr-list summary{display:grid;grid-template-columns:110px minmax(0,1fr) 120px 90px 120px;gap:16px;padding:12px 0;font-size:15px;align-items:baseline;cursor:pointer;list-style:none}
.corr-list summary::-webkit-details-marker{display:none}
.corr-list summary::marker{content:""}
.corr-list summary .d{font-family:var(--mono);font-size:12.5px;color:#444}
.corr-list summary .tt{font-family:"LC Franklin",var(--sans,sans-serif);font-weight:600;color:#111;line-height:1.3}
.corr-list summary .vv{font-family:var(--mono);font-size:13px;color:#333}
.corr-list .ty{font-size:12.5px;font-weight:600;letter-spacing:.02em}
.corr-list .ty-correction{color:#111;font-weight:800}
.corr-list .ty-clarification{color:#555;font-weight:500}
.corr-list .ty-update,.corr-list .ty-versioned{color:var(--em-ink)}
.corr-list summary .sh{color:var(--em-ink);font-weight:600;font-size:13.5px;text-align:right}
.corr-list summary .sh .c,.corr-list details[open] summary .sh .o{display:none}
.corr-list details[open] summary .sh .c{display:inline}
.corr-list .body{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px 16px;font-size:15px;line-height:1.5;margin:0;padding:0 0 16px}
.corr-list .body dt{font-weight:600;color:#444;font-size:13.5px}
.corr-list .body dd{margin:0;color:#222}
.corr-list .body dd.h{font-family:var(--mono);font-size:12.5px;overflow-wrap:anywhere;word-break:break-all}
.corr-list .body a{color:var(--em-ink);font-weight:600}
.corr-rail .rbox{border-top:3px solid #111;background:#f6f7f6;padding:14px 16px 6px;font-size:14.5px;line-height:1.45}
.corr-rail .rbox h2{font-family:"LC Franklin",var(--sans,sans-serif);font-size:16px;margin:0 0 6px;color:#111}
.corr-rail .rbox p{margin:0 0 14px}
.corr-rail .rbox a{color:var(--em-ink);font-weight:600}
@media (max-width:900px){
  .corr-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .corr-list summary{grid-template-columns:auto 1fr;gap:4px 12px}
  .corr-list summary .tt{grid-column:1/-1;order:-1}
  .corr-list summary .sh{text-align:left}
  .corr-list .body{grid-template-columns:minmax(0,1fr);gap:2px}
  .corr-list .body dd{margin-bottom:8px}
}
.corr-list .body .na{color:#555}

/* ---- Batch C · 12 About ---- */
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:48px;align-items:start}
.about-lede{font-size:19px;line-height:1.5;max-width:68ch;color:#222;margin:0 0 8px}
.about-main h2{margin-top:28px}
.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:20px 0;padding:0;list-style:none}
.steps li{border-top:3px solid var(--em-ink);background:#f6f7f6;padding:12px 14px 14px;font-size:14.5px;line-height:1.45;color:#222;margin:0;display:flex;flex-direction:column;gap:4px}
.steps li::before{content:none!important}
.steps .n{font-family:var(--mono);font-size:12.5px;color:var(--em-ink)}
.steps b{font-family:"LC Franklin",var(--sans,sans-serif);font-size:16px;color:#111;line-height:1.25}
.desks2{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;font-size:15px;max-width:760px;list-style:none;padding:0;margin:8px 0 0}
.desks2 li{padding:8px 0;border-bottom:1px solid #e3e5e3;margin:0}
.desks2 li::before{content:none!important}
.about-c .desks2{padding-left:0;margin-left:0}.about-c .desks2 li{padding-left:0;margin-left:0}
.about-main h3{margin-top:16px}
.about-rail .rbox{border-top:3px solid #111;background:#f6f7f6;padding:14px 16px 8px;font-size:14.5px;line-height:1.45;position:sticky;top:105px}
.about-rail .rbox h2{font-family:"LC Franklin",var(--sans,sans-serif);font-size:18px;margin:0 0 8px;color:#111}
.about-rail ul{margin:0;padding-left:18px}
.about-rail li{margin:0 0 10px}
.about-rail a,.about-main a{color:var(--em-ink);font-weight:600}
@media (max-width:1100px){.steps{grid-template-columns:repeat(6,minmax(0,1fr))}.steps li{grid-column:span 2}.steps li:nth-child(4){grid-column:1/span 3}.steps li:nth-child(5){grid-column:4/span 3}}
@media (max-width:900px){.about-grid{grid-template-columns:minmax(0,1fr);gap:24px}.about-rail .rbox{position:static}}
@media (max-width:600px){.steps{grid-template-columns:minmax(0,1fr)}.steps li,.steps li:nth-child(4),.steps li:nth-child(5){grid-column:auto}.desks2{grid-template-columns:minmax(0,1fr)}}

/* ---- Batch C · 13 Compact footer ---- */
html{background:#f3f3f1}
body{background:#fff;min-height:100vh;display:flex;flex-direction:column}
body>*{flex-shrink:0}
body>main,body>#content,body>.app,body>div:has(>main){flex:1 0 auto}
footer.foot.foot-c{background:#f3f3f1;border-top:3px solid #111;margin-top:36px;padding:18px 0 16px;font-size:13.5px;color:#444}
.foot-c .fr1{display:flex;align-items:center;gap:36px;margin-bottom:10px;flex-wrap:wrap}
.foot-c .fr1 .logo,.foot-c .fr1 > a:first-child{font-size:20px}
.foot-c .fsec,.foot-c .fstd{display:flex;flex-wrap:wrap;gap:6px 16px}
.foot-c .fstd{margin-left:auto}
.foot-c a{color:#333;text-decoration:none}
.foot-c a:hover{color:var(--em-ink);text-decoration:underline}
.foot-c .fsec a{font-weight:600;color:#111}
.foot-c .fr2{font-size:12.5px;color:#666;line-height:1.5;max-width:1100px;margin:0}
.foot-c .fr2 b{color:#444;font-weight:600}
@media (max-width:1366px){.foot-c .fstd{margin-left:0}.foot-c .fr1{gap:10px 36px}}
@media (max-width:768px){.foot-c .fr1{flex-direction:column;align-items:flex-start;gap:8px}.foot-c .fsec,.foot-c .fstd{gap:4px 14px}}
@media (max-width:768px){
  footer.foot.foot-c{padding:14px 0 12px}
  .foot-c .fr1{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:3px 14px;margin-bottom:8px}
  .foot-c .fr1 .logo{margin-right:6px}
  .foot-c .fsec,.foot-c .fstd{display:contents}
  .foot-c .fr2{line-height:1.45}
}

/* ---- Batch C · 16 Search overlay ---- */
.sov[hidden]{display:none!important}
.sov{position:fixed;inset:0;z-index:200}
.sov-bd{position:absolute;inset:0;background:rgba(0,0,0,.4)}
.sov-p{position:absolute;left:0;right:0;top:89px;bottom:auto;max-height:calc(100vh - 89px);overflow:auto;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.sov-in{max-width:880px;margin:0 auto;padding:20px 24px 24px;box-sizing:border-box}
.sov-f{display:flex;gap:10px;align-items:center}
.sov-f input{flex:1;min-width:0;height:52px;font:400 20px/1 var(--sans,"LC Sans",sans-serif);border:1px solid #bbb;border-radius:6px;padding:0 14px;color:#111;background:#fff;box-sizing:border-box}
.sov-f input:focus{outline:2px solid var(--em);outline-offset:1px;border-color:var(--em-ink)}
.sov-x{height:52px;padding:0 14px;border:1px solid #bbb;border-radius:6px;background:#fff;color:#333;font:600 13.5px/1 var(--sans,sans-serif);cursor:pointer}
.sov-list{margin-top:14px}
.sov-g{font:700 12.5px/1.2 var(--sans,sans-serif);letter-spacing:.06em;text-transform:uppercase;color:#444;margin:14px 0 4px;padding-bottom:6px;border-bottom:1px solid #111}
.sov-o{display:grid;grid-template-columns:76px minmax(0,1fr);gap:0 12px;padding:9px 8px;border-bottom:1px solid #e3e5e3;color:#111;text-decoration:none;border-radius:4px}
.sov-o:hover,.sov-o[aria-selected="true"],.sov-all[aria-selected="true"]{background:#f6faf8;text-decoration:none}
.sov-o[aria-selected="true"],.sov-all[aria-selected="true"]{outline:2px solid var(--em);outline-offset:-2px}
.sov-o .tm{font-family:var(--mono);font-size:12.5px;color:#555;padding-top:3px}
.sov-o .hd{display:block;font-family:"LC Franklin",var(--sans,sans-serif);font-weight:600;font-size:17px;line-height:1.3}
.sov-o .mt{display:block;font-size:12.5px;color:#555;margin-top:2px}
.sov-o.lh .mt{color:var(--em-ink)}
.sov-list mark{background:#e3f1ea;color:#111;padding:0 1px;border-radius:2px}
.sov-all{display:inline-block;margin-top:12px;padding:6px 8px;color:var(--em-ink);font-weight:600;font-size:14.5px}
.sov-msg{font-size:15px;color:#444;margin:12px 0}
@media (max-width:600px){.sov-in{padding:12px 14px 16px}.sov-o{grid-template-columns:52px minmax(0,1fr);gap:0 10px}.sov-o .hd{font-size:16px}}

/* ---- lh-redesign-1014 item 1: Learning Hub landing, Option A2 deep green (density of v2 A) ---- */
.lh2 .crumb{padding-top:22px}.lh2 .crumb b{color:var(--g);font-weight:500}
.lh2 .m{font-family:var(--f-mono);font-size:var(--fs-tag);letter-spacing:.02em;color:var(--mut)}
.lh2-intro{display:flex;align-items:flex-end;gap:48px;padding:18px 0 22px;border-bottom:1px solid var(--line)}
.lh2-intro h1{font-family:var(--f-head);font-weight:800;font-size:52px;line-height:1.02;letter-spacing:-.025em;margin:0 0 8px}
.lh2-intro p{font-size:18px;line-height:1.5;color:var(--ink2);max-width:640px;margin:0}
.lh2-intro .lh2-rules{margin-left:auto;font-family:var(--lbl-font);font-size:13px;color:var(--mut);line-height:1.9;border-left:3px solid var(--g2);padding-left:16px;max-width:none}
@keyframes lh2mq{to{transform:translateX(-50%)}}
.lh2-band{background:#f6f8f7;margin-top:16px;padding:0 0 24px;box-shadow:0 0 0 100vmax #f6f8f7;clip-path:inset(0 -100vmax)}
.lh2-bar{position:sticky;top:59px;z-index:5;background:#f6f8f7;display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.lh2-chips{display:flex;flex-wrap:wrap;gap:8px;flex:1;min-width:0}
.lh2-chip{font-family:var(--f-body);font-weight:600;font-size:14px;line-height:1.2;border:1px solid #cdcfcb;border-radius:999px;background:#fff;color:var(--ink);padding:7px 13px;display:inline-flex;gap:7px;align-items:baseline;flex:none}
.lh2-chip i{font-style:normal;font-family:var(--f-mono);font-size:var(--fs-tag);color:var(--mut)}
.lh2-chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}.lh2-chip.on i{color:#cfd2cf}
.lh2-chip:focus-visible{outline:2px solid var(--g2);outline-offset:2px}
.lh2-showing{font-family:var(--f-mono);font-size:var(--fs-tag);color:var(--mut);white-space:nowrap;align-self:flex-start;padding-top:8px}
.lh2-sh{display:flex;align-items:baseline;gap:14px;margin:24px 0 16px}
.lh2-sh h2{font-family:var(--f-head);font-weight:800;font-size:22px;margin:0;border:0;padding:0}
.lh2-bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row dense;gap:16px}
.lh2-card{min-width:0}
.lh2-card .art{display:block;position:relative;aspect-ratio:16/9;background:#fff;border-radius:12px;overflow:hidden}
.lh2-card .art img{width:100%;height:100%;object-fit:contain;display:block}
.lh2-card .txt{padding-top:10px}
.lh2-card .kick{color:var(--g)!important;text-transform:uppercase;margin:0}
.lh2-card h3{font-family:var(--f-head);font-weight:700;font-size:20px;line-height:1.15;margin:4px 0 5px}
.lh2-card h3 a{color:var(--ink)}
.lh2-card .dek{font-size:15px;line-height:1.45;color:var(--ink2);margin:0}
.lh2-card .lh2-meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin:8px 0 0}
.lh2-card .st{display:inline-flex;align-items:center;gap:6px}.lh2-card .st:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--g2)}
.lh2-card.feat{grid-column:span 2;grid-row:span 2}
.lh2-card.feat h3{font-size:34px;letter-spacing:-.015em}.lh2-card.feat .dek{font-size:17px}
.lh2-card.feat .fl{font-family:var(--f-mono);font-size:var(--fs-tag);background:var(--ink);color:#fff;padding:3px 8px;border-radius:3px;display:inline-block;margin-bottom:10px;text-transform:uppercase}
.lh2-card.wide{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.lh2-card.wide .txt{padding-top:0}
.lh2-none{padding:24px 0;font-size:16px}.lh2-none button{color:var(--g);font-weight:600;text-decoration:underline;background:none;border:0;padding:0;font:inherit}
@media (max-width:1100px){.lh2-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.lh2-card.wide{grid-column:span 2}}
@media (max-width:900px){.lh2-bar{top:0}}
@media (max-width:600px){
  .lh2-intro{display:block;padding:12px 0 16px}.lh2-intro h1{font-size:34px}.lh2-intro p{font-size:16px}.lh2-intro .lh2-rules{margin-top:12px}
  .lh2-sh .m{display:none}
  .lh2-bar{position:relative;top:auto;margin:0 -16px;padding:10px 0}
  .lh2-bar:after{content:"";position:absolute;right:0;top:0;bottom:0;width:40px;pointer-events:none;background:linear-gradient(90deg,rgba(246,248,247,0),#f6f8f7)}
  .lh2-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:0 40px 0 16px;-webkit-overflow-scrolling:touch}
  .lh2-chips::-webkit-scrollbar{display:none}
  .lh2-showing{display:none}
  .lh2-bento{grid-template-columns:1fr;gap:16px}
  .lh2-card.feat,.lh2-card.wide{grid-column:auto;grid-row:auto}
  .lh2-card.wide,.lh2-card.sm{display:grid;grid-template-columns:130px 1fr;gap:12px;align-items:start}
  .lh2-card.wide .txt,.lh2-card.sm .txt{padding-top:0}
  .lh2-card.sm h3,.lh2-card.wide h3{font-size:17px;margin:2px 0}
  .lh2-card.sm .dek,.lh2-card.wide .dek{display:none}
  .lh2-card.feat h3{font-size:26px}
}

/* ---- lh-redesign-1014 item 3: dive page Option B (all rules target markup outside or around article#lc-piece) ---- */
/* The in-article changelog keeps its bytes (it is under the publish hash); it is hidden from view here and
   shown, hash-free, in the end-of-page Version history (#history). */
.lh2-dive #lc-piece .dbody > p.chg, .lh2-dive #lc-piece .dbody > p.chg + ul.chlog { display: none; }
.lh2-dive .dive-frame { grid-template-columns: 220px minmax(0, 700px) minmax(0, 1fr); justify-content: start; column-gap: 44px; }
.lh2-dive .dive-frame .toc-m { display: none; }
.lh2-dive .dive-frame .dhead { grid-column: 2; grid-row: 1; border-bottom: 0; padding: 8px 0 0; display: block; }
.lh2-dive .dive-frame .dhead h1 { font-size: 52px; margin: 6px 0 10px; }
.lh2-dive .dive-frame .lh2-art { grid-column: 3; grid-row: 1 / span 2; margin: 8px 0 0; align-self: start; max-width: 520px; }
.lh2-dive .lh2-art img { width: 100%; height: auto; aspect-ratio: 16/9; object-fit: contain; border-radius: 12px; background: #fff; display: block; }
.lh2-dive .dive-frame .piece-out { grid-column: 2; grid-row: 2; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; padding: 4px 0 14px; border-bottom: 1px solid var(--line); }
.lh2-dive .piece-out .pstat, .lh2-dive .piece-out .pdfblurb { margin: 0; }
.lh2-dive .piece-out .lh2-mi { font-family: var(--f-mono); font-size: var(--fs-tag); color: var(--mut); }
.lh2-dive .piece-out .tagrow { flex-basis: 100%; border: 0; padding: 0; }
.lh2-dive .lh2-upd-m { display: none; }
.lh2-dive .dive-frame .lh2-side { grid-column: 1; grid-row: 3; padding-top: 24px; position: sticky; top: 75px; max-height: calc(100vh - 90px); overflow-y: auto; font-size: var(--fs-meta); }
.lh2-dive .dive-frame .dbody { grid-column: 2; grid-row: 3; padding-top: 24px; }
.lh2-dive .dive-frame .drail { grid-column: 3; grid-row: 3; padding-top: 24px; }
main.wrap.lh2-dive > .crumb { max-width: none; margin-left: 0; }
main.wrap.lh2-dive > .proofslip { max-width: none; }
.lh2-ver { display: flex; gap: 22px; margin: 0 0 8px; }
.lh2-ver dt { font-family: var(--f-mono); font-size: var(--fs-tag); color: var(--mut); }
.lh2-ver dd { margin: 0; font-weight: 600; }
.lh2-upd { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 8px 0; margin-bottom: 14px; }
.lh2-upd summary { cursor: pointer; font-weight: 600; color: var(--g); list-style: none; }
.lh2-upd summary::-webkit-details-marker { display: none; }
.lh2-upd summary::after { content: " ▸"; }
.lh2-upd[open] summary::after { content: " ▾"; }
.lh2-upd ol { list-style: none; margin: 8px 0; padding: 0; }
.lh2-upd li { padding: 5px 0; border-top: 1px solid var(--line); line-height: 1.4; }
.lh2-upd li .t { font-family: var(--f-mono); font-size: var(--fs-tag); color: var(--time); }
.lh2-upd li .n { display: block; color: var(--ink2); }
.lh2-upd a { color: var(--g); font-weight: 600; }
.lh2-toc .th { font-family: var(--f-mono); font-size: var(--fs-tag); color: var(--mut); text-transform: uppercase; margin: 0 0 6px; }
.lh2-toc ol { list-style: none; margin: 0; padding: 0; line-height: 1.45; }
.lh2-toc li.l2 > a { display: flex; gap: 6px; font-weight: 600; padding: 4px 0 4px 8px; color: var(--ink); }
.lh2-toc li.l2 > a .sn { color: var(--g); }
.lh2-toc li.l2 > a .sn::after { content: "."; }
.lh2-toc li.l3 a { display: block; padding: 3px 0 3px 22px; color: var(--ink2); }
.lh2-toc a.on { color: var(--g) !important; box-shadow: inset 2px 0 0 var(--g); background: var(--tint, #f6faf8); }
.lh2-toc li.lh2-tail > a { margin-top: 4px; }
.lh2-hist { max-width: calc(220px + 44px + 700px); padding-left: calc(220px + 44px); margin-top: 32px; }
.lh2-hist h2 { font-family: var(--f-head); font-size: var(--fs-h2); border-top: 1px solid var(--line); padding-top: 14px; }
.lh2-hist ol { list-style: none; margin: 0; padding: 0; }
.lh2-hist li { display: grid; grid-template-columns: 110px 90px 1fr; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: 15px; line-height: 1.45; }
.lh2-hist .d, .lh2-hist .v { font-family: var(--f-mono); font-size: var(--fs-tag); color: var(--time); }
.lh2-hist .v a { color: var(--g); font-weight: 600; }
.lh2-hist .v i { font-style: normal; color: var(--g); }
.lh2-hist .lh2-proof { font-size: var(--fs-meta); color: var(--mut); margin-top: 10px; }
@media (max-width: 1100px) {
  .lh2-dive .dive-frame { grid-template-columns: 180px minmax(0, 1fr); column-gap: 32px; }
  .lh2-dive .dive-frame .dhead { grid-column: 1 / -1; grid-row: 2; }
  .lh2-dive .dive-frame .lh2-art { grid-column: 1 / -1; grid-row: 1; max-width: 640px; }
  .lh2-dive .dive-frame .piece-out { grid-column: 1 / -1; grid-row: 3; }
  .lh2-dive .dive-frame .lh2-side, .lh2-dive .dive-frame .dbody { grid-row: 4; }
  .lh2-dive .dive-frame .lh2-side { grid-column: 1; }
  .lh2-dive .dive-frame .dbody { grid-column: 2; }
  .lh2-dive .dive-frame .drail { grid-column: 1 / -1; grid-row: 5; }
  .lh2-hist { padding-left: 0; }
}
@media (max-width: 760px) {
  .lh2-dive .dive-frame .lh2-art { order: 0; max-width: none; }
  .lh2-dive .dive-frame .dhead { order: 1; }
  .lh2-dive .dive-frame .piece-out { order: 2; }
  .lh2-dive .dive-frame .toc-m { order: 3; display: block; }
  .lh2-dive .dive-frame .dbody { order: 4; }
  .lh2-dive .dive-frame .drail { order: 5; }
  .lh2-dive .dive-frame .lh2-side { display: none; }
  .lh2-dive .dive-frame .dhead h1 { font-size: var(--fs-h1-m); }
  .lh2-dive .lh2-upd-m { display: inline; flex-basis: 100%; font-family: var(--f-mono); font-size: var(--fs-tag); color: var(--g); font-weight: 600; }
  .lh2-hist li { grid-template-columns: 1fr; gap: 2px; }
}
.lh2-dive .dive-frame .lh2-side .lh2-toc { display: block; position: static; }
.sec-fieldguide{--em:#2a4bd7;--em-ink:#2a4bd7;--em-soft:#f3f6fb;--g:#2a4bd7;--g2:#2a4bd7;--lbl-green:#2a4bd7;--tint:#f3f6fb}
.sec-fieldguide .xbtn{background:#2a4bd7}.sec-fieldguide .xbtn:hover{background:var(--ink)}
.sec-fieldguide .lh2-browse-col h3{color:#2a4bd7;border-top-color:#2a4bd7}.sec-fieldguide .lh2-browse-col li a:focus-visible{outline-color:#2a4bd7}

/* ---- lh-redesign-1014 item 4: brief card ---- */
.bc{background:#fff;border:1px solid var(--line);border-radius:6px;padding:16px 18px 14px}
.bc-lg{border-top:3px solid var(--g2);padding:22px 24px 18px}
.bc-top{display:flex;align-items:center;gap:10px;margin:0 0 10px;font-family:var(--f-mono);font-size:var(--fs-tag);color:var(--mut);text-transform:uppercase;letter-spacing:.04em}
.bc-date{margin-left:auto;text-transform:none;color:var(--time)}
.bc-pill{display:inline-flex;align-items:center;gap:5px;font-family:var(--f-mono);font-size:var(--fs-tag);font-weight:600;letter-spacing:.04em;padding:2px 7px;border-radius:3px;text-transform:uppercase;white-space:nowrap}
.bc-pill.pm{background:#0b0c0c;color:#fff}.bc-pill.am{background:#fff;color:#111;border:1px solid #111}
.bc-h{font-family:var(--f-head);font-weight:700;font-size:17px;line-height:1.25;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.bc-h a{color:var(--ink)}
.bc-lg .bc-h{font-size:30px;line-height:1.15;letter-spacing:-.01em}
.bc-dek{font-size:16px;line-height:1.5;color:var(--ink2);margin:0 0 14px;max-width:68ch}
.bc-cta{display:inline-block;background:#111;color:#fff!important;font-weight:600;font-size:14px;padding:9px 14px;border-radius:4px;margin-bottom:12px}
.bc-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}
.bc-tags span{font-size:var(--fs-tag);border:1px solid var(--line);border-radius:3px;padding:2px 7px;color:var(--tag)}
.bc-line{font-family:var(--f-mono);font-size:var(--fs-tag);color:var(--time);margin:0}
@media (max-width:600px){.bc-lg{padding:16px}.bc-lg .bc-h{font-size:22px}}

/* ---- lh-redesign-1014 item 5: Briefs page ---- */
.bp .crumb b{color:var(--g);font-weight:500}
.bp-head{padding:14px 0 18px;border-bottom:1px solid var(--line);margin-bottom:22px}
.bp-head h1{font-family:var(--f-head);font-weight:800;font-size:46px;letter-spacing:-.02em;margin:0 0 6px}
.bp-head p{font-size:17px;color:var(--ink2);margin:0}
.bp-lbl{font-family:var(--f-head);font-weight:700;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid #111;padding-bottom:6px;margin:0 0 12px}
.bp-lead{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px;align-items:start}
.bp-in ol{list-style:none;margin:0;padding:0}
.bp-in li{display:flex;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:15px}
.bp-in li span{font-family:var(--f-mono);font-size:var(--fs-tag);color:var(--g)}
.bp-lower{display:grid;grid-template-columns:360px minmax(0,1fr);gap:40px;margin-top:32px;align-items:start}
.bp-lower > .bp-arch:only-child{grid-column:1 / -1}
.bp-today .bc + .bc{margin-top:12px}
.bp-arch details{border-bottom:1px solid var(--line)}
.bp-arch summary{display:flex;align-items:baseline;gap:12px;padding:12px 0;cursor:pointer;list-style:none;font-size:16px}
.bp-arch summary::-webkit-details-marker{display:none}
.bp-arch summary span{font-family:var(--f-mono);font-size:var(--fs-tag);color:var(--mut)}
.bp-arch summary::after{content:"+";margin-left:auto;font-weight:600}
.bp-arch details[open] summary::after{content:"−"}
.bp-arch ul{list-style:none;margin:0 0 12px;padding:0}
.bp-arch li{display:flex;gap:10px;align-items:baseline;padding:6px 0;font-size:15px}
.bp-arch li a{color:var(--ink);font-weight:600}
@media (max-width:1100px){.bp-lead{grid-template-columns:minmax(0,1fr) 280px;gap:28px}.bp-lower{grid-template-columns:300px minmax(0,1fr);gap:28px}}
@media (max-width:768px){.bp-lead,.bp-lower{grid-template-columns:1fr;gap:24px}.bp-head h1{font-size:var(--fs-h1-m)}}

/* ---- lh-redesign-1014 item 6: home brief strip (46px, under the sticky header, scrolls away) ---- */
.hb-strip{background:var(--tint,#f6faf8);border-bottom:1px solid var(--line)}
.hb-strip .wrap{display:flex;align-items:center;gap:12px;min-height:46px;padding-top:6px;padding-bottom:6px;font-size:14.5px}
.hb-kind{font-family:var(--f-mono);font-size:var(--fs-tag);color:var(--mut);text-transform:uppercase;white-space:nowrap}
.hb-h{font-family:var(--f-head);font-weight:700;color:var(--ink);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hb-read{color:var(--g);font-weight:700;white-space:nowrap}
.hb-line{font-family:var(--f-mono);font-size:var(--fs-tag);color:var(--time);white-space:nowrap}
@media (max-width:600px){
  .hb-strip .wrap{flex-wrap:wrap;gap:4px 10px;padding-top:8px;padding-bottom:8px}
  .hb-h{flex-basis:100%;order:3;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .hb-read{order:4}.hb-line{order:5}
}

/* lh-redesign-1014: home Learning Hub row uses the deep-green dive art (16:9, whole) */
.librow .lh2-hthumb{display:block;aspect-ratio:16/9;background:#fff;border-radius:8px;overflow:hidden;margin-bottom:6px}
.librow .lh2-hthumb img{width:100%;height:100%;object-fit:contain;display:block}

/* Verify page (/verify/), UX/Design mockup, Oct. 15, 2026 */
.vfy { --vdg: #0d2a20; --vmint: #86e3b8; --vem: #12805A; --vline: #E2E3E0; --vink2: #3A3D3C; --vmut: #5C615E; }
.vfy .crumb b { color: var(--vem); font-weight: 500; }
.vfy-m { font-family: var(--mono); font-size: 12.5px; letter-spacing: .02em; color: var(--vmut); }
.vfy-hero { display: grid; grid-template-columns: 1fr 400px; gap: 64px; padding: 22px 0 30px; border-bottom: 1px solid var(--vline); align-items: end; }
.vfy-hero h1 { font-weight: 800; font-size: 54px; letter-spacing: -.025em; line-height: 1.02; margin: 0; }
.vfy-sub { font-weight: 700; font-size: 26px; line-height: 1.25; margin: 12px 0 0; }
.vfy-lede { font-size: 20px; line-height: 1.5; color: var(--vink2); margin: 12px 0 0; max-width: 720px; }
.vfy-tl { background: #f6f8f7; border-radius: 12px; padding: 18px 20px; }
.vfy-tl p { font-size: 15px; line-height: 1.5; color: var(--vink2); margin: 0; }
.vfy-tl .vfy-m { color: #0B6345; margin-bottom: 6px; display: block; }
.vfy-band { background: #f6f8f7; box-shadow: 0 0 0 100vmax #f6f8f7; clip-path: inset(0 -100vmax); padding: 36px 0; margin-top: 34px; }
.vfy-diag svg { display: block; width: 100%; height: auto; }
.vfy-diag text { font-family: var(--mono); }
.vfy-tall { display: none; }
.vfy-st p.vfy-own { margin-top: 8px; font-weight: 600; color: #0E0F0F; }
@media (max-width: 1215px) { .vfy-wide { display: none; } .vfy-tall { display: block; max-width: 420px; margin: 0 auto; } }
.vfy-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; gap: 24px; margin-top: 40px; }
.vfy-st { background: #fff; border: 1px solid var(--vline); border-radius: 12px; padding: 20px; box-shadow: 0 1px 2px rgba(0,0,0,.05), 0 8px 24px rgba(0,0,0,.05); display: flex; flex-direction: column; min-width: 0; }
.vfy-st .n { width: 36px; height: 36px; border-radius: 50%; background: var(--vdg); color: var(--vmint); font-family: var(--mono); font-weight: 700; font-size: 15px; display: grid; place-items: center; }
.vfy-st h3 { font-weight: 700; font-size: 20px; line-height: 1.2; margin: 14px 0 8px; }
.vfy-st p { font-size: 15.5px; line-height: 1.5; color: var(--vink2); margin: 0; }
.vfy-st .ft { margin-top: auto; padding-top: 12px; }
.vfy-btn { display: flex; justify-content: space-between; align-items: center; gap: 10px; border: 1.5px solid #0E0F0F; border-radius: 8px; padding: 10px 12px; margin-top: 10px; font-weight: 600; font-size: 14.5px; color: #0E0F0F; text-decoration: none; }
.vfy-btn:hover { background: #f6f8f7; }
.vfy-ex { margin-top: 12px; background: var(--vdg); color: #e3f4ec; border-radius: 8px; padding: 12px; font-family: var(--mono); font-size: 12.5px; line-height: 1.6; overflow-wrap: anywhere; }
.vfy-ex b { color: var(--vmint); font-weight: 500; }
.vfy-ex .lab { color: #93b9a8; }
.vfy-two { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; margin-top: 48px; }
.vfy h2 { font-weight: 800; font-size: 28px; letter-spacing: -.01em; margin: 0 0 14px; }
.vfy-pr { border-left: 4px solid var(--vem); padding: 4px 0 4px 22px; }
.vfy-pr p { font-size: 18px; line-height: 1.6; margin: 0; }
.vfy-pr ul { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 8px; }
.vfy-pr li { font-size: 16px; display: flex; gap: 10px; }
.vfy-pr li i { font-style: normal; font-family: var(--mono); width: 20px; color: var(--vem); }
.vfy-pr li.no i { color: var(--vmut); }
.vfy-faq details { border-top: 1px solid var(--vline); padding: 14px 0; }
.vfy-faq details:last-child { border-bottom: 1px solid var(--vline); }
.vfy-faq summary { font-weight: 700; font-size: 18px; list-style: none; display: flex; cursor: pointer; }
.vfy-faq summary::-webkit-details-marker { display: none; }
.vfy-faq summary::after { content: "+"; margin-left: auto; font-family: var(--mono); color: var(--vmut); }
.vfy-faq details[open] summary::after { content: "–"; }
.vfy-faq p { font-size: 16px; line-height: 1.55; color: var(--vink2); margin: 8px 0 0; }
.proof-verify { margin-top: 6px; }
@media (max-width: 1100px) { .vfy-steps { grid-template-columns: repeat(2, 1fr); } .vfy-hero { grid-template-columns: 1fr; gap: 18px; } }
@media (max-width: 600px) {
  .vfy-hero { padding: 16px 0 22px; } .vfy-hero h1 { font-size: 36px; } .vfy-sub { font-size: 21px; } .vfy-lede { font-size: 17px; }
  .vfy-steps { grid-template-columns: 1fr; gap: 16px; margin-top: 26px; } .vfy-two { grid-template-columns: 1fr; gap: 36px; margin-top: 36px; }
  .vfy h2 { font-size: 24px; } .vfy-pr p { font-size: 16.5px; } .vfy-band { padding: 24px 0; }
}

/* Version picker on Proof pages and archived earlier versions (Oct. 15, 2026). Black and green; #0B6345 active/selected. */
.vp { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 40px; margin-top: 24px; align-items: start; }
.vp-m { font-family: var(--mono); font-size: 13px; }
.vp-rail { position: sticky; top: 16px; }
.vp-h { font-size: 15px; font-weight: 700; margin: 0 0 8px; padding-bottom: 8px; border-bottom: 1px solid #0E0F0F; display: flex; align-items: baseline; gap: 8px; }
.vp-n { color: #5C615E; font-weight: 400; }
.vp-list { list-style: none; margin: 0; padding: 0; }
.vp-list li { border-bottom: 1px solid #E2E3E0; }
.vp-list a { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "v dot" "d dot"; column-gap: 8px; padding: 9px 10px 9px 12px; color: #0E0F0F; text-decoration: none; border-left: 3px solid transparent; }
.vp-list a .vv { grid-area: v; font-family: var(--mono); font-size: 13px; }
.vp-list a .vcur { grid-area: v; justify-self: end; margin-right: 0; font-family: var(--mono); font-size: 12.5px; color: #0B6345; border: 1px solid #0B6345; border-radius: 3px; padding: 0 4px; line-height: 1.5; }
.vp-list a .vd { grid-area: d; font-size: 13px; color: #5C615E; }
.vp-list a .dot { grid-area: dot; align-self: center; width: 8px; height: 8px; border-radius: 50%; background: #9EA3A0; }
.vp-list a .dot.ok { background: #12805A; }
.vp-list a:hover { background: #f6f8f7; }
.vp-list a:focus-visible { outline: 2px solid #0B6345; outline-offset: -2px; }
.vp-list a.on, .vp-list a[aria-current="page"] { border-left-color: #0B6345; font-weight: 700; }
.vp-list a.on .vd { color: #0E0F0F; }
.vp-more summary { cursor: pointer; padding: 9px 12px; font-size: 13.5px; font-weight: 600; color: #0B6345; list-style: none; border-bottom: 1px solid #E2E3E0; }
.vp-more summary::-webkit-details-marker { display: none; }
.vp-more[open] summary { display: none; }
.vp-sel { display: none; }
.vp-sel label { display: block; font-size: 13px; font-weight: 600; margin-bottom: 4px; }
.vp-sel select { width: 100%; font-family: var(--mono); font-size: 13px; padding: 9px 10px; border: 1px solid #0E0F0F; border-radius: 4px; background: #fff; color: #0E0F0F; }
.vp-sel select:focus-visible { outline: 2px solid #0B6345; outline-offset: 1px; }
.vp-view { border-top: 2px solid #0E0F0F; padding-top: 12px; }
.vp-banner { margin: 0 0 12px; padding: 10px 12px; border-left: 3px solid #0B6345; background: #f6f8f7; font-size: 15px; }
.vp-banner a, .vp-read a { color: #0B6345; font-weight: 600; }
.vp-dl { display: grid; grid-template-columns: 140px minmax(0, 1fr); margin: 0; }
.vp-dl dt, .vp-dl dd { margin: 0; padding: 10px 0; border-bottom: 1px solid #E2E3E0; font-size: 15px; }
.vp-dl dt { font-weight: 600; color: #3A3D3C; }
.vp-dl dt[hidden], .vp-dl dd[hidden] { display: none; }
.vp-hash { word-break: break-all; }
.vp-dls { display: flex; flex-wrap: wrap; gap: 8px; }
.vp-btn { display: inline-block; border: 1.5px solid #0E0F0F; border-radius: 6px; padding: 5px 10px; font-size: 14px; font-weight: 600; color: #0E0F0F; text-decoration: none; }
.vp-btn:hover, .vp-btn:focus-visible { border-color: #0B6345; color: #0B6345; outline: none; }
.vp-chip { display: inline-block; font-family: var(--mono); font-size: 12.5px; border: 1px solid #9EA3A0; color: #5C615E; border-radius: 3px; padding: 1px 6px; }
.vp-chip.ok { border-color: #12805A; color: #0B6345; }
.vp-bt { font-size: 14.5px; }
.vp-note { color: #5C615E; }
.vp-read { margin: 12px 0 0; font-size: 15px; }
#proof-current-extra { margin-top: 28px; }
.arc-banner { margin: 20px 0 24px; padding: 12px 14px; border-left: 3px solid #0B6345; background: #f6f8f7; font-size: 16px; line-height: 1.5; }
.arc-banner a { color: #0B6345; font-weight: 600; }
.arc-banner .arc-sub { display: block; font-size: 14px; color: #3A3D3C; }
@media (max-width: 1099px) {
  .vp { grid-template-columns: 1fr; gap: 16px; }
  .vp-rail { position: static; }
  .vp-h { display: none; }
  .vp.vp-js .vp-sel { display: block; }
  .vp.vp-js .vp-list, .vp.vp-js .vp-more { display: none; }
}
@media (max-width: 600px) { .vp-dl { grid-template-columns: 1fr; } .vp-dl dt { border-bottom: 0; padding-bottom: 0; } }
/* Proof section: mono text at least 12.5px (UX, Oct. 15, 2026). */
#proof code { font-size: 12.5px; }

/* Active / current-page underline: green, on every header link (sections, About, Corrections, Verify, Search). */
.hdr .tabs a.on::after, .hdr .tabs a[aria-current="page"]::after { background: #3CC487 !important; }
@media (max-width: 900px) {
  .tabs a.on, .tabs a[aria-current="page"] { color:#fff !important; box-shadow: inset 0 -3px 0 #3CC487 !important; }
  .ndrawer li a[aria-current="page"] { box-shadow: inset 3px 0 0 #3CC487; }
}

/* Le Coin label layer, Option A "Franklin quiet" (approved Oct. 15, 2026).
   Load AFTER /lecoin-app.css. Touches labels and metadata only; headline and body
   fonts, lead images, corners and colours outside this layer are unchanged.
   font-size uses !important only where lecoin-app.css (lines 825-827) already forces
   --fs-tag with !important. */

:root {
  --lbl-font: "LC Franklin", "Libre Franklin", Arial, sans-serif; /* already loaded, 400-800 */
  --lbl-size: 13px;
  --lbl-lh: 1.4;
  --lbl-w-regular: 400;   /* dates, times, counts */
  --lbl-w-medium: 500;    /* breadcrumb, subsection, AI agent, version links */
  --lbl-w-strong: 600;    /* section name in kicker, brief pill */
  --lbl-grey: #5C5F5D;    /* 6.46:1 on #FFF: dates, breadcrumb trail, counts */
  --lbl-ink: #3E4440;     /* 9.97:1: kicker subsection, brief kind */
  --lbl-green: #0B6345;   /* 7.28:1: section names, links, AI agent */
  --lbl-current: #0E0F0F; /* 19.2:1: current breadcrumb item */
  --data-min: 12.5px;     /* floor for the mono that stays */
}

/* Shared reset: sentence case, no tracking */
.crumb, .crumb a, .crumb b, .crumb span,
.kick, .kick .t, .kick .chip.cat, .m.kick,
time, .when, .ar-when, .am-time, .am-time time, .am-ver, .am-ver a,
.aitag, .hb-kind, .hb-line, .bc-pill, .cgattr, .cgattr a,
.lh2-rules, .lh2-showing, .lh2-sh .m,
p.m span, p.m .st, .lh2-mi, .txt .fl, .lh2-chip i,
.toc .th, .toc a span, .fsrc, dl.rec dt, li > span.t, li > span.d, div > dt,
.proof .hd span, .proof dl dt, .proof dl dd, .proof ol li, .proof a > u {
  font-family: var(--lbl-font);
  text-transform: none;
  letter-spacing: 0;
  line-height: var(--lbl-lh);
}
html body .crumb, html body .crumb a, html body .crumb b, html body .crumb span,
html body .kick, html body .kick .t, html body .kick .chip.cat,
html body time, html body .when, html body .ar-when, html body .am-time, html body .am-ver,
html body .aitag, html body .cgattr, html body .tg, html body .chip {
  font-size: var(--lbl-size) !important;
}

/* 1. Breadcrumb: "Le Coin / Markets / The Chart Desk" */
.crumb, .crumb a { font-weight: var(--lbl-w-medium); color: var(--lbl-grey); }
.crumb b, .crumb span { font-weight: var(--lbl-w-medium); color: var(--lbl-current); }

/* 2. Kicker: "Markets · The Chart Desk" */
.kick { font-weight: var(--lbl-w-strong); color: var(--lbl-green); }
.kick .t { font-weight: var(--lbl-w-medium); color: var(--lbl-ink); }
.kick .chip.cat, .m.kick { font-size: var(--lbl-size); font-weight: var(--lbl-w-strong); color: var(--lbl-green); }

/* 3. Date / timestamp line and relative times (was mono 13.5px, 18px in lists) */
time, .when, .ar-when, .am-time, .am-time time, p.when, li > span.when {
  font-weight: var(--lbl-w-regular); color: var(--lbl-grey); font-size: var(--lbl-size);
}

/* 4. Version line: "Version 2 · Proof" (markup change in spec section 4) */
.am-ver { font-weight: var(--lbl-w-medium); color: var(--lbl-grey); }
.am-ver a { font-family: var(--lbl-font); font-size: var(--lbl-size); font-weight: var(--lbl-w-medium); color: var(--lbl-green); }

/* 5. AI agent: plain green text, no box */
.aitag {
  font-weight: var(--lbl-w-medium); color: var(--lbl-green);
  border: 0; background: none; padding: 0; border-radius: 0; text-decoration: none;
}
.aitag:hover, .aitag:focus-visible { text-decoration: underline; text-underline-offset: 2px; }
.aitag-sep { color: var(--lbl-grey); }

/* 6. Brief pill and strip: "Evening brief · Latest" */
.bc-pill {
  font-size: var(--lbl-size); font-weight: var(--lbl-w-strong);
  padding: 2px 7px; gap: 5px;
}
.bc-pill.pm { background: #0B0C0C; color: #FFFFFF; }                 /* 19.8:1 */
.bc-pill.am { background: #FFFFFF; color: #111111; border: 1px solid #111111; }
.hb-kind { font-size: var(--lbl-size); font-weight: var(--lbl-w-strong); color: var(--lbl-ink); }
.hb-line { font-size: var(--lbl-size); font-weight: var(--lbl-w-regular); color: var(--lbl-grey); }

/* 7. Card meta: home lead, Top stories (incl. Chart Desk card), Latest, Markets listing, brief card, Learning Hub card */
.cgattr, .cgattr a { font-size: var(--lbl-size); color: var(--lbl-ink); }
p.m span, p.m .st, .lh2-mi, .lh2-sh .m, li > span.t, li > span.d {
  font-size: var(--lbl-size); font-weight: var(--lbl-w-regular); color: var(--lbl-grey);
}
.txt .fl { font-size: var(--lbl-size); } /* on Deep green tile: stays white */

/* 8. Learning Hub landing */
.lh2-intro .lh2-rules, .lh2-showing { font-size: var(--lbl-size); }
/* Filter chip counts: was #CFD2CF on ink (about 1.5:1 measured on white; recheck) */
.lh2-chip i { font-size: var(--lbl-size); color: var(--lbl-grey); }
.lh2-chip.on i { color: #FFFFFF; } /* white on --ink #0E0F0F: 19.2:1 */

/* 9. Hub TOC (was mono 10.5px) */
.toc .th { font-size: var(--lbl-size); font-weight: 700; color: var(--lbl-ink); }
.toc a span { font-size: var(--lbl-size); font-weight: var(--lbl-w-medium); }

/* 10. Figure source lines (was mono 10.5px) */
.fsrc { font-size: var(--lbl-size); color: var(--lbl-ink); }
figcaption .fno { font-family: var(--lbl-font); font-size: var(--lbl-size); font-weight: var(--lbl-w-strong); }

/* 11. Record labels (was mono 10.5px caps) and dl labels */
dl.rec dt, div > dt { font-size: var(--lbl-size); font-weight: var(--lbl-w-medium); color: var(--lbl-ink); }

/* 12. Table headers in articles/dives (was LC Sans 10.5px caps) */
main table th { font-size: var(--lbl-size); text-transform: none; letter-spacing: 0; }

/* 13. Proof slip (shared by articles and Proof pages; was 10.5-12px) */
.proof .hd span { font-size: var(--lbl-size); }
.proof dl dt { font-size: var(--lbl-size); font-weight: var(--lbl-w-medium); color: var(--lbl-ink); }
.proof dl dd, .proof dl dd a, .proof dl dd span, .proof ol li, .proof a > u { font-size: var(--lbl-size); }

/* 14. Mono that stays (real data), never below 12.5px */
.cclk, .cclk span, .cclk b, .clocks span,         /* NY/LDN/SGP clocks */
code, pre, kbd,
.v, .v a, .v i, li > span.v,                       /* version history strings */
.vp-hash, .vp-m, .vv, .vcur, .vp-chip,             /* Proof page hash and version data */
.pstat {
  font-size: max(var(--data-min), 1em);
}
a.cite { font-size: var(--data-min); }             /* [1] markers: was 11px */
a.url  { font-size: var(--data-min); }             /* source URLs: was 11.5px (old exception retired) */
.vp-hash { font-family: var(--f-mono); word-break: break-all; }

/* Hashed bylines (inside article#lc-piece) keep their published bytes, so the
   "· " separator before AI agent is drawn by CSS there instead of markup. */
#lc-piece .aitag:not(.aitag-sep + .aitag)::before { content: "· "; color: var(--lbl-grey); }
/* Pieces of the old 12.5px floor that the label layer does not restate */
.tfl, .meta, .meta.when, .tg span, .pstat .unpub { font-size: max(var(--fs-tag), 1em); }
/* Oct. 16 scope: plain section links ("All news", "More headlines"), no arrow glyph */
html body .mh a { font: var(--lbl-w-regular) var(--lbl-size)/var(--lbl-lh) var(--lbl-font); color: var(--lbl-green); text-decoration: none; text-transform: none; letter-spacing: 0; }
html body .mh a::after, html body .mh a::before { content: none; }
html body .mh a:hover, html body .mh a:focus-visible { text-decoration: underline; text-underline-offset: 2px; }

/* Addendum (spec-case-marquee-labels-2026-10-16.md): static "Browse the hub" list replaces the rotator */
.lh2-index { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 12px 0; margin: 0 0 16px; }
.lh2-index-h { font: 600 13px/1.4 var(--lbl-font); color: var(--lbl-ink); margin: 0 0 6px; text-transform: none; letter-spacing: 0; }
.lh2-index ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 22px; }
.lh2-index li { font: 600 14px/1.4 var(--lbl-font); }
.lh2-index li a { color: var(--ink); text-decoration: none; }
.lh2-index li a:hover, .lh2-index li a:focus-visible { text-decoration: underline; text-underline-offset: 2px; }
.lh2-index li span { font: 400 13px/1.4 var(--lbl-font); color: var(--lbl-grey); margin-left: 6px; }
@media (max-width: 600px) { .lh2-index ul { gap: 6px 16px; } }

/* Addendum 3.2: plain text links, no glyphs, no button box (UX call: .vfy-btn and .bc-cta lose the box) */
html body .mh a, html body .bc-cta, html body .hb-read, html body .vfy-btn, html body .vp-banner a, html body .vp-read a, html body .sov-all {
  font-family: var(--lbl-font); font-size: 13px; font-weight: 600; color: var(--lbl-green) !important;
  text-decoration: none; text-transform: none; letter-spacing: 0;
}
html body .bc-cta, html body .vfy-btn { display: inline-block; background: none; border: 0; border-radius: 0; padding: 0; }
html body .vfy-btn:hover { background: none; }
html body .mh a:hover, html body .bc-cta:hover, html body .hb-read:hover, html body .vfy-btn:hover, html body .vp-banner a:hover, html body .vp-read a:hover, html body .sov-all:hover,
html body .mh a:focus-visible, html body .bc-cta:focus-visible, html body .hb-read:focus-visible, html body .vfy-btn:focus-visible { text-decoration: underline; text-underline-offset: 2px; }
.vfy-m { display: none; }

/* UX call: section heads drop the CSS caps; sentence case in Libre Franklin 600 at their current size */
html body .mh { font-family: var(--lbl-font); font-weight: 600; text-transform: none; letter-spacing: 0; }

/* Price widget Option B3 (price-widget-option-b3-2026-10-16.pdf): 3-coin Markets table at the top of the
   home right rail; build-time CoinGecko cache; replaces the marquee on all widths. Hidden below 600px. */
.cgtable { margin: 0 0 18px; }
.cgtable .cgt-h { font: 600 13px/1.4 var(--lbl-font); color: var(--lbl-ink); text-transform: none; letter-spacing: 0; margin: 0 0 4px; padding: 0 0 4px; border-bottom: 2px solid var(--ink); }
.cgtable table { width: 100%; border-collapse: collapse; font: 400 13px/1.4 var(--lbl-font); font-variant-numeric: tabular-nums; }
.cgtable th, .cgtable td { padding: 7px 0; border-bottom: 1px solid var(--line); text-align: right; font-size: 13px; }
.cgtable thead th { font-weight: 400; color: var(--lbl-grey); padding-top: 4px; }
.cgtable th:first-child, .cgtable tbody th { text-align: left; font-weight: 400; color: var(--ink); }
.cgtable .sym { color: var(--lbl-grey); }
.cgtable td.up { color: var(--lbl-green); }
.cgtable td.dn { color: var(--lbl-ink); }
.cgtable .cgt-empty { font: 400 13px/1.4 var(--lbl-font); color: var(--lbl-grey); margin: 8px 0 0; }
/* CoinGecko attribution: own line directly below the Markets table, >= 10pt (13.33px). */
.cgtable .cgt-attr { display: block; font: 400 13.5px/1.4 var(--lbl-font); color: var(--lbl-grey); margin: 8px 0 0; }
footer .fr-prices { display: block; font-size: 13.5px; margin-top: 4px; }
.cgtable .cgt-attr a { color: var(--lbl-green); text-decoration: underline; text-underline-offset: 2px; }
@media (max-width: 600px) { .cgtable, .cgstrip { display: none !important; } .fr2 .fr-prices { display: none; } }

/* Option A size floor, QA pass Oct. 16 (console check found these under 12.5px). CSS only: no markup or
   publish-hash change. Labels go to 13px Franklin; data, citations and URLs to 12.5px in their own face. */
html body .taghead .tagstats span, html body .tagrow .tl, html body .aside .boxh, html body .aside .note, html body .aside .note a,
html body .drail .boxh, html body .drail .in p span.t, html body .clog .mh .t, html body main.wrap > section.proof > p,
html body li.l2 > a > span, html body li.l2 > a > span.sn, html body #lc-piece section.sources > h3 {
  font-size: 13px;
}
html body .taghead .tagstats span, html body .tagrow .tl, html body .aside .boxh, html body .drail .boxh, html body #lc-piece section.sources > h3 { font-family: var(--lbl-font); letter-spacing: 0; text-transform: none; }
html body #lc-piece table thead th, html body #lc-piece table.dtbl td, html body #lc-piece table.dtbl td code,
html body #lc-piece .body ol > li > a, html body #lc-piece figure.dfig .fno, html body #lc-piece figure.dfig .fsrc,
html body #lc-piece .srcs .no, html body #lc-piece .srcs a.url, html body #lc-piece .srcs code {
  font-size: 12.5px;
}
/* QA pass 2: rules above lost on specificity/!important elsewhere */
html body .aside .box .boxh, html body .drail .box .boxh { font-size: 13px !important; }
html body #lc-piece .srcs a.url, html body #lc-piece .body ol > li > a, html body #lc-piece .dsrc a { font-size: 12.5px !important; }
@media (max-width: 600px) { html body #lc-piece table td, html body #lc-piece table th { font-size: 12.5px !important; } }
html body .lh2-dive details > summary { font-size: max(13px, 1em); }

/* UX review 3 (Oct. 16): non-hashed elements only */
/* 1) home lead byline: visible space around the separators ("Vance · Protocols & Policy Writer · AI agent") */
.front.home .lead p.by .by-sep, .front.home .lead p.by .aitag-sep { padding: 0 .2em 0 .12em; }
/* 2) Learning Hub dive status/date line: Franklin 500 15px on one line */
html body .lh2-dive .piece-out .pstat, html body .lh2-dive .piece-out .pstat * { font-family: var(--lbl-font) !important; font-weight: 500; font-size: 15px !important; letter-spacing: 0; white-space: nowrap; }
/* 3) "On this page" (dive mobile TOC, outside lc-piece): sentence case as in the markup, Franklin 600, no box */
html body .dive-frame details.toc-m { border: 0; background: none; }
html body .dive-frame details.toc-m > summary { font-family: var(--lbl-font); font-weight: 600; text-transform: none; letter-spacing: 0; border: 0; background: none; padding-left: 0; padding-right: 0; }

/* Mobile menu, UX ruling Oct. 16, 2026: active item keeps a 3px green bar at the left edge; every item label
   is inset 12px so labels stay aligned and the bar never touches the text; active text green at its current weight.
   Section headings in Option A: Franklin 600 13px, sentence case, #5C5F5D, no tracking. Swap the treatment here. */
@media (max-width: 900px) {
  .ndrawer li a { padding-left: 12px; }
  .ndrawer li a[aria-current="page"] { color: #0B6345; box-shadow: inset 3px 0 0 #3CC487; }
  .ndrawer .nlabel { margin: 16px 0 4px; padding-left: 12px; font: 600 13px/1.4 var(--lbl-font); letter-spacing: 0; text-transform: none; color: var(--mut); }
}

/* briefs-redesign-1016: Briefs layout (UX spec, Option A labels). The hashed #lc-piece is untouched. */
.bl-wrap { --hdr-h: 64px; --anchor-offset: calc(var(--hdr-h) + 16px); --lbl-font: "LC Franklin", "Libre Franklin", Arial, sans-serif; --lbl-grey: #5C5F5D; --lbl-ink: #3E4440; --lbl-green: #0B6345; max-width: 1240px; background: #fff; }
html:has(.bl-wrap) { scroll-padding-top: calc(64px + 16px); }
@media (prefers-reduced-motion: no-preference) { html:has(.bl-wrap) { scroll-behavior: smooth; } }
@media (prefers-reduced-motion: reduce) { html:has(.bl-wrap) { scroll-behavior: auto; } }
.brief-layout { display: grid; grid-template-columns: 264px minmax(0, 700px); gap: 56px; align-items: start; }
.bl-main { min-width: 0; }
.bl-main .story { display: block; }
.bl-main .story .aside { margin-top: 18px; }
.bl-rail { position: sticky; top: var(--anchor-offset); max-height: calc(100vh - var(--anchor-offset) - 16px); overflow-y: auto; padding-right: 8px; scrollbar-width: thin; }
.bl-rh { font: 700 13px/1.4 var(--lbl-font); color: #0E0F0F; margin: 0 0 8px; padding-bottom: 6px; border-bottom: 2px solid #0E0F0F; }
.bl-toc ol, .bl-mtoc ol, .bl-arch ul { list-style: none; margin: 0; padding: 0; }
.bl-toc ol { margin-bottom: 28px; }
.bl-toc li a { display: block; font: 500 14px/1.35 var(--lbl-font); color: var(--lbl-ink); text-decoration: none; padding: 6px 0 6px 12px; border-left: 2px solid #E3E5E3; }
.bl-toc li a:hover { color: #0E0F0F; text-decoration: underline; text-underline-offset: 2px; }
.bl-toc li a[aria-current="true"] { color: #0E0F0F; border-left-color: #12805A; font-weight: 600; }
.bl-ad { margin: 0 0 14px; }
.bl-ad-h { font: 600 13px/1.4 var(--lbl-font); color: var(--lbl-ink); margin: 0 0 4px; }
.bl-ad li a { display: block; text-decoration: none; padding: 6px 0; border-bottom: 1px solid #E3E5E3; }
.bl-ak { display: block; font: 400 13px/1.4 var(--lbl-font); color: var(--lbl-grey); }
.bl-now { color: var(--lbl-green); }
.bl-at { font: 600 14px/1.35 var(--lbl-font); color: #0E0F0F; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.bl-ad li a:hover .bl-at { text-decoration: underline; text-underline-offset: 2px; }
.bl-ad li.on .bl-at { color: var(--lbl-green); }
.bl-all { margin: 10px 0 0; font: 600 14px/1.4 var(--lbl-font); }
.bl-all a { color: var(--lbl-green); }
.bl-allsec { margin-top: 40px; }
.bl-allsec .bl-at { -webkit-line-clamp: unset; }
.bl-rail a:focus-visible, .bl-mtoc a:focus-visible, .bl-mtoc summary:focus-visible, .bl-arch a:focus-visible { outline: 2px solid #12805A; outline-offset: 2px; }
.bl-mtoc, .bl-march { display: none; }
@media (max-width: 899px) {
  .bl-wrap { --hdr-h: 56px; --anchor-offset: calc(var(--hdr-h) + 64px); }
  html:has(.bl-wrap) { scroll-padding-top: calc(56px + 64px); }
  .brief-layout { display: block; }
  .bl-rail { display: none; }
  .bl-mtoc { display: block; margin: 0 0 16px; border: 1px solid #0E0F0F; background: #fff; position: sticky; top: var(--hdr-h); z-index: 40; }
  .bl-mtoc summary { list-style: none; cursor: pointer; display: flex; align-items: center; padding: 11px 14px; font: 600 15px var(--lbl-font); min-height: 44px; box-sizing: border-box; }
  .bl-mtoc summary::-webkit-details-marker { display: none; }
  .bl-mtoc summary::after { content: ""; width: 8px; height: 8px; border-right: 2px solid #0E0F0F; border-bottom: 2px solid #0E0F0F; transform: rotate(45deg) translateY(-3px); }
  .bl-mtoc[open] summary::after { transform: rotate(-135deg) translateY(-1px); }
  .bl-mtoc summary .cnt { font: 400 13px var(--lbl-font); color: var(--lbl-grey); margin-left: auto; margin-right: 12px; }
  .bl-mtoc ol { padding: 0 14px 8px; border-top: 1px solid #E3E5E3; max-height: 60vh; overflow-y: auto; }
  .bl-mtoc li a { display: block; padding: 11px 0; font: 500 15px/1.3 var(--lbl-font); color: var(--lbl-ink); text-decoration: none; border-bottom: 1px solid #E3E5E3; }
  .bl-march { display: block; margin-top: 40px; }
}

/* brief-card-1016 (Option A): brief kicker in listings. Green kind, grey ET date and time. */
.kick.bk-kick { font: 600 13px/1.4 "LC Franklin", "Libre Franklin", Arial, sans-serif; text-transform: none; letter-spacing: 0; }
.bk-kind { color: #0B6345; }
.bk-when { font-weight: 400; color: #5C5F5D; }
/* Hub "Browse" strip, Option A (hub-browse notes, Oct. 16): four group columns of short names, no version labels */
.lh2-browse { padding: 16px 0 18px; }
.lh2-browse .lh2-index-h { font: 800 20px/1.2 var(--lbl-font); color: var(--ink); margin: 0 0 14px; }
.lh2-browse-cols { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }
.lh2-browse-col h3 { font: 700 12px/1.4 var(--lbl-font); color: #0b6b4f; border-top: 2px solid #0b6b4f; padding-top: 8px; margin: 0 0 6px; letter-spacing: 0; text-transform: none; }
.lh2-browse-col ul { list-style: none; margin: 0; padding: 0; display: block; }
.lh2-browse-col li { border-bottom: 1px solid #eee; font: inherit; }
.lh2-browse-col li a { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; padding: 6px 0; color: var(--ink); text-decoration: none; }
.lh2-browse-col li b { font: 600 15px/1.35 var(--lbl-font); }
.lh2-browse-col li span { font: 400 12px/1.35 var(--lbl-font); color: #666; margin: 0; text-align: right; }
.lh2-browse-col li a:hover b, .lh2-browse-col li a:focus-visible b { text-decoration: underline; text-underline-offset: 2px; }
.lh2-browse-col li a:focus-visible { outline: 2px solid #0b6b4f; outline-offset: 2px; }
@media (max-width: 900px) { .lh2-browse-cols { grid-template-columns: repeat(2, 1fr); gap: 20px 24px; } }
@media (max-width: 560px) { .lh2-browse-cols { grid-template-columns: 1fr; gap: 16px; } }
/* nav-dropdown in the header (Insights, Oct. 16): button matches the header links; menu links keep the plain list look */
.tabs .nav-dd__menu a, .hdr .tabs .nav-dd__menu a, .nav-dd-portal .nav-dd__menu a, .nav-dd-portal .nav-dd__menu a { order: 0; display: block !important; padding: 9px 14px !important; margin: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important;
  font: 400 14px/1.3 'Libre Franklin', sans-serif !important; color: var(--dd-ink) !important; text-decoration: none; white-space: nowrap; }
.tabs .nav-dd__menu a:hover, .tabs .nav-dd__menu a:focus-visible, .nav-dd-portal .nav-dd__menu a:hover, .nav-dd-portal .nav-dd__menu a:focus-visible { background: var(--dd-hover-bg) !important; color: var(--dd-hover-ink) !important; }
.tabs .nav-dd__menu a:focus-visible, .nav-dd-portal .nav-dd__menu a:focus-visible { outline: 2px solid var(--dd-ring); outline-offset: -3px; }
.tabs .nav-dd__menu a[aria-current="page"], .nav-dd-portal .nav-dd__menu a[aria-current="page"] { color: var(--dd-cur) !important; font-weight: 600 !important; box-shadow: inset 3px 0 var(--dd-cur) !important; }
.tabs .nav-dd__menu a::before, .tabs .nav-dd__menu a::after, .nav-dd-portal .nav-dd__menu a::before, .nav-dd-portal .nav-dd__menu a::after { display: none !important; }
@media (min-width: 901px) {
  .hdr .tabs .nav-dd { order: 2; display: flex; align-items: stretch; }
  .hdr .tabs .nav-dd__btn { position: relative; padding: 18px 11px 16px; border: 0; background: none; height: auto; font: 500 14.5px/1 var(--f-body); color: #d9dcda; white-space: nowrap; }
  .hdr .tabs .nav-dd__btn:hover, .hdr .tabs .nav-dd__btn[aria-expanded="true"] { color: #fff; }
  .hdr .tabs .nav-dd__btn.on { color: #fff; background: none; }
  .hdr .tabs .nav-dd__btn.on::before { display: none; }
  .hdr .tabs .nav-dd__btn.on::after { content: ""; position: absolute; left: 11px; right: 11px; bottom: 0; top: auto; height: 3px; background: #3CC487; }
}
@media (max-width: 900px) {
  .tabs .nav-dd { display: flex; flex: none; }
  .tabs .nav-dd__btn { padding: 11px 10px; border: 0; background: none; height: auto; font: 500 14px/1.2 var(--sans); color: #cfd2d0; white-space: nowrap; }
  .tabs .nav-dd__btn.on { color: #fff; background: none; box-shadow: inset 0 -3px 0 #3CC487; }
  .tabs .nav-dd__btn.on::before, .tabs .nav-dd__btn.on::after { display: none; }
  .ndrawer .nav-dd__btn { border-bottom: 1px solid var(--line); color: var(--ink); }
  .ndrawer .nav-dd__btn.on { color: var(--em-ink); box-shadow: inset 3px 0 0 #3CC487; padding-left: 12px; }
  .ndrawer .nav-dd__menu a::after { content: none; }
  .ndrawer .nav-dd__menu li a { color: var(--dd-ink); border-bottom-color: transparent; padding-left: 34px; }
  .ndrawer .nav-dd__menu li a:hover, .ndrawer .nav-dd__menu li a:focus-visible { background: var(--dd-hover-bg); color: var(--dd-hover-ink); }
  .ndrawer .nav-dd__menu li a[aria-current="page"] { color: var(--dd-cur); box-shadow: inset 3px 0 0 var(--dd-cur); }
}

/* Reader verification box (Oct. 17, 2026): outside article#lc-piece, after the Proof slip. */
.vbox { margin-top: 18px; border: 1px solid var(--ink); background: var(--surface); font-family: var(--sans); font-size: 14px; line-height: 1.5; padding: 12px 14px; }
.vbox-h { font-family: var(--display); font-size: 17px; margin: 0 0 6px; letter-spacing: 0; text-transform: none; }
.vbox-steps { margin: 0; padding-left: 20px; }
.vbox-steps li { margin: 6px 0; }
.vbox-steps p { margin: 0; }
.vbox-dl { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px !important; }
.vbox-btn { display: inline-block; border: 1px solid var(--ink); padding: 4px 10px; border-radius: 2px; font-family: var(--mono); font-size: 12.5px; text-decoration: none; color: var(--ink); background: var(--bg); }
.vbox-btn:hover { background: var(--ink); color: var(--bg); }
.vbox-block { margin: 10px 0 0; padding-top: 8px; border-top: 1px solid var(--line2); }
.vbox-how { margin: 8px 0 0; font-size: 13px; }

/* ux-layout-1020: step 4's WARNING/FAILURE text folds into a details row so the four step cards stay compact. */
.vfy-more { margin-top: 10px; border-top: 1px solid var(--vline); padding-top: 8px; }
.vfy-more summary { cursor: pointer; font-size: 14.5px; font-weight: 600; color: var(--vdg); list-style-position: inside; }
.vfy-more summary:focus-visible { outline: 2px solid var(--vdg); outline-offset: 2px; }
.vfy-more p { margin-top: 8px !important; font-size: 14.5px !important; }
/* ux-layout-1020: Field guide Browse grouped into four display groups (Option A pattern, palette A). */
.sec-fieldguide .lh2-browse-col li span:empty { display: none; }
.sec-fieldguide .lh2-browse { background: #f3f6fb; border-radius: 12px; padding: 20px 24px 22px; margin: 8px 0; }
@media (max-width: 560px) { .sec-fieldguide .lh2-browse { padding: 16px; } }
.sec-fieldguide .lh2-browse-col li { border-bottom-color: #dfe5f0; }
/* Proof slip and Proof page (UX, Oct. 21): normal wrapping for text; only the hash and the tx break anywhere. */
.proof dd, .proof td { word-break: normal; overflow-wrap: anywhere; }
.proof .proof-hash, .proof .proof-tx { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12.5px; word-break: break-all; line-height: 1.45; }
.proof dd > .proof-hash { display: block; }

/* Le Coin proof slip, final (UX/Design, 2026-10-21).
   Render the transaction id inside <code class="proof-tx">…</code> and the hash inside <code class="proof-hash">…</code>
   so long hex strings break cleanly on phones and desktop. */
.proof-slip dd, .proof-slip td { word-break: normal; overflow-wrap: anywhere; }
.proof-slip .proof-hash, .proof-slip .proof-tx { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12.5px; word-break: break-all; line-height: 1.45; }
/* Analysis NEW flag (UX nav mock; shown 30 days from launch, date-driven in src/lib/analysis.ts). */
.nav-new{font:600 10px/1.4 "Libre Franklin",system-ui,sans-serif;background:var(--lbl-green,#0B6345);color:#fff;padding:1px 5px;margin-left:6px;vertical-align:2px;letter-spacing:.04em}
/* UX Analysis review item 1 (Oct. 22, 2026), site-wide <=900px: the Insights dropdown is a tab like the others, so the
   strip scrolls it fully into view (NAV_SCRIPT centres the active tab or button) and the right-edge fade stays. Header only. */
@media (max-width: 900px) {
  .tabs .wrap { display: flex; flex-wrap: nowrap; }
  .tabs .wrap > * { flex: 0 0 auto; }
  .tabs .nav-dd__btn { display: flex; align-items: center; gap: 4px; padding: 11px 10px; white-space: nowrap; background: none; border: 0; font: 500 14px/1.2 var(--sans); color: #cfd2d0; }
  .tabs .nav-dd__btn.on { color: #fff; box-shadow: inset 0 -3px 0 #fff; }
}
/* UX Analysis review items 6, 8-10 (Oct. 22, 2026): research summary articles (.story-leadunder, set when a report links to the
   piece). Layout only: #lc-piece bytes unchanged by this block. The article box is display:contents so the lead (outside
   lc-piece) sits full width under the dek at 16:9; no rail copy of the lead. */
main.wrap > .story.top.story-leadunder > #lc-piece { display: contents; }
.story-leadunder > #lc-piece > .ahead { grid-area: head; min-width: 0; }
.story-leadunder > #lc-piece > .byline { grid-area: byl; min-width: 0; }
.story-leadunder > #lc-piece > .body { grid-area: body; min-width: 0; }
main.wrap > .story.top.story-leadunder { grid-template-rows: none;
  grid-template-areas: "meta head rail" "meta lead rail" "meta byl rail" "meta body rail" "meta body status" "meta out status"; }
.story-leadunder .alead { margin: 16px 0 0; }
.story-leadunder .alead .leadfig img { aspect-ratio: 16 / 9; object-fit: cover; width: 100%; height: auto; }
.story-leadunder #lc-piece .body ul { list-style: disc; padding-left: 1.4em; margin: 0 0 14px; }
.story-leadunder #lc-piece .body li { margin: 0 0 8px; }
.story-leadunder #lc-piece .body h3 { margin: 26px 0 8px; }
@media (max-width: 1099px) { main.wrap > .story.top.story-leadunder { grid-template-areas: "meta head" "meta lead" "meta byl" "meta body" "meta out" "meta rail" "meta status"; } }
@media (max-width: 899px) {
  main.wrap > .story.top.story-leadunder { grid-template-areas: "head" "lead" "byl" "body" "out" "rail" "status"; }
  .story-leadunder #lc-piece .byline > span { display: block; line-height: 1.5; }
}

/* Insights label click (Chief, Oct. 22, 2026): the whole label is the hit target on desktop and touch. */
.nav-dd__btn { cursor: pointer; touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
.nav-dd__btn > * { pointer-events: none; }

/* Portalled header dropdown panel (iOS clip fix, Oct. 22, 2026): lives in <body>, above the sticky header. */
.nav-dd-portal { position: static; }
.nav-dd-portal .nav-dd__menu { position: fixed; z-index: 1000; }
