/* Global Markets Narrator — design prototype 2026-09-28
   Visual language adapted from auctionedge-frontend/rebuild-2026-07/fable-v2
   (paper/terminal bands, ink/bone palette, Archivo / Spectral / IBM Plex Mono).
   Reader site, not a landing page: no hero, no CTAs, smaller display sizes. */

/* ══ TOKENS ══ */
:root{
  --paper:#EBEDE6; --paper-2:#E1E4DA; --paper-3:#D6DACE;
  --ink:#15171E; --ink-70:rgba(21,23,30,.72); --ink-55:rgba(21,23,30,.58); --ink-line:rgba(21,23,30,.16);
  --term:#0C0A11; --term-2:#14111D; --term-3:#1B1726; --term-line:rgba(233,228,240,.14);
  --bone:#E9E4F0; --bone-60:rgba(233,228,240,.66); --bone-40:rgba(233,228,240,.50);
  --acc:#A62B67; --acc-d:#F06DA8;
  --teal:#17796A; --teal-d:#43C9A8; --rose:#B03A46; --rose-d:#F0697A;
  --violet:#5B47B8; --violet-d:#8F7BE0; --grey:#8A8C92;
  --f-display:"Archivo","Arial Narrow",Arial,sans-serif;
  --f-body:"Spectral",Georgia,"Times New Roman",serif;
  --f-mono:"IBM Plex Mono",Consolas,"Courier New",monospace;
  --wrap:1120px; --pad:clamp(16px,4vw,48px);
  --sp-1:8px; --sp-2:16px; --sp-3:28px; --sp-4:48px; --sp-5:80px;
}

/* ══ BASE ══ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:var(--acc);color:#fff}
[hidden]{display:none!important}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.num{font-variant-numeric:tabular-nums}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:2px}
.band-term a:focus-visible,.band-term button:focus-visible,.band-term summary:focus-visible{outline-color:var(--acc-d)}
.skip{position:absolute;left:12px;top:-60px;background:var(--ink);color:var(--paper);padding:8px 12px;z-index:70;font-family:var(--f-mono);font-size:12px}
.skip:focus{top:12px}
.band-paper{background:var(--paper);color:var(--ink)}
.band-term{background:var(--term);color:var(--bone)}
.band{padding:36px 0}
@media (max-width:760px){.band{padding:28px 0}}

/* ══ MASTHEAD ══ */
.mast{background:var(--term);color:var(--bone);border-bottom:1px solid var(--term-line)}
.mast .wrap{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 24px;padding-top:14px;padding-bottom:14px}
.wordmark{font-family:var(--f-display);font-variation-settings:'wdth' 118;font-weight:700;font-size:19px;letter-spacing:-.01em;text-decoration:none;color:var(--bone);white-space:nowrap}
.wordmark i{font-style:normal;color:var(--acc-d)}
.mast nav{display:flex;flex-wrap:wrap;gap:4px 18px;font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.mast nav a{text-decoration:none;color:var(--bone-60);padding:2px 0;border-bottom:1px solid transparent}
.mast nav a:hover{color:var(--bone)}
.mast nav a[aria-current="page"]{color:var(--bone);border-bottom-color:var(--acc-d)}
.mast nav .off{color:var(--bone-40);cursor:default}

/* ══ TYPE ══ */
.folio{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 16px;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-55);border-top:1px solid var(--ink-line);padding-top:10px;margin-bottom:18px}
.band-term .folio{color:var(--bone-40);border-top-color:var(--term-line)}
.folio b{font-weight:500;color:var(--acc)}
.band-term .folio b{color:var(--acc-d)}
h1{font-family:var(--f-display);font-weight:660;font-variation-settings:'wdth' 114;font-size:clamp(30px,4.4vw,50px);line-height:1;letter-spacing:-.02em}
h2{font-family:var(--f-display);font-weight:640;font-variation-settings:'wdth' 112;font-size:clamp(22px,2.5vw,30px);line-height:1.08;letter-spacing:-.012em;margin-bottom:10px}
h3{font-family:var(--f-display);font-variation-settings:'wdth' 110;font-weight:620;font-size:clamp(18px,1.8vw,21px);line-height:1.15;letter-spacing:-.01em;margin-bottom:8px}
.eyebrow{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bone-60);margin-bottom:12px}
.eyebrow .dot{color:var(--acc-d)}
.band-paper .eyebrow{color:var(--ink-55)} .band-paper .eyebrow .dot{color:var(--acc)}
.lede{font-size:clamp(16px,1.4vw,18px);line-height:1.6;max-width:62ch;color:var(--ink-70)}
.band-term .lede{color:var(--bone-60)}
.k{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-55)}
.band-term .k,.card-term .k{color:var(--bone-40)}
p+p{margin-top:.8em}
.essential{font-size:16.5px;line-height:1.6}
.essential p{display:inline}.essential p+p{margin-top:0}.essential p::after{content:" "}
.small{font-size:14.5px;line-height:1.5}
.note{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.03em;line-height:1.65;color:var(--ink-55);margin-top:10px}
.band-term .note,.card-term .note{color:var(--bone-40)}

