.widget-section{background:var(--ice)}.widget-section.alt{background:#fff}.widget-heading{max-width:850px}.widget-heading p{color:#44516a}.weather-tabs{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 12px}.weather-tabs button,#refresh-ramps,.ramp-locate,.ramp-search-submit{font:700 15px Inter,sans-serif;background:var(--navy);border:2px solid var(--navy);color:#fff;min-height:44px;padding:10px 18px;cursor:pointer}.weather-tabs button[aria-pressed=true]{background:var(--red);border-color:var(--red)}.weather-tabs button:focus-visible,#refresh-ramps:focus-visible,.ramp-locate:focus-visible,.ramp-search-submit:focus-visible{outline:3px solid #e6a900;outline-offset:3px}.weather-frame{width:100%;height:520px;border:0;background:#dbe4ee}.widget-meta{font-size:13px;color:#44516a}.weather-links{display:flex;flex-wrap:wrap;gap:18px;margin:14px 0}.weather-links a{font-weight:800;color:var(--navy)}.widget-warning{background:#fff3cf;border-left:6px solid #b87900;padding:18px 22px;color:#463500}.map-layout{display:grid;grid-template-columns:1fr 270px;gap:24px;margin-top:24px}.ramp-map{height:530px;background:#dbe4ee;z-index:1}.ramp-legend{background:var(--navy);color:#fff;padding:24px}.ramp-legend h3{font:28px Anton;margin:0 0 16px;text-transform:uppercase}.ramp-legend ul{list-style:none;padding:0;margin:0}.ramp-legend li{display:flex;gap:12px;align-items:center;margin:18px 0;font-size:14px}.ramp-pin{display:inline-flex;align-items:center;justify-content:center;border:3px solid #fff;border-radius:50%;width:34px;height:34px;font:bold 22px Inter;box-shadow:0 2px 7px #0007;color:#fff;background:#5b6574;flex-shrink:0}.ramp-pin.open{background:#087337}.ramp-pin.low{background:#f2cc32;color:#342600}.ramp-pin.closed{background:#b31b2d}.ramp-pin.unverified{background:#5b6574}.ramp-pin-wrap{background:transparent;border:0}.ramp-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.ramp-entry{padding:22px;border:1px solid #d0d9e8;border-top:5px solid #5b6574;background:var(--ice);font-size:14px}.ramp-entry h3{font:26px Anton;color:var(--navy)}.ramp-entry a{color:var(--navy);line-height:2}.status-text{font-weight:800}.status-text.open{color:#087337}.status-text.low{color:#725200}.status-text.closed{color:#a01529}.leaflet-popup-content{font:13px/1.5 Inter,sans-serif;overflow-wrap:anywhere}.leaflet-popup-content h3{font-size:17px}.leaflet-popup-content a{line-height:1.7}.leaflet-container{font-family:Inter,sans-serif}.leaflet-control-attribution{font-size:10px}.widget-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.widget-actions a{font-weight:800;color:var(--navy)}
@media(max-width:900px){.map-layout{grid-template-columns:1fr}.ramp-legend ul{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.ramp-legend{padding:18px}.ramp-legend li{margin:10px 0}.ramp-list{grid-template-columns:1fr}.ramp-map{height:420px}.weather-frame{height:480px}}@media(max-width:380px){.ramp-legend ul{grid-template-columns:1fr}.ramp-map{height:360px}}

.ramp-search label{display:block;font-weight:800;color:var(--navy);margin:16px 0 8px}.ramp-search input{width:100%;max-width:650px;min-height:48px;border:2px solid #596b87;padding:10px 14px;font:16px Inter,sans-serif;border-radius:0}.operator-sources{padding:24px;background:var(--ice);margin-top:28px}.operator-sources h3{font:28px Anton;color:var(--navy);margin-top:0}.operator-sources a{display:inline-block;color:var(--navy);font-weight:700;margin:6px 20px 6px 0;min-height:36px}.marker-cluster-small,.marker-cluster-medium,.marker-cluster-large{background:#d4dce8}.marker-cluster-small div,.marker-cluster-medium div,.marker-cluster-large div{background:#354b6a;color:#fff;font-weight:800}.weather-tabs button:disabled{opacity:.65;cursor:wait}#more-ramps{margin-top:20px}

.ramp-search-row{display:flex;gap:12px;align-items:stretch}.ramp-search-row input{flex:1;min-width:0}.ramp-search-row button{flex-shrink:0}@media(max-width:600px){.ramp-search-row{flex-direction:column}.ramp-search-row button{align-self:flex-start}}

/* Compact community summary, hover tooltip, colored clusters, collapsed report form */
.ramp-summary{margin:0;font:500 13px/1.4 Inter,system-ui,sans-serif;color:#1c2430}
.ramp-summary-head{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-weight:800;color:#1c2430}
.ramp-summary-head .dot,.ramp-tally .dot{width:10px;height:10px;border-radius:50%;flex:0 0 10px;box-shadow:0 0 0 1px #0002}
.dot.open{background:#087337}.dot.low{background:#f2cc32}.dot.closed{background:#b31b2d}.dot.unverified{background:#5b6574}
.ramp-tally{list-style:none;margin:0 0 6px;padding:0}
.ramp-tally li{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;margin:0;padding:2px 0;font-weight:700}
.ramp-tally li.none{opacity:.55;font-weight:600}
.ramp-tally li.open{color:#087337}.ramp-tally li.low{color:#725200}.ramp-tally li.closed{color:#a01529}
.ramp-tally li span{font-weight:600;color:#1c2430}
.ramp-summary-ok{margin:0 0 4px;font-weight:700}
.ramp-summary-note{margin:0 0 4px;color:#44516a;font-weight:500}
#accepted-reports{margin-top:12px}
#accepted-reports[hidden]{display:none}
#report-details{margin:12px 0 0;border:1px solid #c9d4e5;border-radius:10px;background:#fff;padding:0 12px}
#report-details>summary{cursor:pointer;font-weight:800;padding:12px 4px;list-style-position:inside}
#report-details>summary:focus-visible{outline:2px solid #0a4d8c;outline-offset:2px}
#report-details[open]{padding-bottom:12px}
.ramp-popup-links{margin:8px 0}
.ramp-source{margin:4px 0 10px;color:#44516a;font-size:12px}
.leaflet-popup-content{margin:12px 14px;min-width:200px}
.leaflet-popup-content h3{margin:0 0 8px;font:800 15px/1.25 Inter,system-ui,sans-serif}
.leaflet-tooltip.ramp-tip{background:#fff;color:#1c2430;border:1px solid #c9d4e5;border-radius:10px;box-shadow:0 8px 24px #0003;padding:10px 12px;white-space:normal;width:240px;max-width:min(240px,70vw);font:500 13px/1.4 Inter,system-ui,sans-serif}
.leaflet-tooltip.ramp-tip .ramp-tip-title{display:block;margin:0 0 6px;font:800 14px/1.25 Inter,system-ui,sans-serif}
.leaflet-tooltip.ramp-tip .ramp-summary-note:last-child{margin-bottom:0}
.leaflet-tooltip-top.ramp-tip:before{border-top-color:#c9d4e5}
.ramp-cluster-wrap{background:transparent;border:0}
.ramp-cluster{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 7px #0007;color:#fff;font:800 16px/1 Inter,system-ui,sans-serif;background:#5b6574}
.ramp-cluster.open{background:#087337}
.ramp-cluster.low{background:#f2cc32;color:#342600}
.ramp-cluster.closed{background:#b31b2d}
.ramp-cluster.unverified{background:#5b6574}
@media (max-width:700px){
  .leaflet-tooltip.ramp-tip{width:200px}
  .leaflet-popup-content{min-width:180px}
}
.leaflet-popup-content .report-open{margin:8px 0 6px;}

/* Static Lake Limestone ramp map (interactive community map is not loaded on this page). */
#ramps{scroll-margin-top:110px}
.ramp-notice{background:#fff3cf;border-left:6px solid #b87900;padding:18px 22px;color:#463500;margin:8px 0 28px;font-size:16.5px;line-height:1.55}
.ramp-notice a{color:#463500;font-weight:800;text-underline-offset:3px}
.static-ramp-map{margin:0 0 28px}
.static-ramp-map-title{margin:0;background:var(--navy);color:#fff;padding:12px 18px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:13px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:baseline;border-bottom:5px solid var(--red)}
.static-ramp-map-title span{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:clamp(22px,4vw,32px);letter-spacing:.03em}
.static-ramp-map-frame{position:relative;background:#dbe4ee;border:1px solid #d0d9e8;border-top:0}
.static-ramp-map-frame img{display:block;width:100%;height:auto}
.static-ramp-pins{list-style:none;margin:0;padding:0;position:absolute;inset:0}
.static-ramp-pins li{position:absolute;transform:translate(-50%,-50%);z-index:2}
.static-ramp-pins a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--navy);color:#fff;text-decoration:none;font-family:Anton,Impact,sans-serif;font-size:22px;line-height:1;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.45);box-sizing:border-box}
.static-ramp-pins a:hover{background:var(--red)}
.static-ramp-pins a:focus-visible{outline:3px solid #e6a900;outline-offset:2px}
.static-ramp-pin-name{position:absolute;top:50%;background:#fff;color:var(--navy);border:2px solid var(--navy);border-radius:6px;padding:5px 10px;font-weight:800;font-size:13px;line-height:1.2;white-space:nowrap;box-shadow:0 1px 4px rgba(0,0,0,.2);pointer-events:none}
.static-ramp-pins .is-left .static-ramp-pin-name{right:calc(100% + 8px);transform:translateY(-50%)}
.static-ramp-pins .is-right .static-ramp-pin-name{left:calc(100% + 8px);transform:translateY(-50%)}
.static-ramp-map .widget-meta{margin:10px 0 0}
.static-ramp-list{list-style:none;padding:0;margin:0 0 24px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.static-ramp-list li{display:flex;gap:16px;align-items:flex-start;padding:22px;border:1px solid #d0d9e8;border-top:5px solid var(--navy);background:var(--ice);scroll-margin-top:110px}
.static-ramp-num{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;font-family:Anton,Impact,sans-serif;font-size:26px;line-height:1;border:3px solid #fff;box-shadow:0 2px 7px rgba(0,0,0,.35)}
.static-ramp-list h3{font:28px Anton,Impact,sans-serif;text-transform:uppercase;color:var(--navy);margin:0 0 4px;line-height:1}
.static-ramp-list p{margin:0 0 8px;color:#44516a;font-size:14px}
.static-ramp-list a{font-weight:800;color:var(--navy);min-height:44px;display:inline-flex;align-items:center;text-underline-offset:3px}
.static-ramp-list a:focus-visible{outline:3px solid #e6a900;outline-offset:3px}
@media(max-width:700px){
  .static-ramp-list{grid-template-columns:1fr}
  .static-ramp-pins a{width:36px;height:36px;font-size:20px}
  .static-ramp-pin-name{font-size:12px;padding:4px 8px}
}
