/* Standalone rental network explorer; approved rental shell stays unchanged. */
.rj-rental-map-page .network-intro { padding-bottom:34px; border-bottom:1px solid var(--line); }
.rj-rental-map-page .network-intro h1 { font-family:Montserrat,Arial,sans-serif; font-weight:500; font-style:normal; letter-spacing:-1.8px; }
.rj-rental-map-page .network-lead { max-width:720px; color:var(--muted); font-size:18px; margin-bottom:16px; }
.rj-rental-map-page .network-total { margin:0; color:var(--accent); font-size:13px; font-weight:600; }
.rj-rental-map-page .network-explorer { margin-top:36px; }
.rj-rental-map-page .explorer-heading h2,.rj-rental-map-page .results-heading h2,.rj-rental-map-page .network-help h2 { margin:0 0 8px; font-size:25px; font-weight:500; line-height:1.35; }
.rj-rental-map-page .explorer-heading p { color:var(--muted); font-size:14px; margin-bottom:24px; }
.rj-rental-map-page .network-filters { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:16px; background:white; border:1px solid var(--line); padding:24px; border-radius:6px; margin-bottom:24px; }
.rj-rental-map-page [hidden] { display:none !important; }
.rj-rental-map-page .network-filters>div { min-width:0; }
.rj-rental-map-page .network-filters label { display:block; font-weight:600; font-size:12px; margin-bottom:9px; }
.rj-rental-map-page .network-filters input,.rj-rental-map-page .network-filters select { display:block; width:100%; min-width:0; min-height:46px; border:1px solid #c5c5c5; border-radius:3px; background:#fff; color:var(--ink); padding:10px; font:400 13px Montserrat,Arial,sans-serif; }
.rj-rental-map-page .network-filters :is(input,select,button):focus-visible,.rj-rental-map-page .network-pagination button:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.rj-rental-map-page .network-reset { justify-self:start; grid-column:1/-1; border:0; background:none; padding:8px 0; min-height:40px; color:var(--muted); cursor:pointer; font:500 12px Montserrat,Arial,sans-serif; text-decoration:underline; text-underline-offset:4px; }
.rj-rental-map-page .network-reset:hover { color:var(--accent); }
.rj-rental-map-page .network-map-frame { border:1px solid var(--line); border-radius:12px; background:#f7f7f7; padding:12px; }
.rj-rental-map-page .network-map { display:block; width:100%; max-width:960px; height:auto; margin:auto; }
.rj-rental-map-page .department-marker { text-decoration:none; }
.rj-rental-map-page .department-marker circle { fill:#fff; stroke:#cecece; stroke-width:1; filter:drop-shadow(2px 3px 3px #0002); }
.rj-rental-map-page .department-marker text { font:600 12px Montserrat,Arial,sans-serif; fill:#444444; pointer-events:none; }
.rj-rental-map-page .department-marker:hover circle,.rj-rental-map-page .department-marker:focus circle,.rj-rental-map-page .department-marker[aria-current=true] circle { fill:var(--accent); stroke:var(--accent); stroke-width:3; }
.rj-rental-map-page .department-marker:hover text,.rj-rental-map-page .department-marker:focus text,.rj-rental-map-page .department-marker[aria-current=true] text { fill:white; }
.rj-rental-map-page .department-marker[data-empty=true] circle { fill:#e8e8e8; stroke:#d0d0d0; }
.rj-rental-map-page .department-marker[data-empty=true] text { fill:#686868; }
.rj-rental-map-page .department-marker[data-empty=true]:hover circle,.rj-rental-map-page .department-marker[data-empty=true]:focus circle { fill:var(--accent); }
.rj-rental-map-page .map-idf-label { font:600 10px Montserrat,Arial,sans-serif; fill:#606060; letter-spacing:1px; }
.rj-rental-map-page .map-explanation { color:var(--muted); font-size:12px; max-width:820px; margin:16px 0 0; }
.rj-rental-map-page .network-results { scroll-margin-top:24px; margin-top:42px; }
.rj-rental-map-page .results-heading { display:flex; justify-content:space-between; align-items:baseline; gap:16px; margin-bottom:22px; }
.rj-rental-map-page #network-count { font-size:13px; color:var(--muted); margin:0; }
.rj-rental-map-page .network-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.rj-rental-map-page .network-card { min-width:0; background:white; border:1px solid var(--line); border-radius:5px; padding:24px; overflow-wrap:anywhere; }
.rj-rental-map-page .network-card h3 { font-size:21px; line-height:1.35; font-weight:600; margin:14px 0; }
.rj-rental-map-page .network-card p,.rj-rental-map-page .network-card address { font-size:13px; color:var(--muted); margin:0 0 12px; }
.rj-rental-map-page .network-card address { font-style:normal; }
.rj-rental-map-page .network-coverage strong { font-weight:500; color:var(--ink); }
.rj-rental-map-page .network-badges { display:flex; flex-wrap:wrap; gap:6px; }
.rj-rental-map-page .network-badges span { font-size:10px; padding:3px 7px; background:#f5f5f5; border-radius:3px; color:#555555; }
.rj-rental-map-page .network-website { display:inline-block; font-weight:600; font-size:13px; padding:10px 0; text-decoration:none; }
.rj-rental-map-page .network-website span { color:var(--accent); margin-left:7px; }
.rj-rental-map-page .network-sources { border-top:1px solid var(--line); margin-top:14px; padding-top:12px; font-size:12px; }
.rj-rental-map-page .network-sources summary { cursor:pointer; min-height:36px; padding:5px 0; }
.rj-rental-map-page .network-sources summary:hover { color:var(--accent); }
.rj-rental-map-page .network-sources summary:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.rj-rental-map-page .network-sources ul { padding-left:18px; }
.rj-rental-map-page .network-sources li { margin-top:9px; }
.rj-rental-map-page .network-pagination { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:16px; padding-top:28px; font-size:13px; }
.rj-rental-map-page .network-pagination button { font:500 13px Montserrat,Arial,sans-serif; border:1px solid var(--line); background:white; min-height:44px; padding:10px 16px; border-radius:3px; cursor:pointer; }
.rj-rental-map-page .network-pagination button:hover { color:var(--accent); border-color:var(--accent); }
.rj-rental-map-page .network-pagination button:disabled { opacity:.5; cursor:default; }
.rj-rental-map-page .network-empty { background:white; border:1px solid var(--line); padding:24px; color:var(--muted); }
.rj-rental-map-page .network-help { margin-top:42px; background:white; border-left:3px solid var(--accent); padding:28px; }
.rj-rental-map-page .network-help p { font-size:14px; color:var(--muted); max-width:700px; }
@media(max-width:1000px) { .rj-rental-map-page .network-filters { grid-template-columns:1fr 1fr; } .rj-rental-map-page .network-cards { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
 .rj-rental-map-page .network-intro h1 { font-size:38px; letter-spacing:-1px; }
 .rj-rental-map-page .network-lead { font-size:16px; }
 .rj-rental-map-page .network-filters { padding:18px; gap:15px; grid-template-columns:1fr; }
 .rj-rental-map-page .network-cards { grid-template-columns:1fr; }
 .rj-rental-map-page .results-heading { display:block; }
 .rj-rental-map-page .network-map-frame { padding:0; }
 .rj-rental-map-page .network-card { padding:22px; }
 .rj-rental-map-page .network-help { padding:23px; }
}

.rj-rental-map-page .network-map-skip { font-size:12px; }
.rj-rental-map-page .network-map-legend { display:flex; flex-wrap:wrap; gap:8px 24px; font-size:12px; color:var(--accent); margin:16px 0 0; }

.rj-rental-map-page .department-marker[data-empty=true]:hover text,.rj-rental-map-page .department-marker[data-empty=true]:focus text { fill:#fff; }
.rj-rental-map-page .department-marker[aria-current=true] circle { fill:var(--accent); stroke:var(--accent); }
.rj-rental-map-page .department-marker[aria-current=true] text { fill:#fff; }