/* glossary terms */
.gl{text-decoration:underline dotted;text-decoration-thickness:1px;text-underline-offset:3px;cursor:help;font-style:inherit}
.band-term .gl,.card-term .gl{text-decoration-color:var(--bone-40)}

/* commentary: the model's prose, always labelled */
.cm{margin-top:14px;padding:10px 0 10px 16px;border-left:2px solid var(--violet);max-width:64ch}
.cm .cm-label{display:flex;gap:8px;align-items:baseline;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--violet);margin-bottom:4px}
.cm .cm-label em{font-style:normal;letter-spacing:.04em;text-transform:none;color:var(--ink-55)}
.cm p{font-style:italic;font-size:16px;line-height:1.55;color:var(--ink-70)}
.cm p strong{font-style:normal;font-family:var(--f-display);font-variation-settings:'wdth' 106;font-weight:600;font-size:17px;color:var(--ink);display:block;line-height:1.3;margin-bottom:4px}
.band-term .cm,.card-term .cm{border-left-color:var(--violet-d)}
.band-term .cm .cm-label,.card-term .cm .cm-label{color:var(--violet-d)}
.band-term .cm .cm-label em,.card-term .cm .cm-label em{color:var(--bone-40)}
.band-term .cm p,.card-term .cm p{color:var(--bone-60)}
.band-term .cm p strong,.card-term .cm p strong{color:var(--bone)}
.lens-tag{display:inline-block;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:2px 7px 1px;border-radius:2px;border:1px solid currentColor}
.lens-auction{color:var(--acc)} .lens-drift{color:var(--teal)}
.band-term .lens-auction,.card-term .lens-auction{color:var(--acc-d)} .band-term .lens-drift,.card-term .lens-drift{color:var(--teal-d)}

/* chips + badges */
.chip{display:inline-block;font-family:var(--f-mono);font-size:11px;letter-spacing:.07em;padding:3px 8px 2px;border:1px solid var(--ink-line);border-radius:2px;color:var(--ink-70);white-space:nowrap}
.band-term .chip,.card-term .chip{border-color:var(--term-line);color:var(--bone-60)}
.badge{display:inline-flex;align-items:center;gap:7px;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:3px 9px 2px;border-radius:2px;border:1px solid;white-space:nowrap}
.badge::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.badge-open{color:var(--teal-d);border-color:rgba(67,201,168,.5)}
.badge-closed{color:var(--bone-60);border-color:var(--term-line)}
.badge-open::before{box-shadow:0 0 0 3px rgba(67,201,168,.18)}

/* ══ CARDS ══ */
.card-term{background:var(--term-2);color:var(--bone);border:1px solid var(--term-line);border-radius:4px}
.card-paper{background:var(--paper-2);border:1px solid var(--ink-line);border-radius:4px}

