.otello-map3d{container-type:inline-size;container-name:otmap;position:relative;inline-size:100%;block-size:100%;overflow:hidden;border-radius:8px;background:#fbf8f2;font-family:"Otello GS","Otello GS Fallback",sans-serif}.otello-map3d__canvas{position:absolute;inset:0}.otello-map3d__poster{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover;cursor:pointer}.otello-map3d__poster-hint{position:absolute;inset-block-end:16px;inset-inline-start:50%;transform:translateX(-50%);background:rgba(28,35,32,0.78);color:#fbf8f2;font-size:13px;padding:8px 16px;border-radius:999px;pointer-events:none}.otello-map3d__pin{appearance:none;border:none;padding:0;cursor:pointer;inline-size:26px;block-size:26px;border-radius:50%;background:#ffffff;border:1.5px solid #e4dccb;box-shadow:0 1px 3px rgba(28,35,32,0.28);display:flex;align-items:center;justify-content:center;transition:opacity 180ms ease,background 180ms ease;position:absolute;top:0;left:0}.otello-map3d__pin:focus-visible{outline:2px solid #0f5c5a;outline-offset:3px}.otello-map3d__pin--dim{opacity:0.32!important}.otello-map3d__pin--active{transform:scale(1.25);background:#d6caae;border-color:#c3b79b}.otello-map3d__pin--compact{inline-size:18px;block-size:18px}.otello-map3d__pin-icon{pointer-events:none}.otello-map3d__pin--compact .otello-map3d__pin-icon{width:10px;height:10px}.otello-map3d__pin--home{inline-size:40px;block-size:40px;background:transparent;border:none;box-shadow:0 3px 10px rgba(28,35,32,0.35)}.otello-map3d__mono{inline-size:100%;block-size:100%}.otello-map3d__home-label{position:absolute;inset-block-start:calc(100% + 6px);left:50%;transform:translateX(-50%);direction:ltr;unicode-bidi:isolate}.otello-map3d__wordmark{block-size:15px;inline-size:auto;display:block;filter:drop-shadow(0 1px 2px rgba(251,248,242,0.9)) drop-shadow(0 0 6px rgba(251,248,242,0.9))}.otello-map3d__label{position:absolute;top:0;left:0;white-space:nowrap;display:flex;flex-direction:column;align-items:center;gap:0;background:#fbf8f2;border:1px solid #e4dccb;border-radius:8px;padding:3px 8px;pointer-events:none;transition:opacity 160ms ease}.otello-map3d__label--hidden{opacity:0!important;pointer-events:none}.otello-map3d__label-name{font-size:11.5px;font-weight:600;color:#1c2320;line-height:1.25}.otello-map3d__label-min{font-size:10.5px;color:#6b6154;direction:ltr;unicode-bidi:isolate;line-height:1.2}.otello-map3d__route-label{position:absolute;top:0;left:0;display:inline-block;inline-size:auto;white-space:nowrap;isolation:isolate;will-change:transform,opacity;background:#1c2320;color:#fbf8f2;font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;pointer-events:none;transition:opacity 240ms ease;box-shadow:0 2px 8px rgba(28,35,32,0.3)}.otello-map3d__filters{position:absolute;inset-block-start:14px;inset-inline:14px;display:flex;flex-wrap:wrap;gap:6px;z-index:2}@media(max-width:600px){.otello-map3d__filters{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;inset-inline:8px;inset-block-start:8px;max-inline-size:calc(100% - 16px);mask-image:linear-gradient(to right,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 28px,#000 calc(100% - 28px),transparent 100%);padding-inline:14px;scroll-snap-type:x proximity}.otello-map3d__filters::-webkit-scrollbar{display:none}.otello-map3d__filter-btn{flex:none;font-size:12px;padding:6px 12px;min-block-size:48px;scroll-snap-align:start}}.otello-map3d__filter-btn{appearance:none;border:1px solid #e4dccb;background:rgba(251,248,242,0.92);backdrop-filter:blur(4px);color:#1c2320;font-size:13px;line-height:1;padding:8px 14px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-block-size:48px}.otello-map3d__filter-btn svg{flex:none;opacity:0.85}.otello-map3d__filter-btn[aria-pressed=true]{background:#1c2320;color:#fbf8f2;border-color:#1c2320}.otello-map3d__filter-btn[aria-pressed=true] svg{opacity:1}.otello-map3d__card{display:flex;flex-direction:column;gap:2px;font-family:"Otello GS","Otello GS Fallback",sans-serif;padding:2px}.otello-map3d__card-name{font-size:14px;font-weight:600;color:#1c2320}.otello-map3d__card-dist,.otello-map3d__card-walk{font-size:12.5px;color:#535b55}.otello-map3d__card-caveat{font-size:10.5px;color:#8a806c;font-style:italic}.otello-map3d__edge-arrow{position:absolute;top:0;left:0;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:2px;appearance:none;border:none;background:transparent;cursor:pointer;padding:4px;z-index:3}.otello-map3d__edge-arrow-chevron{inline-size:0;block-size:0;border-inline-start:7px solid transparent;border-inline-end:7px solid transparent;border-block-end:11px solid #1c2320;filter:drop-shadow(0 1px 2px rgba(251,248,242,0.9))}.otello-map3d__edge-arrow-dist{font-size:11px;font-weight:600;color:#1c2320;background:#fbf8f2;border:1px solid #e4dccb;border-radius:999px;padding:3px 9px;white-space:normal;max-inline-size:180px;text-align:center;overflow:visible}.maplibregl-popup-content{border-radius:8px!important;box-shadow:0 8px 24px rgba(28,35,32,0.18)!important;padding:10px 14px!important}.otello-map3d__attrib{position:absolute;inset-block-end:10px;left:10px;z-index:2;display:flex;align-items:center;gap:6px;direction:ltr}.otello-map3d__attrib-short{font-size:10.5px;color:#535b55;background:rgba(251,248,242,0.82);padding:2px 6px;border-radius:4px;white-space:nowrap}.otello-map3d__attrib-btn{appearance:none;border:1px solid #c3b79b;background:rgba(251,248,242,0.9);color:#1c2320;inline-size:18px;block-size:18px;border-radius:50%;font-size:11px;font-style:italic;font-weight:700;line-height:1;cursor:pointer;padding:0}.otello-map3d__attrib-full{position:absolute;inset-block-end:calc(100% + 6px);left:0;inline-size:max-content;max-inline-size:260px;background:#fbf8f2;border:1px solid #e4dccb;border-radius:6px;padding:6px 10px;font-size:10.5px;line-height:1.5;color:#535b55;box-shadow:0 4px 12px rgba(28,35,32,0.18)}.otello-map3d__attrib-full a{color:#0f5c5a}@media(prefers-reduced-motion:reduce){.otello-map3d__pin,.otello-map3d__label,.otello-map3d__route-label{transition:none}}.otello-map3d__canvas{opacity:0;transition:opacity 700ms cubic-bezier(0.22,1,0.36,1)}.otello-map3d--ready .otello-map3d__canvas{opacity:1}.otello-map3d__pin--away{opacity:0!important;pointer-events:none}.otello-map3d__fly{position:absolute;right:14px;bottom:14px;z-index:3;appearance:none;display:inline-flex;align-items:center;gap:10px;min-block-size:48px;padding:6px 18px 6px 8px;border:0;border-radius:999px;background:rgba(251,248,242,0.95);backdrop-filter:blur(4px);color:#1c2320;font:500 15px/1 "Otello GS","Otello GS Fallback",sans-serif;box-shadow:0 6px 18px rgba(28,35,32,0.16);cursor:pointer;transition:background-color 400ms cubic-bezier(0.22,1,0.36,1),color 400ms cubic-bezier(0.22,1,0.36,1)}.otello-map3d__fly[dir=rtl]{padding:6px 8px 6px 18px}.otello-map3d__fly-mono{inline-size:34px;block-size:34px;flex:none;display:block}.otello-map3d__fly-mono svg{inline-size:100%;block-size:100%;display:block}.otello-map3d__fly:hover,.otello-map3d__fly[aria-pressed=true]{background:#1c2320;color:#fbf8f2}.otello-map3d__fly:focus-visible{outline:2px solid #b89a63;outline-offset:3px}.otello-map3d--project .otello-map3d__route-label,.otello-map3d--project .otello-map3d__label{visibility:hidden;pointer-events:none}@media(max-width:600px){.otello-map3d__fly{right:8px;bottom:40px;font-size:14px}}@media(prefers-reduced-motion:reduce){.otello-map3d__canvas,.otello-map3d__fly{transition:none}}.otello-map3d__filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-inline-size:calc(100% - 28px);mask-image:linear-gradient(to right,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%);padding-inline:10px}.otello-map3d__filters::-webkit-scrollbar{display:none}.otello-map3d__filter-btn{flex:none}.otello-map3d__ctrl{position:absolute;right:14px;bottom:76px;z-index:3;display:flex;flex-direction:column;border-radius:12px;overflow:hidden;background:rgba(251,248,242,0.95);backdrop-filter:blur(4px);box-shadow:0 6px 18px rgba(28,35,32,0.14)}.otello-map3d__ctrl-btn{appearance:none;inline-size:44px;block-size:44px;display:grid;place-items:center;border:0;border-bottom:1px solid #e4dccb;background:transparent;color:#1c2320;cursor:pointer;transition:background-color 300ms ease}.otello-map3d__ctrl-btn:last-child{border-bottom:0}.otello-map3d__ctrl-btn:hover{background:#efe8da}.otello-map3d__ctrl-btn:focus-visible{outline:2px solid #b89a63;outline-offset:-2px}@media(max-width:600px){.otello-map3d__ctrl{right:8px;bottom:100px}.otello-map3d__ctrl-btn{inline-size:44px;block-size:44px}}.otello-map3d .maplibregl-cooperative-gesture-screen{background:rgba(28,35,32,0.5);color:#fbf8f2;font:500 17px/1.4 "Otello GS","Otello GS Fallback",sans-serif;direction:rtl}@container otmap (max-width: 1000px){.otello-map3d__filters{gap:4px;padding-inline:6px;mask-image:none;-webkit-mask-image:none}.otello-map3d__filter-btn{font-size:12px;padding:6px 9px;gap:4px}.otello-map3d__filter-btn svg{width:12px;height:12px}}@container otmap (max-width: 600px){.otello-map3d__filters{mask-image:linear-gradient(to right,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%);padding-inline:14px}}.otello-map3d__pin--culled{visibility:hidden!important;pointer-events:none}@container otmap (max-width: 720px) and (min-width: 601px){.otello-map3d__filters{gap:3px;padding-inline:4px}.otello-map3d__filter-btn{font-size:11.5px;padding:6px 8px}.otello-map3d__filter-btn svg{display:none}}
