.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;margin:1.25rem 0}
.filter-grid label{display:block;font-weight:700;margin-bottom:.35rem}
.filter-grid input,.filter-grid select{width:100%;padding:.67rem .7rem;border:1px solid #9bb2b3;border-radius:.4rem;font:inherit;background:#fff;color:#132c39}
.preset-row{display:flex;gap:.5rem;flex-wrap:wrap}
.preset-row button,.filter-actions button,.pager button{font:inherit;font-weight:700;color:#174943;background:#e2f1ed;border:1px solid #8fbcb3;border-radius:.4rem;padding:.55rem .85rem;cursor:pointer}
.preset-row button:hover,.filter-actions button:hover,.pager button:hover{background:#c7e5dd}
button:focus-visible{outline:3px solid #db8d14;outline-offset:3px}
button:disabled{opacity:.55;cursor:not-allowed}
.filter-actions,.pager{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.pager{justify-content:center;margin:1rem 0}
.screener-table{min-width:740px}
.state-comparison{display:grid;gap:.4rem;max-height:750px;overflow:auto}
.state-row{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(70px,2fr) auto;gap:.5rem .8rem;align-items:center;padding:.65rem .75rem;border:1px solid #d7e5e2;border-radius:.4rem;text-decoration:none;background:#f8fbfa;color:#173c43}
.state-row:hover,.state-row:focus-visible{background:#eaf4f0}
.state-row small{grid-column:1/-1;color:#435c64}
.state-bar{height:.75rem;background:#e0e9e7;border-radius:1rem;overflow:hidden}
.state-bar span{display:block;height:100%;background:#167c7a}
.band-stack{grid-column:1/-1;display:flex;height:.32rem;border-radius:1rem;overflow:hidden;background:#e0e9e7}
.band-stack .stable{background:#64a884}.band-stack .watch{background:#9fb974}.band-stack .fragile{background:#d2a24b}.band-stack .high_stress{background:#ba6961}
@media(max-width:780px){.state-row{grid-template-columns:minmax(110px,1fr) 1fr auto}.state-row small{font-size:.75rem}.filter-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.filter-grid{grid-template-columns:1fr}.state-row{grid-template-columns:1fr auto}.state-bar{grid-column:1/-1;grid-row:2}.band-stack{grid-row:3}.state-row small{grid-row:4}.screener-table{min-width:620px}}
