:root { color-scheme: light; --ink:#172e3a; --muted:#59707a; --accent:#126e77; --line:#dbe5e7; --paper:#fff; --ground:#f4f7f7; }
* { box-sizing: border-box; }
body { margin:0; font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:var(--ground); }
a { color:var(--accent); text-underline-offset:.18em; }
a:hover { color:#084c55; }
a:focus-visible, button:focus-visible, input:focus-visible, summary:focus-visible { outline:3px solid #d89825; outline-offset:3px; }
.skip-link { position:fixed; top:-100px; left:1rem; z-index:10; background:white; padding:.6rem; }
.skip-link:focus { top:0; }
.site-header { background:#173c48; color:white; position:sticky; top:0; z-index:5; box-shadow:0 2px 7px #102c3912; }
.brand-row { max-width:1240px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding:1rem 2rem .7rem; }
.brand { color:white; text-decoration:none; font-size:1.25rem; font-weight:700; white-space:nowrap; }
.brand:hover { color:white; }
.brand-symbol { color:#82c7bf; margin-right:.35rem; }
.brand-label { color:#bbd2d8; font-size:.8rem; font-weight:400; border-left:1px solid #78939b; padding-left:.7rem; margin-left:.6rem; }
.search-box { display:flex; align-items:center; gap:.7rem; width:min(460px,48%); }
.search-box label { font-size:.85rem; font-weight:600; }
.search-box input { width:100%; min-width:0; border:1px solid #78969f; border-radius:.45rem; padding:.65rem .8rem; font:inherit; font-size:.9rem; color:var(--ink); background:#fff; }
.primary-nav { display:flex; flex-wrap:wrap; align-items:center; gap:.7rem; max-width:1240px; margin:auto; padding:0 2rem .65rem; }
.primary-nav a { padding:.3rem .6rem; color:#e4eeef; text-decoration:none; font-size:.92rem; border-radius:.3rem; }
.primary-nav a:hover, .primary-nav a[aria-current=page] { background:#2c5360; color:white; }
.search-panel { max-width:1100px; position:absolute; left:50%; transform:translateX(-50%); width:calc(100% - 2rem); max-height:65vh; overflow:auto; background:white; color:var(--ink); border:1px solid var(--line); border-radius:0 0 .65rem .65rem; box-shadow:0 14px 30px #173c4833; padding:1.2rem; }
[hidden] { display:none !important; }
.search-panel-heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; border-bottom:1px solid var(--line); }
.search-panel-heading p { margin:0 0 .8rem; font-size:.9rem; }
button { border:1px solid var(--line); background:white; color:var(--accent); border-radius:.4rem; padding:.5rem .7rem; cursor:pointer; font:inherit; font-size:.8rem; }
.search-panel article { border-bottom:1px solid var(--line); padding:.7rem 0; }
.search-panel h2 { font-size:1rem; margin:.25rem 0; }
.search-panel article p { font-size:.85rem; color:var(--muted); margin:.3rem 0; }
.page-shell { max-width:1180px; margin:2.2rem auto; padding:2.3rem 2.5rem; background:var(--paper); border:1px solid var(--line); border-radius:.8rem; min-height:50vh; }
h1,h2,h3,h4 { line-height:1.25; font-weight:650; letter-spacing:-.02em; color:var(--ink); overflow-wrap:anywhere; }
h1 { font-size:2.35rem; margin:0 0 .85rem; max-width:900px; }
h2 { font-size:1.45rem; margin:2.2rem 0 1rem; }
h3 { font-size:1.15rem; margin:1.5rem 0 .65rem; }
h4 { font-size:1rem; }
p { margin:.65rem 0 1rem; }
li { margin:.25rem 0; }
.eyebrow { display:block; color:var(--accent); font-size:.75rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; margin-bottom:.65rem; }
.overview-heading { padding:1rem 0 1.8rem; max-width:800px; }
.overview-heading h1 { font-size:2.8rem; max-width:700px; }
.lead,.page-description { font-size:1.08rem; color:var(--muted); max-width:820px; }
.quick-links,.card-actions { display:flex; flex-wrap:wrap; gap:.55rem; }
.quick-links { margin-top:1.3rem; }
.button-link { display:inline-block; border:1px solid #a3c8ca; border-radius:.4rem; padding:.5rem .8rem; text-decoration:none; font-size:.88rem; font-weight:600; background:#f5fbfa; }
.section-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.7rem; margin:1.4rem 0 1rem; }
.section-heading h2 { margin:0; }
.section-heading a { font-size:.9rem; }
.card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-bottom:2rem; }
.record-card { border:1px solid var(--line); border-top:3px solid #4c9998; border-radius:.55rem; padding:1.2rem; min-width:0; }
.record-card h3 { margin:.35rem 0 .65rem; font-size:1.1rem; }
.record-card h3 a { color:var(--ink); text-decoration:none; }
.record-card h3 a:hover { color:var(--accent); text-decoration:underline; }
.record-card p { font-size:.9rem; line-height:1.55; color:var(--muted); }
.record-card .eyebrow { font-size:.68rem; margin:0 0 .4rem; }
.card-actions { margin-top:.9rem; }
.card-actions a { font-size:.78rem; }
.compact-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.record-card.compact { border-top:1px solid var(--line); padding:1rem 1.15rem; }
.page-heading { border-bottom:1px solid var(--line); padding-bottom:1.3rem; margin-bottom:1.6rem; }
.badges { display:flex; gap:.45rem; flex-wrap:wrap; margin-top:.75rem; }
.badge { display:inline-block; background:#edf4f4; color:#47636c; border-radius:2rem; padding:.2rem .65rem; font-size:.75rem; }
.note-content { max-width:920px; }
.note-content > h2:first-child { margin-top:0; }
.note-content h2 { scroll-margin-top:11rem; }
.note-content h3 { scroll-margin-top:11rem; }
blockquote { border-left:3px solid #8db7bc; padding:.2rem 1rem; color:var(--muted); background:#f7fafa; margin:1rem 0; }
pre { background:#f1f5f5; padding:1rem; border-radius:.4rem; overflow:auto; font-size:.82rem; line-height:1.6; max-width:100%; }
code { font-size:.86em; overflow-wrap:anywhere; }
pre code { white-space:pre; }
table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; font-size:.88rem; margin:1.4rem 0; }
th,td { border:1px solid var(--line); padding:.6rem .8rem; vertical-align:top; min-width:8rem; }
th { background:#edf4f4; text-align:left; }
.footnote { margin-top:2rem; border-top:1px solid var(--line); color:var(--muted); font-size:.85rem; }
details { border:1px solid var(--line); border-radius:.45rem; padding:.8rem 1rem; margin:1rem 0; }
summary { cursor:pointer; font-size:.9rem; font-weight:600; }
details[open] > summary { margin-bottom:1rem; }
.record-meta { margin-top:2.4rem; background:#f7fafa; font-size:.85rem; }
.record-meta dl,.technical dl { display:grid; grid-template-columns:9rem minmax(0,1fr); gap:.45rem .8rem; }
dt { font-weight:600; }
dd { margin:0; overflow-wrap:anywhere; }
.record-meta pre { white-space:pre-wrap; }
.original-index,.original-record { margin-top:2rem; }
.muted { color:var(--muted); }
.capture-card { border:1px solid var(--line); padding:1.1rem; border-radius:.5rem; margin:1rem 0; }
.capture-card h3 { font-size:1rem; margin:0 0 .6rem; }
.capture-warning { color:#8b4438; border-left:3px solid #bd7c6c; padding-left:.7rem; }
.download-group { margin-bottom:2rem; }
.download-list { padding:0; list-style:none; }
.download-list li { border-bottom:1px solid var(--line); padding:.9rem 0; }
.download-row { display:flex; justify-content:space-between; gap:1rem; align-items:baseline; }
.download-row a { font-weight:600; }
.download-row .muted { font-size:.8rem; white-space:nowrap; }
.technical { border:0; padding:.4rem 0; margin:.3rem 0; color:var(--muted); font-size:.82rem; }
.technical summary { font-size:.78rem; font-weight:400; }
.browse-group summary { overflow-wrap:anywhere; }
.site-footer { display:flex; justify-content:space-between; gap:1rem; max-width:1180px; margin:0 auto 2rem; padding:0 1rem; color:var(--muted); font-size:.8rem; }
.site-footer nav { display:flex; flex-wrap:wrap; gap:1rem; }
@media (max-width:900px) { .card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .brand-row { padding-left:1.3rem; padding-right:1.3rem; } .primary-nav { padding-left:1rem; } .page-shell { margin:1.3rem; padding:1.6rem; } }
@media (max-width:700px) { .brand-row { display:block; padding: .8rem 1rem .65rem; } .brand { display:block; margin-bottom:.65rem; } .search-box { width:100%; } .primary-nav { gap:.3rem; padding:0 .7rem .65rem; justify-content:flex-start; } .primary-nav a { font-size:.83rem; padding:.3rem .35rem; } .page-shell { margin:1rem .7rem; padding:1.3rem 1rem; } h1 { font-size:1.9rem; } .overview-heading h1 { font-size:2.25rem; } .card-grid,.compact-grid { grid-template-columns:1fr; } .overview-heading { padding:.2rem 0 1.1rem; } .section-heading { margin-top:1rem; } .search-panel { width:calc(100% - 1rem); padding:.9rem; } .search-panel-heading { align-items:flex-start; } .download-row { display:block; } .download-row .muted { display:block; margin-top:.3rem; } .record-meta dl,.technical dl { grid-template-columns:1fr; } .site-footer { flex-direction:column; } }

.task-counts { display:flex; flex-wrap:wrap; gap:.6rem 1rem; margin:1rem 0 1.5rem; font-size:.9rem; }
.task-counts span { color:var(--muted); }
h2[id^="tasks-"] { scroll-margin-top:14rem; }
