/* MASK — "Case File" theme -------------------------------------------------*/
:root{
  --paper:#f4f0e6; --paper2:#fbf9f2; --ink:#211d17; --ink2:#3a352c;
  --sub:#6b6355; --line:#ddd5c3; --dot:#cfc6b2;
  --ox:#8a2b22; --oxbg:#f0e0dc; --gold:#93741a;--teal:#2f6f6a;--tealbg:#e7f0ef; --radius:5px;
  --serif:"Iowan Old Style",Palatino,"Palatino Linotype",Georgia,"Times New Roman",serif;
  --mono:"SF Mono",ui-monospace,Menlo,Consolas,monospace;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0}
body{background:var(--paper);color:var(--ink);font-family:var(--serif);
  font-size:16.5px;line-height:1.5;padding-bottom:92px;-webkit-text-size-adjust:100%}
a{color:inherit;text-decoration:none}
.mono{font-family:var(--mono);letter-spacing:-.2px}
.sub,.muted{color:var(--sub)} .small{font-size:12.5px}
h1,h2,h3{margin:0}

/* top strip ---------------------------------------------------------------*/
.strip{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;
  justify-content:space-between;padding:10px 16px calc(10px + env(safe-area-inset-top));
  background:var(--paper2);border-bottom:1px solid var(--line)}
.strip .back{font-size:24px;line-height:1;color:var(--ink);padding:0 4px}
.strip .case{font-family:var(--mono);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--sub);flex:1;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.strip .rt{font-family:var(--mono);font-size:12px;color:var(--sub)}
.strip .rt.flag{color:var(--ox)}

/* search ------------------------------------------------------------------*/
.searchwrap{padding:12px 16px}
.searchwrap input{width:100%;padding:13px 16px;border:1px solid var(--line);
  border-radius:999px;background:var(--paper2);color:var(--ink);font-family:var(--serif);font-size:16px}
.searchwrap input::placeholder{color:#a99f8a;font-style:italic}

/* wrap --------------------------------------------------------------------*/
.wrap{max-width:720px;margin:0 auto}

/* hero (detail) -----------------------------------------------------------*/
.hero{padding:16px 16px 14px;border-bottom:2px solid var(--ink);position:relative}
.herohead{display:flex;gap:14px;align-items:flex-start;justify-content:space-between}
.heromain{flex:1;min-width:0}
.eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--sub)}
.name{font-size:23px;line-height:1.12;font-weight:600;margin:5px 0 0}
/* prominent triage badge under the name: is this entity active / dissolved / seized */
.herostatus{display:inline-block;margin-top:9px;font-family:var(--mono);font-size:11px;
  letter-spacing:.8px;text-transform:uppercase;border-radius:999px;padding:4px 11px;
  border:1px solid var(--line);color:var(--sub)}
.herostatus.ok{color:var(--teal);border-color:var(--teal);background:var(--tealbg)}
.herostatus.warn{color:#fff;background:var(--ox);border-color:var(--ox)}
.herostatus.muted{color:var(--sub)}
/* keep the name clear of the top-right WANTED/HANDLER stamp when one is shown */
.hero:has(.stamp) .name{padding-right:84px}
.roleline{font-size:15px;font-style:italic;color:var(--sub)}
.stamp{position:absolute;top:14px;right:12px;border:2.5px solid var(--ox);color:var(--ox);
  font-family:var(--mono);font-weight:700;font-size:12.5px;letter-spacing:2px;padding:5px 9px;
  border-radius:6px;transform:rotate(6deg);opacity:.92;box-shadow:inset 0 0 0 1px #fff4}
.stamp.handler{top:auto;bottom:14px;border-color:var(--gold);color:var(--gold);transform:rotate(-4deg)}
.legalrow{padding:10px 0;border-bottom:1px dotted var(--dot)}
.legalrow:last-child{border-bottom:0}
.legaltop{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.legaltype{font-family:var(--mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--gold)}
.legalref{font-size:13px}
.legalcourt,.legaldate{font-size:13.5px;color:var(--ink2)}
.legaldesc{margin-top:4px;font-size:14.5px}
.legalnote{margin-top:4px}
.handlerdot{color:var(--gold);font-size:11px;margin-left:2px}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.chip{border:1px solid var(--line);background:var(--paper2);border-radius:999px;padding:5px 11px;
  font-size:12.5px;display:inline-flex;gap:6px;align-items:center}
.chip .k{color:var(--sub);text-transform:uppercase;font-size:10px;letter-spacing:1px}
.chip .cp{color:var(--gold);margin-left:2px}
/* copy-summary: a secondary action, kept slim so it never outweighs the facts */
.copysum{display:inline-flex;align-items:center;gap:5px;width:auto;margin-top:4px;background:none;
  color:var(--sub);border:1px solid var(--line);border-radius:999px;padding:5px 12px;
  font-family:var(--mono);font-size:11px;letter-spacing:.5px;cursor:pointer}

/* registry-number chips — live in the hero, right under name + status */
.heronums{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}
.idnum{border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);
  padding:4px 9px;font-size:13px;display:inline-flex;gap:6px;align-items:center}
.idnum .k{color:var(--sub);text-transform:uppercase;font-size:9.5px;letter-spacing:1px}
.idnum .mono{font-family:var(--mono);font-size:12.5px;letter-spacing:.3px}
.idnum .cp{color:var(--gold);border:0;background:none;padding:0;font-size:12px;cursor:pointer}

/* control card — the investigative core: who owns & runs the entity. Given a left
   accent so it reads as the focus, with a muted context strip beneath */
.idcard{margin:12px 16px 2px;padding:0;display:flex;flex-direction:column;gap:11px}
.idctl{display:flex;flex-direction:column;gap:2px;padding-left:11px;border-left:2px solid var(--dot)}
.idctl .idval{font-size:14.5px;line-height:1.5;color:var(--ink);overflow-wrap:anywhere}
.idline{font-size:14px;line-height:1.5;color:var(--ink2);overflow-wrap:anywhere}
.idcard a{color:var(--ox);text-decoration:none;font-weight:600}
.idk{font-family:var(--mono);font-size:9.5px;letter-spacing:1px;text-transform:uppercase;color:var(--sub)}
.idctl .idk{display:block;margin-bottom:2px}
.idformer{font-style:italic}
.idpct{font-family:var(--mono);font-size:11.5px;color:var(--sub);font-weight:400}
.idrole{color:var(--sub);font-size:12.5px;font-style:italic}
.idmore{font-family:var(--mono);font-size:11px;color:var(--sub) !important;font-weight:400 !important}
.idcontext{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:var(--sub);
  padding-top:10px;border-top:1px dotted var(--dot)}
.idcontext b{color:var(--ink2);font-weight:600}

/* ---- person dossier header: mugshot + name + tags + stat line ------------- */
.dossier{padding-bottom:12px}
.doss-head{display:flex;gap:13px;align-items:flex-start}
.mug{position:relative;flex-shrink:0;width:78px;height:78px;border-radius:6px;overflow:hidden;
  border:1px solid var(--ink2);background:var(--paper2);box-shadow:0 1px 3px #0002}
.mug img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;
  filter:grayscale(.35) contrast(1.03)}
.mug.ph{display:flex;align-items:center;justify-content:center}
.mugini{font-family:var(--serif);font-size:26px;font-weight:600;color:var(--dot)}
.mugcap{position:absolute;left:0;bottom:0;background:var(--ink2);color:var(--paper);
  font-family:var(--mono);font-size:8.5px;letter-spacing:.5px;padding:1px 4px;border-top-right-radius:4px}
.doss-main{flex:1;min-width:0}
.doss-main .name{font-size:22px;margin:3px 0 0}
.doss-aka{color:var(--ink2);font-size:14px;margin-top:4px;overflow-wrap:anywhere}
.doss-aka b{color:var(--ox);font-weight:600;font-style:normal}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.tag{font-family:var(--mono);font-size:9.5px;letter-spacing:.6px;text-transform:uppercase;
  border:1px solid var(--line);border-radius:999px;padding:3px 9px;color:var(--sub)}
.tag.ok{color:var(--teal);border-color:var(--teal);background:var(--tealbg)}
.tag.warn{color:#fff;background:var(--ox);border-color:var(--ox)}
.tag.muted{color:var(--sub)}
/* "why this matters" lead — the point of interest, surfaced above the identifiers */
.doss-why{margin-top:12px;padding:9px 12px;background:var(--oxbg);border-left:3px solid var(--ox);
  border-radius:4px;font-size:14px;line-height:1.5;color:var(--ink)}
.doss-why .whyk{font-family:var(--mono);font-size:9px;letter-spacing:.8px;text-transform:uppercase;
  color:var(--ox);display:block;margin-bottom:2px}
/* identity stat line — replaces the old chip pile: one scannable row */
.statline{display:flex;flex-wrap:wrap;align-items:center;gap:5px 14px;margin-top:14px;
  padding-top:12px;border-top:1px dotted var(--dot);font-size:13px;color:var(--ink2)}
.statline .sitem{display:inline-flex;align-items:baseline;gap:5px}
.statline .sk{font-family:var(--mono);font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--sub)}
.statline .mono{font-family:var(--mono);font-size:12.5px;letter-spacing:.3px}
.statline .copysum{margin-left:auto;margin-top:0}

/* control card — owns/runs & close-to grouped by role/relationship, each group a
   collapsible dropdown of links (singletons render inline) */
.pcard{margin:12px 16px 2px;display:flex;flex-direction:column;gap:14px}
.pcblock{display:flex;flex-direction:column;gap:1px}
.pcblock .idk,.pcline .idk{font-family:var(--mono);font-size:9.5px;letter-spacing:1px;
  text-transform:uppercase;color:var(--sub);margin-bottom:5px}
.cnt{color:var(--dot);margin-left:2px}
.grpk{font-family:var(--mono);font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:var(--gold)}
/* single-item group: label + link on one row */
.grprow{display:flex;gap:8px;align-items:baseline;padding:6px 0;border-top:1px dotted var(--dot)}
.grprow a{color:var(--ox);text-decoration:none;font-weight:600;font-size:14px}
/* multi-item group: a dropdown */
.grpdd{border-top:1px dotted var(--dot)}
.grpdd>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;
  padding:8px 0;font-size:14px}
.grpdd>summary::-webkit-details-marker{display:none}
.grpdd>summary::before{content:"›";font-family:var(--mono);color:var(--sub);font-size:15px;
  transition:transform .15s;display:inline-block}
.grpdd[open]>summary::before{transform:rotate(90deg)}
.grpdd>summary .gc{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--paper);
  background:var(--ink2);border-radius:999px;min-width:20px;text-align:center;padding:1px 6px}
