.lm{position:relative;background:var(--paper-2);color:var(--ink)}.lm-hero{border-block:1px solid var(--line)}.lm-focus{border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;display:grid}@media(min-width:900px){.lm-focus{grid-template-columns:minmax(0,2fr) minmax(300px,.9fr)}}.lm-map-wrap{position:relative;min-height:460px;height:64vh;max-height:760px;background:var(--paper-2)}.lm-hero .lm-map-wrap{height:74vh;min-height:520px;max-height:820px}@media(min-width:900px){.lm-focus .lm-map-wrap{height:auto;min-height:520px;max-height:none}}.lm-map{position:absolute;inset:0}.lm-map .maplibregl-canvas{outline:none}.lm-map .maplibregl-ctrl-attrib{background:#000000d9!important;color:var(--muted);font-size:11px}.lm-map .maplibregl-ctrl-attrib a{color:var(--muted)}.lm-map .maplibregl-ctrl-group{background:var(--card);border:1px solid var(--line-strong);box-shadow:0 4px 14px #0000004d}.lm-map .maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon,.lm-map .maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{filter:invert(1) opacity(.9)}.lm-map .maplibregl-ctrl-group button+button{border-top-color:var(--line)}.lm-map .maplibregl-cooperative-gesture-screen{background:#000000bf;font-family:var(--font-body)}.lm-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted);font-size:.95rem;pointer-events:none;transition:opacity .4s}.lm-loading span{width:18px;height:18px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--teal);animation:lm-spin 1s linear infinite}@keyframes lm-spin{to{transform:rotate(360deg)}}.lm-ready .lm-loading{opacity:0}.lm-fallback{display:none;padding:28px 20px 32px;text-align:center;color:var(--muted);max-width:46ch;margin:0 auto}.lm-fallback p{margin:0 0 8px;font-size:.95rem;line-height:1.5}.lm-fallback b{color:var(--ink-2)}.lm-nowebgl .lm-map-wrap,.lm-hero.lm-nowebgl .lm-map-wrap{height:auto;min-height:0;max-height:none}.lm-nowebgl .lm-map{position:static;height:0}.lm-nowebgl .lm-fallback{display:block}.lm-nowebgl .lm-loading,.lm-nowebgl .lm-hint,.lm-nowebgl .lm-search{display:none}.lm-nowebgl .lm-top{position:static;padding-top:18px}.lm-top{position:absolute;top:14px;left:14px;right:14px;z-index:5;display:flex;flex-direction:column;gap:10px;pointer-events:none}.lm-top>*{pointer-events:auto}@media(min-width:900px){.lm-hero .lm-top{left:max(20px,calc((100% - var(--wrap)) / 2 + var(--gutter)));right:auto;width:min(780px,64%);top:20px}}.lm-search{position:relative}.lm-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--teal-deep);pointer-events:none}.lm-search input{width:100%;padding:15px 16px 15px 46px;border-radius:var(--radius);border:1.5px solid var(--line-strong);background:var(--card);color:var(--ink);font:inherit;font-size:1.02rem;box-shadow:0 8px 26px #00000059}.lm-search input::placeholder{color:var(--muted)}.lm-search input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-soft),0 8px 26px #17191c1a}.lm-results{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 16px 40px #00000024;z-index:6}.lm-res{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:10px 14px;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit}.lm-res:last-child{border-bottom:0}.lm-res:hover,.lm-res.on{background:var(--teal-soft)}.lm-res b{font-weight:600;font-size:.95rem}.lm-res span{font-size:.8rem;color:var(--muted)}.lm-res-empty{padding:12px 14px;font-size:.85rem;color:var(--muted)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.lm-quick{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;-webkit-overflow-scrolling:touch}.lm-quick::-webkit-scrollbar{display:none}.lm-quick{flex-wrap:nowrap}.lm-quick.has-more{-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent 100%);mask-image:linear-gradient(90deg,#000 88%,transparent 100%)}.lm-chip{flex:none;padding:9px 12px;min-height:40px;border-radius:8px;border:1px solid var(--line-strong);background:var(--card);color:var(--ink-2);font-family:var(--font-display);font-size:.92rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:all .15s;box-shadow:0 2px 8px #00000040}.lm-chip:hover{border-color:var(--teal);color:var(--teal-ink)}.lm-chip.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.lm-chip-all{color:var(--teal-deep);border-style:dashed}.lm-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.lm-toggle button{padding:8px 12px;min-height:36px;border-radius:8px;border:1px solid var(--line-strong);background:var(--card);color:var(--muted);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.lm-toggle button.on{background:var(--teal);color:#fff;border-color:var(--teal)}.lm-toggle-note{flex-basis:100%;font-size:.78rem;color:var(--muted);background:var(--card);border-radius:8px;padding:4px 8px}.lm-toggle-note:empty{display:none}.lm-hint{position:absolute;left:14px;bottom:14px;z-index:4;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--muted);font:inherit;font-size:.8rem;cursor:pointer;max-width:calc(100% - 80px);text-align:left}.lm-hint svg{color:var(--teal-deep);flex:none}@media(min-width:900px){.lm-hero .lm-hint{left:max(20px,calc((100% - var(--wrap)) / 2 + var(--gutter)));bottom:20px}}@media(max-width:899px){.lm-hint{right:70px;max-width:none;font-size:.74rem;padding:7px 11px}.lm-map .maplibregl-ctrl-bottom-left{bottom:0}}.lm-toast{position:absolute;left:50%;bottom:60px;transform:translate(-50%);z-index:6;padding:8px 14px;border-radius:8px;background:var(--ink);color:var(--paper);font-size:.85rem;font-weight:600;box-shadow:0 8px 24px #0003;max-width:calc(100% - 28px)}.lm-home{position:relative;width:18px;height:18px}.lm-home span{position:absolute;inset:0;border-radius:50%;background:var(--teal);border:3px solid var(--ink);box-shadow:0 2px 8px #0006}.lm-home span:after{content:"";position:absolute;inset:-8px;border-radius:50%;border:1.5px solid var(--teal);animation:lm-ring 2s ease-out infinite}@keyframes lm-ring{0%{transform:scale(.6);opacity:.9}to{transform:scale(1.8);opacity:0}}.lm-home b{position:absolute;top:22px;left:50%;transform:translate(-50%);font-family:var(--font-display);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);font-size:13px;white-space:nowrap;text-shadow:0 0 6px var(--paper),0 0 2px var(--paper)}.lm-head{width:12px;height:12px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px #ff000059,0 0 18px #ff0000e6}.lm-home,.lm-head,.lm-dest{pointer-events:none}.lm-dest{display:flex;flex-direction:column;align-items:center;gap:6px}.lm-dest img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid var(--ink);box-shadow:0 8px 22px #00000073}.lm-dest-dot{width:14px;height:14px;border-radius:50%;background:var(--teal);border:3px solid var(--ink);box-shadow:0 4px 14px #00000040}.lm-dest b{font-family:var(--font-display);font-size:13px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:4px 10px;border-radius:6px;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.lm-dest.has-photo:after{content:"";width:2px;height:10px;background:var(--ink);order:3}@media(prefers-reduced-motion:reduce){.lm-home span:after,.lm-loading span{animation:none}}.lm-top,.lm-hint{transition:opacity .18s ease}.lm-dim .lm-top,.lm-dim .lm-hint{opacity:.12}.lm-fold{display:none}.lm-panel{display:flex;flex-direction:column}.lm-hero .lm-panel{border-top:1px solid var(--line);background:var(--card)}@media(min-width:900px){.lm-hero .lm-panel{position:absolute;right:max(20px,calc((100% - var(--wrap)) / 2 + var(--gutter)));bottom:24px;width:380px;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);z-index:5}.lm-hero .lm-panel{transition:opacity .18s ease,width .2s ease;overflow:hidden}.lm-dim .lm-panel{opacity:.12}.lm-hero .lm-fold{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:13px 16px;background:none;border:0;border-bottom:1px solid var(--line);cursor:pointer;color:var(--ink-2);font:inherit;font-family:var(--font-display);font-weight:500;font-size:.92rem;letter-spacing:.05em;text-transform:uppercase;text-align:left}.lm-hero .lm-fold:hover{color:var(--teal-ink)}.lm-hero .lm-fold-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lm-hero .lm-fold-ico{flex:none;width:9px;height:9px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:translateY(-2px) rotate(-135deg);transition:transform .2s ease}.lm-hero .lm-panel.is-folded{width:300px}.lm-hero .lm-panel.is-folded .lm-card{display:none}.lm-hero .lm-panel.is-folded .lm-fold{border-bottom:0}.lm-hero .lm-panel.is-folded .lm-fold-ico{transform:translateY(2px) rotate(45deg)}.lm-hero .lm-map .maplibregl-ctrl-bottom-right{top:20px;bottom:auto}.lm-focus .lm-panel{border-left:1px solid var(--line);background:var(--card)}}.lm-card{padding:20px 18px 22px;display:flex;flex-direction:column;gap:10px}@media(min-width:900px){.lm-card{padding:22px 22px 24px}.lm-focus .lm-card{flex:1;overflow:auto}}.lm-card-top{min-height:22px}.lm-card-title{font-size:clamp(1.4rem,2.2vw,1.8rem)}.lm-card-tag{color:var(--muted);font-size:.95rem}.lm-facts{margin:6px 0 0;display:grid;grid-template-columns:repeat(3,auto);gap:10px 18px;justify-content:start}.lm-facts div{display:flex;flex-direction:column;gap:2px}.lm-facts dt{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.lm-facts dd{margin:0;font-family:var(--font-display);font-size:1.35rem;font-weight:500;font-variant-numeric:tabular-nums;color:var(--sand)}.lm-facts .ask{font-family:var(--font-body);font-size:.88rem;font-weight:600;color:var(--teal-deep)}.lm-note{font-size:.8rem;color:var(--muted)}.lm-stops{list-style:none;display:flex;flex-direction:column;margin-top:6px;border-top:1px solid var(--line);max-height:190px;overflow:auto}.lm-hero .lm-stops{max-height:150px}.lm-stop{display:flex;align-items:flex-start;gap:10px;width:100%;text-align:left;padding:8px 4px;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer}.lm-stop:hover{background:var(--paper)}.lm-stop-dot{flex:none;width:10px;height:10px;margin-top:6px;border-radius:50%;border:2px solid var(--teal);background:var(--paper)}.lm-stop-border .lm-stop-dot{border-color:var(--ink);background:var(--ink)}.lm-stop-night .lm-stop-dot,.lm-stop-finish .lm-stop-dot{background:var(--teal)}.lm-stop-name{display:flex;flex-direction:column;font-size:.9rem;font-weight:600}.lm-stop-name em{font-style:normal;font-weight:400;font-size:.78rem;color:var(--muted)}.lm-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.lm-actions .btn{padding:11px 16px;font-size:.95rem}.lm-bg{scroll-margin-top:84px}@media(max-width:899px){.lm-bg{border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.lm-bg .lm-map-wrap{height:440px;min-height:0;max-height:none}.lm-bg .lm-hint{display:none}}@media(min-width:900px){.lm-bg{position:absolute;inset:0;border:0;background:var(--paper)}.lm-bg .lm-map-wrap{height:100%;min-height:0;max-height:none;background:var(--paper)}.lm-bg .lm-top{left:auto;right:max(20px,calc((100% - var(--wrap)) / 2 + var(--gutter)));width:min(560px,42%);top:28px}.lm-bg .lm-hint{display:none}.lm-bg .lm-panel{left:auto;right:max(20px,calc((100% - var(--wrap)) / 2 + var(--gutter)));bottom:28px;width:380px}.lm-bg .lm-panel.is-folded{width:380px}.lm-bg .lm-map .maplibregl-ctrl-bottom-right{top:auto;bottom:28px;transform:none;right:calc(max(20px,calc((100% - var(--wrap)) / 2 + var(--gutter))) + 392px)}}
