/* /today page (Pages helper A) */
.page-head .meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14.5px;color:#b8c7d8;margin-top:12px}
.page-head .meta .live{color:#d6e0ea}
.page-head .meta .warn{color:#fcd9a5}

main section{padding-top:36px}
.sh h2{display:flex;align-items:center;gap:10px}
.sh h2 svg{color:var(--navy-2)}

/* brief */
.brief{padding:22px 24px;border-left:5px solid var(--navy)}
.brief h2{font-size:22px;line-height:1.3;margin:0 0 10px}
.brief ul{margin:0;padding:0 0 0 20px;display:grid;gap:6px}
.brief li{font-size:16px}
.brief .by{margin-top:12px}

/* counts */
.counts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}
.count{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;text-decoration:none;color:var(--ink)}
.count:hover{border-color:var(--navy-2)}
.count b{display:block;font-size:30px;line-height:1.1;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}
.count span{display:block;font-size:14.5px;color:var(--muted);margin-top:4px}
.count.need b{color:var(--red)}
.count.offer b{color:var(--green)}

/* official updates */
.updates{display:grid;gap:12px}
.upd{padding:16px 18px;display:grid;gap:6px}
.upd .who{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:13.5px;font-weight:600;color:var(--navy-2)}
.upd .who svg{width:17px;height:17px}
.upd .who time{color:var(--muted);font-weight:500}
.upd h3{margin:0;font-size:17.5px;line-height:1.35}
.upd p{margin:0;font-size:15.5px;color:var(--muted)}
.upd a.orig{font-size:14.5px;font-weight:600;display:inline-flex;align-items:center;gap:5px;text-decoration:none}
.upd a.orig svg{width:15px;height:15px}

/* zone board */
.board{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.zcard{display:flex;flex-direction:column;gap:8px;padding:16px 18px;text-decoration:none;color:var(--ink);border-top:5px solid #9aa4b1}
.zcard:hover{border-color:var(--navy-2)}
.zcard.urgent{border-top-color:var(--red)}
.zcard.active{border-top-color:var(--amber)}
.zcard.steady{border-top-color:var(--green)}
.zcard .row{display:flex;justify-content:space-between;align-items:center;gap:8px}
.zcard .zn{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.zcard h3{margin:0;font-size:18px;line-height:1.3}
.zcard p{margin:0;font-size:15px}
.zcard .foot{margin-top:auto;padding-top:8px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:8px;font-size:14px;color:var(--muted)}
.zcard .foot b{color:var(--navy-2)}

/* roads + neighbors list */
.rows{overflow:hidden}
.rowi{display:flex;gap:12px;padding:14px 18px;border-top:1px solid var(--line)}
.rowi:first-child{border-top:0}
.rowi .ic{width:34px;height:34px;border-radius:8px;background:var(--tint);color:var(--navy);display:grid;place-items:center;flex:none}
.rowi .ic svg{width:18px;height:18px}
.rowi .ic.need{background:var(--red-bg);color:var(--red)}
.rowi .ic.offer,.rowi .ic.housing{background:var(--green-bg);color:var(--green)}
.rowi .bd{min-width:0;flex:1}
.rowi h3{margin:0 0 3px;font-size:16px;line-height:1.35;overflow-wrap:anywhere}
.rowi h3 a{color:var(--ink);text-decoration:none}
.rowi h3 a:hover{text-decoration:underline}
.rowi .ln{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:13.5px;color:var(--muted)}
.rowi p{margin:4px 0 0;font-size:15px;color:var(--muted);overflow-wrap:anywhere}

/* timeline */
.tl{padding:6px 18px 10px}
.tl .hr{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:14px 0 6px;border-bottom:1px solid var(--line)}
.tl ol{list-style:none;margin:0;padding:0}
.tl li{display:grid;grid-template-columns:64px 26px 1fr;gap:8px;align-items:start;padding:9px 0;font-size:15px;border-bottom:1px dashed var(--line)}
.tl li:last-child{border-bottom:0}
.tl time{font-size:13.5px;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:1px}
.tl .t svg{width:18px;height:18px;margin-top:2px}
.tl .t.official{color:var(--navy-2)}
.tl .t.zone{color:var(--amber)}
.tl .t.post{color:var(--green)}
.tl a{color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
.tl a:hover{text-decoration:underline}
.tl .more{display:block;width:100%;margin-top:6px;font:inherit;font-size:14.5px;font-weight:600;color:var(--navy-2);background:none;border:0;padding:10px 0;cursor:pointer;text-align:left}

/* freshness */
.fresh{padding:16px 18px}
.fresh .list{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 8px}
.fresh .s{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;border:1px solid var(--line);border-radius:999px;padding:4px 10px;background:#fbfbfa}
.fresh .s:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--green);flex:none}
.fresh .s.warn{background:var(--amber-bg);border-color:#f1d3a6;color:var(--amber)}
.fresh .s.warn:before{background:var(--amber)}
.fresh .s.err{background:var(--red-bg);border-color:#f3c5bf;color:var(--red)}
.fresh .s.err:before{background:var(--red)}
.fresh .s b{font-weight:600}
.fresh p{margin:0;font-size:14.5px}

.sk-card{height:92px}
.official-first{display:flex;gap:12px;align-items:flex-start;padding:14px 18px;margin-top:16px;background:var(--tint);border-radius:var(--radius);font-size:15px}
.official-first svg{color:var(--navy);margin-top:2px}
.official-first p{margin:0}

@media (max-width:860px){
  .board{grid-template-columns:1fr}
  .counts{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  main section{padding-top:28px}
  .brief{padding:18px}
  .brief h2{font-size:19px}
  .count{padding:12px 14px}
  .count b{font-size:26px}
  .tl li{grid-template-columns:58px 22px 1fr;gap:6px}
}

@media (max-width:560px){.sh{flex-wrap:wrap;row-gap:4px}.sh h2{flex-shrink:0;max-width:100%}}
a[href^="tel:"]{white-space:nowrap}
.undated{color:var(--muted);font-style:italic}

/* Wide screens: two columns so a big screen isn't one long strip */
@media (min-width:1100px){
  main.today-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);column-gap:32px;align-items:start;max-width:1280px}
  main.today-grid > section{grid-column:1 / -1}
  main.today-grid > section[aria-labelledby="major-h"], main.today-grid > section[aria-labelledby="posts-h"]{grid-column:1}
  main.today-grid > section[aria-labelledby="roads-h"], main.today-grid > section[aria-labelledby="tl-h"]{grid-column:2}
  .brief h2{font-size:21px;max-width:70ch}
  .brief ul{grid-template-columns:1fr 1fr;column-gap:28px}
}
.more-list{margin-top:10px}
.more-list > summary{cursor:pointer;font-weight:700;color:var(--navy);font-size:15px;padding:10px 0;list-style:none}
.more-list > summary::-webkit-details-marker{display:none}
.more-list > summary::after{content:" +"}
.more-list[open] > summary::after{content:" \2212"}
.more-list > div{display:grid;gap:12px}
