
:root{--cream:#f6f0e1;--paper:#fbf7ec;--navy:#1f2a44;--ink:#22201b;--rule:#c8bfa6;--muted:#6b6455;--doc:#1f2a44;--prob:#9a6a12;--rep:#9b3b22}
*{box-sizing:border-box}html{background:var(--cream)}body{margin:0 auto;max-width:1180px;padding:28px 22px 60px;color:var(--ink);font:17px/1.5 "EB Garamond",Georgia,"Times New Roman",serif;background:var(--paper);box-shadow:0 0 0 1px var(--rule)}
a{color:var(--navy)}h1,h2,h3{color:var(--navy);font-weight:700;margin:.2em 0}
.mast{text-align:center;border-bottom:3px double var(--navy);padding-bottom:10px;margin-bottom:14px}
.mast .kick{letter-spacing:.25em;text-transform:uppercase;font-size:12px;color:var(--muted)}
.mast h1{font-size:40px;line-height:1.05;letter-spacing:.01em;text-transform:uppercase}
.mast .deck{font-style:italic;font-size:19px;margin:4px 0}
.mast .rule{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.12em;text-transform:uppercase;border-top:1px solid var(--navy);border-bottom:1px solid var(--navy);padding:3px 0;margin-top:8px}
.intro{column-count:2;column-gap:28px;column-rule:1px solid var(--rule);text-align:justify;hyphens:auto}
.intro p{margin:0 0 .7em}.intro p:first-child::first-letter{float:left;font-size:3.1em;line-height:.9;padding:4px 6px 0 0;color:var(--navy);font-weight:700}
.stats{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.stat{flex:1 1 140px;border:1px solid var(--rule);background:#fff9;padding:8px 10px;text-align:center}.stat b{display:block;font-size:26px;color:var(--navy)}.stat span{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
h2{font-size:26px;border-bottom:1px solid var(--navy);margin-top:30px;padding-bottom:2px;text-transform:uppercase;letter-spacing:.04em}
h2+p.sub{margin-top:4px;color:var(--muted);font-style:italic}
.b{display:inline-block;font:600 11px/1.6 Georgia,serif;letter-spacing:.06em;text-transform:uppercase;padding:0 6px;border:1px solid;border-radius:2px;white-space:nowrap}
.b.doc{color:var(--doc)}.b.prob{color:var(--prob)}.b.rep{color:var(--rep)}
.legend{font-size:15px}.legend li{margin:2px 0}
.chain{border:1px solid var(--rule);background:#fff8;padding:10px 12px;margin:10px 0;break-inside:avoid}
.chain h3{font-size:19px;margin:0}.chain .cap{font-style:italic;color:var(--muted);font-size:15px;margin-bottom:6px}
.cn{display:inline-block;vertical-align:top;font-weight:600;max-width:170px}.cn small{display:block;font-weight:400;font-size:12px;color:var(--muted)}
.arr{display:inline-block;vertical-align:top;color:var(--navy);font-size:20px;margin:0 6px;max-width:150px;text-align:center}.arr small{display:block;font-size:11px;color:var(--muted);line-height:1.2}
.gen{margin-top:8px}.t{border-left:3px solid var(--navy);padding:4px 0 4px 12px;margin:12px 0;break-inside:avoid}
.t h3{font-size:19px}.t .meta{font-size:14px;color:var(--muted)}.t ul{margin:4px 0 0;padding-left:22px}.t li{margin:3px 0}
.t li .w{font-size:14px;color:var(--muted)}.t li .gtag{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px dotted var(--rule)}
.dt{color:var(--muted);font-size:.9em}
.ctrl{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0;font-size:15px}.ctrl input,.ctrl select{font:inherit;font-size:15px;padding:3px 6px;border:1px solid var(--rule);background:#fff}
table{border-collapse:collapse;width:100%;font-size:14px}th{background:var(--navy);color:#fff;text-align:left;padding:5px 6px;position:sticky;top:0;cursor:pointer}td{border-bottom:1px solid var(--rule);padding:4px 6px;vertical-align:top}
tr:nth-child(even) td{background:#fffaf0}td.src a{word-break:break-word}
.gaps li{margin:4px 0}.foot{margin-top:30px;border-top:3px double var(--navy);padding-top:8px;font-size:14px;color:var(--muted)}
@media (max-width:760px){.intro{column-count:1}.mast h1{font-size:28px}}
@media print{html,body{background:#fff;box-shadow:none}body{max-width:none;padding:0;font-size:11pt}.ctrl,.noprint{display:none!important}a{color:inherit;text-decoration:none}th{position:static;background:#ddd!important;color:#000}h2{break-after:avoid}.t,.chain,tr{break-inside:avoid}.intro{column-count:2}}

/* ---- site additions ---- */
.b.none{color:var(--muted)}
.sb{display:inline-block;min-width:18px;text-align:center;font:600 11px/1.6 Georgia,serif;border-radius:2px;margin:0 1px;padding:0 3px;background:var(--navy);color:#fff;text-decoration:none}
a.sb:hover{background:#9a6a12}
.sb.s5,.sb.s6{background:#5a4a2a}.sb.s4{background:#2d5a3d}
.tag{display:inline-block;font-size:12px;border:1px solid var(--rule);background:#fff;border-radius:2px;padding:0 5px;margin:1px 2px 1px 0;white-space:nowrap}
.flag{border-left:3px solid var(--rep);background:#fff4ee;padding:4px 8px;margin:6px 0;font-size:14px}
.flag.ok{border-left-color:var(--muted);background:#f7f4ea}
.corr{border:2px solid var(--prob);background:#fff8e6;padding:6px 10px;margin:8px 0;font-size:15px}
.layout{display:grid;grid-template-columns:250px 1fr;gap:18px;align-items:start}
.filters{border:1px solid var(--rule);background:#fff9;padding:8px 10px;font-size:14.5px;position:sticky;top:6px;max-height:calc(100vh - 20px);overflow:auto}
.filters h4{margin:10px 0 3px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--navy);border-bottom:1px solid var(--rule)}
.filters label{display:block;line-height:1.35;cursor:pointer}.filters label .c{color:var(--muted);font-size:12px}
.filters input[type=search]{width:100%;font:inherit;padding:4px 6px;border:1px solid var(--rule)}
.btn{font:inherit;font-size:14px;padding:3px 10px;border:1px solid var(--navy);background:#fff;color:var(--navy);cursor:pointer;border-radius:2px;text-decoration:none;display:inline-block}
.btn:hover,.btn.on{background:var(--navy);color:#fff}
.plist{width:100%}.plist td{font-size:14.5px}.plist tr{cursor:pointer}.plist tr:hover td{background:#efe6cc}.plist tr.sel td{background:#e4d7b0}
.panel{position:fixed;top:0;right:0;width:min(560px,100%);height:100vh;overflow:auto;background:var(--paper);border-left:3px double var(--navy);box-shadow:-6px 0 18px #0003;padding:14px 18px 40px;z-index:50;display:none}
.panel.open{display:block}.panel .x{position:sticky;top:0;float:right;font-size:20px;background:var(--paper);border:1px solid var(--rule);cursor:pointer;padding:0 8px}
.panel h2{margin-top:6px;font-size:24px;text-transform:none;letter-spacing:0}
.panel h3{font-size:15px;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--rule);margin-top:14px}
.panel ul{padding-left:18px;margin:4px 0}.panel li{margin:3px 0;font-size:15px}.panel .w{color:var(--muted);font-size:13.5px}
.panel table td,.panel table th{font-size:13px}
.kv{font-size:15px}.kv b{color:var(--navy)}
.graphwrap{border:1px solid var(--rule);background:#fff;overflow:auto;max-height:78vh;margin:8px 0}
svg text{font-family:"EB Garamond",Georgia,serif}
.node rect{fill:#fbf7ec;stroke:#1f2a44;stroke-width:1.2}.node.center rect{fill:#1f2a44}.node.center text{fill:#fff}.node.inst rect{fill:#efe6cc;stroke-dasharray:3 2}
.node{cursor:pointer}.node:hover rect{stroke:#9a6a12;stroke-width:2.2}
.edge{fill:none;stroke:#1f2a44;stroke-width:1.3;opacity:.75}.edge.Probable{stroke:#9a6a12;stroke-dasharray:5 3}.edge.Reported{stroke:#9b3b22;stroke-dasharray:2 3}
.ctl{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0;font-size:15px}
.ctl input,.ctl select{font:inherit;font-size:15px;padding:3px 6px;border:1px solid var(--rule);background:#fff;max-width:100%}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin:12px 0}
.card2{border:1px solid var(--rule);background:#fff9;padding:10px 12px;display:flex;flex-direction:column}
.card2 h3{font-size:19px;margin:0 0 2px}.card2 .k{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.card2 p{font-size:15px;margin:4px 0;flex:1}.card2 .cnt{font-size:13px;color:var(--muted)}
.matrix td,.matrix th{text-align:center;font-size:14px}.matrix th:first-child,.matrix td:first-child{text-align:left}
.map svg{width:100%;height:auto;background:#eef0ea;border:1px solid var(--rule)}
.map .rn{cursor:pointer}.map .rn circle{fill:#1f2a44;opacity:.88}.map .rn:hover circle{fill:#9a6a12}.map .rn.sel circle{fill:#9a6a12}
.map .rn text{font-size:15px;fill:#22201b;font-weight:600}.map .rn text.n{fill:#fff;font-size:13px}
.map .flow{fill:none;stroke:#9a6a12;opacity:.45;cursor:pointer}.map .flow:hover{opacity:.9;stroke:#9b3b22}
.map .land{fill:#e2dccb;stroke:#c8bfa6}.map .sea{font-style:italic;fill:#8a8f99;font-size:16px;letter-spacing:.3em}
.muted{color:var(--muted)}.small{font-size:13.5px}
.srcgrp h3{font-size:18px;margin-top:16px}
.srcrow{font-size:14.5px;margin:3px 0;padding:2px 0;border-bottom:1px dotted var(--rule)}
.hl-find{outline:3px solid #9a6a12!important;background:#fff3c4!important;transition:background 2s}
@media (max-width:860px){.layout{grid-template-columns:1fr}.filters{position:static;max-height:none}.filters details:not([open]) > *:not(summary){display:none}.plist td:nth-child(4),.plist th:nth-child(4),.plist td:nth-child(5),.plist th:nth-child(5){display:none}}
@media print{.panel{position:static;display:block;width:auto;height:auto;box-shadow:none;border:0;padding:0}.panel .x,.filters,.ctl,.noprint,#cm-nav{display:none!important}.layout{display:block}.graphwrap{max-height:none;overflow:visible;border:0}.map svg{max-height:none}}

.sb.s7{background:#5d3a52}

/* study 8 */
.sb.s8{background:#2f5d50}
.edge.tb-sh{stroke:#b8860b;stroke-width:3.4;opacity:.95;stroke-dasharray:none}.edge.tb-dv{stroke:#9b3b22;stroke-width:3;opacity:.9;stroke-dasharray:7 3}
.tbk{display:inline-block;width:22px;height:0;border-top:3px solid #b8860b;vertical-align:middle}.tbk.dv{border-top:3px dashed #9b3b22}
.sb.s9{background:#7a4a1e}

.cards.cats{grid-template-columns:repeat(3,1fr)}@media(max-width:760px){.cards.cats{grid-template-columns:1fr}}
