:root{font-family:system-ui,sans-serif;color:#25372f;background:#f4f4ee;font-size:16px}*{box-sizing:border-box}body{margin:0}header{background:#173d32;color:#f7f8ef;display:flex;align-items:center;gap:3rem;padding:1rem 6%;min-height:72px}header a{color:inherit;text-decoration:none}.brand{font-family:Georgia,serif;font-size:1.65rem;font-weight:bold}.brand span{color:#a9c9ad}nav{display:flex;gap:1.8rem;flex:1}nav a{font-size:.92rem}header form{margin:0}header button{background:transparent;border:1px solid #a9c9ad;color:white;padding:.5rem .9rem}main{max-width:1280px;margin:auto;padding:3.5rem 5% 5rem;min-height:80vh}h1,h2,h3{font-family:Georgia,serif;font-weight:normal}h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1.1;margin:.4rem 0 1rem}h2{font-size:1.7rem;margin-top:0}h3{font-size:1.2rem}.eyebrow{font-size:.72rem;letter-spacing:.18em;font-weight:700;color:#63816b}.lede{font-size:1.15rem;color:#5b6c60;max-width:700px;line-height:1.6}.columns{display:grid;grid-template-columns:1.2fr 1fr;gap:1.5rem;align-items:start}.panel{background:#fff;border:1px solid #e0e6dc;border-radius:8px;padding:1.7rem;margin:1.5rem 0;box-shadow:0 8px 28px #243c2710}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:2.5rem 0}.stats div{background:#e5ede2;padding:1.3rem;border-radius:6px}.stats strong,.stats span{display:block}.stats strong{font:2.2rem Georgia,serif}.stats span{text-transform:capitalize;color:#5b6c60}label{display:block;font-size:.85rem;font-weight:600;margin:1rem 0;color:#465b4c}input,select,textarea{display:block;width:100%;padding:.7rem;border:1px solid #cbd7ca;border-radius:4px;background:#fff;color:#25372f;font:inherit;margin-top:.4rem}button,.button{display:inline-block;background:#245b46;color:#fff;border:0;border-radius:4px;padding:.75rem 1.1rem;font:inherit;cursor:pointer;text-decoration:none}a{color:#28674f}article{border-bottom:1px solid #e6ece4;padding:.8rem 0}article:last-child{border:0}.badge{display:inline-block;font:600 .7rem system-ui;text-transform:uppercase;letter-spacing:.05em;background:#edf1e6;color:#5b705a;padding:.3rem .5rem;border-radius:1rem}blockquote{margin:1rem 0;border-left:3px solid #abc3a9;padding-left:1rem;color:#52675a;white-space:normal}.list{list-style:none;padding:0}.list li{padding:.9rem 0;border-bottom:1px solid #e6ece4}.list small{color:#718277}.error{background:#ffe8df;padding:1rem;border:1px solid #db9e8b;border-radius:4px}.login{max-width:460px;margin:5vh auto}.login form{background:white;padding:1.5rem;border:1px solid #e0e6dc;border-radius:8px}footer{border-top:1px solid #d9e2d8;padding:2rem 6%;color:#718277;font-size:.8rem}@media(max-width:700px){header{flex-wrap:wrap;gap:1rem}nav{order:3;flex-basis:100%;gap:1rem;overflow:auto}.columns{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}main{padding-top:2rem}}
.tree-controls{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.tree-controls label{flex:1 1 160px;margin:.3rem 0}.tree-controls .check{flex:0 1 180px;font-weight:normal}.check input{display:inline;width:auto;margin-right:.4rem}.tree-hint{color:#5b6c60;font-size:.9rem}#tree{height:560px;background:#f8faf6;border:1px solid #e1e9df;border-radius:4px}#tree-selection{padding:1rem;background:#edf4ea;border-radius:4px}@media(max-width:700px){#tree{height:420px}}
pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f7f2;padding:.7rem;font-size:.75rem}summary{cursor:pointer;color:#28674f;margin:.6rem 0}

.thumbnail{display:block;max-width:160px;max-height:160px;margin:.5rem 0;border-radius:4px}
.candidate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:1rem}.candidate-grid article{border:1px solid #dce6db;padding:1rem;border-radius:6px;min-width:0}.candidate-grid article h3{margin-top:0}.candidate-grid blockquote{overflow-wrap:anywhere}
.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem}.image-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px}.image-grid a{font-size:.8rem;overflow-wrap:anywhere}

.tree-branch-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}.tree-branch-actions button{padding:.55rem .8rem;font-size:.9rem}.tree-branch-actions button:disabled{opacity:.55;cursor:wait}

.candidate-grid h4{margin:1rem 0 .35rem;font-size:.86rem;color:#465b4c}.candidate-grid ul{padding-left:1.2rem;overflow-wrap:anywhere}.candidate-grid li{margin:.4rem 0}.candidate-empty{font-size:.88rem;color:#718277}
.timeline-hint{font-size:.88rem;color:#718277;line-height:1.45}.timeline{list-style:none;border-left:2px solid #d5e4d4;padding:0 0 0 1.25rem;margin:1.2rem 0 1.8rem}.timeline>li{position:relative}.timeline>li:before{content:"";position:absolute;left:-1.61rem;top:1.25rem;width:.58rem;height:.58rem;border-radius:50%;background:#63916f;border:2px solid white;box-shadow:0 0 0 1px #abc5ab}.timeline>li article{padding:.35rem 0 .9rem}.timeline-date{font-size:.82rem;font-weight:700;color:#59745e;overflow-wrap:anywhere;margin:.5rem 0}.timeline article p{overflow-wrap:anywhere}

.transcription{white-space:pre-wrap;overflow-wrap:anywhere}

.candidate-grid .candidate-evidence{list-style:none;padding-left:0}.candidate-evidence li{border-left:3px solid #c6d6c9;background:#f6f8f4;padding:.55rem .65rem}.candidate-evidence li p{margin:.35rem 0}.evidence-polarity{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.evidence-supports{color:#285b3b}.evidence-contradicts{color:#9a3e2f}.evidence-context{color:#596c63}
.new-person-relative{border-top:1px solid #d8e3da;margin-top:1rem;padding-top:.5rem}.new-person-relative h3{font-size:1rem;margin:.4rem 0}
