/* Cost to Automate — timetable system
   Archivo (OFL) for headings, figures and labels; Source Serif 4 (OFL) for prose. */
@font-face{font-family:"Archivo";src:url(/fonts/archivo-latin-wdth-normal.woff2) format("woff2-variations"),url(/fonts/archivo-latin-wdth-normal.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-201F,U+2022-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Archivo";src:url(/fonts/archivo-latin-ext-wdth-normal.woff2) format("woff2-variations"),url(/fonts/archivo-latin-ext-wdth-normal.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2020-2021,U+20A0-20AB,U+20AD-20C0,U+2113,U+A720-A7FF}
@font-face{font-family:"Source Serif 4";src:url(/fonts/source-serif-4-latin-opsz-normal.woff2) format("woff2-variations"),url(/fonts/source-serif-4-latin-opsz-normal.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:swap}

:root{
  --paper:#ffffff;--paper-2:#f4f4f2;
  --ink:#15171b;--ink-2:#4b5059;--ink-3:#6b7079;
  --rule:#15171b;--hair:#d9dadd;--hair-2:#ebebed;
  --spot:#1f3fbf;--spot-2:#3956d6;--spot-wash:rgba(31,63,191,.1);
  --bar-manual:#9a9ea6;--error:#b3261e;
  --sans:"Archivo","Helvetica Neue",Arial,sans-serif;
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  /* type scale, 1.25 minor third-ish, rem */
  --t-xs:.8125rem;--t-sm:.8125rem;--t-ui:.9375rem;--t-body:1.0625rem;--t-lg:1.25rem;--t-h2:1.625rem;--t-fig:clamp(1.75rem,1.1rem + 1.7vw,2.5rem);
  --t-title:clamp(2.125rem,1.2rem + 2.8vw,3.5rem);--t-display:clamp(2.25rem,1.2rem + 3.2vw,3.75rem);
  /* 4px spacing scale */
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;
  --heavy:3px solid var(--rule);--thin:1px solid var(--rule);--hairline:1px solid var(--hair);
  --frame:1280px;--gutter:clamp(16px,4vw,48px);--measure:66ch;
  color-scheme:light;
}
[data-theme="dark"]{
  --paper:#121417;--paper-2:#1a1d21;
  --ink:#ebecee;--ink-2:#aeb2ba;--ink-3:#8a8f98;
  --rule:#ebecee;--hair:#30343b;--hair-2:#23262b;
  --spot:#93a6ff;--spot-2:#b3c0ff;--spot-wash:rgba(147,166,255,.14);
  --bar-manual:#6d727b;--error:#ff8a80;
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scrollbar-color:var(--ink-3) var(--paper)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media (prefers-reduced-motion:reduce){.bar>span{transition:none}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:var(--t-ui);line-height:1.5;font-variant-numeric:lining-nums tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;caret-color:var(--spot)}
::selection{background:var(--spot-wash);color:var(--ink)}
a{color:inherit;text-decoration:underline;text-decoration-color:var(--ink-3);text-decoration-thickness:1px;text-underline-offset:.2em}
a:hover{text-decoration-color:var(--ink);text-decoration-thickness:2px}
:focus-visible{outline:2px solid var(--spot);outline-offset:3px}
h1,h2,h3{margin:0;font-family:var(--sans);font-weight:700;color:var(--ink);text-wrap:balance}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:var(--s4);top:-48px;z-index:10;background:var(--ink);color:var(--paper);padding:var(--s2) var(--s3);font-weight:600;text-decoration:none}
.skip:focus{top:var(--s3)}
.frame{max-width:var(--frame);margin:0 auto;padding:0 var(--gutter)}
.mk{font-family:var(--sans);font-weight:700;color:var(--ink);font-size:.95em}

/* Masthead */
.mast{border-bottom:var(--heavy)}
.mast-in{display:flex;align-items:baseline;gap:var(--s5);padding-top:var(--s4);padding-bottom:var(--s3)}
.wordmark{font-size:var(--t-lg);font-weight:800;font-stretch:75%;letter-spacing:-.01em;text-decoration:none;line-height:1;padding:var(--s2) 0;margin:calc(var(--s2) * -1) 0}
.mast-nav{display:flex;gap:var(--s5);margin-left:auto}
.mast-nav a{font-size:var(--t-ui);font-weight:500;text-decoration:none;color:var(--ink-2);padding:var(--s2) 0}
.mast-nav a:hover{color:var(--ink);text-decoration:underline}
.mast-nav a[aria-current="page"]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}
.theme{font:inherit;font-size:var(--t-sm);font-weight:600;color:var(--ink);background:none;border:var(--thin);padding:var(--s1) var(--s3);min-height:32px;cursor:pointer;align-self:center}
.theme:hover{background:var(--ink);color:var(--paper)}
@media (max-width:640px){
  .mast-in{flex-wrap:wrap;gap:0 var(--s4)}
  .wordmark{font-size:1.25rem}
  .mast-nav{order:3;width:100%;margin:var(--s2) 0 0;gap:var(--s4);overflow-x:auto}
  .theme{margin-left:auto}
}

/* Shared section rhythm */
.sec{margin-top:var(--s8)}
.sec-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--s2) var(--s6);margin-bottom:var(--s4)}
.sec h2,.doc-main h2{font-size:var(--t-h2);font-stretch:85%;letter-spacing:-.01em;line-height:1.15}
.sec-note{color:var(--ink-2);font-size:var(--t-ui);max-width:60ch}
.lede{font-variant-numeric:proportional-nums oldstyle-nums;font-family:var(--serif);font-size:var(--t-lg);line-height:1.5;color:var(--ink-2);max-width:var(--measure);font-optical-sizing:auto}

