/* ============ PlotCipher — one warm brown-black room, one terracotta light ============ */
@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,500;1,600;1,700&family=Archivo:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap");
*{box-sizing:border-box}
:root{
  --ink-900:#1B1512;--ink-800:#241D17;--ink-700:#2E261E;--ink-600:#3A3027;
  --bone-100:#F9F5EE;--bone-400:#A9A996;--bone-500:#8A7A66;--bone-600:#6B5C4C;
  --clay-700:#B44F22;--clay-600:#E05622;--clay-500:#E0713F;--clay-400:#EB9068;
  --clay-a12:rgba(224,113,63,.12);--clay-a24:rgba(224,113,63,.24);--clay-a40:rgba(224,113,63,.40);
  --pos:#8FB06A;--pos-soft:rgba(143,176,106,.14);
  --risk:#C8483C;--risk-soft:rgba(200,72,60,.14);
  --line-subtle:rgba(249,245,238,.07);--line:rgba(249,245,238,.11);--line-strong:rgba(249,245,238,.18);
  --serif:"Playfair Display",Georgia,"Times New Roman",serif;
  --sans:"Archivo","Helvetica Neue",Helvetica,Arial,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --sh-sm:0 1px 2px rgba(12,8,6,.4);--sh-md:0 6px 18px -6px rgba(12,8,6,.6);
  --glow:0 0 0 1px var(--clay-a40),0 8px 28px -12px rgba(224,113,63,.45);
  --ease:cubic-bezier(.2,.6,.2,1);
  /* one gutter for every page: templates use it inline so a section's own padding
     shorthand cannot silently reintroduce a 32px gutter on a 360px screen */
  --pad-x:clamp(20px,5vw,32px);
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font:400 15px/1.6 var(--sans);color:var(--bone-400);background:var(--ink-800);
     -webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg,video{max-width:100%}
.wrap{max-width:1160px;margin:0 auto;padding:0 var(--pad-x)}
section[id]{scroll-margin-top:60px}
a{color:var(--clay-500);text-decoration:none;transition:color 140ms var(--ease)}
a:hover{color:var(--clay-400)}

/* header */
header.site{position:sticky;top:0;z-index:20;background:rgba(36,29,23,.86);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line-subtle)}
header.site .wrap{height:60px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font:600 21px/1 var(--serif);letter-spacing:-.02em;color:var(--bone-100)}
.brand span{color:var(--clay-500)}
.brand.sm{font-size:18px}
.nav{display:flex;align-items:center;gap:26px}
.nav a{color:var(--bone-400);font-size:13.5px;font-weight:500}
.nav a:first-child{color:var(--bone-100)}
.nav a:hover{color:var(--bone-100)}
.navtoggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;
  margin-right:-8px;background:none;border:0;cursor:pointer;color:var(--bone-100)}
.navtoggle svg{width:22px;height:22px;display:block}

/* type roles */
.eyebrow{font:500 11.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;
  color:var(--clay-600)}
.mlabel{font:500 10.5px var(--mono);letter-spacing:.10em;text-transform:uppercase;
  color:var(--bone-500)}
h1{font:700 clamp(44px,5.4vw,76px)/1.02 var(--serif);letter-spacing:-.025em;
   color:var(--bone-100);margin:.25em 0 .3em}
h2.display{font:700 clamp(32px,3.4vw,48px)/1.06 var(--serif);letter-spacing:-.025em;
   color:var(--bone-100);margin:.4em 0 .3em}
h2.title{font:700 28px/1.14 var(--serif);letter-spacing:-.025em;color:var(--bone-100);margin:.5em 0 .3em}
.accent-turn{font-style:italic;color:var(--clay-500)}
p.lede{font-size:18px;line-height:1.55;color:var(--bone-400);max-width:660px;margin:.4em 0}
.muted{color:var(--bone-500)} .faint{color:var(--bone-600)} .small{font-size:13.5px}
.footnote{font-size:12.5px;line-height:1.55;color:var(--bone-600)}