.grpitems{display:flex;flex-direction:column;gap:1px;padding:0 0 8px 20px}
.grpitems a{color:var(--ox);text-decoration:none;font-weight:600;font-size:14px;padding:4px 0;
  border-top:1px dotted var(--line)}
.grpitems a:first-child{border-top:0}
.pcline{font-size:13.5px;color:var(--ink2);padding-top:6px;border-top:1px dotted var(--dot)}
.pcline a{color:var(--ox);text-decoration:none;font-weight:600}
/* role group headers in the full Companies list */
.rolehdr{font-family:var(--mono);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;
  color:var(--gold);margin:14px 0 2px;display:flex;align-items:center;gap:7px}
.rolehdr:first-child{margin-top:4px}
.rolehdr .rc{color:var(--dot)}

/* review alert ------------------------------------------------------------*/
.alert{margin:14px 16px;border:1px solid var(--ox);background:var(--oxbg);border-radius:var(--radius);padding:12px 14px}
.alert h2{color:var(--ox);font-family:var(--mono);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:8px}
.reviewitem{border-top:1px solid #e0c9c3;padding:9px 0}
.reviewitem:first-of-type{border-top:0}
.reviewitem p{margin:0 0 8px;font-size:13.5px}
.rbtn{background:var(--ox);color:#fff;border:0;border-radius:var(--radius);padding:8px 13px;font-family:var(--serif);font-weight:600;font-size:13.5px}

/* sections ----------------------------------------------------------------*/
.sec{padding:0 16px}
.sec h2{font-family:var(--mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);
  border-bottom:1px solid var(--line);padding-bottom:6px;margin:18px 0 6px;display:flex;justify-content:space-between;align-items:baseline}
.sec h2 .n{color:var(--sub)}
.lead{font-size:15.5px;line-height:1.5;margin:6px 0 4px}
.lead b{font-weight:600}

/* key/value fields (copy + edit) -----------------------------------------*/
.field{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px dotted var(--dot)}
.field:last-child{border-bottom:0}
.flabel{font-family:var(--mono);font-size:10px;letter-spacing:.5px;text-transform:uppercase;color:var(--sub);min-width:74px;padding-top:2px}
.fval{flex:1;text-align:right;display:flex;justify-content:flex-end;gap:8px;align-items:flex-start}
.vtext{word-break:break-word}
.vtext.mono{font-family:var(--mono);font-size:14px}
.vtext.notes{text-align:left;font-size:14.5px;color:var(--ink2);white-space:pre-wrap}
.acts{display:flex;gap:2px;flex-shrink:0}
.ic{background:transparent;border:0;font-size:15px;color:var(--gold);padding:2px 4px}
.ic.editbtn{color:var(--sub)}

/* threads (connections) ---------------------------------------------------*/
.thread{display:flex;align-items:center;gap:12px;padding:11px 2px;border-bottom:1px dotted var(--dot)}
.thread:last-child{border-bottom:0}
.node{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--ink);background:var(--paper2);
  display:grid;place-items:center;font-family:var(--mono);font-weight:700;font-size:12px;flex-shrink:0}
.node.hasimg{background-size:cover;background-position:center top;background-repeat:no-repeat;
  color:transparent;font-size:0}
.thread .t{flex:1;min-width:0}
.thread .t b{font-weight:600}
.thread .t .r{font-family:var(--mono);font-size:10.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--sub);margin-top:1px}
.thread .go{color:var(--sub);font-size:18px}
.thread .dot{color:var(--ox)}
/* search results — why it matched + case + snippet ----------------------*/
mark{background:#f6ecc4;color:inherit;border-radius:2px;padding:0 1px}
.whyrow{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin-top:3px}
.why{font-family:var(--mono);font-size:9.5px;letter-spacing:.5px;text-transform:uppercase;
  border:1px solid var(--line);border-radius:999px;padding:1px 7px;color:var(--sub);white-space:nowrap}
.why.exact{color:var(--teal);border-color:var(--teal);background:var(--tealbg)}
.why.strong{color:var(--gold);border-color:var(--gold)}
.why.fuzzy{opacity:.65}
.casetag{font-family:var(--mono);font-size:9.5px;letter-spacing:.5px;text-transform:uppercase;
  border:1px solid var(--dot);border-radius:999px;padding:1px 7px;color:var(--sub);white-space:nowrap}
.snip{font-size:12.5px;color:var(--ink2);margin-top:3px;line-height:1.35;overflow-wrap:anywhere}
.searchsum{padding:0 16px 8px;font-family:var(--mono);font-size:11px;color:var(--sub);letter-spacing:.5px}
.showall{display:block;padding:10px 2px;font-family:var(--mono);font-size:11px;letter-spacing:1px;
  text-transform:uppercase;color:var(--gold);border-bottom:1px dotted var(--dot)}

/* home lists --------------------------------------------------------------*/
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:4px 16px 6px}
.stat{border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);padding:11px 4px;text-align:center}
.stat b{display:block;font-size:22px;font-weight:600}
.stat span{font-family:var(--mono);font-size:9.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--sub)}
.stat.flag b{color:var(--ox)}

/* bottom bars -------------------------------------------------------------*/
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;background:var(--paper2);
  border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}
.tabbar a{flex:1;text-align:center;padding:10px 0;color:var(--sub);font-family:var(--mono);font-size:10px;letter-spacing:1px;text-transform:uppercase}
.tabbar a .i{display:block;font-size:19px;margin-bottom:1px}
.tabbar a.on{color:var(--ox)}
.actionbar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;gap:8px;
  padding:12px 16px calc(12px + env(safe-area-inset-bottom));
  background:linear-gradient(#fbf9f2cc,#fbf9f2);backdrop-filter:blur(6px);border-top:1px solid var(--line)}
.btn{flex:1;text-align:center;padding:13px;border:1px solid var(--ink);border-radius:var(--radius);
  background:var(--ink);color:var(--paper);font-family:var(--serif);font-size:15px;font-weight:600}
.btn.sec{background:transparent;color:var(--ink)}

/* edit sheet --------------------------------------------------------------*/
.sheet{position:fixed;inset:0;z-index:50;background:#211d1799;display:none}
.sheet.show{display:block}
.sheetbody{position:absolute;left:0;right:0;bottom:0;background:var(--paper2);border-top:1px solid var(--ink);
  border-top-left-radius:16px;border-top-right-radius:16px;padding:16px;
  padding-bottom:calc(16px + env(safe-area-inset-bottom));max-width:720px;margin:0 auto}
.sheetbody h3{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--sub);margin-bottom:8px}
.sheetbody textarea,.sheetbody input{width:100%;background:var(--paper);color:var(--ink);border:1px solid var(--line);
  border-radius:var(--radius);padding:11px;font-size:16px;font-family:var(--serif)}
.sheetbody textarea{min-height:120px;resize:vertical}
.sheetrow{display:flex;gap:8px;margin-top:10px}.sheetrow .btn{flex:1}

/* login -------------------------------------------------------------------*/
.login{max-width:420px;margin:0 auto;padding:16vh 20px 0}
.login .card{border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);padding:22px}
.login h1{font-size:34px;letter-spacing:1px}
.login .tag{font-family:var(--mono);font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--gold)}
.login input{width:100%;padding:13px;border:1px solid var(--line);border-radius:var(--radius);
  background:var(--paper);font-size:16px;font-family:var(--serif);margin:14px 0 10px}
.login .btn{display:block;width:100%}
.warn-text{color:var(--ox)}

/* toast -------------------------------------------------------------------*/
.toast{position:fixed;left:50%;bottom:100px;transform:translateX(-50%) translateY(16px);
  background:var(--ink);color:var(--paper);padding:9px 18px;border-radius:999px;font-size:14px;
  opacity:0;pointer-events:none;transition:.2s;z-index:60}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.toast.err{background:var(--ox)}