/* Home title block */
.title-block{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:var(--s7);align-items:start;padding:var(--s7) 0 var(--s7)}
.display{margin-top:calc(var(--s3) * -1);font-size:var(--t-display);font-weight:760;font-stretch:72%;line-height:1;letter-spacing:-.018em;margin-bottom:var(--s5);max-width:20ch}
.key{border-top:var(--heavy);padding-top:var(--s3)}
.key-h{font-size:var(--t-sm);font-weight:700;margin-bottom:var(--s2)}
.key dl{margin:0}
.key dl div{display:grid;grid-template-columns:4.5rem 1fr;gap:var(--s3);padding:var(--s2) 0;border-top:var(--hairline);align-items:center}
.key dt{font-weight:700;text-align:right}
.key dd{margin:0;color:var(--ink-2);font-size:var(--t-sm);line-height:1.4}
.key .folio{margin-top:var(--s3);padding-top:var(--s2);border-top:var(--thin);font-size:var(--t-xs);color:var(--ink-2)}
@media (max-width:900px){.title-block{grid-template-columns:1fr;gap:var(--s5);padding:var(--s6) 0 var(--s5)}.display{max-width:22ch}}
@media (max-width:820px){.key .folio{display:none}.key dl div{padding:var(--s1) 0}}

/* Figures */
.fig-agent{color:var(--spot);font-weight:700}
.fig-manual{color:var(--ink-2);font-weight:400}

/* Dumbbell on a shared scale */
.db{position:relative;display:block;height:14px;margin-top:var(--s2)}
.db::before{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px solid var(--hair)}
.db-line{position:absolute;top:calc(50% - 1px);height:2px;background:var(--bar-manual)}
.db-m,.db-a{position:absolute;top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%}
.db-m{background:var(--paper);border:2px solid var(--bar-manual)}
.db-a{background:var(--spot)}
.key .db{width:4.5rem;margin:0}