/* buttons — one terracotta fill per view */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;
  font:600 15px var(--sans);border-radius:999px;border:1px solid transparent;
  background:var(--clay-500);color:#2A1207;padding:0 26px;height:52px;text-decoration:none;
  transition:background-color 140ms var(--ease),border-color 140ms var(--ease),
             color 140ms var(--ease),transform 80ms var(--ease)}
.btn:hover{background:#E67F4F;color:#2A1207}
.btn:active{transform:translateY(1px);background:var(--clay-700)}
.btn.md{height:44px;font-size:14.5px}
.btn.sm{height:32px;font-size:13px;padding:0 16px}
.btn.secondary{background:transparent;color:var(--bone-100);border-color:var(--line-strong)}
.btn.secondary:hover{background:rgba(249,245,238,.04);color:var(--bone-100)}
.btn.wide{width:100%}
/* page-header action group. As a flex ITEM it is sized to its content, so a button
   inside it cannot reach full width by asking for 100% - the group has to stretch. */
.actions{display:flex;gap:12px;flex-wrap:wrap}
.btn:focus-visible,input:focus-visible{outline:none;box-shadow:var(--glow)}

/* badges + tags */
.badge{display:inline-block;font:500 10.5px var(--mono);letter-spacing:.10em;
  text-transform:uppercase;padding:4px 8px;border-radius:4px;
  background:var(--clay-a12);color:var(--clay-500)}
.badge.neutral{background:rgba(249,245,238,.06);color:var(--bone-400)}
.badge.pos{background:var(--pos-soft);color:var(--pos)}
.tag{display:inline-flex;align-items:center;height:24px;padding:0 12px;border-radius:999px;
  font:500 12px var(--mono);color:var(--bone-400);border:1px solid var(--line-strong)}
.tag.accent{background:var(--clay-a12);color:var(--clay-500);border-color:transparent}

/* cards + panels */
.card{background:var(--ink-700);border:1px solid var(--line);border-radius:20px;
  padding:36px 40px 32px;box-shadow:var(--sh-sm);
  transition:border-color 140ms var(--ease),box-shadow 140ms var(--ease)}
.card:hover{border-color:var(--clay-a40);box-shadow:var(--sh-md)}
.panel{background:var(--ink-800);border:1px solid var(--line-subtle);border-radius:14px;padding:24px}
.panel.sunken{background:var(--ink-900)}
.band{background:var(--ink-900);border-top:1px solid var(--line-subtle);
  border-bottom:1px solid var(--line-subtle)}

/* data display */
.datarow{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.df .k{font:500 10.5px var(--mono);letter-spacing:.10em;text-transform:uppercase;
  color:var(--bone-500);margin-bottom:4px}
.df .v{font:600 20px/1.2 var(--sans);color:var(--bone-100)}
.df .v.accent{color:var(--clay-500)}
.df .v.serif{font:600 24px/1.1 var(--serif);letter-spacing:-.02em}
.ledger{font:400 13px/2 var(--mono)}
.ledger .row{display:flex;justify-content:space-between}
.ledger .row.strong{color:var(--bone-100)}
.ledger .row.accent{color:var(--clay-500)}
.ledger hr{border:0;border-top:1px solid var(--line);margin:8px 0}
.statblock .n{font:700 40px/1.1 var(--serif);letter-spacing:-.025em;color:var(--bone-100)}
.statblock .l{font-size:13.5px;line-height:1.5;color:var(--bone-500);margin-top:6px}

/* tables (inner pages) */
table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px;
  border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:14px 0}
th,td{text-align:left;padding:11px 16px;border-bottom:1px solid var(--line-subtle);
  background:var(--ink-700)}
tr:last-child th,tr:last-child td{border-bottom:0}
th{font:500 10.5px var(--mono);letter-spacing:.10em;text-transform:uppercase;
  color:var(--bone-500);background:var(--ink-900)}
td{color:var(--bone-400)}
table.rows tr:hover td{background:rgba(249,245,238,.04)}
td a{color:var(--bone-100);font-weight:600}
td a:hover{color:var(--clay-500)}

/* forms */
fieldset{border:1px solid var(--line);border-radius:14px;padding:22px 24px 14px;
  margin:0 0 18px;background:var(--ink-700)}
legend{font:500 10.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;
  color:var(--bone-500);padding:0 8px}
label.opt{display:inline-flex;align-items:center;gap:9px;margin:0 18px 12px 0;
  font-size:13.5px;color:var(--bone-400)}
label.opt:has(:checked){color:var(--bone-100)}
input[type=checkbox],input[type=radio]{width:15px;height:15px;accent-color:var(--clay-500)}
input[type=text],input[type=email],input[type=number],input[type=password]{height:40px;padding:0 14px;
  background:var(--ink-900);border:1px solid var(--line);border-radius:6px;font:400 14px var(--sans);
  color:var(--bone-100);width:100%;max-width:300px;
  transition:border-color 140ms var(--ease),box-shadow 140ms var(--ease)}
input::placeholder{color:var(--bone-600)}
input:focus{border-color:var(--clay-a40)}
/* the browser's autofill styling paints the field white; keep it warm ink */
input:-webkit-autofill,input:-webkit-autofill:hover,
input:-webkit-autofill:focus,input:-webkit-autofill:active{
  -webkit-text-fill-color:var(--bone-100);caret-color:var(--bone-100);
  -webkit-box-shadow:0 0 0 1000px var(--ink-900) inset;
  transition:background-color 999999s ease-out 0s}
.pw-toggle{position:absolute;right:2px;top:50%;transform:translateY(-50%);
  display:flex;align-items:center;justify-content:center;width:42px;height:38px;
  background:none;border:0;cursor:pointer;color:var(--bone-500);border-radius:6px}
.pw-toggle:hover{color:var(--bone-100)}
.pw-toggle svg{width:17px;height:17px;display:block}
.cols{columns:2;column-gap:28px}

.note{background:var(--ink-900);border:1px solid var(--line-subtle);border-radius:10px;
  padding:16px 20px;font-size:14px;color:var(--bone-500)}

footer{border-top:1px solid var(--line-subtle);padding:40px 0 56px;margin-top:112px}
footer .legal{max-width:820px;font-size:11.5px;line-height:1.65;color:var(--bone-600);margin-top:24px}

/* section grids */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.g2w{display:grid;grid-template-columns:1fr 1.6fr;gap:16px}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}