.empty{padding:24px 16px;text-align:center;color:var(--sub);font-style:italic}

/* addresses — shared-location cross-over ----------------------------------*/
.acard{border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);
  padding:11px 13px;margin:10px 0}
.acard.xcase{border-color:var(--ox);background:var(--oxbg)}
.acard .ahead{display:flex;align-items:baseline;gap:10px;justify-content:space-between}
.acard .atitle{font-size:14.5px;line-height:1.45;color:var(--ink);overflow-wrap:anywhere;font-weight:600}
.acard .acount{flex:none;min-width:22px;height:22px;padding:0 7px;border-radius:999px;
  background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:12px;
  display:inline-flex;align-items:center;justify-content:center}
.acard.xcase .acount{background:var(--ox)}
.acard .ameta{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 2px}
.acard .xbadge{font-family:var(--mono);font-size:10px;letter-spacing:.5px;color:var(--ox);
  border:1px solid var(--ox);border-radius:999px;padding:3px 9px;text-transform:uppercase}
.acard .cbadge{font-size:12px;color:var(--gold);border:1px solid var(--line);background:var(--paper);
  border-radius:999px;padding:3px 10px;text-decoration:none}
.acard .aents{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.acard .aent{font-size:13px;color:var(--ink2);border:1px solid var(--line);background:var(--paper);
  border-radius:999px;padding:4px 10px;text-decoration:none;line-height:1.3}
.acard .aent.company{color:var(--teal);background:var(--tealbg);border-color:var(--tealbg)}
.acard .atitle{text-decoration:none}
.xcallout{margin-top:12px;padding:10px 12px;border:1px solid var(--ox);background:var(--oxbg);
  border-radius:var(--radius);font-size:14px;color:var(--ink2);line-height:1.6}
.xcallout .cbadge{font-size:12px;color:var(--gold);border:1px solid var(--line);background:var(--paper);
  border-radius:999px;padding:3px 10px;text-decoration:none;margin-left:4px;white-space:nowrap}
.varlist{list-style:none;padding:0;margin:0}
.varlist li{font-size:13.5px;color:var(--ink2);padding:6px 0;border-bottom:1px solid var(--line);
  overflow-wrap:anywhere}
.varlist li:last-child{border-bottom:none}
.thread.strong{border:1px solid var(--ox);background:var(--oxbg);border-radius:var(--radius);
  padding:8px 10px;margin:6px 0}
.nhtag.strong{color:var(--ox);border:1px solid var(--ox);border-radius:999px;padding:1px 7px;
  font-size:10.5px;font-family:var(--mono);letter-spacing:.4px;white-space:nowrap}

/* registered-office history (company page) --------------------------------*/
.ahrow{display:flex;gap:11px;padding:12px 0;border-bottom:1px dotted var(--dot)}
.ahrow:last-child{border-bottom:0}
.ahdate{font-family:var(--mono);font-size:11px;color:var(--sub);width:82px;flex-shrink:0;padding-top:2px}
.ahbody{flex:1;min-width:0}
.ahloc b{font-size:14.5px;color:var(--ink)}
.aharea{font-size:12px;color:var(--sub)}
.ahaddr{font-size:12.5px;color:var(--ink2);margin:3px 0 4px;line-height:1.5;overflow-wrap:anywhere}
.ahbasis{font-size:11.5px;color:var(--sub);margin:0 0 6px;line-height:1.5;overflow-wrap:anywhere}
.ahbk{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--sub);
  border:1px solid var(--line);border-radius:3px;padding:1px 5px;margin-right:4px}
.ahconf{font-family:var(--mono);font-size:9.5px;letter-spacing:.3px;color:var(--gold);
  border:1px solid var(--gold);border-radius:999px;padding:1px 7px;text-transform:uppercase}
.ahnb{display:inline-flex;align-items:baseline;gap:6px;text-decoration:none;font-size:12.5px;
  color:var(--ink2);border:1px solid var(--line);background:var(--paper);border-radius:999px;
  padding:3px 10px;margin:0 6px 6px 0;line-height:1.3}
.ahnbk{font-family:var(--mono);font-size:10px;letter-spacing:.3px;color:var(--sub);white-space:nowrap}
.ahnbw{font-family:var(--mono);font-size:10px;color:var(--sub)}
.ahnb.concurrent{border-color:var(--ox);background:var(--oxbg)}
.ahnb.concurrent .ahnbk{color:var(--ox)}
.ahnb.vicinity{border-color:var(--gold)}
.ahnb.vicinity .ahnbk{color:var(--gold)}

.reloc-leg{display:inline-block;margin:1px 0}
.reloc-leg .sub{font-family:var(--mono);font-size:11px}