/* Timetable matrix */
.tt-wrap{border-top:var(--heavy)}
table.tt{width:100%;border-collapse:collapse;table-layout:fixed}
.tt thead th{text-align:left;vertical-align:bottom;padding:var(--s3) var(--s4) var(--s2);border-bottom:var(--thin);font-size:var(--t-ui);font-weight:700;font-stretch:85%}
.tt thead th a{text-decoration:none;display:inline-block;padding:var(--s1) 0}
.tt thead th a:hover{text-decoration:underline}
.tt .corner{width:17%;font-size:var(--t-sm);font-weight:600;color:var(--ink-2)}
.corner-key{display:block;margin-top:var(--s2);font-size:var(--t-xs);font-weight:500;color:var(--ink-3)}
.ticks{display:flex;justify-content:space-between;margin-top:var(--s2);font-size:var(--t-xs);font-weight:500;color:var(--ink-3);font-stretch:85%}
.tt tbody th,.tt td{vertical-align:top;padding:var(--s3) var(--s4) var(--s4);border-bottom:var(--hairline)}
.tt td+td,.tt th+td{border-left:var(--hairline)}
.tt thead th+th{border-left:var(--hairline)}
.tt tbody th{text-align:left;font-size:var(--t-body);font-weight:700;font-stretch:85%;line-height:1.25}
.tt tbody th a{text-decoration:none;display:inline-block;padding:var(--s1) 0}
.tt tbody th a:hover{text-decoration:underline}
.tt tbody tr:last-child>*{border-bottom:var(--thin)}
.entries{display:grid;gap:var(--s3)}
.entries li+li{padding-top:var(--s3);border-top:1px dotted var(--hair)}
.entry{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--s3);text-decoration:none}
.entry .e-pct{text-align:right;font-weight:750;font-stretch:85%;line-height:1.3}
.entry .e-figs{grid-column:1/-1;display:grid;grid-template-columns:6ch 1.75em 6ch;justify-content:start}
.entry .e-figs>span{text-align:right}
.entry .e-figs>span+span{grid-column:3}
.entry .e-name{font-weight:550;line-height:1.3}
.entry:hover .e-name{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.2em}
.entry .e-figs{text-align:right;white-space:nowrap;line-height:1.3}
.entry .e-figs::before{content:"→";grid-column:2;grid-row:1;text-align:center;color:var(--ink-3);font-weight:400}
.entry .e-figs>span:first-child{grid-column:1;grid-row:1}
.entry .db{grid-column:1/-1}
.nil{color:var(--ink-3);font-size:var(--t-lg)}
.tt-foot{margin-top:var(--s3);font-size:var(--t-sm);color:var(--ink-2)}
@media (max-width:820px){
  .tt-wrap{border-top:0}
  table.tt,.tt tbody,.tt tr,.tt tbody th,.tt td{display:block;width:auto}
  .tt thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .tt tbody tr{border-top:var(--heavy);margin-bottom:var(--s6)}
  .tt tbody th{padding:var(--s2) 0 var(--s3);border-bottom:var(--thin);font-size:var(--t-lg)}
  .tt td,.tt td+td,.tt th+td{border-left:0;padding:var(--s3) 0}
  .tt td::before{content:attr(data-label);display:block;font-size:var(--t-sm);font-weight:700;font-stretch:85%;color:var(--ink-2);margin-bottom:var(--s2)}
  .tt td.nil{display:none}
  .tt tbody tr:last-child>*{border-bottom:var(--hairline)}
}

/* Method */
.method{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 var(--s6);border-top:var(--thin)}
.method div{padding-top:var(--s3)}
.method h3{font-size:var(--t-body);font-stretch:85%;margin-bottom:var(--s2)}
.method p{font-variant-numeric:proportional-nums;font-family:var(--serif);font-size:var(--t-ui);line-height:1.55;color:var(--ink-2)}
.method .formula{font-family:var(--sans);color:var(--ink);font-size:var(--t-sm);margin-top:var(--s2);font-weight:500}
@media (max-width:820px){.method{grid-template-columns:1fr}.method div+div{margin-top:var(--s4);border-top:var(--hairline)}}

