:root{--ink:#16202b;--ink-soft:#334353;--green:#1e7a66;--green-dark:#125747;--mint:#dcebe5;--cream:#f6f3ec;--paper:#fffdf9;--line:#d8d4ca;--gold:#c89a4b;--danger:#a33c36;--shadow:0 24px 60px #16202b17}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);margin:0;font-family:"Source Sans 3",Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3{letter-spacing:-.025em;font-family:Libre Baskerville,Georgia,serif}.shell{width:min(1180px,100% - 2rem);margin-inline:auto}.site-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f6f3eceb;border-bottom:1px solid #d8d4cabf;position:sticky;top:0}.nav{align-items:center;gap:1.5rem;min-height:74px;display:flex}.brand{margin-right:auto;font-family:Georgia,serif;font-size:1.05rem;font-weight:700}.brand span{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:2rem;height:2rem;margin-right:.55rem;display:inline-grid}.nav-links{color:var(--ink-soft);align-items:center;gap:1.25rem;font-size:.92rem;display:flex}.button{color:#fff;background:var(--green);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.45rem;min-height:44px;padding:.7rem 1rem;font-weight:700;display:inline-flex}.button:hover{background:var(--green-dark)}.button.secondary{color:var(--ink);border-color:var(--line);background:0 0}.button.secondary:hover{background:#fff}.button.small{min-height:38px;padding:.5rem .85rem;font-size:.86rem}.button:disabled{cursor:not-allowed;opacity:.55}.hero{grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(2rem,6vw,6rem);min-height:680px;padding-block:6rem;display:grid}.eyebrow{color:var(--green-dark);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:.7rem;font-size:.78rem;font-weight:800;display:flex}.eyebrow:before{content:"";background:var(--gold);width:2.4rem;height:2px}.hero h1,.page-hero h1{max-width:800px;margin:1.2rem 0;font-size:clamp(3rem,7vw,6rem);line-height:.98}.hero p,.page-hero p{max-width:630px;color:var(--ink-soft);font-size:1.18rem;line-height:1.75}.actions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.hero-card{color:#fff;background:var(--ink);min-height:460px;box-shadow:var(--shadow);border-radius:2rem;padding:2.3rem;position:relative;overflow:hidden}.hero-card:after{content:"";border:5rem solid #1e7a6661;border-radius:50%;width:22rem;height:22rem;position:absolute;bottom:-25%;right:-20%}.hero-card .stat{z-index:1;margin-top:9rem;position:relative}.hero-card strong{margin-bottom:.4rem;font-family:Georgia,serif;font-size:3rem;display:block}.hero-card p{color:#d8e2e5}.section{padding-block:5.5rem}.section.white{background:var(--paper)}.section-head{max-width:720px;margin-bottom:2.4rem}.section-head h2{margin:.8rem 0;font-size:clamp(2rem,4vw,3.4rem)}.section-head p{color:var(--ink-soft);line-height:1.7}.grid-3{grid-template-columns:repeat(3,1fr);gap:1.2rem;display:grid}.card{border:1px solid var(--line);background:var(--paper);border-radius:1.25rem;padding:1.5rem;box-shadow:0 8px 30px #16202b0a}.card h3{margin:.3rem 0 .7rem;font-size:1.25rem}.card p{color:var(--ink-soft);margin:0;line-height:1.65}.icon{width:2.8rem;height:2.8rem;color:var(--green-dark);background:var(--mint);border-radius:.9rem;place-items:center;margin-bottom:1rem;font-weight:900;display:grid}.page-hero{padding-block:6rem 4rem}.page-hero h1{font-size:clamp(2.7rem,6vw,5rem)}.form-wrap{border:1px solid var(--line);background:var(--paper);width:min(720px,100%);box-shadow:var(--shadow);border-radius:1.5rem;margin:0 auto;padding:2rem}.field-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.field{gap:.45rem;margin-bottom:1rem;display:grid}.field.full{grid-column:1/-1}.field label{font-size:.9rem;font-weight:700}.field input,.field select,.field textarea{width:100%;min-height:46px;color:var(--ink);background:#fff;border:1px solid #bfc5c4;border-radius:.65rem;padding:.75rem .85rem}.field textarea{resize:vertical;min-height:130px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);outline:3px solid #1e7a662e}.checkbox{color:var(--ink-soft);align-items:flex-start;gap:.7rem;margin:1rem 0;display:flex}.checkbox input{margin-top:.25rem}.notice{border-left:4px solid var(--green);background:var(--mint);padding:.9rem 1rem;line-height:1.55}.error{color:var(--danger);background:#f9e5e2;border-radius:.6rem;padding:.8rem}.muted{color:var(--ink-soft)}.app-shell{background:#eef0ed;grid-template-columns:250px 1fr;min-height:100vh;display:grid}.sidebar{color:#eaf0f1;background:var(--ink);padding:1.4rem}.sidebar .brand{color:#fff;margin-bottom:2rem;display:block}.sidebar nav{gap:.35rem;display:grid}.sidebar nav a{color:#bbc7ca;border-radius:.55rem;padding:.7rem .8rem}.sidebar nav a:hover{color:#fff;background:#ffffff14}.app-main{min-width:0}.app-topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;min-height:72px;padding:1rem 2rem;display:flex}.app-content{padding:2rem}.app-title{margin:0 0 .4rem;font-size:2rem}.metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-block:1.5rem;display:grid}.metric{border:1px solid var(--line);background:#fff;border-radius:1rem;padding:1.25rem}.metric:hover{border-color:var(--green);box-shadow:0 8px 24px #16202b12}.metric span{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;font-size:.8rem}.metric strong{margin-top:.5rem;font-family:Georgia,serif;font-size:1.8rem;display:block}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:1rem;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;white-space:nowrap;border-bottom:1px solid #e8e6df;padding:.9rem 1rem}th{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.07em;background:#faf9f5;font-size:.78rem}.badge{color:var(--green-dark);background:var(--mint);text-transform:capitalize;border-radius:999px;padding:.25rem .55rem;font-size:.78rem;font-weight:700;display:inline-flex}.badge.warning{color:#714b13;background:#f4e8c9}.empty{text-align:center;color:var(--ink-soft);padding:3rem}.import-banner{background:#f4faf7;border:1px solid #b9d4cb;border-radius:.85rem;flex-wrap:wrap;align-items:center;gap:1rem 2rem;margin:1.25rem 0;padding:1rem 1.2rem;display:flex}.import-banner div{gap:.2rem;display:grid}.import-banner strong{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem}.import-banner a{color:var(--green-dark);margin-left:auto;font-weight:700;text-decoration:underline}.resource-filters{border:1px solid var(--line);background:#fff;border-radius:.85rem;flex-wrap:wrap;align-items:end;gap:.8rem;margin:1rem 0;padding:1rem;display:flex}.resource-filters label{flex:220px;gap:.35rem;display:grid}.resource-filters label span{color:var(--ink-soft);font-size:.8rem;font-weight:700}.resource-filters input,.resource-filters select{background:#fff;border:1px solid #bfc5c4;border-radius:.55rem;min-height:42px;padding:.6rem .75rem}.resource-count{color:var(--ink-soft);margin:.8rem 0;font-size:.9rem}.resource-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.resource-toolbar .resource-count{margin:0}.export-unavailable{font-size:.85rem;font-style:italic}.sort-link{color:inherit;white-space:nowrap;align-items:center;display:inline-flex}.sort-link:hover{color:var(--green-dark);text-decoration:underline}th[aria-sort]:not([aria-sort=none]){color:var(--green-dark);background:#eef6f2}.app-content h2{margin:2rem 0 .6rem;font-size:1.3rem}.app-content h2:first-of-type{margin-top:1.5rem}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;margin:1rem 0;display:grid}.detail-grid div{border:1px solid var(--line);background:#fff;border-radius:.75rem;padding:.85rem 1rem}.detail-grid dt{color:var(--ink-soft);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:700}.detail-grid dd{overflow-wrap:anywhere;margin:.3rem 0 0;font-size:1.02rem}.record-details{min-width:170px;position:relative}.record-details summary{color:var(--green-dark);cursor:pointer;font-weight:700}.record-details dl{border:1px solid var(--line);white-space:normal;background:#faf9f5;border-radius:.75rem;grid-template-columns:repeat(2,minmax(180px,1fr));gap:.8rem 1.2rem;min-width:min(720px,75vw);margin:.8rem 0 0;padding:1rem;display:grid}.record-details dl div{min-width:0}.record-details dt{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;font-weight:700}.record-details dd{overflow-wrap:anywhere;margin:.25rem 0 0}.pagination{justify-content:center;align-items:center;gap:1rem;margin-top:1rem;display:flex}.pagination .disabled{pointer-events:none;opacity:.45}.coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.25rem 0;display:grid}.coverage-card{border:1px solid var(--line);background:#fff;border-radius:1rem;padding:1.25rem}.coverage-card-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.coverage-card h2{margin:0;font-size:1.25rem}.coverage-card dl{grid-template-columns:repeat(2,1fr);gap:.7rem;display:grid}.coverage-card dl div{background:#f7f6f2;border-radius:.55rem;padding:.7rem}.coverage-card dt{color:var(--ink-soft);text-transform:uppercase;font-size:.75rem}.coverage-card dd{margin:.2rem 0 0;font-size:1.25rem;font-weight:800}.coverage-gap{border-left:4px solid var(--gold);background:#fbf6e9;margin:.8rem 0 1rem;padding:.8rem}.coverage-gap p{color:var(--ink-soft);margin:.35rem 0 0;line-height:1.5}.coverage-note{margin-top:1rem}.site-footer{color:#c7d0d2;background:var(--ink);padding-block:3rem}.footer-grid{justify-content:space-between;align-items:center;gap:2rem;display:flex}@media (max-width:900px){.nav-links{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding-block:4rem}.hero-card{min-height:340px}.grid-3,.metrics{grid-template-columns:repeat(2,1fr)}.app-shell{grid-template-columns:1fr}.sidebar{position:static}.sidebar nav{grid-template-columns:repeat(3,1fr)}.coverage-grid{grid-template-columns:1fr}}@media (max-width:600px){.grid-3,.metrics,.field-grid{grid-template-columns:1fr}.nav .button.secondary{display:none}.sidebar nav{grid-template-columns:repeat(2,1fr)}.app-content,.app-topbar{padding:1rem}.footer-grid{flex-direction:column;align-items:flex-start}.record-details dl{grid-template-columns:1fr;min-width:70vw}}