/* figure rail: key numbers */
.figs{display:grid;grid-template-columns:repeat(var(--n,5),minmax(0,1fr));gap:14px 18px}
.figs>div{border-top:1px solid var(--term-line);padding-top:8px;min-width:0}
.band-paper .figs>div,.card-paper .figs>div{border-top-color:var(--ink-line)}
.figs .v{display:block;font-family:var(--f-mono);font-weight:500;font-size:clamp(16px,1.6vw,20px);font-variant-numeric:tabular-nums;margin-top:3px;white-space:nowrap}
.figs .v small{font-size:11px;font-weight:400;color:var(--bone-40);margin-left:3px}
.band-paper .figs .v small,.card-paper .figs .v small{color:var(--ink-55)}
.figs .v.rose{color:var(--rose-d)} .figs .v.vio{color:var(--violet-d)} .figs .v.acc{color:var(--acc-d)}
@media (max-width:700px){.figs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:340px){.figs{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* lead card (Today + hub) */
.lead{padding:22px 24px 20px}
.lead-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px}
.lead-top .inst{font-family:var(--f-display);font-variation-settings:'wdth' 112;font-weight:680;font-size:22px;letter-spacing:-.01em}
.lead-top .age{margin-left:auto;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.05em;color:var(--bone-40)}
.lead h2{font-size:clamp(20px,2.2vw,26px);max-width:34ch}
.lead h2 a{text-decoration:none}
.lead h2 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.lenses{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 28px;margin:14px 0 18px}
.lenses .ln{border-top:1px solid var(--term-line);padding-top:10px}
.lenses .ln p{font-size:15.5px;line-height:1.5;color:var(--bone-60);margin-top:6px}
.lenses .ln p b{font-weight:500;color:var(--bone)}
@media (max-width:760px){.lenses{grid-template-columns:minmax(0,1fr)}.lead{padding:18px 16px}}
.lead-foot{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:baseline;justify-content:space-between;margin-top:16px;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.05em;color:var(--bone-40)}
.readlink{font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--acc-d);border-bottom:1px solid rgba(240,109,168,.4);padding-bottom:1px;white-space:nowrap}
.band-paper .readlink,.card-paper .readlink{color:var(--acc);border-bottom-color:rgba(166,43,103,.4)}
.readlink:hover{border-bottom-color:currentColor}

/* coming cards */
.coming{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:14px}
@media (max-width:900px){.coming{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:520px){.coming{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cs{padding:10px}.cs .nm{font-size:12.5px}}
.cs{border:1px dashed var(--ink-line);border-radius:4px;padding:12px 14px;color:var(--ink-55);background:transparent}
.cs .sym{font-family:var(--f-display);font-variation-settings:'wdth' 112;font-weight:660;font-size:19px;color:rgba(21,23,30,.45)}
.cs .nm{font-size:13.5px;line-height:1.35;margin-top:2px}
.cs .chip{margin-top:10px;color:var(--ink-55)}

/* prototype-only control */
.proto{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;color:var(--ink-55);border:1px dashed var(--ink-line);border-radius:3px;padding:7px 10px;margin-bottom:14px}
.proto b{font-weight:500;color:var(--acc);text-transform:uppercase;letter-spacing:.12em}
.seg{display:inline-flex;border:1px solid var(--ink-line);border-radius:2px;overflow:hidden}
.seg button{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;padding:3px 10px;color:var(--ink-70)}
.seg button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.dead{cursor:not-allowed}

/* ══ HUB ══ */
.hub-h1{font-size:clamp(28px,3.6vw,44px)}
.hub-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:var(--sp-3) var(--sp-4);align-items:start}
@media (max-width:900px){.hub-grid{grid-template-columns:minmax(0,1fr)}}
.strip{display:grid;grid-template-columns:repeat(30,minmax(0,1fr));gap:3px;margin-top:10px}
.strip i{display:block;height:26px;border-radius:1px;background:rgba(233,228,240,.06);border:1px dashed var(--term-line)}
.strip i.mixed{background:var(--violet-d);opacity:.55;border:0}
.strip i.up{background:var(--teal-d);border:0} .strip i.down{background:var(--rose-d);border:0}
.strip i.latest{opacity:1;outline:1px solid var(--bone);outline-offset:1px}
@media (max-width:520px){.strip{grid-template-columns:repeat(15,minmax(0,1fr))}.strip i{height:20px}}
.strip-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px;font-family:var(--f-mono);font-size:11px;letter-spacing:.04em;color:var(--bone-40)}
.strip-legend i{display:inline-block;width:10px;height:10px;border-radius:1px;margin-right:6px;vertical-align:-1px}
.strip-axis{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:10.5px;color:var(--bone-40);margin-top:6px}