/* Running head + document title */
.runhead{padding-top:var(--s3);font-size:var(--t-sm)}
.runhead ol{display:flex;flex-wrap:wrap;align-items:baseline}
.runhead li{color:var(--ink-2)}
.runhead .sep{margin:0 var(--s2);color:var(--ink-3)}
.runhead a{text-decoration:none;color:var(--ink-2);display:inline-block;padding:var(--s2) 0}
.runhead a:hover{color:var(--ink);text-decoration:underline}
.runhead [aria-current]{color:var(--ink)}
.doc-head{padding:var(--s4) 0 var(--s6);border-bottom:var(--thin);margin-bottom:var(--s6)}
.title{font-size:var(--t-title);font-weight:760;font-stretch:75%;line-height:1;letter-spacing:-.015em;margin-bottom:var(--s4);max-width:22ch}
.doc-head .lede{margin-top:var(--s2)}
.doc-head.hub-top{border-bottom:0;margin-bottom:var(--s2)}
.marks{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s5);font-size:var(--t-sm);color:var(--ink-2)}
.conf{display:inline-flex;align-items:center;gap:var(--s2);border:var(--thin);padding:3px var(--s3) 3px var(--s2);min-height:32px;color:var(--ink);font-weight:500;text-decoration:none}
.conf:hover{background:var(--paper-2)}
.conf b{font-weight:750}
.conf-scale{display:inline-flex;gap:2px}
.conf-scale i{width:7px;height:12px;border:1.5px solid var(--ink)}
.conf-scale i.on{background:var(--ink)}
.badge{display:inline}
.badge .mk,.est-tag .mk{margin-right:.2em}

/* Document grid */
.doc-grid{display:grid;grid-template-columns:200px minmax(0,1fr);gap:var(--s7);align-items:start}
.rail{position:sticky;top:var(--s5);font-size:var(--t-sm)}
.rail-h{font-size:var(--t-sm);font-weight:700;padding-bottom:var(--s2);border-bottom:var(--thin);margin-bottom:var(--s1)}
.rail a{display:block;padding:var(--s1) 0;text-decoration:none;color:var(--ink-2);border-bottom:var(--hairline)}
.rail a:hover{color:var(--ink)}
.rail a.active{color:var(--ink);font-weight:700}
.rail .rail-api{margin-top:var(--s5);color:var(--ink-2);line-height:1.4}
.rail .rail-api a{display:inline;border:0;padding:0;text-decoration:underline;word-break:break-all}
.doc-main{min-width:0}
.doc-main>section+section{margin-top:var(--s8)}
.doc-main h2{margin-bottom:var(--s4)}
.note{font-size:var(--t-sm);color:var(--ink-2);margin-top:var(--s3);max-width:var(--measure)}
.prose{font-variant-numeric:proportional-nums;font-family:var(--serif);font-size:var(--t-body);line-height:1.6;max-width:var(--measure)}
@media (max-width:960px){.doc-grid{grid-template-columns:1fr;gap:0}
  .rail{position:static;margin:calc(var(--s4) * -1) calc(var(--gutter) * -1) var(--s6);padding:0 var(--gutter);border-bottom:var(--hairline);overflow-x:auto;scrollbar-width:none}
  .rail::-webkit-scrollbar{display:none}
  .rail-h,.rail-api{display:none}
  .rail ol{display:flex;gap:var(--s5);white-space:nowrap}
  .rail a{border:0;padding:var(--s3) 0}
  .rail a.active{box-shadow:inset 0 -2px 0 var(--ink)}}

