.map-route{--map-land:color-mix(in oklch, var(--primary) 8%, var(--muted))}.dark .map-route{--map-land:#1d1a18}@supports (color:lab(0% 0 0)){.dark .map-route{--map-land:lab(9.50233% 1.15354 1.92856)}}.map-route .site-nav,.map-route header.sticky{z-index:700;flex-shrink:0;position:relative}.map-route .app-shell{background:var(--map-land);grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(21.25rem,24.375rem) minmax(30rem,1fr);min-height:0;display:grid;overflow:hidden}.map-route .directory-panel{z-index:10;border-right:1px solid var(--border);background:var(--background);height:100%;min-height:0;box-shadow:8px 0 22px color-mix(in oklch, var(--foreground) 8%, transparent);flex-direction:column;display:flex;position:relative}.map-route .directory-header{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.125rem 1.125rem .875rem;display:flex}.map-route .directory-header h1{margin:0;line-height:1.05}.map-route .controls{z-index:20;border-bottom:1px solid var(--border);background:color-mix(in oklch, var(--background) 96%, white);flex-direction:column;gap:.625rem;padding:.125rem 1.125rem .5rem;display:flex;position:sticky;top:0}.map-route .control-actions{justify-content:space-between;align-items:center;gap:.75rem;margin-top:0;display:flex}.map-route .result-count{color:var(--muted-foreground);margin:0;font-size:.8125rem;font-weight:600}.map-route .toolbar-buttons{align-items:center;gap:.25rem;display:flex}.map-route .filter-drawer{opacity:0;pointer-events:none;border-top:1px solid #0000;grid-template-rows:0fr;margin-top:0;padding:0;transition:grid-template-rows .22s,opacity .18s,padding .22s,margin-top .22s,border-color .22s;display:grid}.map-route .filter-drawer.open{border-top-color:var(--border);opacity:1;pointer-events:auto;grid-template-rows:1fr;margin-top:.625rem;padding:1rem 0 .625rem}.map-route .filter-drawer>.filter-fields{min-height:0;overflow:hidden}.map-route .filter-drawer.open>.filter-fields{overflow:visible}.map-route .filter-drawer .filter-fields{grid-template-columns:1fr 1fr;gap:.5rem}@media (prefers-reduced-motion:reduce){.map-route .filter-drawer{transition:none}}.map-route .results-list{flex:1;min-height:0;padding:12px 12px 10px;scroll-padding:12px;overflow-y:auto}.map-route .results-list>button+button{margin-top:.5rem}.map-route .results-list>button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.map-route .map-panel{background:var(--map-land);height:100%;min-height:0;position:relative;top:0}.map-route .map-panel .map,.map-route .map-panel .leaflet-container{width:100%;height:100%;position:absolute;inset:0}.map-route .map-loading{z-index:1;color:var(--muted-foreground);background:var(--map-land);place-content:center;font-size:.875rem;display:grid;position:absolute;inset:0}.map-route .leaflet-container{background:var(--map-land);font-family:inherit}.map-route .leaflet-control-zoom{box-shadow:0 10px 24px color-mix(in oklch, var(--foreground) 14%, transparent);border:0!important;margin-bottom:18px!important;margin-left:18px!important}.map-route .leaflet-control-zoom a{border-color:var(--border)!important;color:var(--primary)!important}.map-route .leaflet-popup-content .map-popup{gap:.25rem;display:grid}.map-route .leaflet-popup-content .map-popup-name{margin:0;font-size:1rem;line-height:1.25}.map-route .leaflet-popup-content .map-popup-link{color:inherit;text-underline-offset:.12em;text-decoration:underline}.map-route .leaflet-popup-content .map-popup-link:hover{color:var(--primary)}.map-route .leaflet-popup-content .sidebar-rating,.map-route .leaflet-popup-content .map-popup-rating{align-items:center;gap:.25rem;margin:0;font-size:.875rem;display:flex}.map-route .leaflet-popup-content .stars{color:var(--accent)}.map-route .map-chip-toggle{border-color:var(--border);border-radius:var(--radius-lg);background:color-mix(in oklch, var(--background) 94%, white);height:1.75rem;color:var(--foreground);box-shadow:0 10px 24px color-mix(in oklch, var(--foreground) 14%, transparent);padding-inline:.5rem;font-size:.75rem;font-weight:600}.map-route .map-chip-toggle[data-pressed],.map-route .map-chip-toggle[aria-pressed=true],.map-route .map-chip-toggle[data-state=on]{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.map-route .map-chip-row{z-index:500;pointer-events:none;flex-wrap:wrap;gap:.5rem;max-width:min(28.75rem,100% - 11.875rem);margin:0;display:flex;position:absolute;top:1.125rem;left:1.125rem}.map-route .map-chip-row>*{pointer-events:auto}.map-route .map-topbar{z-index:500;pointer-events:none;align-items:flex-start;gap:10px;display:flex;position:absolute;top:1.125rem;right:1.125rem}.map-route .map-topbar .search-area-chip{pointer-events:auto;border-color:var(--border);border-radius:var(--radius-lg);background:color-mix(in oklch, var(--background) 94%, white);height:1.75rem;color:var(--foreground);box-shadow:0 10px 24px color-mix(in oklch, var(--foreground) 14%, transparent);padding-inline:.5rem;font-size:.75rem;font-weight:600}.map-route .map-pagination{border-top:1px solid var(--border);background:color-mix(in oklch, var(--background) 96%, white);padding:.625rem .75rem .875rem}.map-route .map-pagination-btn{border-color:var(--border);background:var(--card);color:var(--foreground)}.map-route .map-pagination-btn:hover:not(:disabled){background:color-mix(in oklch, var(--primary) 8%, var(--card));color:var(--primary)}.map-route .map-pagination-btn:disabled{opacity:.45}.map-route .selected-panel{z-index:600;width:min(360px,100% - 44px);display:none;position:absolute;bottom:22px;right:22px}.map-route .selected-panel.visible{display:block}.map-route .place-summary-card{border-color:var(--border);background:var(--card);width:100%}.map-route .map-list-card{border:1px solid var(--border);box-shadow:none}.map-route .map-list-card--selected{border-color:var(--primary);background:color-mix(in oklch, var(--primary) 8%, var(--card));box-shadow:none}.map-route .results-list>button:hover .map-list-card{border-color:var(--accent);background:color-mix(in oklch, var(--accent) 8%, var(--card));box-shadow:none}.map-route .results-list>button:hover .map-list-card--selected{border-color:var(--primary);background:color-mix(in oklch, var(--primary) 10%, var(--card))}.map-route .results-list>button:focus-visible .map-list-card{outline:2px solid var(--ring);outline-offset:2px}@media (max-width:52rem){.map-route .app-shell{flex-direction:column;display:flex;overflow:hidden}.map-route .directory-panel{height:auto;min-height:0;max-height:none;box-shadow:none;border-right:0;flex:none;overflow:visible}.map-route .results-list{display:none}.map-route .map-panel{flex:auto;height:auto;min-height:0;position:relative}.map-route .filter-drawer .filter-fields{grid-template-columns:1fr}.map-route .selected-panel{width:auto;bottom:12px;left:12px;right:12px}}
