/* Muskoka Pulse: Roads and outages (PREVIEW ONLY, 2026-11-03). Loaded only on /roads/. */
.rd .wrap{display:block}
.rd-cards{list-style:none;margin:0 0 var(--s3);padding:0;display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}
@media (max-width:22rem){.rd-cards{grid-template-columns:1fr}}
.rd-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:var(--s4) var(--s3);min-height:9.75rem;display:flex;flex-direction:column;border-top:3px solid var(--teal2)}
.rd-card[data-state=live]{border-top-color:var(--teal)}
.rd-card[data-state=stale]{border-top-color:var(--sun2)}
.rd-card[data-state=down]{border-top-color:var(--muted)}
.rd-card[data-state=link]{border-top-color:var(--line-strong)}
.rd-card p{margin:0}
.rd-k{font:600 .8rem/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.rd-n{margin:.35rem 0 .2rem!important;font:500 1.6rem/1.1 var(--serif);color:var(--ivory)}
.rd-unit{font:500 .95rem/1 var(--sans);color:var(--fg)}
.rd-up{font:400 .9rem/1.35 var(--sans);color:var(--fg);flex:1}
.rd-up b{color:var(--sun1);font-weight:600}
.rd-live{display:inline-block;font:700 .7rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#0A1A2F;background:var(--teal);border-radius:999px;padding:.2rem .45rem;margin-right:.25rem;vertical-align:.1em}
.rd-link{font:600 .9rem/1.3 var(--sans);margin-top:.5rem!important}
.rd-link a{color:var(--link)}
.rd-checked{font:400 .9rem/1.4 var(--sans);color:var(--muted);min-height:2.8em;margin:0 0 var(--s5)}
.rd-note{font:400 1rem/1.4 var(--sans);background:var(--n1);border-left:3px solid var(--sun1);padding:var(--s3) var(--s4);border-radius:var(--r-sm)}
.rd-grid{display:grid;gap:var(--s6);grid-template-columns:1fr}
@media (min-width:64rem){.rd-grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start}.rd-map{position:sticky;top:calc(var(--head-h) + 1rem)}}
.rd-map{margin:0}
.rd-stage{position:relative;aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;background:#09111d;border:1px solid var(--line)}
@media (min-width:40rem) and (max-width:63.99rem){.rd-stage{aspect-ratio:4/3}}
.rd-stage canvas{position:absolute;inset:0;width:100%;height:100%}
.rd-map-msg{position:absolute;inset:auto 0 0 0;margin:0;padding:var(--s3);font:400 .9rem/1.3 var(--sans);color:var(--muted);text-align:center}
.rd-legend{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;margin:var(--s3) 0 .25rem;padding:0;font:500 .9rem/1.3 var(--sans);color:var(--fg)}
.rd-legend li{display:flex;align-items:center;gap:.4rem}
.k-inc,.k-rw,.k-pow,.k-wx{display:inline-block;width:14px;height:14px;flex:none;margin-top:.3rem}
.k-inc{background:var(--sun2);clip-path:polygon(50% 0,100% 100%,0 100%)}
.rd-legend .k-inc,.rd-legend .k-rw,.rd-legend .k-pow{margin-top:0}
.k-rw{background:var(--sun1);transform:rotate(45deg) scale(.82)}
.k-pow{background:var(--teal);border-radius:50%}
.k-wx{border:2px solid var(--ivory);border-radius:3px}
.rd-credit{font:400 .8rem/1.4 var(--sans);color:var(--muted);margin:0}
.rd-credit a{color:var(--muted)}
.rd-lists{min-height:24rem}
.rd-sec+.rd-sec{margin-top:var(--s6);padding-top:var(--s5);border-top:1px solid var(--line)}
.rd-sec h2{font-size:clamp(1.6rem,1.3rem + 1vw,2rem);margin-bottom:var(--s3)}
.rd-sec h3{font:600 1.15rem/1.3 var(--serif);color:var(--ivory);margin:var(--s5) 0 var(--s2)}
.rd-c{font:400 .85rem/1 var(--sans);color:var(--muted);margin-left:.25rem;white-space:nowrap}
.rd-src,.rd-hint,.rd-wait{font:400 .9rem/1.4 var(--sans);color:var(--muted)}
.rd-src a,.rd-msg a{color:var(--link)}
.rd-msg{font:400 .95rem/1.45 var(--sans);padding:var(--s3) var(--s4);border-radius:var(--r-sm);background:var(--n1);border-left:3px solid var(--muted)}
.rd-stale{border-left-color:var(--sun2)}
.rd-stale b{color:var(--sun1)}
.rd-ul{list-style:none;margin:0;padding:0}
.rd-it{display:flex;gap:.75rem;padding:var(--s3) 0;border-top:1px solid var(--line)}
.rd-it:last-child{border-bottom:1px solid var(--line)}
.rd-it p{margin:0}
.rd-t{font:400 1.05rem/1.35 var(--serif);color:var(--ivory)}
.rd-tag{display:inline-block;font:600 .72rem/1 var(--sans);letter-spacing:.05em;text-transform:uppercase;color:var(--fg);border:1px solid var(--line-strong);border-radius:999px;padding:.2rem .45rem;margin-left:.2rem;vertical-align:.12em}
.rd-d{font:400 1rem/1.45 var(--serif);color:var(--fg);margin-top:.15rem!important}
.rd-m{font:400 .85rem/1.4 var(--sans);color:var(--muted);margin-top:.2rem!important}
.rd-it details{margin-top:.3rem;font:400 .9rem/1.4 var(--sans)}
.rd-it summary{cursor:pointer;color:var(--link);min-height:24px}
.rd-tab{width:100%;border-collapse:collapse;font:400 .95rem/1.35 var(--sans);margin:var(--s2) 0 var(--s3)}
.rd-tab caption{text-align:left;color:var(--muted);font-size:.85rem;padding-bottom:.35rem}
.rd-tab th,.rd-tab td{text-align:left;padding:.45rem .5rem .45rem 0;border-top:1px solid var(--line)}
.rd-tab thead th{font-weight:600;color:var(--muted);font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;border-top:0}
.rd-tab tbody th{font-weight:600;color:var(--ivory)}
.rd-winter{margin-top:var(--s7);padding:var(--s5);border-radius:var(--r-lg);background:var(--n1);border:1px solid var(--line)}
.rd-winter h2{font-size:clamp(1.6rem,1.3rem + 1vw,2rem);margin-bottom:var(--s3)}
.rd-links{margin:var(--s3) 0 0;padding:0;list-style:none;display:grid;gap:.15rem var(--s5);grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));font:500 1rem/1.35 var(--sans)}
.rd-links a{display:block;padding:.5rem 0;color:var(--link);min-height:44px}
.rd-fine{font:400 .8rem/1.5 var(--sans);color:var(--muted);margin-top:var(--s5);max-width:none}
.rd-fine a{color:var(--muted)}
.rd-more>summary{cursor:pointer;font:600 1rem/1.3 var(--sans);color:var(--link);padding:.6rem 0;min-height:44px;display:flex;align-items:center}
.rd-more[open]>summary{margin-bottom:.25rem}
@media (min-width:22.01rem) and (max-width:39.99rem){.rd-card{min-height:11rem}}