/* Statement: the answer, set like an account */
.statement h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s2) var(--s4)}
.est-tag{font-size:var(--t-sm);font-weight:600;font-stretch:100%;color:var(--ink-2);letter-spacing:0}
.st-sub{font-size:var(--t-sm);color:var(--ink-2);margin:calc(var(--s4) * -1 + 4px) 0 var(--s4)}
table.st{width:100%;border-collapse:collapse;border-top:var(--heavy)}
.st th,.st td{padding:var(--s3) 0;border-bottom:var(--hairline);vertical-align:middle}
.st th{text-align:left;font-size:var(--t-lg);font-weight:700;font-stretch:85%;line-height:1.2;width:30%;padding-right:var(--s4)}
.st-note{display:block;font-size:var(--t-sm);font-variant-numeric:proportional-nums;font-weight:400;font-stretch:100%;color:var(--ink-2);margin-top:2px}
.st .fig{text-align:right;font-size:var(--t-fig);font-weight:600;font-stretch:85%;letter-spacing:-.01em;white-space:nowrap;padding-right:var(--s6);line-height:1.1}
.st .bar-cell{width:44%}
.bar{display:block;height:14px;background:var(--hair-2)}
.bar>span{display:block;height:100%;background:var(--bar-manual);transition:width .5s cubic-bezier(.16,1,.3,1)}
.st-agent .fig{color:var(--spot)}
.st-agent .bar>span{background:var(--spot)}
.st-diff th,.st-diff td{border-top:var(--thin);border-bottom:3px double var(--rule)}
.st-diff .fig{font-weight:760}
.st-src{margin-top:var(--s2);font-size:var(--t-xs);color:var(--ink-3)}
.working{margin-top:var(--s5);display:grid;grid-template-columns:7rem minmax(0,1fr);gap:var(--s4);font-size:var(--t-ui);line-height:1.6;color:var(--ink-2)}
.working-h{font-size:var(--t-sm);font-weight:700;color:var(--ink);padding-top:3px}
.working b{color:var(--ink);font-weight:700}
.working p{max-width:var(--measure)}
.crosscheck{margin-top:var(--s5);padding-top:var(--s3);border-top:var(--hairline);display:grid;grid-template-columns:7rem minmax(0,1fr);gap:var(--s4)}
.crosscheck-h{font-family:var(--sans);font-size:var(--t-sm);font-weight:700;padding-top:3px}
.crosscheck p{font-variant-numeric:proportional-nums;font-family:var(--serif);font-size:var(--t-ui);line-height:1.6;color:var(--ink-2);max-width:var(--measure)}
.crosscheck b{color:var(--ink)}
@media (max-width:720px){
  .st tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;border-bottom:var(--hairline);padding:var(--s3) 0}
  .st th,.st td{border:0;padding:0;width:auto}
  .st .fig{padding-right:0}
  .st .bar-cell{grid-column:1/-1;padding-top:var(--s2);width:auto}
  .st-diff{border-top:var(--thin);border-bottom:3px double var(--rule)!important}
  .st-diff th,.st-diff td{border:0}
  .working,.crosscheck{grid-template-columns:1fr;gap:var(--s1)}
}

/* Notes list */
.dash li{font-variant-numeric:proportional-nums;position:relative;padding:var(--s2) 0 var(--s2) var(--s5);border-bottom:var(--hairline);font-family:var(--serif);font-size:var(--t-body);line-height:1.55;max-width:calc(var(--measure) + 2rem)}
.dash li:first-child{border-top:var(--thin)}
.dash li::before{content:"–";position:absolute;left:0;color:var(--ink-3);font-family:var(--sans)}

/* Reference tables */
.ref-wrap{border-top:var(--heavy);overflow-x:auto}
table.ref{width:100%;border-collapse:collapse;font-size:var(--t-ui)}
.ref th,.ref td{text-align:left;vertical-align:top;padding:var(--s2) var(--s4) var(--s2) 0;border-bottom:var(--hairline)}
.ref thead th{font-size:var(--t-sm);font-weight:700;font-stretch:85%;border-bottom:var(--thin);padding-top:var(--s3);white-space:nowrap}
.ref tbody tr:last-child>*{border-bottom:var(--thin)}
.ref .num{text-align:right;white-space:nowrap}
.ref .id{color:var(--ink-2);white-space:nowrap;width:9rem}
.ref .lvl0{font-weight:700}
.ref .lvl1{padding-left:var(--s5)}
.ref .lvl1::before{content:"└ ";color:var(--ink-3)}
.ref ul{display:grid;gap:var(--s1);font-family:var(--serif);font-size:var(--t-ui);line-height:1.5;color:var(--ink-2)}
.ref ul li{padding-left:var(--s4);position:relative}
.ref ul li::before{content:"–";position:absolute;left:0;color:var(--ink-3)}
.soc{display:block;font-size:var(--t-sm);color:var(--ink-2)}
.occ-title{font-weight:650}
@media (max-width:640px){
  .occ thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .occ tr,.occ td{display:block;padding-right:0}
  .occ td{border:0;padding:var(--s1) 0}
  .occ tr{padding:var(--s3) 0;border-bottom:var(--hairline)}
  .occ td.num{text-align:left}
  .occ td.num::before{content:attr(data-label) " ";color:var(--ink-2);font-size:var(--t-sm)}
}