/* investigation log -------------------------------------------------------*/
.logtally{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.vpill{font-family:var(--mono);font-size:10.5px;letter-spacing:.3px;border-radius:999px;padding:3px 9px;
  border:1px solid var(--line);color:var(--sub);background:var(--paper)}
.vpill.total{color:var(--ink);border-color:var(--ink)}
.vpill.pos{color:var(--teal);border-color:var(--teal)}
.vpill.neg{color:var(--ox);border-color:var(--ox)}
.vpill.part{color:var(--gold);border-color:var(--gold)}
.logentry{border:1px solid var(--line);border-left:3px solid var(--sub);background:var(--paper2);
  border-radius:var(--radius);padding:11px 13px;margin:10px 0}
.logentry.pos{border-left-color:var(--teal)}
.logentry.neg{border-left-color:var(--ox)}
.logentry.part{border-left-color:var(--gold)}
.logentry.done{border-left-color:var(--ink)}
.loghead{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.vtag{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.5px;
  border-radius:4px;padding:2px 7px;white-space:nowrap;border:1px solid var(--line);color:var(--sub);background:var(--paper)}
.vtag.pos{color:#fff;background:var(--teal);border-color:var(--teal)}
.vtag.neg{color:#fff;background:var(--ox);border-color:var(--ox)}
.vtag.part{color:#fff;background:var(--gold);border-color:var(--gold)}
.vtag.done{color:#fff;background:var(--ink);border-color:var(--ink)}
.logtitle{font-size:14.5px;font-weight:600;color:var(--ink)}
.logdate{font-family:var(--mono);font-size:11px;color:var(--sub);margin-left:auto}
.logq{font-size:13px;color:var(--ink2);margin:6px 0 4px;font-style:italic}
.logr{font-size:13px;color:var(--ink2);margin:4px 0 6px;line-height:1.55}
.logmeta{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}
.logmeta .cbadge{font-size:12px;color:var(--gold);border:1px solid var(--line);background:var(--paper);
  border-radius:999px;padding:3px 10px;text-decoration:none}
.logmeta .xbadge{font-family:var(--mono);font-size:10px;letter-spacing:.4px;color:var(--ox);
  border:1px solid var(--ox);border-radius:999px;padding:2px 8px}
.logtag{font-size:11.5px;color:var(--sub);border:1px solid var(--line);border-radius:5px;padding:2px 7px}
.logtag b{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--sub)}
.logrerun{font-size:12px;color:var(--ink2);margin:8px 0 0;padding-top:7px;border-top:1px dotted var(--dot)}
.rrk{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--gold);
  border:1px solid var(--gold);border-radius:4px;padding:1px 6px;margin-right:5px}
.logfoot{margin-top:16px}
.radar.probe{border-left:3px solid var(--sub)}
.radar.probe.pos{border-left-color:var(--teal)}
.radar.probe.neg{border-left-color:var(--ox)}
.radar.probe.part{border-left-color:var(--gold)}
.seeall{color:var(--gold);text-decoration:none;font-family:var(--mono);font-size:11px;white-space:nowrap}

/* co-relocation & shared premises (addresses page) ------------------------*/
.subh{font-size:12px;font-weight:600;color:var(--sub);text-transform:uppercase;letter-spacing:.5px;
  margin:16px 0 8px;display:flex;align-items:baseline;gap:8px}
.subh .n{font-family:var(--mono);font-size:10px;letter-spacing:0;text-transform:none;color:var(--sub)}
.trailcard{border:1px solid var(--ox);background:var(--oxbg);border-radius:var(--radius);
  padding:11px 13px;margin:10px 0}
.trailcard.xcase{border-width:2px}
.trhead{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:14.5px;font-weight:600}
.trhead a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
.trhead .trx{color:var(--ox);font-weight:400}
.trhead .trn{font-family:var(--mono);font-size:10px;letter-spacing:.4px;color:var(--ox);
  border:1px solid var(--ox);border-radius:999px;padding:2px 8px;margin-left:auto;white-space:nowrap}
.trleg{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:13px;color:var(--ink2);
  padding:6px 0 0;margin-top:6px;border-top:1px dotted var(--dot)}
.trkind{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.5px;
  border-radius:4px;padding:2px 6px;white-space:nowrap}
.trleg.concurrent .trkind{background:var(--ox);color:#fff}
.trleg.vicinity .trkind{background:var(--gold);color:#fff}
.trleg.sequential .trkind{background:var(--paper);color:var(--sub);border:1px solid var(--line)}
.trwin{font-family:var(--mono);font-size:11px;color:var(--sub);margin-left:auto}
.trsep{opacity:.6}
.locard{border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);
  padding:10px 13px;margin:10px 0}
.locard.xcase{border-color:var(--ox);background:var(--oxbg)}
.lohead{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.lohead b{font-size:14.5px;color:var(--ink)}
.loarea{font-size:12px;color:var(--sub)}
.lobadge{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.5px;
  border-radius:4px;padding:2px 7px;margin-left:auto;white-space:nowrap}
.lobadge.conc{background:var(--ox);color:#fff}
.lobadge.seq{background:var(--paper);color:var(--sub);border:1px solid var(--line)}
.looccs{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.looc{font-size:13px;color:var(--ink2);border:1px solid var(--line);background:var(--paper);
  border-radius:999px;padding:4px 10px;text-decoration:none;line-height:1.3}
.looc.company{color:var(--teal);background:var(--tealbg);border-color:var(--tealbg)}
.loocw{font-family:var(--mono);font-size:10px;color:var(--sub)}

/* wallet cards ------------------------------------------------------------*/
.wallet{border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);padding:11px 12px;margin:10px 0}
.wtop{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.wtop b{font-size:15px}
.wtype{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--sub)}
.wchain{font-family:var(--mono);font-size:10px;color:var(--sub);border:1px solid var(--line);border-radius:4px;padding:1px 5px}
.wseized{background:var(--ox);color:#fff;font-family:var(--mono);font-size:9.5px;letter-spacing:1px;padding:2px 6px;border-radius:4px;margin-left:auto}
.waddr{display:flex;align-items:center;gap:6px;margin:6px 0}
.waddr .vtext{flex:1;font-size:12.5px}
.wdesc{font-size:13.5px;color:var(--ink2);margin-top:3px}
.wtags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.wtag{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--ox);
  border:1px solid #e0c9c3;background:var(--oxbg);border-radius:999px;padding:2px 8px}
.wtag.vol{color:var(--gold);background:transparent;border-color:var(--line)}

/* note blocks -------------------------------------------------------------*/
.note{margin:12px 0;padding-left:12px;border-left:2px solid var(--line)}
.notehead{display:flex;gap:8px;align-items:baseline;margin-bottom:4px}
.notelabel{font-family:var(--mono);font-size:9.5px;letter-spacing:1px;text-transform:uppercase;
  color:var(--paper2);background:var(--gold);padding:2px 7px;border-radius:3px;flex-shrink:0}
.notelabel.masak-verdict,.notelabel.masak-finding,.notelabel.masak-analysis{background:var(--ox)}
.notelabel.foreign-nexus{background:var(--ink)}
.notelabel.source,.notelabel.audit-fix,.notelabel.reviewed{background:var(--sub)}
.notesrc{font-family:var(--mono);font-size:10.5px;color:var(--sub)}
.noteline{margin:2px 0;font-size:14.5px;line-height:1.5;color:var(--ink2)}

/* browse rows -------------------------------------------------------------*/
.brow{display:flex;align-items:center;gap:10px;padding:13px 2px;border-bottom:1px dotted var(--dot)}
.brow:last-child{border-bottom:0}
.brow .bl{flex:1;font-weight:600;font-size:15.5px}
.brow .bn{font-family:var(--mono);font-size:12.5px;color:var(--sub);background:var(--paper2);
  border:1px solid var(--line);border-radius:999px;padding:1px 9px}
.brow .go{color:var(--sub);font-size:18px}
.brow.accent{border:1px solid var(--ink);border-radius:var(--radius);background:var(--paper2);
  padding:13px 14px;margin-top:8px}

/* network / org chart -------------------------------------------------------*/
.pagehead{padding:18px 16px 4px}
.pagehead h1{font-size:26px;font-weight:600;line-height:1.1}
.pagehead .sub{font-style:italic;font-size:14.5px;margin:4px 0 0}
.orgchart{padding:8px 16px 0}
.tier{border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);padding:4px 12px 6px}
.tierhead{display:flex;justify-content:space-between;align-items:baseline;gap:10px;
  border-bottom:1px solid var(--line);padding:8px 0 6px;margin-bottom:2px}
.tiername{font-family:var(--mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);flex-shrink:0}
.tierdesc{font-size:12px;font-style:italic;color:var(--sub);text-align:right}
.tielink{width:2px;height:16px;margin:0 auto;background:var(--ink);opacity:.55}
.node.lead{border-width:2.5px;background:var(--ink);color:var(--paper)}
.fdesc{font-size:13px;color:var(--ink2);margin-top:2px;line-height:1.4}
.degree{display:flex;flex-direction:column;gap:3px;align-items:flex-end;flex-shrink:0}
.deg{font-family:var(--mono);font-size:10px;letter-spacing:.3px;color:var(--sub);
  border:1px solid var(--line);background:var(--paper2);border-radius:999px;padding:1px 7px;white-space:nowrap}
.dots{font-size:8px;letter-spacing:1px;color:var(--gold);flex-shrink:0}

/* operating profile ---------------------------------------------------------*/
.profilebox{border-left:3px solid var(--ink);background:var(--paper2);border-radius:0 var(--radius) var(--radius) 0;
  padding:12px 14px;margin:10px 0}
.sigline{margin:0 0 8px;font-size:16px;font-weight:600;line-height:1.45}
.profline{margin:6px 0 0;font-size:14.8px;line-height:1.55;color:var(--ink2)}

/* org position card (person page) ------------------------------------------*/
.orgcard{border:1px solid var(--ink);background:var(--paper2);border-radius:var(--radius);padding:12px 14px;margin:10px 0}
.orgrole{font-weight:600;font-size:16px;display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.orgtier{font-family:var(--mono);font-size:9.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);flex-shrink:0}
.orgline{display:block;padding:8px 0 0;font-size:14.5px;color:var(--ink2)}
.orgline b{font-weight:600;color:var(--ink)}
.orgline.map{font-family:var(--mono);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--gold);margin-top:4px}

/* grouped connections -------------------------------------------------------*/
.relgroup{margin:10px 0 4px}
.relhead{font-family:var(--mono);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--sub);
  display:flex;gap:8px;align-items:baseline;margin-bottom:2px}
.relhead .n{color:var(--dot)}
.relhead::after{content:'';flex:1;border-bottom:1px dotted var(--dot)}

/* browse row descriptions ---------------------------------------------------*/
.brow .bd{font-weight:400;font-size:12.5px;font-style:italic;color:var(--sub);margin-top:1px;line-height:1.35}

/* add-note button + analyst (user) notes ----------------------------------*/
.addbtn{float:right;background:var(--ink);color:var(--paper);border:0;border-radius:999px;
  padding:5px 13px;font-family:var(--serif);font-size:13px;font-weight:600}
.usernote{border:1px solid #b9cfe0;background:#eef4f9;border-radius:var(--radius);padding:10px 12px;margin:10px 0}
.unhead{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}
.unlabel{font-family:var(--mono);font-size:9.5px;letter-spacing:1px;text-transform:uppercase;color:#fff;
  background:#2b5d8a;padding:2px 7px;border-radius:3px}
.unmeta{font-family:var(--mono);font-size:10.5px;color:var(--sub)}
.usernote .noteline{color:var(--ink);margin:0}

/* geo events / places -------------------------------------------------------*/
.geoevent{border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);padding:10px 12px;margin:10px 0}
.geoevent.high{border-left:3px solid var(--ox)}
.gehead{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;margin-bottom:4px}
.gecat{font-family:var(--mono);font-size:9.5px;letter-spacing:1px;text-transform:uppercase;color:var(--paper2);background:var(--gold);padding:2px 7px;border-radius:3px}
.geplace{font-size:12.5px;font-style:italic;color:var(--sub)}
.gehi{font-family:var(--mono);font-size:9px;letter-spacing:1px;color:#fff;background:var(--ox);padding:2px 6px;border-radius:3px}
.gesrc{font-family:var(--mono);font-size:10.5px;color:var(--sub);margin-left:auto}
.getags{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
.getag{font-size:11.5px;color:var(--ink2);border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:1px 8px}
.getag.co{border-style:dashed;color:var(--sub)}
.infrachip{color:var(--ox);font-weight:700;letter-spacing:1px}
.casechip{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.3px;border-radius:999px;padding:1px 8px;text-decoration:none;border:1px solid var(--line)}
.casechip.c1{color:var(--sub)}
.casechip.c2{color:var(--ox);border-color:var(--ox)}
.casechip.c0{color:var(--sub);border-style:dashed}

/* timeline -------------------------------------------------------------------*/
.chipfilter{display:flex;gap:7px;flex-wrap:wrap;padding:10px 16px 2px}
.fchip{font-family:var(--mono);font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--sub);
  border:1px solid var(--line);background:var(--paper2);border-radius:999px;padding:4px 11px}
.fchip.on{color:var(--paper);background:var(--ink);border-color:var(--ink)}
.tlyear{font-family:var(--mono);font-size:20px;font-weight:700;color:var(--ink);margin:18px 0 6px;
  padding-bottom:4px;border-bottom:2px solid var(--ink)}
.tlrow{display:flex;gap:12px;padding:11px 0;border-bottom:1px dotted var(--dot)}
.tlrow:last-child{border-bottom:0}
.tldate{font-family:var(--mono);font-size:11px;color:var(--sub);width:74px;flex-shrink:0;padding-top:3px}
.tlbody{flex:1;min-width:0}
.tltop{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.tltop b{font-weight:600;font-size:15px}
.tlcat{font-family:var(--mono);font-size:8.5px;letter-spacing:1px;text-transform:uppercase;color:var(--paper2);
  background:var(--gold);padding:2px 6px;border-radius:3px}
.tlrow.seizure .tlcat,.tlrow.legal .tlcat{background:var(--ox)}
.tlrow.fraud .tlcat{background:var(--sub)}
.tldetail{margin:3px 0 0;font-size:14px;line-height:1.5;color:var(--ink2)}
.tlsrc{font-family:var(--mono);font-size:10px;color:var(--sub);margin-top:3px}

/* shareholding / cap-table over time ---------------------------------------*/
.shrow{display:flex;gap:11px;padding:12px 0;border-bottom:1px dotted var(--dot)}
.shrow:last-child{border-bottom:0}
.shrow.merge{background:linear-gradient(90deg,var(--tealbg),transparent);border-radius:6px;
  padding:12px 8px;margin:2px -8px;border-bottom:1px dotted var(--dot)}
.shdate{font-family:var(--mono);font-size:11px;color:var(--sub);width:82px;flex-shrink:0;padding-top:2px;
  overflow-wrap:anywhere}
.shbody{flex:1;min-width:0}
.shtop{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.shtop b{font-weight:600;font-size:15px}
.shpct{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--ox);background:var(--oxbg);
  border-radius:4px;padding:1px 7px;white-space:nowrap}
.shmerge{font-family:var(--mono);font-size:8.5px;letter-spacing:1px;text-transform:uppercase;
  color:var(--paper2);background:var(--teal);padding:2px 6px;border-radius:3px}
.shmeta{display:flex;gap:6px;flex-wrap:wrap;align-items:baseline;margin-top:4px}
.shrole{font-family:var(--mono);font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--sub)}
.shbasis{font-size:12px;color:var(--ink2)}
.shprice{font-family:var(--mono);font-size:11.5px;font-weight:700;color:var(--gold);
  border:1px solid var(--line);border-radius:4px;padding:0 6px}
.shdetail{margin:4px 0 0;font-size:13.5px;line-height:1.5;color:var(--ink2);overflow-wrap:anywhere}
/* ownership timeline (case page) — target/seller + anomaly flags -------------*/
.tltgt{font-size:12px;color:var(--ink2)} .tltgt a{color:inherit}
.shvia{font-size:12px;color:var(--sub)}
.shtop a.tl.lep b{border-bottom:2px solid var(--gold)}
.shtop a.tl.inf b{border-bottom:2px solid var(--teal,#2f6f6a)}
.shanoms{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}
.shanom{font-family:var(--mono);font-size:10.5px;font-weight:700;border-radius:4px;padding:1px 7px;
  border:1px solid;white-space:nowrap}
.shanom.flip{color:#8a1c1c;border-color:#d9a2a2;background:#fbecec}
.shanom.pep{color:#8a4b00;border-color:#e0b884;background:#fbf1e3}
.shanom.gift{color:#5a4a1a;border-color:#cdbf8e;background:#f7f1de}
.shanom.seiz{color:#fff;border-color:#7a1717;background:#8a1c1c}
.shrow.anom{background:linear-gradient(90deg,rgba(180,40,40,.05),transparent);border-radius:6px;
  margin:0 -6px;padding-left:6px;padding-right:6px}
.shrow.seizure .shbasis{color:#8a1c1c;font-weight:600}
.tlkey{font-weight:700} .tlkey.flip{color:#8a1c1c} .tlkey.pep{color:#8a4b00} .tlkey.gift{color:#6a5820}
.tlkey.seiz{color:#8a1c1c}
.pullnotice{border:1px dashed var(--ox);background:var(--oxbg);border-radius:9px;padding:9px 13px;
  margin:10px 0 2px;font-size:13px;line-height:1.5;color:var(--ink2)}
.pullbacklog{margin:6px 0 0;font-family:var(--mono);font-size:12px;color:var(--ox)}
@media (prefers-color-scheme:dark){
  .pullnotice{border-color:#a8763a;background:#332616;color:#e8dcc8}
}
.obcross{border-left:3px solid var(--ox);background:var(--oxbg);border-radius:0 8px 8px 0;
  padding:8px 12px;margin:10px 0 2px}
.obcross p{margin:6px 0;font-size:13.5px;line-height:1.55;color:var(--ink2);overflow-wrap:anywhere}
.obcross p:first-child{margin-top:0} .obcross p:last-child{margin-bottom:0}
.obcross a{color:inherit;border-bottom:1px solid var(--line)}
@media (prefers-color-scheme:dark){
  .shanom.flip{color:#f2b8b8;border-color:#7a3535;background:#3a1e1e}
  .shanom.pep{color:#f0cc96;border-color:#7a5a2a;background:#3a2e17}
  .shanom.gift{color:#e6d9a8;border-color:#6a5f38;background:#332e1a}
  .shanom.seiz{color:#fff;border-color:#a83232;background:#a02020}
  .shrow.seizure .shbasis{color:#f2b8b8}
  .shrow.anom{background:linear-gradient(90deg,rgba(220,90,90,.12),transparent)}
}

/* hierarchy / reports-to block ----------------------------------------------*/
.hierbox{border:1px solid var(--ox);background:var(--oxbg);border-radius:var(--radius);padding:12px 14px;margin:10px 0}
.hierline{margin:0 0 6px;font-size:14.8px;line-height:1.55;color:var(--ink)}
.hierline:last-child{margin-bottom:0}

/* investigations hub -----------------------------------------------------------*/
.groupcard{display:block;border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);
  padding:12px 14px;margin:8px 0;text-decoration:none;color:var(--ink)}
.groupcard.origin{border-color:var(--ink);border-width:1.5px}
.gtop{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.gbr{font-family:var(--mono);font-size:10px;letter-spacing:.5px;color:var(--ox)}
.gbr.none{color:var(--sub)}
.gbr.control{color:var(--teal)}
.gbr.institution{color:var(--gold)}
.gbr .lk{opacity:.85;font-size:9px}
/* cross-case strength badge on the radar: control (structural) vs institution (lead) */
.kbadge{font-family:var(--mono);font-size:8.5px;letter-spacing:.5px;text-transform:uppercase;
  border-radius:999px;padding:1px 6px;vertical-align:1px}
.kbadge.control{color:var(--teal);border:1px solid var(--teal);background:var(--tealbg)}
.kbadge.institution{color:var(--gold);border:1px solid var(--gold);background:#f7f1df}
.knote{margin-top:4px;color:var(--sub);line-height:1.45;font-style:italic}
.gname{font-weight:600;font-size:15.5px;line-height:1.35}
.ghead{font-size:13px;line-height:1.5;color:var(--ink2);margin-top:5px}
.gref{font-size:10.5px;color:var(--sub);margin-top:4px;overflow-wrap:anywhere}
.gstats{display:flex;gap:14px;margin-top:8px;font-size:13px;color:var(--sub)}
.gstats b{color:var(--ink);font-family:var(--mono);font-size:14px}
/* cross-case radar rows */
.radar{padding:9px 0;border-bottom:1px dotted var(--dot)}
.radar:last-child{border-bottom:0}
.rkind{font-family:var(--mono);font-size:9.5px;letter-spacing:1px;text-transform:uppercase;color:var(--gold);margin-bottom:3px}
.rpair{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:14.5px}
.rpair a{color:var(--ink);font-weight:600;text-decoration:none;border-bottom:1.5px solid var(--gold)}
.rlink{color:var(--ox);font-size:12px}
.rcases{margin-top:2px}
.rbridge{display:block;font-size:15.5px;line-height:1.3;color:var(--ink);text-decoration:none}
.rbridge b{border-bottom:1.5px solid var(--gold)}
.rvia{margin-top:3px;line-height:1.5}
.rvia a{color:var(--ink);font-weight:600;text-decoration:none;border-bottom:1px solid var(--dot)}
.rrole{color:var(--sub)}
/* company name-history ladder */
.namehist{margin-top:6px;border-left:2px solid var(--line);padding-left:12px}
.nhrow{display:flex;gap:10px;align-items:baseline;padding:5px 0;position:relative}
.nhrow::before{content:"";position:absolute;left:-17px;top:11px;width:7px;height:7px;border-radius:50%;
  background:var(--paper);border:1.5px solid var(--line)}
.nhrow.current::before{background:var(--gold);border-color:var(--gold)}
.nhdate{flex:0 0 78px;font-size:11.5px;color:var(--sub)}
.nhname{font-size:14.5px;color:var(--ink)}
.nhtag{font-family:var(--mono);font-size:9.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--sub);
  border:1px solid var(--line);border-radius:4px;padding:1px 5px;margin-left:4px;vertical-align:1px}
.nhtag.now{color:var(--gold);border-color:var(--gold)}
/* a superseded (former) corporate owner/holding — de-emphasised, still tappable */
.thread.past{opacity:.6}
/* external lead — flagged, journalism-sourced (not the verified evidence set) */
.extlead{border:1px solid var(--ox);background:rgba(180,60,60,.05);border-radius:10px;padding:12px 14px}
.extlead h2{color:var(--ox);font-size:14px}
.extlead .profline{font-size:14px}

/* section jump chips (long entity pages) --------------------------------------*/
.jumps{display:flex;gap:7px;overflow-x:auto;padding:10px 16px 2px;scrollbar-width:none;
  -webkit-overflow-scrolling:touch}
.jumps::-webkit-scrollbar{display:none}
.jumps a{flex:0 0 auto;font-family:var(--mono);font-size:11px;letter-spacing:.4px;color:var(--ink2);
  border:1px solid var(--line);background:var(--paper2);border-radius:999px;padding:6px 12px;
  text-decoration:none;white-space:nowrap}
.jumps a:active{background:var(--ink);color:var(--paper)}
.sec[id]{scroll-margin-top:54px}

/* payment party links ----------------------------------------------------------*/
.paytop a,.pylink{color:var(--ink);text-decoration:none;border-bottom:1.5px solid var(--gold)}
.paytop a b,.pylink b{font-weight:600}

/* long-token guards (timeline refs, gazette numbers, note prose with wallet
   addresses / tx hashes / slash-lists) -----------------------------------------*/
.tldetail,.tlsrc,.tltop b,.legalref,.legaldesc,.paysrc,
.noteline,.bd,.cav p,.insight p,.thread .t .r,.getag,.notesrc{overflow-wrap:anywhere}

/* company status / court process ---------------------------------------------*/
.kayyim{margin:14px 16px;border:1px solid var(--ox);border-left:4px solid var(--ox);
  background:var(--oxbg);border-radius:var(--radius);padding:11px 14px}
.kayyim-h{font-family:var(--mono);font-size:11px;letter-spacing:1.2px;text-transform:uppercase;
  color:var(--ox);font-weight:700;margin-bottom:5px}
.kayyim p{font-size:14px;line-height:1.5;color:var(--ink2);margin:0}
.statusline{font-size:14.3px;line-height:1.55;color:var(--ink2);margin:2px 0 0}
.since{font-family:var(--mono);font-size:10px;color:var(--sub)}
/* cross-case (Özbey) correlation ---------------------------------------------*/
.xcase{border:1px solid var(--gold);background:#fbf6e8;border-radius:var(--radius);padding:4px 12px 8px;margin:6px 0}
.xnone{font-size:13.5px;color:var(--sub);font-style:italic;margin:6px 2px}
.xhint{font-size:12.5px;color:var(--sub);margin:2px 2px 8px}
/* insight cards (Lepiev patterns) --------------------------------------------*/
.insight{border-left:3px solid var(--gold);background:var(--paper2);border-radius:0 var(--radius) var(--radius) 0;
  padding:9px 13px;margin:9px 0}
.ihead{font-family:var(--mono);font-size:10.5px;letter-spacing:1px;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:3px}
.insight p{font-size:14px;line-height:1.55;color:var(--ink2);margin:0}
.insight a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
/* key finding — a red-flagged card for suspicious activity / cross-network links,
   heavier than a pattern card so it reads first */
.keyfind{border:1px solid var(--ox);border-left:4px solid var(--ox);background:var(--oxbg);
  border-radius:var(--radius);padding:11px 14px;margin:10px 0}
.khead{font-size:15px;font-weight:600;color:var(--ox);line-height:1.3;margin-bottom:4px}
.keyfind p{font-size:14px;line-height:1.55;color:var(--ink);margin:0}
.keyfind a{color:var(--ox);font-weight:600;text-decoration:none;border-bottom:1px solid #d8b7b0}
a.keyfind.kflink{display:block;text-decoration:none}
a.kflink .khead{display:flex;align-items:center;gap:6px}
a.kflink .kfgo{margin-left:auto;color:var(--ox);font-size:18px;font-weight:400}
a.kflink p{color:var(--ink)}
/* bridge/connector person in a key-people list — demoted below the subjects, tagged */
.bridgetag{font-family:var(--mono);font-size:9px;letter-spacing:.5px;text-transform:uppercase;
  color:var(--teal);border:1px solid var(--teal);border-radius:999px;padding:1px 6px;
  vertical-align:1px;white-space:nowrap}
.thread.isbridge{opacity:.82}
/* THE BRIDGE — dedicated Galip Öztürk hero card, teal (connector) not ox (alarm) */
.brlead{display:block;text-decoration:none;color:var(--ink);border:1px solid var(--teal);
  border-left:4px solid var(--teal);background:var(--tealbg);border-radius:var(--radius);
  padding:12px 14px;margin:10px 0 12px}
.brlead-top{display:flex;align-items:center;gap:11px}
.brlead-face{flex-shrink:0;width:52px;height:52px;border-radius:6px;overflow:hidden;
  border:1px solid var(--teal);background:var(--paper2);display:flex;align-items:center;
  justify-content:center;font-family:var(--serif);font-size:18px;font-weight:600;color:var(--teal)}
.brlead-face img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.brlead-id{flex:1;min-width:0}
.brlead-name{font-size:16px;font-weight:700;color:var(--ink);line-height:1.25;
  display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.brlead-badge{font-family:var(--mono);font-size:9px;letter-spacing:.6px;text-transform:uppercase;
  color:#fff;background:var(--teal);border-radius:999px;padding:2px 7px;white-space:nowrap}
.brlead-sub{font-size:12px;color:var(--ink2);margin-top:2px;line-height:1.4}
.brlead .go{color:var(--teal);font-size:20px;flex-shrink:0}
.brlead-chain{font-size:13px;line-height:1.55;color:var(--ink);margin:10px 0 0;
  padding-top:9px;border-top:1px dotted var(--teal);overflow-wrap:anywhere}
.brlead-chain b{color:var(--teal2,#245b57);font-weight:700}
.brlead-points{margin:8px 0 0;padding-left:18px}
.brlead-points li{font-size:13px;line-height:1.5;color:var(--ink);margin:3px 0}
.brlead-foot{font-size:11.5px;color:var(--ink2);font-style:italic;margin-top:9px;
  padding-top:8px;border-top:1px dotted var(--teal)}
/* collapsible full brief — keeps the long narrative available but out of the way */
.brief{margin:6px 16px 4px}
.brief>summary{list-style:none;cursor:pointer;font-family:var(--mono);font-size:11px;letter-spacing:.6px;
  text-transform:uppercase;color:var(--sub);padding:6px 0}
.brief>summary::-webkit-details-marker{display:none}
.brief>summary::before{content:"›";margin-right:6px;display:inline-block;transition:transform .15s}
.brief[open]>summary::before{transform:rotate(90deg)}
.brief .lead{margin:0 0 8px}
/* source caveats & gaps ------------------------------------------------------*/
.cav{padding:8px 0;border-bottom:1px dotted var(--dot)}
.cav:last-child{border-bottom:0}
.cav.gap{border-left:3px solid var(--ox);background:var(--oxbg);border-radius:0 var(--radius) var(--radius) 0;padding:8px 11px;margin:6px 0;border-bottom:0}
.cavhead{font-family:var(--mono);font-size:9.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--sub);margin-bottom:3px}
.cav.gap .cavhead{color:var(--ox);font-weight:700}
.cavpg{color:var(--gold)}
.cav p{font-size:13.3px;line-height:1.5;color:var(--ink2);margin:0}

/* payment edges ---------------------------------------------------------------*/
.payrow{padding:10px 0;border-bottom:1px dotted var(--dot)}
.payrow:last-child{border-bottom:0}
.payrow.foreign{border-left:3px solid var(--ox);padding-left:10px;margin-left:-10px}
.paytop{display:flex;gap:7px;align-items:baseline;flex-wrap:wrap;font-size:14.5px}
.paydir{font-family:var(--mono);font-size:9.5px;letter-spacing:.5px;text-transform:uppercase;padding:2px 6px;border-radius:3px}
.paydir.out{color:#fff;background:var(--ox)}
.paydir.in{color:var(--paper2);background:var(--gold)}
.payfor{font-family:var(--mono);font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--ox);border:1px solid var(--ox);border-radius:999px;padding:1px 7px}
.payamt{font-family:var(--mono);font-size:14px;font-weight:700;margin-top:3px;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.paydates{font-weight:400;font-size:10.5px;color:var(--sub)}
.paysrc{font-weight:400;font-size:10px;color:var(--sub);margin-left:auto}

/* subject photos (static/photos/<kind>_<id>.<ext>) — sit at the top-right,
   in line with the name */
.herophoto{flex-shrink:0;width:88px;height:88px;border-radius:14px;object-fit:cover;
  object-position:top;border:1px solid var(--line);display:block;background:var(--paper2)}

/* communications + narrative sections */
.commrow{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}
.commrow:last-child{border-bottom:0}
.chip.vq{background:var(--paper2);color:var(--gold);border:1px solid var(--gold);
  font-size:.7rem;padding:1px 7px;border-radius:9px;margin-left:6px}
.tldetail.vquote{border-left:3px solid var(--gold);padding-left:10px;font-style:italic}
.narrsec{padding:12px 0;border-bottom:1px solid var(--line)}
.narrsec:last-child{border-bottom:0}
.narrtitle{margin-bottom:6px}
.narrpara{margin:8px 0;line-height:1.55}

/* dossier tabs ---------------------------------------------------------- */
.dtabs{position:sticky;top:0;z-index:40;display:flex;flex-wrap:wrap;gap:6px;
  background:var(--paper);padding:9px 0;border-bottom:1px solid var(--line)}
.dtabs a{flex:0 0 auto;font-family:var(--mono);font-size:12px;letter-spacing:.2px;
  color:var(--ink2);border:1px solid var(--line);background:var(--paper2);
  border-radius:999px;padding:5px 11px}
.dtabs a.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.dtabs a .n{opacity:.6;margin-left:3px}
.sec[data-tab]{scroll-margin-top:64px}

/* hero identifier rail: ALL chips visible (wrap, never scroll); long values
   ellipsise inside their chip — the copy button still carries the full value */
.hero .chips{flex-wrap:wrap;row-gap:6px}
.hero .chips .chip{max-width:100%}
.hero .chips .chip .mono,
.hero .chips .chip > :not(.k):not(.cp){max-width:52vw;overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:bottom}

/* empty editable fields hidden until asked for */
.field.isempty{display:none}
.sec.show-empty .field.isempty{display:flex}
.emptytoggle{float:right;font-family:var(--mono);font-size:11px;color:var(--sub);
  background:none;border:1px dashed var(--line);border-radius:999px;padding:3px 10px;cursor:pointer}
.sec.show-empty .emptytoggle{color:var(--gold);border-color:var(--gold)}

/* cited facts: stacked (label over value over source) so a long label can never
   starve the value column into per-character wrapping */
.factrow{padding:10px 0;border-bottom:1px dotted var(--dot)}
.factrow:last-child{border-bottom:0}
.factrow .flabel{display:block;min-width:0;margin-bottom:4px;padding-top:0}
.factval{font-size:14.5px;line-height:1.5;color:var(--ink);word-break:break-word;overflow-wrap:anywhere}
.factsrc{margin-top:5px}
.factreported{font-family:var(--mono);font-size:9px;letter-spacing:.5px;text-transform:uppercase;
  color:var(--gold);border:1px solid var(--gold);border-radius:999px;padding:1px 6px;vertical-align:1px}
.factrow.reported{border-left:2px solid var(--gold);padding-left:9px;margin-left:-11px}
.factrow.reported .factval{color:var(--sub)}

/* cited-fact rows: citation sits on its own full-width line and wraps within
   the viewport (long file tails must not push the page sideways) */
.fval{flex-wrap:wrap}
.fval .sub.small{flex-basis:100%;text-align:right;white-space:normal;overflow-wrap:anywhere;font-family:var(--mono);font-size:10.5px}
/* source pill: friendly source name in place of a long evidence-file tail */
.srcpill{display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.3px;
  color:var(--sub);background:var(--paper2);border:1px solid var(--line);border-radius:999px;
  padding:2px 9px;max-width:100%;overflow-wrap:anywhere}

/* icon-only bottom nav */
.tabbar a{padding:13px 0 11px;font-size:0;position:relative}
.tabbar a .i{display:block;font-size:23px;margin:0;line-height:1}
.tabbar a .navdot{position:absolute;top:6px;right:50%;margin-right:-22px;
  background:var(--ox);color:var(--paper);font-size:9.5px;line-height:1;
  padding:2.5px 5px;border-radius:999px;font-family:var(--mono)}

/* narratives: TOC, collapsible clusters, verbatim source lists */
.narrtoc{border:1px dashed var(--line);border-radius:var(--radius);padding:8px 12px;margin:8px 0}
.narrtoc summary{font-family:var(--mono);font-size:12px;color:var(--sub);cursor:pointer}
.narrtoc .tocline{display:block;padding:5px 2px;font-size:14px;border-bottom:1px dotted var(--dot)}
.narrtoc .tocline:last-child{border-bottom:0}
.narrlead{font-weight:600}
.cluster{border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);
  padding:7px 11px;margin:7px 0}
.cluster summary{font-family:var(--mono);font-size:12.5px;color:var(--ink2);cursor:pointer}
.cluster summary .n{color:var(--sub);margin-left:4px}
.clusterlist{margin-top:6px}
.clusteritem{display:block;font-size:13px;padding:4px 2px;border-bottom:1px dotted var(--dot);
  word-break:break-word}
.clusteritem:last-child{border-bottom:0}
.clusteritem.linked{color:var(--gold)}
.trquote{font-style:italic;color:var(--ink2);font-size:14px}
.moretags{display:inline}
.moretags summary{list-style:none;cursor:pointer;display:inline-block}
.moretags summary::-webkit-details-marker{display:none}
.moretags[open] summary{display:none}
.narrlead{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.narrgroup{border:1px solid var(--line);border-radius:var(--radius);padding:9px 12px;margin:8px 0;background:var(--paper2)}
.narrgroup>summary{font-family:var(--mono);font-size:13px;color:var(--ink2);cursor:pointer;font-weight:600}
.narrgroup>summary .n{color:var(--sub);margin-left:4px}
.narrgroup .narrsec{padding:10px 0}
.yearfold{border:0;margin:4px 0}
.yearfold>summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:8px}
.yearfold>summary::-webkit-details-marker{display:none}
.yearfold>summary::after{content:'›';color:var(--sub);transform:rotate(90deg);display:inline-block}
.yearfold[open]>summary::after{transform:rotate(-90deg)}
.yearfold>summary .n{font-size:12px;color:var(--sub);font-family:var(--mono)}

/* ownership map (phone-native outline + bridge header) --------------------*/
.owncap{color:var(--sub);font-size:13px;margin:2px 0 12px}
/* converging bridge header */
.obridge{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:6px 0 4px}
.obside{font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--sub);text-align:center;margin:2px 0}
.onode{border:1.5px solid var(--line);background:var(--paper2);border-radius:9px;padding:8px 12px;text-align:center;text-decoration:none;color:inherit;display:block}
.onode b{font-size:14.5px;line-height:1.25}
.onode .m{display:block;font-size:11px;color:var(--sub);font-family:var(--mono);margin-top:1px}
.onode.per{border-radius:22px;border-color:var(--ox);background:var(--oxbg)}
.onode.lep{border-color:var(--gold);background:#f7f1df}
.onode.inf{border-color:var(--teal,#2f6f6a);background:var(--tealbg,#e7f0ef)}
.onode.brg{border-width:2.5px;border-color:var(--ink);background:#fff;box-shadow:0 2px 0 var(--dot)}
.onode.brg .bdg{display:block;margin-top:3px;font-size:10px;letter-spacing:1.5px;color:var(--ox);font-family:var(--mono)}
.oconn{display:flex;flex-direction:column;align-items:center;font-family:var(--mono);font-size:11.5px;color:var(--sub);padding:4px 0;line-height:1.2}
.oconn .pct{color:var(--ink);font-weight:700;font-size:13px}
.oconn.up{color:var(--teal,#2f6f6a)}
/* per-profile control ladder: give the stacked owner/subsidiary nodes some air */
.cladder{gap:4px}
.cladder .onode+.onode{margin-top:5px}
.cladder .obside{margin-top:8px}
.onode.me{border-color:var(--ox);background:var(--oxbg);border-width:2px}
.onode.me .bdg{color:var(--ox)}
.onode.inf .bdg{color:var(--teal,#2f6f6a)}
/* the "how this connects to the other network" callout — make it stand out */
.bpwrap{border:1.5px solid var(--teal,#2f6f6a);background:var(--tealbg,#e7f0ef);border-radius:12px}
.bpwrap h2{color:var(--teal,#2f6f6a)}
.bpwrap .oconn{color:var(--teal,#2f6f6a)}
/* outline grouped by owner */
.ogroup{margin:0 0 6px}
.oowner{display:flex;align-items:center;gap:8px;margin:18px 0 3px}
.oowner .odot{width:11px;height:11px;border-radius:50%;flex:none;border:2px solid var(--ox);background:var(--oxbg)}
.oowner .odot.inf{border-color:var(--teal,#2f6f6a);background:var(--tealbg,#e7f0ef)}
.oowner b{font-size:15px}.oowner a{color:inherit}
.oowner .otag{font-size:11px;color:var(--sub);font-family:var(--mono)}
.obranch{border-left:2px solid var(--line);margin-left:5px;padding-left:13px}
.orw{padding:6px 0;border-bottom:1px solid var(--line)}
.orw:last-child{border-bottom:none}
.orw .otop{display:flex;align-items:baseline;gap:7px}
.orw .opct{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--ink);min-width:34px}
.orw .orel{font-family:var(--mono);font-size:11.5px;color:var(--sub)}
.orw .oco{font-size:14.5px;color:inherit}
.orw .oco.lep{border-bottom:2px solid var(--gold)}
.orw .oco.inf{border-bottom:2px solid var(--teal,#2f6f6a)}
.orw .onote{display:block;font-size:11.5px;color:var(--sub);margin-left:41px;margin-top:1px}
.orw.brg{background:#fff;border:1.5px solid var(--ink);border-radius:8px;padding:8px 10px;margin:5px 0}
.orw.brg .bdg{font-size:9.5px;letter-spacing:1px;color:var(--ox);font-family:var(--mono);border:1px solid var(--ox);border-radius:4px;padding:1px 5px;margin-left:5px;white-space:nowrap}
.ownlegend{display:flex;flex-wrap:wrap;gap:8px 16px;margin:12px 2px 0;font-size:12px;color:var(--sub)}
.ownlegend span{display:inline-flex;align-items:center;gap:5px}
.ownlegend i{width:18px;border-bottom:2px solid;display:inline-block}
.ownlegend i.lep{border-color:var(--gold)} .ownlegend i.inf{border-color:var(--teal,#2f6f6a)}

/* Identity documents — thumbnail grid + click-to-zoom lightbox (person profile) */
.idgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:8px}
.iddoc{display:flex;flex-direction:column;text-align:left;text-decoration:none;color:inherit;
  border:1px solid var(--line);background:var(--paper2);border-radius:var(--radius);overflow:hidden;
  padding:0;cursor:zoom-in;font-family:inherit}
.iddoc .idthumb{width:100%;height:112px;object-fit:cover;object-position:top;display:block;background:#fff;
  border-bottom:1px solid var(--line)}
.iddoc .idthumb.pdf{display:flex;align-items:center;justify-content:center;font-family:var(--mono);
  font-size:20px;letter-spacing:2px;color:var(--ox);background:var(--oxbg);cursor:pointer}
.iddoc .idmeta{padding:7px 9px;display:flex;flex-direction:column;gap:2px}
.iddoc .idmeta b{font-size:12.5px;line-height:1.3}
.iddoc .idcap{font-size:11px;color:var(--ink2);line-height:1.42}
.iddoc .idcite{font-family:var(--mono);font-size:9px;letter-spacing:.5px;text-transform:uppercase;
  color:var(--sub);margin-top:2px}
.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(15,12,8,.95);display:flex;flex-direction:column}
.lightbox[hidden]{display:none}
.lb-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;flex-shrink:0}
.lb-cap{font-size:13px;line-height:1.35;color:#eee;max-width:64%}
.lb-ctrls{display:flex;gap:6px;align-items:center;flex-shrink:0}
.lb-btn{min-width:34px;height:34px;padding:0 8px;border:1px solid #555;background:#2a2620;color:#eee;
  border-radius:6px;font-size:17px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;
  justify-content:center;text-decoration:none}
.lb-btn:hover{background:#3a352c}
.lb-reset{font-family:var(--mono);font-size:11px;min-width:42px}
.lb-stage{flex:1;overflow:auto;display:flex;align-items:flex-start;justify-content:center;cursor:grab}
.lb-stage.grabbing{cursor:grabbing}
.lb-img{display:block;user-select:none;-webkit-user-drag:none;margin:12px}

/* Nominee appointments — clean per-company rows (person profile) */
.apptbl{display:flex;flex-direction:column;gap:7px;margin-top:8px}
.apptrow{border:1px solid var(--line);border-left:3px solid var(--dot);background:var(--paper2);
  border-radius:var(--radius);padding:9px 11px}
.apptrow.exit{border-left-color:var(--ox)}
.apptrow.live{border-left-color:var(--teal)}
.apptco{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px}
.apptco b{font-size:14px;line-height:1.3}
.apptlink{text-decoration:none;color:var(--ink)}
.apptlink .go{color:var(--sub);font-size:13px}
.apptag{font-family:var(--mono);font-size:9.5px;letter-spacing:.4px;text-transform:uppercase;
  color:var(--gold);border:1px solid var(--line);border-radius:999px;padding:1px 7px}
.apptbadge{font-family:var(--mono);font-size:9.5px;letter-spacing:.4px;text-transform:uppercase;
  border-radius:999px;padding:1px 7px}
.apptbadge.live{color:var(--teal);background:var(--tealbg);border:1px solid var(--teal)}
.apptbadge.off{color:var(--sub);background:var(--paper);border:1px solid var(--line)}
.apptmeta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:5px;
  font-size:12.5px;color:var(--ink2)}
.apptrole{font-weight:600;color:var(--ink)}
.apptper{color:var(--ink2)}
.apptper.exit{color:var(--ox);font-weight:600}
.apptuen{font-size:11px;color:var(--sub);margin-left:auto}

/* ---- dossier spine (option B) ------------------------------------------- */
.dossier-spine{padding-bottom:8px}
.dossier-spine .cover{padding:14px 16px 4px}
.dossier-spine .covermeta{display:grid;grid-template-columns:1fr 1fr;gap:8px;
  margin:12px 0 0;padding:12px 0 0;border-top:2px solid var(--ink)}
.dossier-spine .meta{padding:8px 10px;background:var(--paper2);border:1px solid var(--line);border-radius:4px}
.dossier-spine .meta .k{font-family:var(--mono);font-size:9px;letter-spacing:1px;text-transform:uppercase;
  color:var(--sub);display:block;margin-bottom:2px}
.dossier-spine .meta .v{font-size:13.5px;font-weight:600;overflow-wrap:anywhere}
.dossier-spine .meta .v.mono{font-family:var(--mono);font-weight:500;font-size:12.5px}
.dossier-spine .meta .v.warn{color:var(--ox)}
.dossier-spine .meta .link,.dossier-spine .meta a{color:var(--ox);font-weight:600;text-decoration:none}
.dossier-spine .coveracts{margin:10px 0 4px}
.dossier-spine .coverctl{display:flex;flex-direction:column;gap:10px;margin-top:12px;
  padding-top:10px;border-top:1px dotted var(--dot)}
.dossier-spine .mug.photo{width:72px;height:72px;border-radius:6px;object-fit:cover;
  object-position:top;border:1px solid var(--ink2);flex-shrink:0;display:block}

.filetoc{margin:12px 16px 0;border:1px solid var(--ink);background:var(--paper2);border-radius:4px;overflow:hidden}
.filetoc h3{margin:0;padding:9px 12px;font-family:var(--mono);font-size:10px;letter-spacing:1.5px;
  text-transform:uppercase;background:var(--ink);color:var(--paper)}
.filetoc a{display:flex;justify-content:space-between;align-items:baseline;gap:10px;
  padding:9px 12px;border-top:1px dotted var(--dot);font-size:14px;text-decoration:none;color:var(--ink)}
.filetoc a .num{font-family:var(--mono);font-size:11px;color:var(--gold);margin-right:8px}
.filetoc a .cnt{font-family:var(--mono);font-size:11px;color:var(--sub);flex-shrink:0}
.filetoc a:active,.filetoc a:focus{background:#efe9da}

/* sticky chapter rail — current title + equal-width numbers, no sideways scroll */
.dossier-spine .dtabs.chaprail{position:sticky;top:42px;z-index:40;display:flex;flex-direction:column;
  gap:0;padding:0;margin:12px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  background:var(--paper2);overflow:hidden}
.dossier-spine .chaprail-now{display:flex;align-items:baseline;gap:8px;padding:7px 14px 5px;
  border-bottom:1px dotted var(--dot)}
.dossier-spine .chaprail-k{font-family:var(--mono);font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--sub)}
.dossier-spine .chaprail-title{font-size:14px;font-weight:600;color:var(--ink);overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap}
.dossier-spine .chaprail-nums{display:flex;width:100%}
.dossier-spine .chaprail-nums a{flex:1 1 0;min-width:0;text-align:center;border:0;border-right:1px solid var(--line);
  border-radius:0;background:transparent;padding:9px 2px;font-family:var(--mono);font-size:12px;
  font-weight:700;letter-spacing:.5px;color:var(--ink2);text-decoration:none}
.dossier-spine .chaprail-nums a:last-child{border-right:0}
.dossier-spine .chaprail-nums a.on{background:var(--ink);color:var(--paper)}

.chap{padding:0 0 8px;scroll-margin-top:110px}
.chaphead{display:flex;align-items:baseline;gap:10px;margin:18px 16px 8px;padding-bottom:6px;
  border-bottom:2px solid var(--ink)}
.chapnum{font-family:var(--mono);font-size:18px;font-weight:700;color:var(--gold);flex-shrink:0}
.chaptitle{font-size:16px;font-weight:600;flex:1}
.chapcnt{font-family:var(--mono);font-size:11px;color:var(--sub);flex-shrink:0}
.chap .sec{padding-left:16px;padding-right:16px}
.chap .sec:first-of-type h2{margin-top:8px}
.pcard.in-chap{margin:0 0 8px}
.morefold{margin:8px 0 4px;border:1px dashed var(--line);border-radius:var(--radius);padding:4px 10px}
.morefold>summary{font-family:var(--mono);font-size:12px;color:var(--sub);cursor:pointer;padding:6px 0}
.morefold[open]>summary{margin-bottom:6px;color:var(--gold)}

/* spine pages: hide the old floating pcard / hero border clash */
.dossier-spine .cover .doss-why{margin-top:12px}
.dossier-spine .alert,.dossier-spine .kayyim,.dossier-spine .pullnotice{margin-left:16px;margin-right:16px}
