  :root { color-scheme: light; }
  * { box-sizing: border-box; }
  body { margin:0; padding:20px; background:#f7f7f5; color:#1a1a18; line-height:1.5;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; }
  .wrap { max-width:760px; margin:0 auto; }
  h1 { font-size:24px; margin:0 0 4px; letter-spacing:-.01em; }
  .sub { color:#6b6b66; font-size:13px; margin-bottom:16px; }
  .disclaim { font-size:12px; color:#8a5b52; background:#fdf6f4; border:1px solid #f0dcd6; border-radius:8px; padding:8px 12px; margin:10px 0 18px; }
  .disclaim b { color:#7a2a1e; }
  .state-card { display:block; text-decoration:none; color:inherit; background:#fff; border:1px solid #e5e5e0; border-radius:10px; padding:18px; margin-bottom:12px; }
  .state-card:hover { border-color:#c9c9c2; }
  .state-card h2 { font-size:19px; margin:0 0 4px; color:#2c5f8a; }
  .state-card p { margin:0; font-size:13px; color:#6b6b66; }
  .state-card .go { font-size:12px; color:#2c5f8a; margin-top:8px; display:inline-block; }
  .state-count { float:right; color:#8a8a83; font-size:12px; }
  nav { font-size:13px; margin-bottom:14px; }
  .directory-wrap { max-width:1100px; }
  .filters { display:flex; flex-wrap:wrap; gap:10px; padding:14px; background:#fff; border:1px solid #e5e5e0; border-radius:10px; }
  .filters label { display:flex; flex-direction:column; gap:3px; color:#6b6b66; font-size:11px; text-transform:uppercase; letter-spacing:.04em; }
  .filters input, .filters select { min-height:36px; border:1px solid #d7d7d0; border-radius:6px; background:#fff; color:#1a1a18; padding:6px 9px; font:inherit; font-size:13px; text-transform:none; letter-spacing:normal; }
  .search-field { flex:1 1 240px; }
  .results-count { color:#6b6b66; font-size:12px; }
  .region-section { background:#fff; border:1px solid #e5e5e0; border-radius:10px; margin-bottom:10px; overflow:hidden; }
  .region-section summary { display:flex; justify-content:space-between; cursor:pointer; padding:14px 16px; color:#2c5f8a; font-weight:650; }
  .region-count { color:#8a8a83; font-size:12px; font-weight:400; }
  .canyon-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:1px; background:#ededE8; border-top:1px solid #ededE8; }
  .canyon-card { display:block; min-height:112px; padding:13px 14px; background:#fff; color:inherit; text-decoration:none; }
  .canyon-card:hover { background:#fafaf8; }
  .canyon-card h3 { margin:0 0 5px; color:#2c5f8a; font-size:14px; }
  .canyon-card p { margin:0 0 9px; color:#6b6b66; font-size:11.5px; }
  .flow-chip { display:inline-block; border-radius:12px; padding:2px 7px; background:#f2f2ef; color:#777; font-size:10.5px; }
  .status-high { background:#fdeeec; color:#b03a28; }
  .status-above { background:#fdf4e3; color:#9a640e; }
  .status-normal { background:#eef6ee; color:#4a7a4f; }
  .status-below { background:#eef3f8; color:#5a7a94; }
  .status-low, .status-unknown { background:#f2f2ef; color:#777; }
  footer { font-size:12px; color:#8a8a83; margin:14px 2px 30px; line-height:1.5; }
  a { color:#2c5f8a; }
