.reader-page .toolbar{flex-wrap:wrap;z-index:1001}.chapter-songs{margin-left:0}.locations-menu{font:12px Arial}.locations-menu>summary{list-style:none;cursor:pointer;border:1px solid #4d6558;border-radius:20px;padding:8px 13px;color:#4d6558;white-space:nowrap}.locations-menu>summary::-webkit-details-marker{display:none}.locations-menu[open]>summary{background:#4d6558;color:white}.locations-panel{position:absolute;right:16px;top:calc(100% + 8px);width:min(650px,calc(100vw - 32px));max-height:75dvh;overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 36px #0003;padding:20px;color:var(--ink)}.locations-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.locations-head h2{font:25px/1.2 Georgia;margin:5px 0}.locations-kicker{font-size:9px;letter-spacing:1.7px;color:var(--muted)}.locations-intro{color:var(--muted);font:12px/1.6 Arial;margin:8px 0 14px}.locations-map{height:250px;background:#e4e5da;border:1px solid var(--line);border-radius:5px}.locations-map .leaflet-tile-pane{filter:saturate(.45)}.location-pin{background:none;border:0}.location-pin span{display:grid;place-items:center;width:28px;height:28px;border:2px solid #f6f2e9;border-radius:50%;color:white;background:var(--pin-color);font:12px Georgia;box-shadow:0 2px 6px #0004}.location-pin.selected span{outline:2px solid var(--pin-color);transform:scale(1.12)}.locations-list{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;margin-top:12px;max-height:170px;overflow:auto}.location-row{border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;text-align:left;padding:12px 6px;display:flex;gap:9px;align-items:center;color:var(--ink)}.location-row[aria-pressed=true]{background:var(--card);box-shadow:inset 2px 0 #743c3e}.location-number{color:var(--pin-color);border:1px solid var(--pin-color);width:24px;height:24px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.location-row strong{font:17px Georgia;display:block}.location-row small{font:10px/1.6 Arial;display:block;color:var(--muted);margin-top:4px}.location-tag{color:var(--pin-color)}.location-detail{margin-top:14px;padding:12px 0 0;border-top:1px solid var(--line);font:12px/1.6 Arial}.location-detail p{margin:7px 0;color:var(--muted)}.location-detail a{color:var(--accent);margin-right:16px;text-underline-offset:3px}.locations-foot{font:10px/1.5 Arial;color:var(--muted);margin:14px 0 0}.locations-panel button:focus-visible,.locations-menu summary:focus-visible{outline:2px solid #743c3e;outline-offset:3px}@media(max-width:760px){.locations-panel{right:12px;width:calc(100vw - 24px);padding:16px;max-height:70dvh}.locations-map{height:210px}.locations-head h2{font-size:22px}.locations-list{grid-template-columns:1fr;max-height:140px}.locations-menu>summary{padding:7px 12px}}@media print{.locations-menu,}

/* Shared chapter tools: the same green pill for music and locations. */
.reader-page .pager :is(.chapter-songs,.locations-menu)>summary{
 display:flex;align-items:center;justify-content:center;gap:4px;
 width:144px;min-height:36px;padding:8px 13px;
 border:1px solid #4d6558;border-radius:20px;
 background:#4d6558;color:#fff;font:400 12px/18px Arial,sans-serif;
 box-shadow:none;list-style:none;cursor:pointer;white-space:nowrap;
 transition:background .2s ease,border-color .2s ease;
}
.reader-page .pager :is(.chapter-songs,.locations-menu)>summary:hover,
.reader-page .pager :is(.chapter-songs,.locations-menu)[open]>summary{
 background:#3e5348;border-color:#3e5348;box-shadow:none;
}
.reader-page .pager :is(.chapter-songs,.locations-menu)>summary:focus-visible{
 outline:2px solid #4d6558;outline-offset:3px;
}
.reader-page .pager .songs-note{font-size:14px;line-height:18px;animation:none}
@media(prefers-reduced-motion:reduce){.reader-page .pager :is(.chapter-songs,.locations-menu)>summary{transition:none}}

/* Chapter navigation and its companion tools share the lower row. */
.reader-page .pager{position:relative;justify-content:flex-start;z-index:1000}
.reader-page .pager .chapter-songs{margin-left:auto}
.reader-page .pager .locations-menu{margin-left:0}
.reader-page .pager .songs-panel,.reader-page .pager .locations-panel{z-index:1}
@media(max-width:1050px){
 .reader-page .pager{gap:8px}
 .reader-page .pager :is(.chapter-songs,.locations-menu)>summary{width:132px;padding-inline:9px}
}
@media(max-width:760px){
 .reader-page .pager .chapter-songs{margin-left:0}
 .reader-page .pager #share{margin-right:auto}
}

.reader-page .pager:not(:has(.chapter-songs:not([hidden]))) .locations-menu{margin-left:auto}