/* Calculator */
.calc-form{border-top:var(--heavy);padding-top:var(--s4)}
.fields{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--s4) var(--s5);margin-bottom:var(--s6)}
.field{grid-column:span 2}
.field.wide{grid-column:span 4}
.field.wide~.field{grid-column:span 1}
label{display:block;font-size:var(--t-sm);font-weight:600;color:var(--ink-2);margin-bottom:var(--s1)}
input,select{width:100%;min-height:40px;padding:var(--s1) 0;font:inherit;font-size:var(--t-lg);font-weight:600;font-stretch:85%;color:var(--ink);background:transparent;border:0;border-bottom:var(--thin);border-radius:0;font-variant-numeric:tabular-nums}
input:hover,select:hover{border-bottom-color:var(--spot)}
input:focus,select:focus{outline:none;border-bottom:2px solid var(--spot);margin-bottom:-1px}
input[aria-invalid="true"]{border-bottom:2px solid var(--error);margin-bottom:-1px}
select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:var(--s5);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23858a93' stroke-width='1.5'/%3E%3C/svg%3E") right 2px center/10px 6px no-repeat;text-overflow:ellipsis}
select option{background:var(--paper);color:var(--ink)}
@media (max-width:820px){.fields{grid-template-columns:1fr 1fr}.field,.field.wide~.field{grid-column:span 1}.field.wide{grid-column:1/-1}}

.calc-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s2) var(--s4);margin-bottom:var(--s2)}
.calc-label{font-size:var(--t-sm);font-weight:700}
.calc-msg{font-size:var(--t-sm);color:var(--error);flex:1 1 20ch}
.reset{margin-left:auto;font:inherit;font-size:var(--t-sm);font-weight:600;color:var(--ink);background:none;border:var(--thin);min-height:32px;padding:0 var(--s3);cursor:pointer}
.reset:hover{background:var(--ink);color:var(--paper)}

/* FAQ */
.faq{border-top:var(--thin)}
.faq-item{padding:var(--s4) 0;border-bottom:var(--hairline)}
.faq-item h3{font-size:var(--t-body);font-stretch:90%;line-height:1.3;margin-bottom:var(--s2);max-width:var(--measure)}
.faq-item p{font-variant-numeric:proportional-nums;font-family:var(--serif);font-size:var(--t-body);line-height:1.6;color:var(--ink-2);max-width:var(--measure)}

/* Sources */
.sources{counter-reset:src;border-top:var(--thin)}
.sources li{counter-increment:src;position:relative;padding:var(--s2) 0 var(--s2) var(--s6);border-bottom:var(--hairline);font-size:var(--t-ui)}
.sources li::before{content:counter(src);position:absolute;left:0;font-weight:700;color:var(--ink-3)}
.api-link{margin-top:var(--s4);font-size:var(--t-sm);color:var(--ink-2)}
.api-link a{color:var(--ink);word-break:break-all}

/* Hub list: one timetable line per process */
.hub{border-top:var(--heavy)}
.hub-head,.hub li{display:grid;grid-template-columns:minmax(0,1fr) 6rem 6rem 4.5rem minmax(0,30%);column-gap:var(--s4);align-items:baseline}
.hub-head{padding:var(--s2) 0;border-bottom:var(--thin);font-size:var(--t-sm);font-weight:700;font-stretch:85%}
.hub-head .num{text-align:right}
.hub-head .ticks{margin:0;align-self:end}
.hub li{padding:var(--s3) 0;border-bottom:var(--hairline)}
.hub li a{font-size:var(--t-body);font-weight:650;font-stretch:90%;line-height:1.3}
.hub .pc-m,.hub .pc-a{text-align:right;font-size:0;white-space:nowrap}
.hub .pc-m b,.hub .pc-a b{font-size:var(--t-lg);font-stretch:85%}
.hub li{position:relative}
.hub .pc-u{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.hub-unit{font-weight:500;color:var(--ink-3)}
.hub .pc-pct{text-align:right;font-weight:750;font-stretch:85%;font-size:var(--t-body)}
.hub .db{margin:0;align-self:center}
@media (max-width:820px){
  .hub-head{display:none}
  .hub li{grid-template-columns:auto auto minmax(0,1fr) auto;gap:var(--s1) var(--s2)}
  .hub .pc-u{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;font-size:var(--t-xs);color:var(--ink-3)}
  .hub li a{grid-column:1/4}
  .hub .pc-pct{grid-column:4;grid-row:1}
  .hub .pc-m,.hub .pc-a{font-size:var(--t-sm);color:var(--ink-2);text-align:left}
  .hub .pc-u{text-align:left}
  .hub .db{grid-column:1/-1}
}
/* Newsletter + colophon */
.news{margin-top:var(--s8);border-top:var(--thin);border-bottom:var(--thin);padding:var(--s3) 0;font-size:var(--t-ui);color:var(--ink-2)}
.news b{color:var(--ink)}
.colophon{font-variant-numeric:proportional-nums;margin-top:var(--s7);padding:var(--s4) 0 var(--s8);border-top:var(--heavy);font-size:var(--t-xs);line-height:1.6;color:var(--ink-2)}
.colophon-in{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s6)}
.colophon .wordmark{display:inline-block;font-size:var(--t-body);margin-bottom:var(--s4)}
.colophon a{color:var(--ink)}
@media (max-width:820px){.colophon-in{grid-template-columns:1fr;gap:var(--s4)}}