.rlist{list-style:none}
.rlist li{border-top:1px solid var(--ink-line);padding:12px 0}
.rlist li:last-child{border-bottom:1px solid var(--ink-line)}
.rlist .rt{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.rlist .rd{font-family:var(--f-display);font-variation-settings:'wdth' 108;font-weight:620;font-size:16.5px;text-decoration:none}
.rlist a.rd:hover{text-decoration:underline;text-underline-offset:3px}
.rlist .rd.dead{color:var(--ink-70)}
.rlist .teaser{font-size:15px;line-height:1.5;color:var(--ink-70);margin-top:4px;max-width:70ch}
.rlist .meta{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:5px;font-family:var(--f-mono);font-size:11px;letter-spacing:.03em;color:var(--ink-55)}
.rlist .meta .dr{color:var(--teal)}

details.more{margin-top:0}
details.more>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 2px;font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--ink-line)}
details.more>summary::-webkit-details-marker{display:none}
details.more>summary::after{content:"+";font-size:16px;color:var(--acc)}
details.more[open]>summary::after{content:"–"}
.band-term details.more>summary,.card-term details.more>summary{border-bottom-color:var(--term-line)}
.band-term details.more>summary::after,.card-term details.more>summary::after{color:var(--acc-d)}
details.more .rlist li:first-child{border-top:0}

/* scenario card */
.scn{padding:16px 18px}
.scn .scn-name{font-family:var(--f-display);font-variation-settings:'wdth' 108;font-weight:640;font-size:17px;line-height:1.25}
.scn dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;margin-top:12px;font-size:14.5px}
.scn dt{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--bone-40);padding-top:3px;white-space:nowrap}
.scn dd{font-family:var(--f-mono);font-size:13px;font-variant-numeric:tabular-nums;color:var(--bone)}
.scn dd.rose{color:var(--rose-d)} .scn dd.teal{color:var(--teal-d)}
@media (max-width:420px){.scn dl{grid-template-columns:minmax(0,1fr)}.scn dt{padding-top:6px}}

/* ══ POST ══ */
.post-head{padding:26px 0 20px}
.post-head h1{font-size:clamp(28px,3.6vw,44px);max-width:none}
.meta-row{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:14px;font-family:var(--f-mono);font-size:12px;letter-spacing:.04em;color:var(--bone-60);font-variant-numeric:tabular-nums}
.meta-row b{font-weight:500;color:var(--bone)}
.meta-row .ph{color:var(--bone-40)}
.post-head .figs{margin-top:20px}

.tabbar{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--ink-line)}
.tabs{display:flex;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs a{flex:0 0 auto;font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--ink-55);padding:13px 14px 11px;border-bottom:2px solid transparent}
.tabs a:first-child{padding-left:0}
.tabs a:hover{color:var(--ink)}
.tabs a[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--acc)}
@media (max-width:520px){.tabs a{padding:12px 10px 10px;font-size:11.5px}}
html.js .panel:not(.is-active){display:none}
.panel{padding:28px 0 36px;scroll-margin-top:48px}
html:not(.js) .panel{border-bottom:1px solid var(--ink-line)}
.panel-title{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
html:not(.js) .panel-title{position:static;width:auto;height:auto;clip:auto}

.read-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-3) var(--sp-4);align-items:start}
@media (max-width:900px){.read-grid{grid-template-columns:minmax(0,1fr)}}
.sec{margin-top:22px}
.sec:first-child{margin-top:0}
.sec-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.sec-h h2{margin:0;font-size:clamp(20px,2vw,24px)}
.changed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin-top:4px}
.changed div{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--ink-line);padding:6px 0;font-size:14px;line-height:1.35}
.changed div span:first-child{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-55);padding-top:2px}
.changed div span:last-child{text-align:right;font-weight:500}
@media (max-width:420px){.changed{grid-template-columns:minmax(0,1fr)}}
.drift-card{padding:20px 22px}
@media (max-width:520px){.drift-card{padding:16px}}
.drift-card .sec-h h2{color:var(--bone)}
.drift-card .essential{color:var(--bone)}
.vol-row{margin-top:18px;padding-top:14px;border-top:1px solid var(--term-line)}
.horizons{margin-top:var(--sp-3);display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 20px;align-items:baseline;border-top:1px solid var(--ink-line);border-bottom:1px solid var(--ink-line);padding:14px 0}
.horizons .hz{display:flex;gap:8px;flex-wrap:wrap}
@media (max-width:600px){.horizons{grid-template-columns:minmax(0,1fr)}}
.invalid{display:inline-block;margin-top:8px;padding:6px 12px;border-left:2px solid var(--rose);background:rgba(176,58,70,.07);font-size:15px}
.invalid b{font-family:var(--f-mono);font-weight:500;color:var(--rose)}

