/* FBLTWX · About (/about/, Round V, Oct. 24, 2026; the modules are server/app/aboutpage.py's fragments). Green by M1's
   color rules, with /climate/ and the archive (ink on it: np.css body[data-page="about"]); the site's section bars, M4's
   stamps and M6's glossary. Every color is a token. */
/* ---------- from np.css (V-fu1.2, Oct. 25, 2026): the rules only this page uses ---------- */
.np-about p a{text-decoration:underline}   /* links in running text look like links (Round H6, Lighthouse link-in-text-block) */
.np-about{padding-bottom:24px;max-width:980px}
.np-about h1{margin:0 0 10px;font-size:34px;font-weight:900;line-height:1.15}
.ab-official{margin:0 0 16px;padding:10px 14px;border:2px solid var(--ink);border-left-width:8px;font-size:16px;line-height:1.45}
.ab-official p{margin:0}
/* About 15: 911 and the official pages */
.ab-emerg{margin:0 0 18px;padding:10px 14px 12px;background:var(--cream);border-left:8px solid var(--red-text)}
.ab-emerg-h{margin:0 0 4px;font-size:19px;font-weight:900}
.ab-emerg p{margin:0}
.ab-owner{color:var(--ink2)}
.ab-lead{max-width:46em;margin:0 0 8px;font-size:19px;font-weight:700;line-height:1.4}
.ab-reviewed{margin:0}
.ab-tools{margin:10px 0 0}
.ab-isnt{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 32px;margin-top:6px}
.ab-h3{margin:18px 0 4px;font-size:17px;font-weight:900}
.ab-list{margin:4px 0 0;padding-left:20px;line-height:1.45}
.ab-list li+li{margin-top:4px}
.ab-sec>p,.ab-sec>ul{max-width:46em;line-height:1.5}
/* About 9: a card per page */
.ab-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.ab-card{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--rule);border-top:4px solid var(--page);color:var(--ink);font-size:14px;line-height:1.4;text-decoration:none}
.ab-card b{font-size:16px;font-weight:900;color:var(--blue);text-decoration:underline}
.ab-card:hover{border-color:var(--ink)}
/* About 3: the sources table; on a phone each row stacks, each value led by its column's name */
.ab-stable{width:100%;border-collapse:collapse;font-size:14px;line-height:1.4}
.ab-stable th,.ab-stable td{padding:6px 8px 6px 0;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}
.ab-stable thead th{border-bottom:2px solid var(--ink);font-weight:900}
.ab-stable tbody th{font-weight:800}
.ab-stable .ab-grp th{padding-top:14px;font-size:13px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;border-bottom:2px solid var(--ink)}
.ab-credits{margin-top:4px}
/* About 10, 17: the map, on the radar's county base map (np.css .rp-cbase colors it) */
.ab-map{margin:0}
.ab-map-svg{display:block;width:100%;max-width:560px;height:auto;border:1px solid var(--rule)}
.ab-map-svg .rm-ring{display:none}
.ab-map-svg .ab-ring{fill:none;stroke:var(--ink);stroke-width:1;stroke-dasharray:4 3}
.ab-map-svg .ab-fbl{fill:var(--red);stroke:var(--paper);stroke-width:1}
.ab-map-svg .ab-dot,.ab-map-svg .ab-arrow{fill:var(--ink)}
.ab-map-svg .ab-leader{stroke:var(--ink);stroke-width:.8}
.ab-map-svg .il-badge-n{font-size:8px}
.ab-map-svg .ab-maptown{fill:var(--ink);font-size:7.5px;font-weight:800;text-anchor:end}
.ab-maplist{margin:8px 0 4px}
.ab-offlead{margin:8px 0 0}   /* About 10 (Travis, Oct. 25): the gauge and the sky cam, named with no dot */
.ab-offmap{margin:2px 0 4px}
.ab-src{color:var(--ink2)}
.ab-nw{white-space:nowrap}   /* an ID that mustn't break at its hyphens (MN-RC-45) */
/* About 5: each feed's stamp */
.ab-ftable{border-collapse:collapse;font-size:15px}
.ab-ftable th,.ab-ftable td{padding:5px 14px 5px 0;border-bottom:1px solid var(--rule);text-align:left;vertical-align:baseline}
.ab-ftable thead th{border-bottom:2px solid var(--ink);font-weight:900}
.ab-ftable tbody th{font-weight:700}
.ab-ftable .np-stamp{margin:0}
/* About 4: the scoring's three steps, in the illustration kit's manner (its badges, np.css .il-badge) */
.ab-il{margin:0}
.ab-il-svg{display:block;width:100%;max-width:560px;height:auto}
.ab-il-card{fill:var(--paper);stroke:var(--ink);stroke-width:2}
.ab-il-t{fill:var(--ink2);font-size:14px;font-weight:700;text-anchor:middle}   /* 12.5 px on screen at 390, where the drawing is 358 px wide */
.ab-il-svg .il-badge-n{font-size:14px}
.ab-il-big{fill:var(--ink);font-size:24px;font-weight:900;text-anchor:middle}
.ab-il-arrow{stroke:var(--ink);stroke-width:3}
.ab-il-steps{margin:10px 0 6px}
/* About 16: the Models page's report card sentences (api/ssr/models-card-top.html, the same fragment models.html shows):
   its 30-day verdicts and its stamp; the section hides when the card has nothing (card_top's empty div). The verdicts'
   hidden attribute is for models.js's views; np.css's [hidden] is !important, so the more specific rule here shows them. */
