/* AI Election News Tracker: styles scoped to .r4t-guide, in the site palette.
   Written for this site (not imported), so edit by hand. */
.r4t-guide{--ink:#231F21;
      --charcoal:#413b3e;
      --muted:#6B6569;
      --line:#E6E0E3;
      --wash:#F8F5F6;
      --magenta:#e800a5;
      --pink:#B8007F;
      /* map ramp: one hue, light to dark, for story counts */
      --m0:#EEEAEC; --m1:#F7D0EB; --m2:#EE97D2; --m3:#DC3DAA; --m4:#A3006F; --m5:#5E0041;}
.r4t-guide *,
.r4t-guide *::before,
.r4t-guide *::after{box-sizing:border-box;margin:0;padding:0}
.r4t-guide{font-family:Barlow,sans-serif;font-size:17px;color:var(--charcoal);background:#fff;line-height:1.6}
.r4t-guide .page{max-width:900px;margin:0 auto;padding:36px 20px 80px}
.r4t-guide hr{border:none;border-top:1px solid var(--line);margin:36px 0}
.r4t-guide .section-heading{display:flex;align-items:center;gap:12px;font-family:'Barlow Condensed',sans-serif;font-style:italic;font-weight:700;font-size:28px;letter-spacing:.01em;color:var(--ink);margin-bottom:16px}
.r4t-guide p{font-size:15.5px;line-height:1.75;margin-bottom:14px}
.r4t-guide a{color:var(--pink)}
.r4t-guide a:hover{color:var(--magenta)}
.r4t-guide ul,.r4t-guide ol{padding-left:1.3em;margin-bottom:14px}
.r4t-guide li{font-size:15.5px;line-height:1.7;margin-bottom:6px}
.r4t-guide h3{font-family:'IBM Plex Sans',sans-serif;font-weight:700;font-style:italic;font-size:17px;line-height:1.3;color:var(--ink);margin:26px 0 8px}
.r4t-guide .callout{border-left:3px solid var(--magenta);background:var(--wash);padding:14px 18px;border-radius:0 6px 6px 0;margin:18px 0}
.r4t-guide .callout strong{display:block;font-family:'Barlow Semi Condensed',sans-serif;font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin-bottom:6px}
.r4t-guide .callout p{font-size:14.5px;margin:0}
.r4t-guide .lbl{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* ---- headline numbers ---- */
.r4t-guide .trk-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0 8px}
.r4t-guide .trk-stat{border:1px solid var(--line);border-radius:6px;padding:14px 16px}
.r4t-guide .trk-stat b{display:block;font-family:'Barlow Condensed',sans-serif;font-style:italic;font-weight:700;font-size:38px;line-height:1;color:var(--ink);margin-top:6px}
.r4t-guide .trk-stat span.sub{display:block;font-size:13px;color:var(--muted);margin-top:4px}

/* ---- filters ---- */
.r4t-guide .trk-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:22px 0 10px}
.r4t-guide .trk-filters .lbl{margin-right:4px}
.r4t-guide .trk-chip{font-family:'Barlow Semi Condensed',sans-serif;font-weight:600;font-size:15px;border:1px solid var(--line);border-radius:999px;padding:5px 14px;background:#fff;color:var(--charcoal);cursor:pointer}
.r4t-guide .trk-chip:hover{border-color:var(--magenta)}
.r4t-guide .trk-chip[aria-pressed="true"]{background:var(--charcoal);border-color:var(--charcoal);color:#fff}

/* ---- map ---- */
.r4t-guide .trk-mapwrap{position:relative;margin:6px 0 4px}
.r4t-guide .trk-map{display:block;width:100%;height:auto}
.r4t-guide .trk-map path{stroke:#fff;stroke-width:1;stroke-linejoin:round;cursor:pointer}
.r4t-guide .trk-map path:hover,.r4t-guide .trk-map path.is-hover{stroke:var(--ink);stroke-width:1.6}
.r4t-guide .trk-map path.is-selected{stroke:var(--ink);stroke-width:2.4}
.r4t-guide .trk-map.has-selection path:not(.is-selected){fill-opacity:.45}
.r4t-guide .trk-map path:focus{outline:none;stroke:var(--ink);stroke-width:2.4}
.r4t-guide .trk-tip{position:absolute;pointer-events:none;background:var(--ink);color:#fff;font-size:13.5px;line-height:1.35;padding:7px 10px;border-radius:4px;white-space:nowrap;transform:translate(-50%,calc(-100% - 12px));opacity:0;transition:opacity .1s;z-index:5}
.r4t-guide .trk-tip b{font-weight:600}
.r4t-guide .trk-tip.is-on{opacity:1}
.r4t-guide .trk-under{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:6px}
.r4t-guide .trk-legend{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.r4t-guide .trk-legend ol{display:flex;list-style:none;padding:0;margin:0;gap:2px}
.r4t-guide .trk-legend li{font-size:12.5px;margin:0;text-align:center;color:var(--muted);min-width:42px}
.r4t-guide .trk-legend li i{display:block;height:12px;border-radius:2px;margin-bottom:3px}
.r4t-guide .trk-national{font-family:'Barlow Semi Condensed',sans-serif;font-weight:600;font-size:15px;border:1px solid var(--charcoal);border-radius:4px;padding:7px 14px;background:#fff;color:var(--ink);cursor:pointer}
.r4t-guide .trk-national:hover{border-color:var(--magenta);color:var(--pink)}
.r4t-guide .trk-national[aria-pressed="true"]{background:var(--charcoal);color:#fff}

/* ---- stories by year ---- */
.r4t-guide .trk-years{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;align-items:center;margin:14px 0 6px;max-width:560px}
.r4t-guide .trk-years .y{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--muted)}
.r4t-guide .trk-years .bar{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink)}
.r4t-guide .trk-years .bar i{display:block;height:14px;background:var(--m4);border-radius:0 4px 4px 0;min-width:2px}
.r4t-guide .trk-years .bar small{color:var(--muted);font-size:12.5px}

/* ---- story list ---- */
.r4t-guide .trk-listhead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin:30px 0 8px}
.r4t-guide .trk-listhead h3{margin:0}
.r4t-guide .trk-clear{font-size:14px;color:var(--pink);background:none;border:0;cursor:pointer;text-decoration:underline}
.r4t-guide .trk-search{width:100%;font:inherit;font-size:15px;border:1px solid var(--line);border-radius:4px;padding:9px 12px;margin-bottom:6px}
.r4t-guide .trk-search:focus{outline:2px solid var(--magenta);outline-offset:1px}
.r4t-guide .trk-list{list-style:none;padding:0;margin:0}
.r4t-guide .trk-list li{display:grid;grid-template-columns:92px 44px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);margin:0;font-size:15px;line-height:1.45}
.r4t-guide .trk-list .d{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--muted);padding-top:2px}
.r4t-guide .trk-list .s{font-family:'IBM Plex Mono',monospace;font-size:12.5px;font-weight:500;color:var(--ink);padding-top:2px}
.r4t-guide .trk-list a.t{color:var(--ink);text-decoration:none;font-weight:500}
.r4t-guide .trk-list a.t:hover{color:var(--pink);text-decoration:underline}
.r4t-guide .trk-list .m{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.r4t-guide .trk-list .m a{color:var(--muted)}
.r4t-guide .trk-more{margin-top:14px;font-family:'Barlow Semi Condensed',sans-serif;font-weight:600;font-size:15px;border:1px solid var(--charcoal);border-radius:4px;padding:8px 16px;background:#fff;cursor:pointer}
.r4t-guide .trk-empty{padding:14px 0;color:var(--muted);font-size:15px}

/* ---- submit form ---- */
.r4t-guide .trk-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;padding:20px;border:1px solid var(--line);border-radius:6px;background:var(--wash)}
.r4t-guide .trk-form label{display:flex;flex-direction:column;gap:5px;font-family:'Barlow Semi Condensed',sans-serif;font-weight:600;font-size:14.5px;color:var(--ink)}
.r4t-guide .trk-form label.wide{grid-column:1 / -1}
.r4t-guide .trk-form label small{font-weight:400;color:var(--muted)}
.r4t-guide .trk-form input,.r4t-guide .trk-form select,.r4t-guide .trk-form textarea{font:inherit;font-family:Barlow,sans-serif;font-weight:400;font-size:15px;border:1px solid #D6CFD3;border-radius:4px;padding:9px 11px;background:#fff;color:var(--ink)}
.r4t-guide .trk-form textarea{min-height:96px;resize:vertical}
.r4t-guide .trk-form input:focus,.r4t-guide .trk-form select:focus,.r4t-guide .trk-form textarea:focus{outline:2px solid var(--magenta);outline-offset:1px}
.r4t-guide .trk-form .row{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.r4t-guide .trk-submit{font-family:'Barlow Semi Condensed',sans-serif;font-weight:600;font-size:16px;background:var(--magenta);color:#fff;border:0;border-radius:3px;padding:12px 22px;cursor:pointer}
.r4t-guide .trk-submit:hover{background:#C4008B}
.r4t-guide .trk-form .msg{font-size:14px;color:var(--muted)}
.r4t-guide .trk-form .msg.err{color:#C03C22}

@media(max-width:640px){
  .r4t-guide .page{padding:28px 0 60px}
  .r4t-guide .trk-stats{grid-template-columns:1fr 1fr}
  .r4t-guide .trk-stat b{font-size:32px}
  .r4t-guide .trk-stat:last-child{grid-column:1 / -1}
  .r4t-guide .trk-list li{grid-template-columns:auto 1fr;gap:2px 10px}
  .r4t-guide .trk-list li > span:last-child{grid-column:1 / -1}
  .r4t-guide .trk-form{grid-template-columns:1fr;padding:16px}
}
@media print{
  .r4t-guide .trk-form,.r4t-guide .trk-filters,.r4t-guide .trk-search,.r4t-guide .trk-more{display:none}
}