/* level tables */
.lv-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-3) var(--sp-4);align-items:start}
@media (max-width:900px){.lv-grid{grid-template-columns:minmax(0,1fr)}}
table.lv{width:100%;border-collapse:collapse}
table.lv caption{caption-side:top;text-align:left;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-55);padding-bottom:6px}
table.lv th,table.lv td{border-top:1px solid var(--ink-line);padding:7px 0;vertical-align:top;text-align:left}
table.lv tr:last-child th,table.lv tr:last-child td{border-bottom:1px solid var(--ink-line)}
table.lv th{font-weight:400;padding-right:14px}
table.lv th .ln{display:block;font-size:15.5px;line-height:1.3}
table.lv th .mn{display:block;font-size:13px;line-height:1.4;color:var(--ink-55);font-style:italic;margin-top:1px}
table.lv th .mn.none{font-style:normal;font-family:var(--f-mono);font-size:11px}
table.lv td{font-family:var(--f-mono);font-size:14.5px;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-weight:500}
table.lv td small{font-weight:400;font-size:11px;color:var(--ink-55);margin-left:3px}
table.lv tr.hl td{color:var(--rose)}
table.lv tr.poc td{color:var(--acc)}

/* scenario + playbook + previous */
.scn-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--sp-3) var(--sp-4);align-items:start}
@media (max-width:900px){.scn-grid{grid-template-columns:minmax(0,1fr)}}
.play{list-style:none;margin-top:6px}
.play li{display:grid;grid-template-columns:118px minmax(0,1fr);gap:4px 14px;border-top:1px solid var(--ink-line);padding:10px 0;font-size:15px;line-height:1.45}
.play li:last-child{border-bottom:1px solid var(--ink-line)}
.play .case{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.04em;line-height:1.45;color:var(--ink);font-variant-numeric:tabular-nums}
.play .case b{display:block;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-55);font-weight:400}
@media (max-width:520px){.play li{grid-template-columns:minmax(0,1fr)}}
table.prev{width:100%;border-collapse:collapse;margin-top:6px;font-size:14px}
table.prev th,table.prev td{border-top:1px solid var(--ink-line);padding:8px 10px 8px 0;text-align:left;vertical-align:top}
table.prev thead th{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-55);font-weight:400}
table.prev td.m{font-family:var(--f-mono);font-size:13px;white-space:nowrap}
table.prev tr:last-child td{border-bottom:1px solid var(--ink-line)}
.outcome{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px 1px;border:1px solid;border-radius:2px;white-space:nowrap}
.outcome.inv{color:var(--rose);border-color:rgba(176,58,70,.5)}
.outcome.trig{color:var(--teal);border-color:rgba(23,121,106,.5)}
.xscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}