.ab-cardsec .rc-verdict[data-show-win="30"]{display:block!important}
.ab-cardsec .rc-lean,.ab-cardsec .rc-habit,.ab-cardsec .rc-rank{display:none}
.ab-cardsec:has(.rc-top:empty){display:none}
.ab-cardsec .rc-verdict{max-width:46em;margin:6px 0;font-size:16px;line-height:1.45}
.ab-cardnote{margin:0 0 4px}
/* About 7: questions */
.ab-faq{max-width:46em;margin:0}
.ab-faq div+div{margin-top:12px}
.ab-faq dt{font-weight:900}
.ab-faq dd{margin:2px 0 0;line-height:1.5}
/* About 8, 24: What's New and the colophon */
.ab-news{max-width:46em;margin:0;padding:0;list-style:none;line-height:1.45}
.ab-news li+li{margin-top:8px}
.ab-news b{margin-right:4px}
.ab-version{margin:6px 0 0;font-size:14px;color:var(--ink2)}
.ab-version code{font-size:14px}
.ab-btn{display:inline-flex;align-items:center;text-decoration:none}
/* About 6 (Travis, Oct. 25): Contact's "Email FBLTWX" button (credit.js gives it its mailto: link), never underlined */
.ab-mail{margin:6px 0 12px}
.ab-mail .ab-btn{text-decoration:none}
/* a module awaiting Travis's words, on the sandbox only (ABOUT_DRAFTS=1): marked so no one takes it for his words */
.ab-draft{outline:3px dashed var(--red-text);outline-offset:6px}
.ab-draftnote{margin:0 0 6px;font-weight:900;color:var(--red-text)}
@media (max-width:600px){
  .np-about h1{font-size:30px}
  .ab-isnt{grid-template-columns:minmax(0,1fr)}
  .ab-lead{font-size:18px}
  .ab-stable thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .ab-stable,.ab-stable tbody,.ab-stable tr,.ab-stable th,.ab-stable td{display:block;width:auto}
  .ab-stable tr{padding:8px 0;border-bottom:1px solid var(--rule)}
  .ab-stable th,.ab-stable td{padding:1px 0;border:0}
  .ab-stable td::before{content:attr(data-k) ": ";font-weight:800;color:var(--ink2)}
  .ab-stable .ab-grp{padding:14px 0 0;border-bottom:2px solid var(--ink)}
  .ab-stable .ab-grp th{padding:0 0 4px;border:0}
}