/* layout pairs used by the home + signup forms. These live here rather than inline so a
   media query can actually collapse them - an inline grid-template-columns cannot be
   overridden without !important. */
.pair{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.pair.wide-gap{gap:32px}
.pair.tight{gap:9px 18px;margin-top:10px}
.pair.fields{gap:20px;margin-top:12px;max-width:560px}
.pair.signals{gap:10px 32px;margin-top:12px}
.triple{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 24px;margin-top:12px}
.sample-split{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:start;margin-top:28px}
.criteria-split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.signin-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);
  gap:64px;align-items:start}

@media (max-width:900px){
  .datarow{grid-template-columns:repeat(2,1fr)}
  .cols{columns:1}
  .g2,.g2w,.g3,.g4{grid-template-columns:1fr}
  .sample-split,.criteria-split,.signin-split{grid-template-columns:1fr;gap:32px}
  .triple{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .pair,.triple{grid-template-columns:1fr}
  .pair.tight,.pair.signals{gap:9px}
}
@media (prefers-reduced-motion:reduce){*{transition-duration:0ms}}

/* ============ inner screens (report / browse / signup / signin) ============ */
.crumbs{font-size:13px;color:var(--bone-500);display:flex;gap:10px;align-items:center}
.crumbs a{color:var(--bone-500)} .crumbs a:hover{color:var(--bone-100)}
.crumbs .here{color:var(--bone-400)}
.report-h1{font:500 clamp(38px,4.6vw,56px)/1.04 var(--serif);letter-spacing:-.025em;
  color:var(--bone-100);margin:.15em 0 0}
.two-col{display:grid;grid-template-columns:minmax(0,1fr) 372px;gap:32px;align-items:start}
.two-col .rail{position:sticky;top:92px}
.opp-band{display:grid;grid-template-columns:repeat(6,1fr);gap:24px;background:var(--ink-700);
  border:1px solid var(--line);border-radius:20px;padding:28px 32px}
.kv{display:flex;justify-content:space-between;gap:11px;font-size:14px;padding:5px 0}
.kv .k2{color:var(--bone-400)} .kv .v2{color:var(--bone-100);text-align:right}
.kv .v2.mono{font:400 12px var(--mono)}
.kv .v2.caution{color:#DFA53F} .kv .v2.risk{color:var(--risk)}
.vh-row{font:400 12.5px var(--mono);display:flex;justify-content:space-between;margin-top:12px}
.vh-track{height:4px;background:var(--line);border-radius:999px;margin-top:5px}
.vh-fill{height:4px;border-radius:999px;background:rgba(249,245,238,.28)}
.vh-fill.now{background:var(--clay-500)}
.own-row{display:grid;grid-template-columns:76px 1fr;gap:16px;align-items:baseline}
.own-row .yr{font:400 12.5px var(--mono);color:var(--bone-500)}
.own-row .yr.now{color:var(--clay-500)}
.own-arrow{font-size:12px;color:var(--bone-600);padding:8px 0 8px 30px}
.doc-row{display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:9px 0;font-size:14px}
.doc-row a,.doc-row .nm{color:var(--bone-100)}
.doc-row .kind{font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;
  color:var(--bone-500)}
.doc-row.missing .nm,.doc-row.missing .kind{color:var(--bone-600)}
.feature{border-color:var(--clay-a40);box-shadow:var(--sh-md)}
.askbox{background:var(--ink-800);border:1px solid var(--line-strong);border-radius:6px;
  padding:8px 8px 8px 16px;display:flex;align-items:center;gap:12px}
.askbox input{background:transparent;border:0;max-width:none;height:36px;padding:0;
  color:var(--bone-100);font-size:15px;flex:1}
.askbox input:focus{box-shadow:none}

/* browse */
.browse{display:grid;grid-template-columns:248px minmax(0,1fr);gap:32px;align-items:start}
.browse .frail{position:sticky;top:92px}
.counts-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:24px 0;
  border-top:1px solid var(--line-subtle);border-bottom:1px solid var(--line-subtle);margin-top:28px}
.ntable{background:var(--ink-700);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.ntable table{border:0;margin:0;font-size:13.5px;border-radius:0}
.ntable th{font-size:10px;letter-spacing:.12em;background:var(--ink-900);padding:12px 8px}
.ntable th:first-child{padding-left:16px} .ntable th:last-child{padding-right:16px}
.ntable td{padding:14px 8px;border-top:1px solid var(--line-subtle);border-bottom:0;
  background:transparent;vertical-align:middle}
.ntable td:first-child{padding-left:16px} .ntable td:last-child{padding-right:16px}
.ntable tbody tr{cursor:pointer}
.ntable tbody tr:hover td{background:rgba(249,245,238,.04)}
.ntable .addr{display:flex;gap:8px;align-items:baseline}
.ntable .addr .dot{width:5px;height:5px;border-radius:99px;background:var(--clay-500);
  flex:0 0 auto;position:relative;top:-2px}
.ntable .addr.plain{padding-left:13px}
.ntable .addr a{font-size:13.5px}
.ntable .sub{font-size:12px;color:var(--bone-500);margin-top:2px}
.ntable .num{font:400 12.5px var(--mono);color:var(--bone-400)}
.ntable .num.hot{color:var(--bone-100)}
.ntable .right{text-align:right}
.sig{font:500 10px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.sig-clay{color:var(--clay-500)} .sig-risk{color:var(--risk)}
.sig-caution{color:#DFA53F} .sig-mut{color:var(--bone-500)}
.pgfoot{display:flex;justify-content:space-between;align-items:center;gap:16px;
  border-top:1px solid var(--line);background:var(--ink-900);padding:12px 16px}
.pgfoot .pos{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;
  color:var(--bone-500)}
.fgroup{margin-top:22px;padding-top:20px;border-top:1px solid var(--line-subtle)}
.fgroup:first-of-type{margin-top:0;padding-top:0;border-top:0}
.fstack{margin-top:10px;display:flex;flex-direction:column;gap:9px}
.fstack label.opt{margin:0}
.fpills{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}
.fpills label{cursor:pointer}
.fpills input{display:none}
.fpills input:checked+span{background:var(--clay-a12);color:var(--clay-500);border-color:transparent}

/* step rail */
.steps{display:flex;align-items:center;gap:28px;flex-wrap:wrap;
  font:500 11px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.steps .st{display:flex;align-items:center;gap:9px;color:var(--bone-600)}
.steps .st .c{width:18px;height:18px;border-radius:99px;display:inline-flex;align-items:center;
  justify-content:center;font-size:9px;border:1px solid var(--line);color:var(--bone-600)}
.steps .st.active{color:var(--bone-100)}
.steps .st.active .c{background:var(--clay-500);border-color:transparent;color:#2A1207}
.steps .st.done{color:var(--bone-500)}
.steps .st.done .c{border-color:var(--line-strong);color:var(--bone-400)}
.steps .sep{color:var(--ink-600)}
.numrow{display:grid;grid-template-columns:24px 1fr;gap:10px;font-size:13.5px;margin-top:12px}
.numrow .i{font:500 11px var(--mono);color:var(--bone-500);padding-top:2px}
.ffield label{display:block;font:500 10.5px var(--mono);letter-spacing:.1em;
  text-transform:uppercase;color:var(--bone-500);margin-bottom:7px}
.ffield input{max-width:none}
.ffield .hint{font-size:12.5px;color:var(--bone-600);margin-top:6px}
.notice-msg{border:1px solid var(--line);border-radius:10px;padding:12px 16px;
  color:#DFA53F;font-size:14px;margin-bottom:18px}

@media (max-width:980px){
  .two-col,.browse{grid-template-columns:1fr}
  .two-col .rail,.browse .frail{position:static}
  .opp-band{grid-template-columns:repeat(3,1fr)}
}

/* ============ phones ============ */
@media (max-width:760px){
  /* nav collapses behind a menu button; open state is a full-width sheet under the bar */
  .navtoggle{display:inline-flex}
  header.site .wrap{gap:12px}
  .nav{position:absolute;left:0;right:0;top:60px;display:none;flex-direction:column;
    align-items:stretch;gap:0;padding:8px var(--pad-x) 16px;
    background:rgba(36,29,23,.97);backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
  .nav.open{display:flex}
  .nav a{padding:13px 0;font-size:15px;border-bottom:1px solid var(--line-subtle)}
  .nav a:last-child{border-bottom:0}
  .nav .btn.sm{width:100%;height:44px;font-size:14.5px;margin-top:12px;border-bottom:0}
  .nav .small.muted{padding:12px 0 4px}

  .card{padding:24px 20px;border-radius:16px}
  .panel{padding:20px}
  .opp-band{grid-template-columns:repeat(2,1fr);gap:18px;padding:22px 20px;border-radius:16px}
  .counts-strip{grid-template-columns:repeat(2,1fr);gap:20px}
  .statblock .n{font:700 32px/1.1 var(--serif)}
  .df .v.serif{font-size:20px}
  footer{margin-top:64px;padding:32px 0 44px}
  .steps{gap:12px;font-size:10px;letter-spacing:.08em}
  .steps .sep{display:none}
  .btn{width:100%}                      /* thumb-sized targets, one per row */
  .btn.sm{width:auto}
  .actions{width:100%}
  .askbox{padding:8px 8px 8px 12px}
  input[type=text],input[type=email],input[type=number],input[type=password]{max-width:none}
}

/* the notices table cannot shrink to a phone: turn each row into a card, labelled from
   the header it lost. data-l on every cell carries the column name. */
@media (max-width:720px){
  .ntable table,.ntable tbody,.ntable tr,.ntable td{display:block;width:100%}
  .ntable thead{display:none}
  .ntable tbody tr{padding:14px 16px;border-top:1px solid var(--line-subtle)}
  .ntable tbody tr:first-child{border-top:0}
  .ntable td{padding:4px 0;border:0;display:flex;justify-content:space-between;
    align-items:baseline;gap:16px}
  .ntable td::before{content:attr(data-l);font:500 10px var(--mono);letter-spacing:.12em;
    text-transform:uppercase;color:var(--bone-500);flex:0 0 auto}
  .ntable td:first-child{display:block;padding:0 0 10px}
  .ntable td:first-child::before{content:none}
  .ntable td.right{text-align:left}
  .ntable .addr a{font-size:15px}
  .ntable .addr.plain{padding-left:0}   /* no dot column to reserve inside a card */
  .pgfoot{flex-direction:column;align-items:stretch;gap:12px}
  .pgfoot span{display:flex;gap:10px}
  .pgfoot .btn{flex:1}
}

/* filter rail: a disclosure on phones, always-open on wider screens */
.filters > summary{display:none}
@media (max-width:980px){
  .filters > summary{display:flex;align-items:center;justify-content:space-between;
    cursor:pointer;list-style:none;padding:14px 18px;margin-bottom:12px;
    background:var(--ink-700);border:1px solid var(--line);border-radius:10px;
    font:500 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;
    color:var(--bone-100)}
  .filters > summary::-webkit-details-marker{display:none}
  .filters > summary::after{content:"+";font-size:15px;color:var(--clay-500)}
  .filters[open] > summary::after{content:"–"}
}
.badge.caution{background:rgba(223,165,63,.14);color:#DFA53F}
.withdrawn-note{border:1px solid rgba(223,165,63,.35);background:rgba(223,165,63,.08);
  border-radius:10px;padding:14px 18px;font-size:14px;color:#DFA53F;margin-top:20px}

/* ============ deep investigation report ============ */
.hr{height:1px;background:var(--line-subtle)}
.mlabel.caution{color:#DFA53F}
.briefrow{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:start}
.phase{display:grid;grid-template-columns:24px 1fr auto;gap:14px;align-items:baseline;
  padding:12px 0}
.phase.ruled{border-top:1px solid var(--line-subtle)}
.phase .n{font:500 11px var(--mono);color:var(--bone-500)}
.phase .n.running{color:var(--clay-500)}
.phase .what{font-size:14.5px;color:var(--bone-400)}
.phase .what.running{color:var(--bone-100)}
.phase .what.queued,.phase .n.queued,.phase .st.queued{color:var(--bone-600)}
.phase .st{font:500 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;
  color:var(--bone-500)}
.phase .st.done{color:var(--pos)} .phase .st.running{color:var(--clay-500)}
/* one recorded instrument: when it happened, what it was, what it was for */
.tl{display:grid;grid-template-columns:104px 1fr auto;gap:16px;align-items:baseline;
  padding:11px 0;border-top:1px solid var(--line-subtle)}
.tl.two{grid-template-columns:104px 1fr}
.tl .when{font:400 12px var(--mono);letter-spacing:.06em;color:var(--bone-500)}
.tl .what{font-size:14.5px;color:var(--bone-100)}
.tl .amt{font:400 13px var(--mono);color:var(--bone-400)}
.ev{display:grid;grid-template-columns:16px 1fr;gap:10px;align-items:start}
.ev .tick{font-size:13px;color:var(--pos);line-height:1.4}
.ev .tick.q{color:var(--bone-500)}
.ev .lbl{font:600 14px var(--sans);color:var(--bone-100)}
.ev .lbl.q{color:var(--bone-500)}
.ev .det{margin-top:4px;font-size:13px;line-height:1.55;color:var(--bone-400)}
.ev .det.q{font:400 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;
  color:var(--bone-600)}
@media (max-width:560px){
  .briefrow{grid-template-columns:1fr;gap:8px}
  .tl,.tl.two{grid-template-columns:1fr;gap:2px;padding:12px 0}
  .tl .amt{grid-column:1}
}

/* ============ Export PDF: the report printed as a document ============ */
@media print{
  /* the screen palette is a dark room; a printed report is a sheet of paper */
  :root{--ink-900:#fff;--ink-800:#fff;--ink-700:#fff;--bone-100:#111;--bone-400:#333;
    --bone-500:#555;--bone-600:#666;--line:#ddd;--line-subtle:#e8e8e8;
    --line-strong:#ccc;--clay-500:#B44F22;--clay-600:#B44F22;--pos:#3f6b28}
  body{background:#fff;color:#222;overflow-x:visible}
  header.site,footer,.navtoggle,.actions,form,.crumbs{display:none !important}
  .two-col,.browse{display:block}
  .rail{margin-top:16px}
  .card,.panel{background:#fff !important;border:1px solid #ddd;box-shadow:none;
    break-inside:avoid;page-break-inside:avoid;margin-bottom:12px}
  .card.feature{border-color:#B44F22}
  .withdrawn-note,.note{background:#fff !important;color:#8a6100 !important}
  a{color:#222 !important;text-decoration:none}
  .wrap{max-width:none;padding:0}
  h1,h2,h3{color:#111 !important}
  .tl,.own-row,.kv,.ev{break-inside:avoid}
  /* the legal footer must survive the print, it is the one thing that must not be lost */
  .printlegal{display:block !important;margin-top:18px;padding-top:12px;
    border-top:1px solid #ddd;font-size:9.5px;line-height:1.5;color:#555}
}
.printlegal{display:none}

/* the wall a signed-out visitor meets at the end of the sample */
.lockband{border-top:1px solid var(--line);background:var(--ink-900);
  padding:clamp(28px,5vw,40px) clamp(20px,4vw,32px);text-align:center}
.lockband .ttl{margin-top:10px;font:500 clamp(21px,2.6vw,27px)/1.15 var(--serif);
  letter-spacing:-.02em;color:var(--bone-100)}
.lockband p{margin:10px auto 0;max-width:52ch;font-size:14.5px;line-height:1.6}
.lockband .actions{display:flex;gap:12px;flex-wrap:wrap}
/* a withheld figure: the label still says what it is, the number is simply not sent */
.df .v.locked{display:flex;align-items:center;gap:8px;height:26px;text-decoration:none}
.df .v.locked span{display:block;width:74px;height:11px;border-radius:3px;
  background:repeating-linear-gradient(90deg,var(--ink-600) 0 9px,
    rgba(249,245,238,.05) 9px 13px)}
.df .v.locked::after{content:"Locked";font:500 9.5px var(--mono);letter-spacing:.12em;
  text-transform:uppercase;color:var(--bone-600)}
.df .v.locked:hover span{background:repeating-linear-gradient(90deg,var(--clay-700) 0 9px,
    rgba(249,245,238,.05) 9px 13px)}
.df .v.locked:hover::after{color:var(--clay-500)}