/* chart frame */
.winframe{border:1px solid var(--ink-line);border-radius:6px;overflow:hidden;background:var(--term-2);box-shadow:0 24px 48px -30px rgba(21,23,30,.45)}
.winframe .bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;padding:9px 14px;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;color:var(--bone-60);border-bottom:1px solid var(--term-line);background:rgba(233,228,240,.03)}
.winframe .bar .dots{display:flex;gap:6px}
.winframe .bar .dots i{width:8px;height:8px;border-radius:50%;background:var(--term-line);display:block}
.winframe .bar .dots i:first-child{background:var(--acc-d)}
.sketch-stamp{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--acc-d);border:1px solid rgba(240,109,168,.45);padding:2px 7px 1px;border-radius:2px}
.chart-box{aspect-ratio:1000/520;position:relative}
.chart-box svg{display:block;width:100%;height:100%}
.chart-box.mob{display:none;aspect-ratio:380/600}
@media (max-width:640px){.chart-box.desk{display:none}.chart-box.mob{display:block}}
.figcap{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.04em;color:var(--ink-55);margin-top:10px;line-height:1.6;max-width:90ch}
.legend{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:10px;font-family:var(--f-mono);font-size:11px;color:var(--ink-70)}
.legend i{display:inline-block;width:16px;height:0;border-top:2px solid;margin-right:6px;vertical-align:3px}

/* data note */
.dn-list{list-style:none;margin-top:4px}
.dn-list li{border-top:1px solid var(--ink-line);padding:9px 0 9px 22px;position:relative;font-size:15.5px;line-height:1.5}
.dn-list li::before{content:"—";position:absolute;left:0;color:var(--ink-55)}
.dn-list li:last-child{border-bottom:1px solid var(--ink-line)}
.dn-list code,.mono-in{font-family:var(--f-mono);font-size:13.5px}
.avail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin-top:4px}
.avail div{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--ink-line);padding:7px 0;font-family:var(--f-mono);font-size:12.5px}
.avail .st-ok{color:var(--teal)} .avail .st-est{color:var(--acc)}
@media (max-width:420px){.avail{grid-template-columns:minmax(0,1fr)}}

/* ══ FOOTER ══ */
footer{background:var(--term);color:var(--bone-40);border-top:1px solid var(--term-line);padding:24px 0 30px}
.foot{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;align-items:baseline;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.05em;line-height:1.8}
.foot p{max-width:60ch;color:var(--bone-60)}
.foot nav{display:flex;gap:18px}
.foot a{color:var(--bone-60);text-decoration:none;border-bottom:1px solid var(--term-line)}
.foot a:hover{color:var(--bone)}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media print{
  html.js .panel{display:block!important}
  .panel-title{position:static;width:auto;height:auto;clip:auto}
  .tabbar,.proto{display:none}
  details.more>*{display:block}
}

/* ══ SITE ADDITIONS (site-2026-09-28) ══ */
.pager{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center;border-top:1px solid var(--ink-line);padding:16px 0 26px;font-family:var(--f-mono);font-size:12px;letter-spacing:.06em}
.pager a{text-decoration:none;color:var(--ink-70);display:block}
.pager a:hover{color:var(--ink)}
.pager a b{display:block;font-weight:400;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-55)}
.pager .nx{text-align:right}
.pager .up{text-align:center}
.pager .none{color:var(--ink-55);opacity:.6}
.strip a{display:block}
.strip a i{height:26px}
@media (max-width:520px){.strip a i{height:20px}}
.play li{grid-template-columns:190px minmax(0,1fr)}
.foot .fb{color:var(--bone-40)}
.article{max-width:68ch}
.article h2{margin-top:26px}
.article p{margin-top:10px;color:var(--ink-70)}
.article p strong{color:var(--ink);font-weight:500}
.mast nav a.lnk{text-transform:none;letter-spacing:.04em}
@media (max-width:520px){.play li{grid-template-columns:minmax(0,1fr)}.pager{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.pager .up{display:none}}
/* real chart images (openalgo-charts PNG, 2400x1124) */
.chart-img{display:block;width:100%;height:auto;background:var(--term)}
.winframe .bar .fullsize{color:var(--acc-d);text-decoration:none;border-bottom:1px solid rgba(240,109,168,.4);white-space:nowrap}
.winframe .bar .fullsize:hover{border-bottom-color:currentColor}
.chart-strip{display:block;margin:4px 0 14px;border:1px solid var(--term-line);border-radius:3px;overflow:hidden;aspect-ratio:4/1;background:var(--term)}
.chart-strip img{display:block;width:100%;height:100%;object-fit:cover;object-position:right center}
@media (max-width:520px){.chart-strip{aspect-ratio:2.4/1}}
