/* Original accessible controls; no gesture interception or external dependencies. */
.trend-chart-scroll{max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--control-line) transparent}
.trend-chart-scroll .trend-chart{min-width:var(--trend-min-width,360px);max-height:none;margin:8px 0 0}
.trend-chart-overview{width:100%;min-width:0}
.trend-chart-overview .trend-chart{min-width:0;max-height:none}
#trend-detail-toggle{min-height:44px;padding:8px 6px;font-size:12px;white-space:nowrap}
.trend-match{cursor:pointer;outline:none}
.trend-hit{fill:transparent;pointer-events:all}
.trend-match:hover .trend-hit,.trend-match:focus-visible .trend-hit{fill:var(--accent-bg)}
.trend-match:hover .trend-point,.trend-match:focus-visible .trend-point{stroke:var(--text);stroke-width:4}
.trend-match:focus-visible .trend-hit{stroke:var(--accent);stroke-width:2;vector-effect:non-scaling-stroke}
.review-map{margin-top:12px;scroll-margin-top:64px}
.route-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.route-controls>span{color:var(--muted);font-size:12px;line-height:1.5}
.route-control-buttons{display:flex;flex:none;gap:5px}
.route-control-buttons button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:13px;cursor:pointer}
.route-control-buttons button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-bg)}
.route-control-buttons button:disabled{opacity:.45;cursor:default}
.route-return-timeline{display:inline-flex;align-items:center;min-height:44px;max-width:100%;margin:0 0 8px;padding:8px 10px;border:1px solid var(--control-line);border-radius:6px;background:var(--surface);color:var(--accent);font-size:12px;line-height:1.5;text-align:left;overflow-wrap:anywhere}
.route-return-timeline:hover{border-color:var(--accent);background:var(--accent-bg)}
.review-map .coordinate-route{overflow:hidden;touch-action:pan-y pinch-zoom}
.route-marker{cursor:pointer;outline:none}
.route-event-target{fill:transparent;stroke:transparent;stroke-width:44;pointer-events:all;vector-effect:non-scaling-stroke}
.route-marker .route-event{pointer-events:none;vector-effect:non-scaling-stroke}
.route-marker:hover .route-event,.route-marker:focus-visible .route-event,.route-marker.is-selected .route-event{fill:var(--accent);stroke:#fff;stroke-width:3}
.route-marker:focus-visible .route-event{stroke:var(--text);stroke-width:4}
.route-selected-ring{fill:none;stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke;pointer-events:none;filter:drop-shadow(0 0 2px #101820)}
.route-selected-ring[hidden]{display:none}
.route-selection{min-height:44px;margin:8px 0 0;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--surface-2);color:var(--muted);font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.combat-events li.is-selected{margin-inline:-8px;padding-inline:8px;border-radius:6px;background:var(--accent-bg)}
.event-map-button{display:flex;align-items:flex-start;gap:12px;width:100%;min-height:44px;padding:0;border:0;border-radius:4px;background:transparent;color:inherit;font:inherit;line-height:inherit;text-align:left;cursor:pointer}
.event-map-button>span{min-width:0;overflow-wrap:anywhere}
.event-map-hint{display:block;margin-top:3px;color:var(--faint);font-size:11px}
.event-map-button .event-map-hint{color:var(--accent)}
.event-map-button:hover .event-map-hint{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.route-controls{align-items:flex-start}.route-controls>span{max-width:140px;padding-top:6px}.route-control-buttons{gap:4px}.route-control-buttons button{padding-inline:8px}.combat-events li,.event-map-button{gap:8px}}
