.travel-map{z-index:2;width:100%;min-height:80vh;position:relative;overflow:hidden}.travel-map-container{width:100%;height:80vh;position:relative;overflow:hidden}.travel-map-container svg{width:100%;height:100%;display:block}.tm-country{fill:color-mix(in srgb,var(--foreground)8%,transparent);stroke:color-mix(in srgb,var(--foreground)14%,transparent);stroke-width:.5px;transition:fill .35s,stroke .35s}.tm-visited{fill:color-mix(in srgb,var(--ui-accent-ink)24%,transparent);stroke:color-mix(in srgb,var(--ui-accent-ink)42%,transparent);cursor:pointer}.tm-visited:hover,.tm-visited.tm-highlight{fill:color-mix(in srgb,var(--ui-accent-ink)52%,transparent);stroke:color-mix(in srgb,var(--ui-accent-ink)82%,transparent);stroke-width:1px}.travel-map-legend{z-index:5;flex-flow:column wrap;place-content:flex-end center;gap:.35rem 2rem;display:flex;position:absolute;top:2rem;bottom:2rem;right:2rem;overflow:hidden}.travel-map-legend-group{flex-shrink:0}.travel-map-legend-item{font-family:var(--font-dm-mono),monospace;text-transform:uppercase;letter-spacing:.1em;color:var(--foreground-200);cursor:pointer;text-align:right;flex-shrink:0;padding:.25rem 0;font-size:.75rem;font-weight:500;transition:color .3s,transform .3s}.travel-map-legend-item:hover,.travel-map-legend-item.tm-active{color:var(--foreground);transform:translate(-4px)}.travel-map-legend-cities{padding-right:.5rem}.travel-map-legend-city{font-family:var(--font-dm-mono),monospace;text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,var(--foreground-200)70%,transparent);cursor:pointer;text-align:right;flex-shrink:0;padding:.15rem 0;font-size:.65rem;font-weight:400;transition:color .3s,transform .3s}.travel-map-legend-city:hover,.travel-map-legend-city.tm-active{color:var(--foreground);transform:translate(-4px)}.travel-map-overlay{background-color:var(--background);opacity:0;pointer-events:none;z-index:9999;width:100vw;height:100vh;transition:opacity .6s cubic-bezier(.87,0,.13,1);position:fixed;top:0;left:0}.travel-map-overlay.active{opacity:1}.travel-map-fallback{z-index:8;text-align:center;background:color-mix(in srgb,var(--background)86%,transparent);place-content:center;justify-items:center;gap:.85rem;padding:1.25rem;display:grid;position:absolute;inset:0}.travel-map-fallback-btn{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--foreground);cursor:pointer;border-radius:999px;padding:.55rem 1rem}@media (max-width:1000px){.travel-map{min-height:60vh}.travel-map-container{height:60vh}.travel-map-legend{gap:.2rem 1.5rem;top:1rem;bottom:1rem;right:1rem}.travel-map-legend-item{padding:.15rem 0;font-size:.6rem}.travel-map-legend-city{padding:.1rem 0;font-size:.5rem}.travel-map-legend-cities{padding-right:.35rem}}@media (max-width:768px){.travel-map{min-height:auto}.travel-map-container{flex-direction:column;height:auto;min-height:50vh;display:flex}.travel-map-container svg{flex:1;min-height:40vh}.travel-map-legend{columns:3 7rem;column-gap:1rem;padding:1rem 1.5rem;display:block;position:relative;top:auto;bottom:auto;right:auto;overflow:visible}.travel-map-legend-group{break-inside:avoid}.travel-map-legend-item{text-align:left;break-inside:avoid;min-height:auto;padding:.3rem 0;font-size:.6rem}.travel-map-legend-item:hover,.travel-map-legend-item.tm-active{transform:translateY(-2px)}.travel-map-legend-city{text-align:left;padding:.2rem 0;font-size:.55rem}.travel-map-legend-cities{padding-left:.5rem;padding-right:0}.travel-map-legend-city:hover,.travel-map-legend-city.tm-active{transform:translateY(-2px)}}@media (max-width:480px){.travel-map-legend{columns:2 6rem;column-gap:.75rem;padding:.75rem 1rem}.travel-map-legend-item{font-size:.55rem}.travel-map-legend-city{font-size:.5rem}}