/* Calculator prototype page (markup from site/index.html) */
.proto{padding-top:var(--s6)}
.proto>h1{font-size:var(--t-title);font-weight:760;font-stretch:75%;line-height:1;letter-spacing:-.015em}
.proto .sub{font-family:var(--serif);font-size:var(--t-lg);color:var(--ink-2);margin:var(--s3) 0 var(--s6);max-width:var(--measure)}
.proto .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4) var(--s5);border-top:var(--heavy);padding-top:var(--s4);margin-bottom:var(--s6)}
.proto .pair{display:flex;gap:var(--s4)}
.proto .cards{display:grid;border-top:var(--heavy)}
.proto .card{display:grid;grid-template-columns:24% minmax(0,auto) minmax(0,1fr) 30%;align-items:baseline;gap:var(--s1) var(--s6);padding:var(--s3) 0;border-bottom:var(--hairline);font-size:var(--t-lg);font-weight:700;font-stretch:85%;color:var(--ink)}
.proto .card.manual{order:-1}
.proto .card:last-child{border-top:var(--thin);border-bottom:3px double var(--rule)}
.proto .big{font-size:var(--t-fig);font-weight:600;letter-spacing:-.01em;line-height:1.1;text-align:right;min-width:7ch}
.proto .agent .big{color:var(--spot)}
.proto .card .bar{align-self:center}
.proto .agent .bar>span{background:var(--spot)}
.proto .card:last-child .big{font-weight:760}
.proto .card small{font-size:var(--t-sm);font-weight:400;font-stretch:100%;color:var(--ink-2)}
.proto h2{font-size:var(--t-h2);font-stretch:85%;margin:var(--s8) 0 var(--s4)}
.proto table{width:100%;border-collapse:collapse;border-top:var(--heavy);font-size:var(--t-ui)}
.proto td{padding:var(--s2) var(--s4) var(--s2) 0;border-bottom:var(--hairline);vertical-align:top}
.proto tr:last-child td{border-bottom:var(--thin)}
.proto .warn{margin-top:var(--s4);font-family:var(--serif);font-size:var(--t-ui);line-height:1.6;color:var(--ink-2);max-width:var(--measure)}
.proto .news{display:block}
.proto .news form{display:flex;flex-wrap:wrap;align-items:end;gap:var(--s3);margin-top:var(--s3)}
.proto .news input{flex:1 1 240px;width:auto!important;font-size:var(--t-ui)}
.proto button{font:inherit;font-weight:600;min-height:40px;padding:0 var(--s4);background:var(--ink);color:var(--paper);border:0;cursor:pointer}
.proto button:hover{background:var(--ink-2)}
@media (max-width:720px){.proto .grid{grid-template-columns:1fr 1fr}.proto .card{grid-template-columns:minmax(0,1fr) auto}.proto .card small,.proto .card .bar{grid-column:1/-1}}
@media (max-width:420px){.proto .grid{grid-template-columns:1fr}}

@media print{.mast-nav,.theme,.rail,.news{display:none}}
