.infra{gap:20px;display:grid}.infra-intro{justify-content:space-between;align-items:center;gap:20px;padding:24px;display:flex}.infra-intro h2{margin:8px 0;font-size:24px}.infra-intro p,.infra-footnote{color:#728174;font-size:14px;line-height:1.6}.infra-intro button{flex-shrink:0;align-items:center;gap:8px;display:flex}.infra-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.infra-metrics>button{text-align:left;color:#35654a;background:#fff;border:1px solid #dfe7df;border-radius:16px;gap:14px;padding:20px;display:flex}.infra-metrics span{color:#6c7e71;font-size:12px}.infra-metrics b{color:#223d2c;margin-top:8px;font-size:28px;display:block}.infra-filters{flex-wrap:wrap;gap:12px;display:flex}.infra-filters input{flex:1;min-width:200px}.infra-filters select{max-width:100%}.infra-group{overflow:hidden}.infra-group>header{background:#f3f7ee;border-bottom:1px solid #dfe7df;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex}.infra-group>header h3{margin:0;font-size:16px}.infra-group>header span{color:#748570;font-size:12px}.infra-projects{background:#e3e9e1;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.infra-projects>article{background:#fff;min-width:0;padding:24px}.infra-card-title{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.infra-card-title h3{overflow-wrap:anywhere;margin:0 0 12px;font-size:16px}.infra-card-title .badge{white-space:normal;flex-shrink:0;font-size:11px}.infra-projects dl{flex-wrap:wrap;gap:16px;margin:20px 0;display:flex}.infra-projects dt{color:#798b78;font-size:11px}.infra-projects dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:14px;font-weight:600}.infra-note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.infra-missing{color:#9a7135;font-size:12px}.infra-card-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:18px;display:flex}.infra-card-actions a{color:#35654a;font-size:13px}.infra-footnote{margin:0;font-size:12px}@media (max-width:900px){.infra-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.infra-projects{grid-template-columns:1fr}.infra-intro{flex-direction:column;align-items:flex-start}}@media (max-width:500px){.infra-intro,.infra-projects>article{padding:18px}.infra-card-title{flex-direction:column;gap:2px}.infra-filters>*{width:100%}.infra-metrics>button{gap:8px;padding:14px}.infra-metrics b{font-size:23px}}
