.App{text-align:center;min-height:100vh;display:flex;flex-direction:column;position:relative}.app-fade{opacity:0;transform:translateY(4px);transition:opacity .32s ease,transform .32s ease}.app-fade.is-ready{opacity:1;transform:translateY(0)}.App-header{background-color:#282c34;padding:1rem;color:#fff;position:relative;z-index:1}.App-header h1{margin:0;font-size:2rem}.App-main{flex:1;position:relative;padding:0;background-color:transparent;overflow:hidden}.App h1{font-size:3.2em;line-height:1.1}@media (prefers-color-scheme: light){.App h1{color:#213547}}@media (prefers-color-scheme: dark){.App h1{color:#fff}}.map-container{position:fixed;top:0;bottom:0;left:0;right:0;width:100%;height:100vh;z-index:0}.map-controls{position:absolute;top:20px;left:50%;transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;gap:10px;pointer-events:none}.map-controls>*{pointer-events:auto}.map-error{width:100%;height:100%;min-height:400px;display:flex;align-items:center;justify-content:center;background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:8px;padding:1rem;text-align:center}.mapboxgl-ctrl-top-right{top:80px!important}.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top{left:50%;top:0;transform:translate(-50%)}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-right{right:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translate(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{left:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:initial;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;box-sizing:initial;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid #0000;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:initial;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:#000000b3;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}:root{--font-family: "Inter", "SF Pro Display", -apple-system, BlinkMacSystemFont, sans-serif;--glass-bg: rgba(0, 0, 0, .35);--glass-bg-card: rgba(128, 128, 128, .25);--glass-border: rgba(255, 255, 255, .15);--glass-blur: blur(18px) saturate(180%);--glass-shadow: 0 4px 16px rgba(0, 0, 0, .12);--glass-radius: 20px;--card-overlay: linear-gradient(180deg, rgba(0, 0, 0, .45) 0%, rgba(0, 0, 0, .35) 100%);--card-overlay-hover: linear-gradient(180deg, rgba(0, 0, 0, .55) 0%, rgba(0, 0, 0, .45) 100%);--text-primary: #FFFFFF;--text-secondary: #FAFAFA;--text-tertiary: #E0E0E0;--text-meta-badge: #E8E8E8;--text-accent: #00C2FF;--text-shadow-heading: 0 1px 3px rgba(0, 0, 0, .65);--text-shadow-body: 0 1px 2px rgba(0, 0, 0, .5);--text-stroke-heading: .25px rgba(0, 0, 0, .4);--card-border: 1px solid rgba(255, 255, 255, .18);--card-shadow: 0 6px 20px rgba(0, 0, 0, .16);--card-padding: 22px 24px;--card-spacing: 16px;--connection-line: 2px;--header-height: 64px;--toggle-height: 36px;--transition-fast: .25s cubic-bezier(.4, 0, .2, 1);--transition-smooth: .4s cubic-bezier(.4, 0, .2, 1);--priority-must-see: #FF4757;--priority-recommended: #FFA726;--priority-optional: rgba(255, 255, 255, .75);--focus-ring: 2px solid rgba(0, 194, 255, .6)}.card-base{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:var(--card-border);border-radius:16px;box-shadow:var(--card-shadow);padding:var(--card-padding);position:relative;transition:var(--transition-fast)}.card-base:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:var(--card-overlay);border-radius:inherit;transition:var(--transition-fast)}.card-base:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000029}.card-base:hover:before{background:var(--card-overlay-hover)}.badge-base{width:32px;height:32px;border-radius:16px;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);background:#ffffff2e;border:1px solid rgba(255,255,255,.25);box-shadow:0 3px 9px #0000001f;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:2;transition:var(--transition-fast)}.title-primary{font:700 20px/26px var(--font-family);color:var(--text-primary);letter-spacing:.2px;text-shadow:var(--text-shadow-heading);-webkit-text-stroke:var(--text-stroke-heading)}.title-secondary{font:400 16px/24px var(--font-family);color:var(--text-secondary);letter-spacing:.2px;text-shadow:var(--text-shadow-body)}.meta-text{font:600 12px/22px var(--font-family);color:var(--text-meta-badge);letter-spacing:.2px;text-shadow:var(--text-shadow-body)}.trip-summary__day-layout-button{border:1px solid rgba(255,255,255,.18);background:#ffffff14;color:var(--text-primary, #fff);border-radius:50%;width:32px;height:32px;cursor:pointer;transition:var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}.trip-summary__day-layout-button--loading svg{display:none}.trip-summary__day-layout-button-spinner{width:16px;height:16px;min-width:16px;min-height:16px;max-width:16px;max-height:16px;border:3px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:trip-summary-spinner-rotate .7s linear infinite;display:inline-block;flex-shrink:0;box-shadow:0 0 6px #fff6,0 0 12px #fff3;filter:drop-shadow(0 0 4px rgba(255,255,255,.3))}@keyframes trip-summary-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.trip-summary__day-layout-button:hover{background:#ffffff29;transform:translateY(-1px)}.trip-summary__day-layout-button[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);white-space:nowrap;font:500 12px/1 var(--font-family);color:var(--text-primary);background:#000c;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:6px 10px;opacity:0;pointer-events:none;transition:opacity .2s ease;box-shadow:0 4px 12px #0000004d;z-index:1000}.trip-summary__day-layout-button[data-tooltip]:hover:after{opacity:1}.trip-summary__day-layout-button:focus-visible{outline:var(--focus-ring);outline-offset:2px}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes floatIn{0%{opacity:0;transform:translate(-40px) translateY(20px);filter:blur(8px)}to{opacity:1;transform:translate(0) translateY(0);filter:blur(0)}}.focusable:focus-visible{outline:var(--focus-ring);outline-offset:2px}.trip-summary{position:fixed;left:20px;top:80px;width:380px;min-width:320px;max-width:420px;max-height:calc(100vh - 100px);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:var(--card-border);border-radius:16px;box-shadow:var(--card-shadow);overflow:hidden;z-index:1000;display:flex;flex-direction:column;font-family:var(--font-family);transition:var(--transition-smooth);pointer-events:none}.trip-summary>*{pointer-events:auto}.trip-summary.hidden{transform:translate(-100%);opacity:0}.trip-summary-toggle-fab{position:fixed;left:20px;top:20px;z-index:1001;width:48px;height:48px;padding:0;background:#0009;-webkit-backdrop-filter:blur(18px) saturate(180%);backdrop-filter:blur(18px) saturate(180%);border:1px solid rgba(255,255,255,.25);border-radius:16px;color:#fff;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px #00000040,inset 0 1px #ffffff1a;transition:all .25s cubic-bezier(.4,0,.2,1)}.trip-summary-toggle-fab:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0%,rgba(94,139,255,.05) 100%);border-radius:inherit;opacity:0;transition:opacity .2s ease}.trip-summary-toggle-fab:hover{transform:translateY(-2px);box-shadow:0 10px 36px #0000004d;background:#000000bf}.trip-summary-toggle-fab:hover:before{opacity:1}.trip-summary-toggle-fab:focus-visible{outline:var(--focus-ring);outline-offset:2px}.trip-summary-toggle-fab__icon{width:22px;height:22px;color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}@media (max-width: 640px){.trip-summary-toggle-fab{width:44px;height:44px;border-radius:14px}}.trip-summary-toggle-fab[data-label]{position:fixed}.trip-summary-toggle-fab[data-label]:after{content:attr(data-label);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);white-space:nowrap;font:500 12px/1 var(--font-family);color:var(--text-secondary);background:#00000080;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px 10px;opacity:0;pointer-events:none;transition:opacity .15s ease;box-shadow:0 4px 12px #0003}.trip-summary-toggle-fab:hover:after,.trip-summary-toggle-fab:focus-visible:after{opacity:1}.trip-summary-header{background:transparent;padding:8px 8px 0 12px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;grid-template-areas:"title controls" "title tabs";align-items:center;column-gap:12px;row-gap:2px;position:relative;z-index:2;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0;text-align:left;min-height:100px}.trip-summary-header:before{display:none}.trip-header-content{flex:1;min-width:0;position:relative;z-index:2;grid-area:title}.trip-header-controls{grid-area:controls;display:inline-flex;align-items:center;gap:8px;justify-self:end;align-self:start;position:relative;padding-right:40px;flex-wrap:wrap}.trip-title-container{display:flex;flex-direction:column;gap:20px}.trip-title{margin:0;font:700 22px/28px var(--font-family);color:var(--text-primary);letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:var(--text-shadow-heading);-webkit-text-stroke:var(--text-stroke-heading)}.trip-badge{font:500 16px/22px var(--font-family);color:var(--text-secondary);letter-spacing:.2px;text-shadow:var(--text-shadow-body);margin-right:2px}.trip-close-btn{width:28px;height:28px;border-radius:50%;background:#0006;border:none;color:#ffffffe6;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;font-size:16px;font-weight:400;line-height:1;transition:all .15s ease;flex-shrink:0;outline:none;position:absolute;top:0;right:0;z-index:2}.trip-close-btn:hover{background:#fff3;color:#fff;transform:scale(1.1)}.trip-close-btn:active{transform:scale(.95);background:#0006}.trip-close-btn:focus-visible{outline:var(--focus-ring);outline-offset:2px}.trip-download-btn{width:28px;height:28px;border-radius:50%;border:none;background:#0006;color:#ffffffe6;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:all .15s ease;flex-shrink:0;outline:none;position:relative}.trip-download-btn:hover:not(:disabled){background:#fff3;color:#fff;transform:scale(1.1)}.trip-download-btn:active:not(:disabled){transform:scale(.95);background:#0006}.trip-download-btn:disabled{opacity:.45;cursor:not-allowed}.trip-download-btn:focus-visible{outline:var(--focus-ring);outline-offset:2px}.trip-download-btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);white-space:nowrap;font:500 12px/1 var(--font-family);color:var(--text-primary);background:#000c;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:6px 10px;opacity:0;pointer-events:none;transition:opacity .2s ease;box-shadow:0 4px 12px #0000004d;z-index:1000}.trip-download-btn[data-tooltip]:hover:after,.trip-download-btn[data-tooltip]:focus-visible:after{opacity:1}.trip-download-btn__icon{width:14px;height:14px}.trip-summary-content{flex:1;overflow-y:auto;overflow-x:visible;display:flex;flex-direction:column;padding-right:8px;min-height:0}.trip-summary-content::-webkit-scrollbar{display:none}.trip-summary-content{-ms-overflow-style:none;scrollbar-width:none}.trip-summary-tabs{display:inline-flex;gap:2px;padding:2px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:12px;grid-area:tabs;justify-self:end;margin-right:2px}.trip-summary-tab{background:transparent;color:var(--text-secondary);border:none;border-radius:10px;padding:6px 10px;cursor:pointer;transition:var(--transition-fast)}.trip-summary-tab.active{background:#00000059;color:var(--text-primary)}.single-area-placeholder{background:var(--glass-bg-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:var(--card-border);border-radius:16px;box-shadow:var(--card-shadow);padding:var(--card-padding);text-align:center;position:relative}.single-area-placeholder:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:var(--card-overlay);border-radius:inherit;transition:var(--transition-fast)}.single-area-placeholder p{margin:0 0 16px;font:400 16px/24px var(--font-family);color:var(--text-secondary);letter-spacing:.2px;text-shadow:var(--text-shadow-body);position:relative;z-index:2}.trip-summary-animated{animation:floatIn var(--transition-smooth) cubic-bezier(.4,0,.2,1)}.single-area-trip-summary{display:flex;flex-direction:column;gap:var(--card-spacing);animation:floatIn var(--transition-smooth) cubic-bezier(.4,0,.2,1)}.single-area-trip-summary__days-list{display:flex;flex-direction:column}.single-area-trip-summary__days-list:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:var(--card-overlay);border-radius:inherit}.single-area-trip-summary__day-container{position:relative;z-index:1;display:flex;flex-direction:column}.single-area-trip-summary__day-header{display:flex;align-items:stretch}.single-area-trip-summary__day-container:not(:last-child){border-bottom:1px solid rgba(255,255,255,.08)}.single-area-trip-summary__day-summary-bar{background:transparent;border:none;border-radius:0;box-shadow:none;padding:var(--card-padding);width:100%;cursor:pointer;display:flex;align-items:center;gap:16px;transition:var(--transition-fast);font-family:var(--font-family);position:relative}.single-area-trip-summary__day-summary-bar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:#ffffff05;opacity:0;transition:var(--transition-fast)}.single-area-trip-summary__day-summary-bar:hover{transform:none}.single-area-trip-summary__day-summary-bar:hover:before{opacity:1;background:#ffffff0f}.single-area-trip-summary__day-summary-main{display:flex;align-items:center;gap:16px;flex:1;min-width:0}.single-area-trip-summary__day-layout-button{flex-shrink:0}.single-area-trip-summary__day-badge{width:36px;height:36px;border-radius:18px;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);background:#ffffff2e;border:1px solid rgba(255,255,255,.25);box-shadow:0 3px 9px #0000001f;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:2;transition:var(--transition-fast);cursor:pointer}.single-area-trip-summary__day-badge svg{width:18px;height:18px;color:#fff;stroke:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}.single-area-trip-summary__day-badge:hover{background:#ffffff40;box-shadow:0 0 6px #0096ff73,0 3px 9px #0000001f}.single-area-trip-summary__day-badge:focus-visible{outline:var(--focus-ring);outline-offset:2px}.single-area-trip-summary__day-badge[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);white-space:nowrap;font:500 12px/1 var(--font-family);color:var(--text-primary);background:#000c;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:6px 10px;opacity:0;pointer-events:none;transition:opacity .2s ease;box-shadow:0 4px 12px #0000004d;z-index:1000}.single-area-trip-summary__day-badge[data-tooltip]:hover:after{opacity:1}.single-area-trip-summary__day-summary-text{flex:1;text-align:left;min-width:0;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center}.single-area-trip-summary__day-label{display:block;font:700 20px/26px var(--font-family);color:var(--text-primary);letter-spacing:.2px;margin-bottom:4px;text-shadow:var(--text-shadow-heading);-webkit-text-stroke:var(--text-stroke-heading)}.single-area-trip-summary__day-meta{display:block;font:400 16px/24px var(--font-family);color:var(--text-secondary);letter-spacing:.2px;text-shadow:var(--text-shadow-body)}.single-area-trip-summary__day-chevron{font-size:12px;color:#ffffffe6;transition:.2s ease-out;flex-shrink:0;position:relative;z-index:2;text-shadow:var(--text-shadow-body);transform:rotate(-90deg)}@keyframes spin{to{transform:rotate(360deg)}}.single-area-trip-summary__day-chevron.rotated{transform:rotate(0);color:var(--text-secondary)}.single-area-trip-summary__day-content{padding:16px 0 0;animation:slideDown var(--transition-fast);background:#00000026;border-top:1px solid rgba(255,255,255,.05);position:relative;z-index:1;flex:1}.single-area-trip-summary__day-content--compact{padding-top:0}.single-area-trip-summary__day-content--with-gap{padding-top:14px}.single-area-trip-summary__day-container:not(:last-child) .single-area-trip-summary__day-content{margin-bottom:-1px}.single-area-trip-summary__attractions-timeline{display:flex;flex-direction:column;gap:8px;position:relative;margin:0 16px 16px}.single-area-trip-summary__drop-indicator{height:2px;margin:4px 8px;border-radius:1px;background:linear-gradient(90deg,#00c2ff00,#00c2ffe6,#00c2ff00);box-shadow:0 0 8px #00c2ff59}.single-area-trip-summary__attraction-transport{margin:0 0 0 20px}.single-area-trip-summary__attraction-transport.transport-display{gap:10px;padding:0 6px}.single-area-trip-summary__attraction-transport .transport-line{width:20px}.single-area-trip-summary__attraction-transport .transport-info{gap:7px;padding:6px 11px;border-radius:11px}.single-area-trip-summary__attraction-transport .transport-icon{font-size:12px}.single-area-trip-summary__attraction-transport .transport-text{font:500 13px/16px var(--font-family)}.single-area-trip-summary__attraction-transport .transport-directions-button{width:20px;height:20px}.single-area-trip-summary__attraction-transport .transport-directions-icon{width:11px;height:11px}.single-area-trip-summary__hotel-segment,.single-area-trip-summary__restaurant-segment{margin-left:20px}.single-area-trip-summary__day-summary-bar:focus-visible{outline:var(--focus-ring);outline-offset:2px}._explorePrompt_9vohm_1{margin:0 0 12px;padding:8px 16px 0;position:relative;z-index:2}._form_9vohm_8{display:flex;align-items:center;gap:8px;position:relative;z-index:2}._input_9vohm_16{flex:1;height:44px;border-radius:12px;border:2px solid rgba(255,255,255,.3);background:transparent;color:#fff;-webkit-text-fill-color:#FFFFFF;caret-color:#fff;padding:0 16px;outline:none;font-size:16px;width:100%;position:relative;z-index:2}._input_9vohm_16::placeholder{color:#fafafa;opacity:.85}._send_9vohm_38{width:44px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:#0006;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}._send_9vohm_38:disabled{opacity:.6;cursor:default}._spinner_9vohm_57{width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.25);border-top-color:#00c2ff;border-right-color:#00c2ff99;animation:_spin_9vohm_57 .7s linear infinite;box-shadow:0 0 8px #00c2ff4d,inset 0 0 4px #00c2ff33}@keyframes _spin_9vohm_57{to{transform:rotate(360deg)}}._examples_9vohm_72{margin-top:20px;padding:12px 0;position:relative}._examples_9vohm_72:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:40px;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.6) 50%,transparent 100%);border-radius:1px;opacity:.7}._chips_9vohm_91{display:flex;flex-direction:column;gap:16px;position:relative}._chip_9vohm_91{position:relative;border:1px solid rgba(255,255,255,.25);background:linear-gradient(135deg,#ffffff26,#ffffff14,#ffffff0d);color:var(--text-primary);padding:18px 24px 18px 20px;font:500 15px/22px var(--font-family);text-align:left;cursor:pointer;border-radius:20px;transition:all .4s cubic-bezier(.25,.46,.45,.94);-webkit-backdrop-filter:blur(20px) saturate(1.2);backdrop-filter:blur(20px) saturate(1.2);box-shadow:0 4px 20px #0000001f,0 2px 8px #00000014,0 1px 3px #0000000d,inset 0 1px #ffffff26,inset 0 -1px #ffffff0d;transform:translateY(0) scale(1);overflow:hidden}._chip_9vohm_91:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),linear-gradient(135deg,transparent 0%,rgba(255,255,255,.05) 100%);opacity:0;transition:opacity .4s ease;pointer-events:none}._chip_9vohm_91:after{content:"";position:absolute;top:1px;left:1px;right:1px;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 25%,rgba(255,255,255,.6) 50%,rgba(255,255,255,.4) 75%,transparent 100%);border-radius:20px;opacity:0;transition:all .4s ease;pointer-events:none}._chip_9vohm_91:hover{background:linear-gradient(135deg,#ffffff38,#ffffff1f,#ffffff14);border-color:#fff6;transform:translateY(-4px) scale(1.02);box-shadow:0 8px 32px #0000002e,0 4px 16px #0000001f,0 2px 8px #00000014,inset 0 1px #ffffff40,inset 0 -1px #ffffff1a,0 0 0 1px #ffffff1a}._chip_9vohm_91:hover:before{opacity:1}._chip_9vohm_91:hover:after{opacity:1;transform:scaleX(1.05)}._chip_9vohm_91:active{transform:translateY(-2px) scale(1.01);transition:all .15s cubic-bezier(.25,.46,.45,.94);box-shadow:0 6px 24px #00000026,0 3px 12px #0000001a,0 1px 6px #0000000f,inset 0 1px #fff3,inset 0 -1px #ffffff14}._chip_9vohm_91:focus-visible{outline:none;border-color:#ffffff80;box-shadow:0 4px 20px #0000001f,0 2px 8px #00000014,0 1px 3px #0000000d,inset 0 1px #ffffff26,inset 0 -1px #ffffff0d,0 0 0 2px #ffffff4d}.auth-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(60% 60% at 50% 20%,rgba(59,130,246,.1),transparent 60%),radial-gradient(50% 50% at 70% 80%,rgba(16,185,129,.08),transparent 60%),#0000002e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1100;animation:overlay-fade .18s ease-out both}.auth-modal{width:360px;max-width:92vw;color:#e5e7eb;background:linear-gradient(180deg,#111827b8,#0b111fb8);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:22px;box-shadow:0 24px 64px #00000040;position:relative;overflow:hidden;transform-origin:center;animation:modal-pop .2s cubic-bezier(.2,.8,.25,1) both}.auth-modal:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:16px;pointer-events:none;background:radial-gradient(60% 60% at 20% 0%,rgba(59,130,246,.06),transparent 60%)}.auth-title{margin:0 0 8px;font-size:20px;letter-spacing:.2px}.auth-description{margin:0 0 16px;color:#9ca3af}.auth-warning{margin:0 0 16px;color:#fca5a5}.google-btn{width:100%;padding:10px 14px;background:#fff;color:#111827;border:1px solid rgba(0,0,0,.06);border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 6px 18px #0000002e,inset 0 1px #fff9;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease}.google-btn:hover{transform:translateY(-1px);box-shadow:0 10px 26px #00000038,inset 0 1px #ffffffb3}.google-btn:active{transform:translateY(0)}.auth-cancel{width:100%;margin-top:10px;padding:8px 12px;background:transparent;color:#9ca3af;border:1px solid rgba(255,255,255,.12);border-radius:10px;cursor:pointer;transition:border-color .14s ease,color .14s ease,background-color .14s ease}.auth-cancel:hover{color:#e5e7eb;border-color:#ffffff2e;background:#ffffff05}.trip-card{--trip-card-gap: 12px;--trip-card-min-height: 110px;--priority-indicator-width: 3px;--content-padding: 24px 18px 4px 30px;--content-min-height: 90px;--info-left: 12px;--info-right: 18px;--info-bottom: 10px;--info-top: auto;--info-min-height: 52px;--info-gap: 4px;--remove-btn-top: 8px;--remove-btn-right: 8px;--remove-btn-bottom: auto;--remove-btn-left: auto;--overlay-top-left-top: 8px;--overlay-top-left-left: 8px;--overlay-top-right-top: 8px;--overlay-top-right-right: 8px;--overlay-bottom-left-bottom: 8px;--overlay-bottom-left-left: 8px;--overlay-bottom-right-bottom: 8px;--overlay-bottom-right-right: 8px;background:transparent;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(255,255,255,.12);border-radius:12px;box-shadow:0 3px 12px #0000000f;padding:0;cursor:pointer;display:flex;align-items:flex-start;gap:var(--trip-card-gap);transition:var(--transition-fast);position:relative;overflow:hidden;min-height:var(--trip-card-min-height)}.trip-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#00000040 12%,#000000ad);border-radius:inherit;transition:var(--transition-fast);z-index:1}.trip-card:hover,.trip-card--hover{transform:translateY(-1px);box-shadow:0 6px 18px #0000001f;border-color:#ffffff26}.trip-card:hover:before,.trip-card--hover:before,.trip-card:focus-visible:before,.trip-card:focus-within:before{background:linear-gradient(180deg,#00000059,#000000a6 25%,#000000d9)}.trip-card__remove-btn{position:absolute;top:var(--remove-btn-top);right:var(--remove-btn-right);bottom:var(--remove-btn-bottom);left:var(--remove-btn-left);width:24px;height:24px;border-radius:12px;background:#000000c7;color:#fff;border:1px solid rgba(255,255,255,.38);display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;cursor:pointer;transition:var(--transition-fast);z-index:4;box-shadow:0 2px 10px #00000059,0 0 0 2px #ffffff2e}.trip-card__remove-btn:hover{background:#000000e6;transform:scale(1.05)}.trip-card__remove-btn:disabled{cursor:not-allowed;opacity:.7}.trip-card__remove-btn--pending{pointer-events:none}.trip-card__priority-indicator{position:absolute;left:0;top:0;bottom:0;width:var(--priority-indicator-width);border-radius:0 2px 2px 0;z-index:2}.trip-card__content{flex:1;display:flex;gap:8px;position:relative;z-index:2;min-width:0;flex-direction:column;justify-content:flex-end;min-height:var(--content-min-height);padding:var(--content-padding)}.trip-card__content:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000 32%,#00000073 62%,#000c);z-index:1;pointer-events:none}.trip-card:hover .trip-card__content:before,.trip-card--hover .trip-card__content:before,.trip-card:focus-visible .trip-card__content:before,.trip-card:focus-within .trip-card__content:before{background:linear-gradient(180deg,#00000040,#000000a6 35%,#000000e6)}.trip-card__info{position:absolute;left:var(--info-left);right:var(--info-right);bottom:var(--info-bottom);top:var(--info-top);z-index:2;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:var(--info-gap);text-align:left;min-width:0;min-height:var(--info-min-height)}.trip-card:hover .trip-card__info,.trip-card--hover .trip-card__info,.trip-card:focus-visible .trip-card__info,.trip-card:focus-within .trip-card__info{top:var(--info-top-hover, var(--info-top))}.trip-card__description{margin:0 0 8px;font:600 16px/24px var(--font-family);color:#fffffff7;letter-spacing:.1px;text-shadow:0 2px 12px rgba(0,0,0,.7);-webkit-text-stroke:.18px rgba(0,0,0,.55);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:left;opacity:0;max-height:0;transform:translateY(8px);transition:opacity .22s ease,transform .24s ease,max-height .26s ease,margin .22s ease;will-change:opacity,transform;pointer-events:none}.trip-card:hover .trip-card__description,.trip-card--hover .trip-card__description,.trip-card:focus-within .trip-card__description,.trip-card:focus-visible .trip-card__description{opacity:1;max-height:220px;margin:0 0 8px;transform:translateY(0);pointer-events:auto}@media (prefers-reduced-motion: reduce){.trip-card__description{transition:opacity .2s ease;transform:none}.trip-card:hover .trip-card__description,.trip-card:focus-within .trip-card__description,.trip-card:focus-visible .trip-card__description{transform:none}}.trip-card__image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:inherit;overflow:hidden;z-index:0;pointer-events:none}.trip-card__image img{width:100%;height:100%;object-fit:cover;transition:var(--transition-fast)}.trip-card:hover .trip-card__image img,.trip-card--hover .trip-card__image img{transform:scale(1.05)}.trip-card:focus-visible{outline:var(--focus-ring);outline-offset:2px}.trip-card__overlay{position:absolute;z-index:3;pointer-events:auto}.trip-card__overlay--top-left{top:var(--overlay-top-left-top);left:var(--overlay-top-left-left)}.trip-card__overlay--top-right{top:var(--overlay-top-right-top);right:var(--overlay-top-right-right)}.trip-card__overlay--bottom-left{bottom:var(--overlay-bottom-left-bottom);left:var(--overlay-bottom-left-left)}.trip-card__overlay--bottom-right{bottom:var(--overlay-bottom-right-bottom);right:var(--overlay-bottom-right-right)}.trip-card__overlay--center{top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.suggestion-card{--info-top: 0px;--info-top-hover: -16px}.suggestion-card .trip-card__content,.suggestion-card .single-area-trip-summary__attraction-content{display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:4px}.suggestion-card .trip-card__info,.suggestion-card .single-area-trip-summary__attraction-info{display:flex;flex-direction:column;gap:4px;position:absolute;left:12px;right:18px;bottom:10px;z-index:2;min-height:52px;justify-content:flex-end}.suggestion-card .trip-card__title,.suggestion-card .single-area-trip-summary__attraction-name{margin:0}.suggestion-card .trip-card__description,.suggestion-card .single-area-trip-summary__attraction-description{margin:0;font:600 16px/23px var(--font-family)}.suggestion-card:after{content:none}.suggestion-card .trip-card__content:before,.suggestion-card .single-area-trip-summary__attraction-content:before{background:linear-gradient(180deg,#0000 32%,#00000073 62%,#000c)}.suggestion-card:hover:before,.suggestion-card.trip-card--hover:before,.suggestion-card:focus-visible:before,.suggestion-card:focus-within:before{background:linear-gradient(180deg,#00000059,#000000a6 25%,#000000d9)}.suggestion-card:hover .trip-card__content:before,.suggestion-card.trip-card--hover .trip-card__content:before,.suggestion-card:focus-visible .trip-card__content:before,.suggestion-card:focus-within .trip-card__content:before,.suggestion-card:hover .single-area-trip-summary__attraction-content:before,.suggestion-card.trip-card--hover .single-area-trip-summary__attraction-content:before,.suggestion-card:focus-visible .single-area-trip-summary__attraction-content:before,.suggestion-card:focus-within .single-area-trip-summary__attraction-content:before{background:linear-gradient(180deg,#00000040,#000000a6 35%,#000000e6)}.suggestion-card:hover .trip-card__content,.suggestion-card.trip-card--hover .trip-card__content{padding-top:var(--suggestion-content-padding-top-hover, 0px)}.suggestion-card__name-with-priority{display:flex;align-items:flex-start;gap:8px;margin-bottom:2px;order:2}.suggestion-card__priority-badge{width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;font-weight:600;flex-shrink:0;box-shadow:0 2px 6px #0006;margin-top:2px;position:relative;cursor:help}.suggestion-card__priority-badge:hover:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500;white-space:nowrap;z-index:10;margin-bottom:4px}.suggestion-card__priority-badge:hover:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:#000000e6;z-index:10}.suggestion-card .trip-card__title,.suggestion-card .single-area-trip-summary__attraction-name{text-shadow:0 3px 14px rgba(0,0,0,.85);margin:0}.suggestion-card .trip-card__description,.suggestion-card .single-area-trip-summary__attraction-description{text-shadow:0 3px 16px rgba(0,0,0,.95),0 1px 4px rgba(0,0,0,.8);margin:0}.suggestion-card:hover .trip-card__description,.suggestion-card.trip-card--hover .trip-card__description,.suggestion-card:focus-within .trip-card__description,.suggestion-card:focus-visible .trip-card__description{opacity:1;max-height:none;margin:0 0 8px;transform:translateY(0);pointer-events:auto;-webkit-line-clamp:unset;line-clamp:unset;display:block;overflow:visible}.priority-badge{display:inline-flex;align-items:center;justify-content:center;font-size:10px;color:#fff;font-weight:600;box-shadow:0 2px 6px #0006;position:relative;cursor:help}.priority-badge__symbol{line-height:0;display:flex;align-items:center;justify-content:center}.priority-tooltip{position:absolute;transform:translate(-50%,calc(-100% - 8px));background:#000000e6;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500;white-space:nowrap;z-index:9999;pointer-events:none}.priority-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#000000e6}.attraction-card__name-with-priority{display:flex;align-items:center;gap:8px;margin-bottom:2px;order:2;width:100%;min-width:0;overflow:hidden}.trip-card__title{margin:0;font:700 20px/26px var(--font-family);color:#fff;letter-spacing:.2px;text-shadow:0 3px 14px rgba(0,0,0,.85);-webkit-text-stroke:.25px rgba(0,0,0,.7);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;flex:1 1 auto;min-width:0}.ui-kit-card{position:relative;cursor:pointer}.ui-kit-card__host{--gmp-mat-color-surface: #263241;--gmp-mat-color-on-surface: #f3f4f6;--gmp-mat-color-on-surface-variant: #d1d5db;--gmp-mat-color-primary: #d8dee9;--gmp-mat-color-disabled-surface: #374151;--gmp-mat-color-positive: #34d399;--gmp-mat-color-negative: #f87171;--gmp-mat-color-info: #9ca3af;--gmp-mat-color-secondary-container: #374151;--gmp-mat-color-on-secondary-container: #f3f4f6;--gmp-mat-color-neutral-container: #2a2f36;--gmp-mat-color-on-neutral-container: #9ca3af;--gmp-mat-color-outline-decorative: #4b5563;--gmp-mat-font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";border-radius:12px;border:1px solid var(--gmp-mat-color-outline-decorative);overflow:hidden;background:var(--gmp-mat-color-surface);color:var(--gmp-mat-color-on-surface);box-shadow:0 8px 20px #00000040}.ui-kit-card__remove{position:absolute;bottom:8px;right:8px;width:30px;height:30px;border-radius:9999px;border:1px solid rgba(255,255,255,.25);background:#ffffff26;color:#f3f4f6;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center;line-height:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0003}.ui-kit-card__remove:hover{background:#ffffff40;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.ui-kit-card__remove:disabled{cursor:not-allowed;opacity:.7}.ui-kit-card__remove--loading{pointer-events:none}.single-area-trip-summary__attraction-card{--attraction-info-left: 12px;--attraction-info-right: 18px;--attraction-info-bottom: 10px;--attraction-info-top: 0px;--attraction-info-top-hover: -16px;--attraction-info-gap: 4px;--attraction-description-bottom-margin: 8px;--attraction-content-padding-top-hover: 0px;background:transparent;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(255,255,255,.12);border-radius:12px;box-shadow:0 3px 12px #0000000f;padding:0;cursor:pointer;display:flex;align-items:flex-start;gap:12px;transition:var(--transition-fast);position:relative;overflow:hidden;min-height:var(--trip-card-min-height)}.single-area-trip-summary__attraction-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#00000040 12%,#000000ad);border-radius:inherit;transition:var(--transition-fast);z-index:1}.single-area-trip-summary__attraction-card:hover,.single-area-trip-summary__attraction-card--hover{transform:translateY(-1px);box-shadow:0 6px 18px #0000001f;border-color:#ffffff26}.single-area-trip-summary__attraction-card:hover:before,.single-area-trip-summary__attraction-card--hover:before,.single-area-trip-summary__attraction-card:focus-visible:before,.single-area-trip-summary__attraction-card:focus-within:before{background:linear-gradient(180deg,#00000059,#000000a6 25%,#000000d9)}.attraction-remove-btn{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:12px;background:#000000c7;color:#fff;border:1px solid rgba(255,255,255,.38);display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;cursor:pointer;transition:var(--transition-fast);z-index:4;box-shadow:0 2px 10px #00000059,0 0 0 2px #ffffff2e}.attraction-remove-btn:hover{background:#000000e6;transform:scale(1.05)}.attraction-remove-btn:disabled{cursor:not-allowed;opacity:.7}.attraction-remove-btn--loading{pointer-events:none}.remove-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:remove-spin .6s linear infinite}@keyframes remove-spin{to{transform:rotate(360deg)}}.single-area-trip-summary__attraction-priority-indicator{position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:0 2px 2px 0;z-index:2}.single-area-trip-summary__attraction-content{flex:1;display:flex;gap:8px;position:relative;z-index:2;min-width:0;flex-direction:column;justify-content:flex-end;min-height:var(--content-min-height);padding:24px 18px 4px 30px;transition:min-height var(--transition-fast),padding var(--transition-fast);will-change:min-height,padding}.single-area-trip-summary__attraction-card:hover .single-area-trip-summary__attraction-content,.single-area-trip-summary__attraction-card--hover .single-area-trip-summary__attraction-content{padding-top:var(--attraction-content-padding-top-hover)}.single-area-trip-summary__attraction-content:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000 32%,#00000073 62%,#000c);z-index:1;pointer-events:none}.single-area-trip-summary__attraction-card:hover .single-area-trip-summary__attraction-content:before,.single-area-trip-summary__attraction-card--hover .single-area-trip-summary__attraction-content:before,.single-area-trip-summary__attraction-card:focus-visible .single-area-trip-summary__attraction-content:before,.single-area-trip-summary__attraction-card:focus-within .single-area-trip-summary__attraction-content:before{background:linear-gradient(180deg,#00000040,#000000a6 35%,#000000e6)}.single-area-trip-summary__attraction-info{position:absolute;left:var(--attraction-info-left);right:var(--attraction-info-right);bottom:var(--attraction-info-bottom);top:var(--attraction-info-top);z-index:2;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:var(--attraction-info-gap);text-align:left;min-width:0;min-height:52px}.single-area-trip-summary__attraction-card:hover .single-area-trip-summary__attraction-info,.single-area-trip-summary__attraction-card--hover .single-area-trip-summary__attraction-info,.single-area-trip-summary__attraction-card:focus-visible .single-area-trip-summary__attraction-info,.single-area-trip-summary__attraction-card:focus-within .single-area-trip-summary__attraction-info{top:auto}.single-area-trip-summary__attraction-name{order:2;margin:0;font:700 20px/26px var(--font-family);color:#fff;letter-spacing:.2px;text-shadow:0 3px 14px rgba(0,0,0,.85);-webkit-text-stroke:.25px rgba(0,0,0,.7);text-align:left}.single-area-trip-summary__attraction-time-range{margin-left:8px;font:500 12px/16px var(--font-family);color:#ffffffe6;background:#000000a6;border:1px solid rgba(255,255,255,.18);padding:2px 6px;border-radius:999px;display:inline-block}.single-area-trip-summary__attraction-description{order:1;margin:0 0 var(--attraction-description-bottom-margin) 0;font:600 16px/24px var(--font-family);color:#fffffff7;letter-spacing:.1px;text-shadow:0 2px 12px rgba(0,0,0,.7);-webkit-text-stroke:.18px rgba(0,0,0,.55);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:left;opacity:0;max-height:0;transform:translateY(8px);transition:opacity var(--transition-fast),transform var(--transition-fast),max-height var(--transition-fast),margin var(--transition-fast);will-change:opacity,transform,max-height;pointer-events:none}.single-area-trip-summary__attraction-card:hover .single-area-trip-summary__attraction-description,.single-area-trip-summary__attraction-card--hover .single-area-trip-summary__attraction-description,.single-area-trip-summary__attraction-card:focus-within .single-area-trip-summary__attraction-description,.single-area-trip-summary__attraction-card:focus-visible .single-area-trip-summary__attraction-description{opacity:1;max-height:var(--expanded-desc-height, 500px);margin:0 0 var(--attraction-description-bottom-margin) 0;transform:translateY(0);pointer-events:auto;-webkit-line-clamp:unset;line-clamp:unset;display:block;overflow:visible}@media (prefers-reduced-motion: reduce){.single-area-trip-summary__attraction-description{transition:opacity .2s ease;transform:none}.single-area-trip-summary__attraction-card:hover .single-area-trip-summary__attraction-description,.single-area-trip-summary__attraction-card:focus-within .single-area-trip-summary__attraction-description,.single-area-trip-summary__attraction-card:focus-visible .single-area-trip-summary__attraction-description{transform:none}}.single-area-trip-summary__attraction-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:inherit;overflow:hidden;z-index:0;pointer-events:none}.single-area-trip-summary__attraction-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition-fast)}.single-area-trip-summary__attraction-card:hover .single-area-trip-summary__attraction-image img,.single-area-trip-summary__attraction-card--hover .single-area-trip-summary__attraction-image img{transform:scale(1.05)}.single-area-trip-summary__attraction-card:focus-visible{outline:var(--focus-ring);outline-offset:2px}.trip-card-image-skeleton{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea26,#764ba226);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:inherit;overflow:hidden}.trip-card-image-skeleton__shimmer{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 50%,transparent 100%);animation:trip-card-shimmer 2s ease-in-out infinite;border-radius:inherit}@keyframes trip-card-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.trip-card-image-skeleton__spinner{position:relative;width:32px;height:32px;border:3px solid rgba(255,255,255,.2);border-top-color:#ffffffb3;border-radius:50%;animation:trip-card-spinner-rotate .8s linear infinite;z-index:1}@keyframes trip-card-spinner-rotate{to{transform:rotate(360deg)}}.trip-card-image-skeleton__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (prefers-reduced-motion: reduce){.trip-card-image-skeleton__shimmer{animation:none;opacity:.4}.trip-card-image-skeleton__spinner{animation:trip-card-spinner-rotate 2s linear infinite}}.hotel-segment{display:inline-flex;align-items:center;gap:10px;margin:4px 0;padding:10px 14px;border-radius:12px;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);background:#ffffff26;border:1px solid rgba(255,255,255,.22);box-shadow:0 3px 9px #0000002e,0 0 12px #ffffff14 inset;transition:var(--transition-fast)}.hotel-segment:hover{background:#ffffff2e;border-color:#ffffff47;box-shadow:0 4px 12px #00000038,0 0 16px #ffffff1f inset}.hotel-segment__icon svg{width:18px;height:18px;color:#fffffff2;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.hotel-segment__text{font:600 14px/20px var(--font-family);color:#fffffff2;letter-spacing:.2px;text-shadow:0 1px 3px rgba(0,0,0,.3)}.restaurant-segment{display:inline-flex;align-items:center;gap:10px;margin:4px 0;padding:10px 14px;border-radius:12px;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);background:#ffffff1f;border:1px solid rgba(255,255,255,.2);box-shadow:0 3px 9px #00000026,0 0 10px #ffffff14 inset;transition:var(--transition-fast)}.restaurant-segment:hover{background:#ffffff29;border-color:#ffffff42;box-shadow:0 4px 12px #0003,0 0 14px #ffffff1a inset}.restaurant-segment__icon svg{width:18px;height:18px;color:#ffffffe6;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.restaurant-segment__content{display:flex;flex-direction:column;gap:2px;align-items:flex-start;text-align:left}.restaurant-segment__name{font:600 14px/20px var(--font-family);color:#fffffff2;letter-spacing:.2px;text-shadow:0 1px 3px rgba(0,0,0,.25)}.restaurant-segment__meta{font:500 12px/16px var(--font-family);color:#ffffffbf;letter-spacing:.1px;text-shadow:0 1px 2px rgba(0,0,0,.25)}.transport-display{display:flex;align-items:center;gap:12px;margin:0;padding:0 8px}.transport-line{width:24px;height:1px;background:linear-gradient(90deg,#fff3,#fff6,#fff3);flex-shrink:0}.transport-info{display:flex;align-items:center;gap:8px;background:#ffffff14;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:6px 12px;transition:var(--transition-fast)}.transport-info:hover{background:#ffffff1f;border-color:#ffffff2e}.transport-icon{font-size:14px;flex-shrink:0;opacity:.9;display:none}.transport-text{font:400 13px/18px var(--font-family);color:var(--text-secondary);letter-spacing:.2px;text-shadow:var(--text-shadow-body);opacity:.9}.transport-directions-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;text-decoration:none;color:var(--text-primary);background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-radius:50%;transition:var(--transition-fast)}.transport-directions-button:hover,.transport-directions-button:focus-visible{background:#ffffff38;border-color:#ffffff59;outline:none}.transport-directions-icon{width:16px;height:16px;color:var(--text-primary)}.transport-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.25);border-top-color:#ffffffb3;border-radius:50%;animation:transport-spinner-rotate .8s linear infinite}@keyframes transport-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.multi-area-trip-summary{display:flex;flex-direction:column;gap:var(--card-spacing);animation:floatIn var(--transition-smooth) cubic-bezier(.4,0,.2,1)}.multi-area-trip-summary__trip-areas-list{display:flex;flex-direction:column}.multi-area-trip-summary__trip-areas-list:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:var(--card-overlay);border-radius:inherit}.multi-area-trip-summary__area-container{position:relative;z-index:1;display:flex;flex-direction:column}.multi-area-trip-summary__area-container:not(:last-child){border-bottom:1px solid rgba(255,255,255,.08)}.multi-area-trip-summary__area-summary-button{background:transparent;border:none;border-radius:0;box-shadow:none;padding:var(--card-padding);cursor:pointer;display:flex;align-items:center;gap:16px;transition:var(--transition-fast);width:100%;font-family:var(--font-family);position:relative}.multi-area-trip-summary__area-summary-button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:#ffffff05;opacity:0;transition:var(--transition-fast)}.multi-area-trip-summary__area-summary-button:hover{transform:none}.multi-area-trip-summary__area-summary-button:hover:before{opacity:1;background:#ffffff0f}.multi-area-trip-summary__area-summary-button:focus-visible{outline:var(--focus-ring);outline-offset:2px}.multi-area-trip-summary__area-badge{width:36px;height:36px;border-radius:18px;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);background:#ffffff2e;border:1px solid rgba(255,255,255,.25);box-shadow:0 3px 9px #0000001f;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:2;transition:var(--transition-fast)}.multi-area-trip-summary__area-badge svg{width:18px;height:18px;color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}.multi-area-trip-summary__area-summary-button:hover .multi-area-trip-summary__area-badge{box-shadow:0 0 6px #0096ff73,0 3px 9px #0000001f}.multi-area-trip-summary__area-summary-text{flex:1;text-align:left;min-width:0;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center}.multi-area-trip-summary__area-label{display:block;font:700 20px/26px var(--font-family);color:var(--text-primary);letter-spacing:.2px;margin-bottom:4px;text-shadow:var(--text-shadow-heading);-webkit-text-stroke:var(--text-stroke-heading)}.multi-area-trip-summary__area-meta{display:block;font:400 16px/24px var(--font-family);color:var(--text-secondary);letter-spacing:.2px;text-shadow:var(--text-shadow-body)}.multi-area-trip-summary__area-chevron{font-size:12px;color:#ffffffe6;transition:.2s ease-out;flex-shrink:0;position:relative;z-index:2;text-shadow:var(--text-shadow-body);transform:rotate(-90deg)}.multi-area-trip-summary__area-chevron.rotated{transform:rotate(0);color:var(--text-secondary)}.multi-area-trip-summary__area-content{padding:16px 0 0;animation:slideDown var(--transition-fast);background:#00000026;border-top:1px solid rgba(255,255,255,.05);position:relative;z-index:1;flex:1}.multi-area-trip-summary__area-container:not(:last-child) .multi-area-trip-summary__area-content{margin-bottom:-1px}.multi-area-trip-summary__area-description{font:400 15px/22px var(--font-family);color:var(--text-secondary);letter-spacing:.2px;text-shadow:var(--text-shadow-body);margin:16px 24px 20px;padding:14px 16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:10px;opacity:.95}.multi-area-trip-summary__days-list{display:flex;flex-direction:column;margin:0 16px 16px}.multi-area-trip-summary__day-container{position:relative;margin-bottom:16px;padding-bottom:0}.multi-area-trip-summary__day-container:last-child{margin-bottom:0}.multi-area-trip-summary__day-headline{display:flex;align-items:center;padding:16px 0 12px;position:relative;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:12px}.multi-area-trip-summary__day-headline:before{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 20%,rgba(255,255,255,.15) 80%,transparent 100%)}.multi-area-trip-summary__day-headline-text{flex:1;text-align:left;min-width:0;position:relative;z-index:2;display:flex;align-items:center;gap:12px}.multi-area-trip-summary__day-label{font:700 18px/22px var(--font-family);color:var(--text-primary);letter-spacing:.1px;text-shadow:var(--text-shadow-heading);-webkit-text-stroke:var(--text-stroke-heading)}.multi-area-trip-summary__day-attractions-count{font:500 14px/18px var(--font-family);color:var(--text-secondary);letter-spacing:.1px;text-shadow:var(--text-shadow-body);opacity:.9;position:relative;z-index:2;background:#ffffff14;padding:4px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.12)}.multi-area-trip-summary__day-layout-button{margin-left:12px}.multi-area-trip-summary__day-content{padding:8px 0 12px;animation:slideDown var(--transition-fast);position:relative}.multi-area-trip-summary__attractions-timeline{display:flex;flex-direction:column;gap:8px;position:relative}.multi-area-trip-summary__attractions-timeline.is-drag-active{pointer-events:auto}.multi-area-trip-summary__drop-indicator{height:2px;margin:4px 8px;border-radius:1px;background:linear-gradient(90deg,#00c2ff00,#00c2ffe6,#00c2ff00);box-shadow:0 0 8px #00c2ff59;pointer-events:none}.multi-area-trip-summary__attraction-card{--attraction-description-visible-margin: 6px 0 0 0;background:var(--glass-bg-card);-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(255,255,255,.12);border-radius:12px;box-shadow:0 3px 12px #0000000f;padding:16px 18px;cursor:pointer;display:flex;align-items:flex-start;gap:12px;transition:var(--transition-fast);position:relative;overflow:hidden}.multi-area-trip-summary__attraction-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#00000040 12%,#000000a6);border-radius:inherit;transition:var(--transition-fast)}.multi-area-trip-summary__attraction-card:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0000001f;border-color:#ffffff26}.multi-area-trip-summary__attraction-card:hover:before,.multi-area-trip-summary__attraction-card:focus-visible:before,.multi-area-trip-summary__attraction-card:focus-within:before{background:linear-gradient(180deg,#00000059,#000000a6 25%,#000000d9)}.multi-area-trip-summary__attraction-priority-indicator{position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:0 2px 2px 0;z-index:1}.multi-area-trip-summary__attraction-content{flex:1;display:flex;gap:12px;position:relative;z-index:2;min-width:0}.multi-area-trip-summary__attraction-content:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#0000 35%,#00000047 62%,#0009);z-index:1}.multi-area-trip-summary__attraction-card:hover .multi-area-trip-summary__attraction-content:before,.multi-area-trip-summary__attraction-card:focus-visible .multi-area-trip-summary__attraction-content:before,.multi-area-trip-summary__attraction-card:focus-within .multi-area-trip-summary__attraction-content:before{background:linear-gradient(180deg,#00000040,#000000a6 35%,#000000e6)}.multi-area-trip-summary__attraction-info{flex:1;min-width:0;text-align:left;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;min-height:52px}.multi-area-trip-summary__attraction-name{order:2;margin:0 0 6px;font:700 18px/24px var(--font-family);color:var(--text-primary);letter-spacing:.2px;text-shadow:0 2px 10px rgba(0,0,0,.75);text-align:left}.multi-area-trip-summary__attraction-name{-webkit-text-stroke:.25px rgba(0,0,0,.6)}.multi-area-trip-summary__attraction-description{order:1;margin:0 0 8px;font:600 16px/24px var(--font-family);color:#fffffff7;letter-spacing:.1px;text-shadow:0 2px 12px rgba(0,0,0,.7);-webkit-text-stroke:.18px rgba(0,0,0,.55);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:left;opacity:0;max-height:0;transform:translateY(8px);transition:opacity .22s ease,transform .24s ease,max-height .26s ease,margin .22s ease;will-change:opacity,transform;pointer-events:none}.multi-area-trip-summary__attraction-card:hover .multi-area-trip-summary__attraction-description,.multi-area-trip-summary__attraction-card:focus-within .multi-area-trip-summary__attraction-description,.multi-area-trip-summary__attraction-card:focus-visible .multi-area-trip-summary__attraction-description{opacity:1;max-height:220px;margin:0 0 8px;transform:translateY(0);pointer-events:auto}@media (prefers-reduced-motion: reduce){.multi-area-trip-summary__attraction-description{transition:opacity .2s ease;transform:none}.multi-area-trip-summary__attraction-card:hover .multi-area-trip-summary__attraction-description,.multi-area-trip-summary__attraction-card:focus-within .multi-area-trip-summary__attraction-description,.multi-area-trip-summary__attraction-card:focus-visible .multi-area-trip-summary__attraction-description{transform:none}}.multi-area-trip-summary__attraction-image{width:56px;height:56px;border-radius:10px;overflow:hidden;flex-shrink:0;background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.multi-area-trip-summary__attraction-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition-fast)}.multi-area-trip-summary__attraction-card:hover .multi-area-trip-summary__attraction-image img{transform:scale(1.05)}.multi-area-trip-summary__attraction-transport{margin:0 0 0 20px}.multi-area-trip-summary__hotel-segment,.multi-area-trip-summary__restaurant-segment{margin-left:16px}.multi-area-trip-summary__area-summary-button:focus-visible,.multi-area-trip-summary__attraction-card:focus-visible{outline:var(--focus-ring);outline-offset:2px}.day-layout-modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0c18b8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:32px 16px;z-index:1100;animation:dayLayoutOverlayFade .16s ease-out}.day-layout-modal__container{background:var(--glass-bg, rgba(16, 20, 39, .96));border-radius:18px;border:1px solid rgba(255,255,255,.18);box-shadow:0 18px 45px #00000059;max-width:1200px;width:min(1200px,100%);max-height:80vh;display:flex;flex-direction:column;overflow:hidden;animation:dayLayoutModalPop .2s cubic-bezier(.16,1,.3,1)}.day-layout-modal__header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 28px 12px}.day-layout-modal__label{font:600 12px/16px var(--font-family);letter-spacing:.2px;text-transform:uppercase;color:#ffffffa6}.day-layout-modal__title{margin:4px 0 0;font:700 28px/32px var(--font-family);color:var(--text-primary, #fff);text-shadow:var(--text-shadow-heading)}.day-layout-modal__close-button{border:none;background:#ffffff14;color:#fff;font-size:24px;line-height:1;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-fast)}.day-layout-modal__close-button:hover{background:#ffffff2e;transform:scale(1.04)}.day-layout-modal__close-button:focus-visible{outline:var(--focus-ring);outline-offset:2px}.day-layout-modal__body{padding:0 28px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.day-layout-modal__paragraph{font:400 22px/32px var(--font-family);color:var(--text-primary, rgba(255, 255, 255, .95));text-shadow:var(--text-shadow-body);margin:0;white-space:pre-line}.day-layout-modal__placeholder{font:400 16px/24px var(--font-family);color:#fff9;font-style:italic;text-align:center;margin:32px 0}@keyframes dayLayoutModalPop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes dayLayoutOverlayFade{0%{opacity:0}to{opacity:1}}@media (max-width: 640px){.day-layout-modal__container{max-height:calc(100vh - 60px)}.day-layout-modal__header,.day-layout-modal__body{padding-left:20px;padding-right:20px}}.view-mode-toggle{position:absolute;top:40px;left:calc(50% - 10px);transform:translate(-50%);z-index:10}.toggle-container{display:flex;background:#141416a6;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border-radius:24px;box-shadow:0 8px 24px #0000004d,inset 0 1px #ffffff12;border:1px solid rgba(255,255,255,.12);padding:4px;position:relative;gap:4px}.toggle-slider{position:absolute;top:4px;left:4px;width:calc(50% - 4px);height:calc(100% - 8px);background:linear-gradient(135deg,#00c2ff,#09c);box-shadow:0 2px 8px #00c2ff4d;border-radius:20px;transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:1}.toggle-slider.attractions{transform:translate(100%)}.toggle-option{display:flex;align-items:center;gap:8px;padding:8px 20px;border:none;background:transparent;cursor:pointer;border-radius:20px;font-size:14px;font-weight:600;color:#fffc;transition:color .3s cubic-bezier(.4,0,.2,1);z-index:2;position:relative;text-shadow:0 1px 2px rgba(0,0,0,.2)}.toggle-option:hover{color:#fff}.toggle-option.active{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4)}.toggle-option svg{width:16px;height:16px;transition:transform .3s ease}.toggle-option:hover svg{transform:scale(1.1)}.general-filter-button{position:absolute;top:40px;left:50%;transform:translate(calc(-50% + 200px));background:#141416a6;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:12px 20px;font-size:14px;font-weight:600;color:#fffc;cursor:pointer;box-shadow:0 8px 24px #0000004d,inset 0 1px #ffffff12;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1000;text-shadow:0 1px 2px rgba(0,0,0,.2)}.general-filter-button:hover{background:#141416cc;color:#fff;box-shadow:0 8px 24px #0006,inset 0 1px #ffffff1a;transform:translate(calc(-50% + 200px)) translateY(-1px)}.general-filter-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;z-index:2000}.general-filter-dropdown{position:absolute;top:100px;right:calc(50% - 380px);background:#141416a6;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border-radius:24px;min-width:280px;max-width:420px;box-shadow:0 8px 24px #0000004d,inset 0 1px #ffffff12;border:1px solid rgba(255,255,255,.12);overflow:hidden;animation:generalFilterSlide .2s ease}.general-filter-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.08);color:#fffffff2;font-weight:600}.general-filter-close{background:transparent;border:none;color:#ffffffd9;font-size:18px;cursor:pointer}.general-filter-section{padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.general-filter-section:last-child{border-bottom:none}.general-filter-section h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#fffffff2;text-shadow:0 1px 2px rgba(0,0,0,.3)}.general-filter-chips{display:flex;flex-wrap:wrap;gap:8px}.general-filter-chip{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:6px 12px;font-size:13px;font-weight:600;color:#ffffffe6;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;text-shadow:0 1px 3px rgba(0,0,0,.4)}.general-filter-chip:hover{background:#ffffff26;color:#fff;border-color:#ffffff40}.general-filter-chip.selected{background:linear-gradient(135deg,#00c2ff,#09c);color:#fff;border-color:#00c2ff80;box-shadow:0 2px 8px #00c2ff4d}.general-filter-chip.selected:hover{background:linear-gradient(135deg,#09c,#07a);box-shadow:0 4px 12px #00c2ff66}.general-filter-footer{padding:12px 20px;border-top:1px solid rgba(255,255,255,.08);background:#ffffff05;display:flex;gap:8px}.general-filter-reset{flex:1;padding:8px 16px;border-radius:16px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#ffffffe6;text-shadow:0 1px 3px rgba(0,0,0,.4)}.general-filter-reset:hover{background:#ffffff26;color:#fff;border-color:#ffffff40}@keyframes generalFilterSlide{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.order-badge{position:absolute;top:-7px;left:-7px;width:18px;height:18px;background:#f3f4f6;color:#1f2937;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:-.02em;z-index:10;border:1.5px solid rgba(255,255,255,.95);box-shadow:0 2px 6px #1f293714,0 1px 2px #0000000f;transition:all .2s cubic-bezier(.4,0,.2,1);pointer-events:none}.attraction-marker:hover .order-badge{background:#e5e7eb;box-shadow:0 3px 12px #1f29371f,0 2px 6px #00000014;transform:scale(1.1)}.image-loading-skeleton{position:relative;width:100%;height:100%;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e5e7eb,#d1d5db)}.image-loading-skeleton__shimmer{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.6) 50%,transparent 100%);animation:shimmer 2s ease-in-out infinite;border-radius:inherit}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.image-loading-skeleton__spinner{position:relative;width:24px;height:24px;border:3px solid rgba(107,114,128,.3);border-top-color:#4b5563e6;border-radius:50%;animation:spinner-rotate .8s linear infinite;z-index:1}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.image-loading-skeleton__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (prefers-reduced-motion: reduce){.image-loading-skeleton__shimmer{animation:none;opacity:.5}.image-loading-skeleton__spinner{animation:spinner-rotate 2s linear infinite}}.attraction-marker{position:relative;width:var(--pin-marker-size, 100px);height:var(--pin-marker-size, 100px);border-radius:50%;overflow:visible;border:2px solid var(--surface-elevated, rgba(255, 255, 255, .12));box-shadow:var(--shadow-m, 0 4px 12px rgba(0, 0, 0, .15));cursor:pointer;transition:transform .18s cubic-bezier(.4,0,.2,1),box-shadow .18s cubic-bezier(.4,0,.2,1),width .18s cubic-bezier(.4,0,.2,1),height .18s cubic-bezier(.4,0,.2,1);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;image-rendering:auto;image-rendering:crisp-edges;image-rendering:-webkit-optimize-contrast;z-index:1}.attraction-marker__overlay{position:absolute;top:-13px;right:-13px;z-index:200;pointer-events:auto}.attraction-marker__add-btn{width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#11192899;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;line-height:1;box-shadow:0 2px 6px #00000040;cursor:pointer}.attraction-marker__add-btn:hover,.attraction-marker__add-btn:focus-visible{outline:none;background:#111928bf}.attraction-marker__add-btn[disabled]{opacity:.8;cursor:default}.attraction-marker__days-popover{position:absolute;bottom:28px;right:0;min-width:120px;max-height:220px;overflow:auto;background:#111928eb;border:1px solid rgba(255,255,255,.18);border-radius:8px;box-shadow:0 8px 24px #00000059;padding:6px;color:#fff;z-index:3}.attraction-marker__day-item{padding:6px 8px;border-radius:6px;cursor:pointer}.attraction-marker__day-item:hover,.attraction-marker__day-item:focus-visible{outline:none;background:#ffffff1f}.attraction-marker:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #ffffff59;pointer-events:none;z-index:1}.attraction-marker img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%;overflow:hidden;image-rendering:auto;image-rendering:-webkit-optimize-contrast;filter:brightness(.98) saturate(.95);pointer-events:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.attraction-marker__fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600;font-size:.75rem;text-align:center;padding:8px;box-sizing:border-box;line-height:1.2}.attraction-marker__name{display:-webkit-box;line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.attraction-marker:hover{transform:scale(var(--pin-marker-hover-scale, 1.06));box-shadow:var(--shadow-l, 0 8px 24px rgba(0, 0, 0, .2)),0 0 0 2px var(--brand-accent, #3b82f6),0 0 0 6px color-mix(in srgb,var(--brand-accent, #3b82f6) 40%,transparent);z-index:100}.attraction-marker:focus-visible{outline:none;transform:scale(var(--pin-marker-hover-scale, 1.06));box-shadow:var(--shadow-l, 0 8px 24px rgba(0, 0, 0, .2)),0 0 0 2px var(--brand-accent, #3b82f6),0 0 0 4px #3b82f64d}.attraction-marker--active{transform:scale(var(--pin-marker-hover-scale, 1.06));box-shadow:var(--shadow-l, 0 8px 24px rgba(0, 0, 0, .2)),0 0 0 2px var(--brand-accent, #3b82f6),0 0 0 6px color-mix(in srgb,var(--brand-accent, #3b82f6) 40%,transparent);z-index:110}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 2dppx){.attraction-marker{backface-visibility:hidden;-webkit-backface-visibility:hidden}}@media (prefers-reduced-motion: reduce){.attraction-marker{transition:box-shadow .18s ease}.attraction-marker:hover,.attraction-marker:focus-visible,.attraction-marker--active{transform:none}}.marker-hover-spinner{position:absolute;top:-4px;right:-4px;left:auto;z-index:300;width:20px;height:20px;background:#ffffffa6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:50%;box-shadow:0 2px 8px #00000014,inset 0 0 0 .5px #fffc;display:flex;align-items:center;justify-content:center;animation:marker-spinner-enter .3s cubic-bezier(.34,1.56,.64,1)}.marker-hover-spinner:after{content:"";box-sizing:border-box;width:10px;height:10px;border:1.5px solid rgba(0,0,0,.06);border-top-color:#000000b3;border-radius:50%;animation:marker-hover-spinner-spin .8s linear infinite}.marker-hover-spinner--left{right:auto;left:-4px}@keyframes marker-spinner-enter{0%{opacity:0;transform:scale(.5) translateY(5px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes marker-hover-spinner-spin{to{transform:rotate(360deg)}}.area-circle{position:relative;pointer-events:all;z-index:100;display:flex;align-items:center;justify-content:center}.area-circle-sizer{width:60px;height:60px;transform-origin:50% 50%;transition:transform .2s ease-out;will-change:transform;pointer-events:none;position:relative}.area-order-badge{position:absolute;top:-2px;left:-2px;width:18px;height:18px;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:-.02em;z-index:10;border:2px solid rgba(255,255,255,.9);box-shadow:0 2px 8px #1e40af4d,0 1px 3px #0000001a;transition:all .2s cubic-bezier(.4,0,.2,1);pointer-events:none}.area-circle:hover .area-order-badge{background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 3px 12px #1e40af66,0 2px 6px #00000026;transform:scale(1.1)}.area-circle-svg{width:100%;height:100%;display:block;filter:drop-shadow(0 4px 20px rgba(59,130,246,.4));transition:all .3s cubic-bezier(.4,0,.2,1)}.area-circle-svg circle{transition:all .3s cubic-bezier(.4,0,.2,1)}.area-circle:hover .area-circle-svg{filter:drop-shadow(0 8px 30px rgba(59,130,246,.6))}.area-circle:hover .area-circle-svg circle{fill:#3b82f659;stroke:#3b82f6;stroke-width:4}.area-label{position:absolute;pointer-events:all;-webkit-user-select:none;user-select:none;z-index:1100;transition:transform .2s cubic-bezier(.4,0,.2,1)}.area-label:hover{transform:translateY(-3px)}.area-label-content{display:flex;align-items:center;gap:6px;background:#ffffffe6;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);padding:6px 8px 6px 14px;border-radius:100px;box-shadow:0 0 0 1px #ffffff4d inset,0 8px 32px #00000014,0 2px 8px #0000000a;border:1px solid rgba(0,0,0,.06);transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;position:relative;overflow:hidden}.area-label-content:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .6s ease}.area-label:hover .area-label-content:before{left:100%}.area-label:hover .area-label-content{background:#fffffff2;box-shadow:0 0 0 1px #ffffff80 inset,0 12px 40px #0000001f,0 4px 12px #0000000f;border-color:#0000000a}.area-label-name{font-size:14px;font-weight:500;color:#111827;line-height:1.2;letter-spacing:-.01em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.area-label-days{font-size:11px;font-weight:600;color:#1e40af;background:linear-gradient(135deg,#3b82f633,#6366f133);padding:3px 10px;border-radius:100px;line-height:1.2;letter-spacing:.02em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;border:1px solid rgba(59,130,246,.4);display:flex;align-items:center;justify-content:center;min-height:20px}.area-count,.area-days-badge{display:none}.area-circle.active .area-circle-svg circle{fill:#3b82f673;stroke:#3b82f6;stroke-width:5}.area-label.active .area-label-content{background:#3b82f626;border-color:#3b82f6cc}.area-label.active .area-name{color:#1e40af}@keyframes pulse{0%{transform:scale(.95);opacity:.7}50%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:1}}.area-circle.new{animation:pulse .6s ease-out}@keyframes areaFadeIn{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.area-circle,.area-label{animation:areaFadeIn .4s cubic-bezier(.4,0,.2,1) forwards}@media (max-width: 768px){.area-label-content{padding:5px 6px 5px 12px;gap:4px}.area-label-name{font-size:13px}.area-label-days{padding:2px 8px;font-size:10px;min-height:18px}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.area-circle-svg{filter:drop-shadow(0 1px 4px rgba(59,130,246,.5))}.area-label-content{border-width:1px}}.area-transport-label{pointer-events:none;z-index:10;cursor:default}.area-transport-label-content{background:#e5e7ebe6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:7px 14px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;display:flex;align-items:center;gap:4px;white-space:normal;animation:areaTransportLabelFadeIn .3s ease-out;text-align:center}.area-transport-method{font-size:12px;font-weight:600;color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;text-shadow:0 1px 1px rgba(255,255,255,.7)}@keyframes areaTransportLabelFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (prefers-color-scheme: dark){.area-transport-label-content{background:#4b5563d9;border-color:#ffffff1f;box-shadow:0 4px 6px -1px #0003,0 2px 4px -2px #0003}.area-transport-method{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}}@media (prefers-reduced-motion: reduce){.area-transport-label-content{animation:none}}.attraction-transport-label{pointer-events:none;z-index:12;cursor:default}.attraction-transport-label-content{background:#6b7280b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(107,114,128,.3);border-radius:14px;padding:3px 6px;box-shadow:0 3px 5px -1px #6b728026,0 2px 3px -2px #6b728026;display:flex;align-items:center;gap:4px;white-space:normal;animation:attractionTransportLabelFadeIn .3s ease-out;text-align:center}.attraction-transport-method{font-size:12px;font-weight:700;color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;text-shadow:0 1px 1px rgba(255,255,255,.5)}@keyframes attractionTransportLabelFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (prefers-color-scheme: dark){.attraction-transport-label-content{background:#4b5563cc;border-color:#6b728080;box-shadow:0 3px 5px -1px #00000040,0 2px 3px -2px #00000040}.attraction-transport-method{color:#f9fafb;text-shadow:0 1px 2px rgba(0,0,0,.5)}}@media (prefers-reduced-motion: reduce){.attraction-transport-label-content{animation:none}}.flights-popup{border-radius:20px;box-shadow:0 10px 30px #0003;width:480px;max-width:480px;max-height:600px;overflow:hidden;background:#fffffffa;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.2);padding:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;pointer-events:auto;position:relative}.flights-popup-container .mapboxgl-popup-tip{display:none}.flights-popup-container .mapboxgl-popup-content{padding:0;border-radius:20px;background:transparent;box-shadow:none;pointer-events:auto}.flights-popup-container{pointer-events:auto}.flights-popup-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(0,0,0,.08);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.flights-popup-title h3{margin:0 0 4px;font-size:1.4rem;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.airport-code{font-size:.9rem;font-weight:600;color:#ffffffd9;background:#ffffff26;padding:4px 8px;border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.flights-popup-close{background:#ffffff26;border:none;border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:background-color .2s ease}.flights-popup-close:hover{background:#ffffff40}.flights-list{max-height:400px;overflow-y:auto;padding:12px 0}.flights-list::-webkit-scrollbar{width:6px}.flights-list::-webkit-scrollbar-track{background:#0000000d}.flights-list::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.flights-list::-webkit-scrollbar-thumb:hover{background:#0000004d}.flight-card{padding:16px 24px;border-bottom:1px solid rgba(0,0,0,.06);transition:background-color .2s ease}.flight-card:hover{background:#677eea08}.flight-card:last-child{border-bottom:none}.flight-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.airline-info{display:flex;flex-direction:column;gap:2px}.airline-name{font-size:1rem;font-weight:600;color:#1f2937}.flight-number{font-size:.85rem;color:#6b7280;font-weight:500}.flight-price{font-size:1.2rem;font-weight:700;color:#059669;background:#0596691a;padding:6px 12px;border-radius:12px}.flight-route{display:flex;align-items:center;gap:16px}.flight-location{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}.location-code{font-size:1.1rem;font-weight:700;color:#1f2937}.location-name{font-size:.75rem;color:#6b7280;text-align:center;max-width:100px;line-height:1.2}.flight-time{font-size:.9rem;font-weight:600;color:#374151}.flight-path{display:flex;flex-direction:column;align-items:center;gap:4px;flex:0 0 80px}.flight-duration{font-size:.8rem;color:#6b7280;font-weight:500}.flight-arrow{color:#9ca3af;display:flex;align-items:center}.aircraft-type{font-size:.75rem;color:#9ca3af;text-align:center}.no-flights{padding:40px 24px;text-align:center;color:#6b7280}.no-flights p{margin:0;font-size:1rem}.flights-popup-footer{padding:16px 24px 20px;border-top:1px solid rgba(0,0,0,.06);background:#f9fafbcc}.view-more-btn{width:100%;padding:12px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.view-more-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #677eea4d}.view-more-btn:active{transform:translateY(0)}.airport-marker{position:absolute;transform:translate(-50%,-50%) translateY(-100px);opacity:0;transition:all 1.2s cubic-bezier(.25,.46,.45,.94);pointer-events:auto}.airport-marker.airport-marker-landed{transform:translate(-50%,-50%) translateY(0);opacity:1}.airport-marker-container{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;animation:airportPulse 2s ease-in-out infinite}.airport-marker-sizer{display:flex;flex-direction:column;align-items:center;gap:8px;transform-origin:center;transition:transform .3s cubic-bezier(.4,0,.2,1)}.airport-marker-sizer.no-transition{transition:none}.airport-marker-sizer.size-transition{transition:transform .4s cubic-bezier(.25,.46,.45,.94)}.airport-marker-icon{width:48px;height:48px;background:#fffffff2;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.3);border-radius:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #00000026,0 0 40px #3b82f64d,inset 0 0 20px #3b82f61a;color:#3b82f6;position:relative;overflow:hidden}.airport-marker-icon:before{content:"";position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;background:radial-gradient(circle,rgba(59,130,246,.4) 0%,transparent 70%);animation:airportGlow 3s ease-in-out infinite}.airport-marker-icon svg{position:relative;z-index:1;transform:rotate(-45deg);transition:transform .3s ease}.airport-marker-container:hover .airport-marker-icon svg{transform:rotate(-45deg) scale(1.1)}.airport-marker-label{background:#6b7280f2;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(156,163,175,.3);border-radius:12px;padding:6px 12px;font-size:14px;font-weight:700;color:#fff;box-shadow:0 2px 8px #0000001a;white-space:nowrap;letter-spacing:.3px;text-shadow:0 1px 3px rgba(0,0,0,.8),0 0 8px rgba(0,0,0,.5);opacity:0;transform:translateY(10px);animation:labelFadeIn .5s ease-out .8s forwards}.airport-connection-line{position:absolute;top:50%;left:50%;width:2px;background:linear-gradient(to bottom,rgba(59,130,246,.6),rgba(59,130,246,.3),transparent);transform-origin:top center;opacity:.8;pointer-events:none}@keyframes airportPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes airportGlow{0%,to{transform:scale(1) rotate(0);opacity:.6}50%{transform:scale(1.5) rotate(180deg);opacity:.3}}@keyframes labelFadeIn{to{opacity:1;transform:translateY(0)}}.airport-marker-container:hover .airport-marker-icon{box-shadow:0 6px 25px #0003,0 0 50px #3b82f680,inset 0 0 25px #3b82f633;transform:translateY(-2px)}.airport-marker-container:hover .airport-marker-label{background:#4b5563;box-shadow:0 4px 12px #00000026}@media (prefers-color-scheme: dark){.airport-marker-label{background:#6b7280f2;border-color:#9ca3af4d;color:#fff}.airport-marker-container:hover .airport-marker-label{background:#4b5563}}.hotel-marker,.pin-marker{width:48px;height:48px;position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .22s ease}.hotel-marker:focus-visible,.pin-marker:focus-visible{outline:none}.hotel-marker:hover,.hotel-marker:focus-visible,.pin-marker:hover,.pin-marker:focus-visible{transform:scale(var(--pin-marker-hover-scale, 1.06)) translateY(-2px)}.hotel-marker--active,.pin-marker--active{transform:scale(var(--pin-marker-hover-scale, 1.06)) translateY(-2px)}.hotel-marker__image{width:100%;height:100%;object-fit:contain;pointer-events:none}.hotel-marker__overlay{position:absolute;top:-10px;right:-10px;z-index:200;opacity:0;pointer-events:none;transition:opacity .12s ease}.hotel-marker__overlay--visible{opacity:1;pointer-events:auto}.hotel-marker:hover .hotel-marker__overlay,.hotel-marker:focus-visible .hotel-marker__overlay,.pin-marker:hover .hotel-marker__overlay,.pin-marker:focus-visible .hotel-marker__overlay{opacity:1;pointer-events:auto}.hotel-marker__add-btn{width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#11192899;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;line-height:1;box-shadow:0 2px 6px #00000040;cursor:pointer}.hotel-marker__add-btn:hover,.hotel-marker__add-btn:focus-visible{outline:none;background:#111928bf}.hotel-marker__add-btn[disabled]{opacity:.8;cursor:default}.hotel-marker__spinner{width:16px;height:16px;border:3px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:hotel-marker-spin .6s linear infinite}@keyframes hotel-marker-spin{to{transform:rotate(360deg)}}.attraction-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:saturate(120%) blur(6px);backdrop-filter:saturate(120%) blur(6px)}.attraction-dialog-content{width:auto;max-width:95vw;max-height:90vh;overflow:visible;border-radius:0;background:transparent;box-shadow:none;border:none}.attraction-dialog-content .attraction-popup{max-height:90vh}.attraction-popup{width:1000px;max-width:1000px;max-height:85vh;height:85vh;background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:24px;box-shadow:0 20px 60px #00000026,0 8px 24px #00000014,0 0 0 1px #ffffff4d inset;border:1px solid rgba(255,255,255,.2);overflow:hidden;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;z-index:1000}.attraction-popup-content-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.attraction-popup-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;background:linear-gradient(135deg,#6366f10d,#3b82f60d);border-bottom:1px solid rgba(0,0,0,.06)}.attraction-popup-title{margin:0;font-size:1.75rem;font-weight:700;color:#1f2937;letter-spacing:-.02em}.attraction-popup-header-buttons{display:flex;align-items:center;gap:10px}.google-maps-link{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#4285f41a,#4285f40f);border:1px solid rgba(66,133,244,.28);border-radius:999px;padding:8px 14px;cursor:pointer;color:#111827;transition:all .2s ease;text-decoration:none;box-shadow:0 1px 2px #4285f41f;position:relative;font-size:13px;font-weight:600;gap:8px}.google-maps-link:hover{border-color:#4285f461;box-shadow:0 2px 10px #4285f42e;transform:translateY(-1px)}.google-maps-link:active{transform:translateY(0)}.google-maps-link svg{width:18px;height:18px;stroke:#3367d6;fill:none;flex-shrink:0}.google-maps-link:after{display:none}.tripadvisor-link{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#00aa6c1a,#00aa6c0f);border:1px solid rgba(0,170,108,.28);border-radius:999px;padding:8px 14px;cursor:pointer;color:#111827;transition:all .2s ease;text-decoration:none;box-shadow:0 1px 2px #00aa6c1f;position:relative;font-size:13px;font-weight:600;gap:8px}.tripadvisor-link:hover{border-color:#00aa6c61;box-shadow:0 2px 10px #00aa6c2e;transform:translateY(-1px)}.tripadvisor-link:active{transform:translateY(0)}.tripadvisor-link svg{width:18px;height:18px;stroke:#00a86b;fill:none;flex-shrink:0;transform:scale(1.35);transform-origin:center}.attraction-popup-close{background:#6b72801a;border:none;border-radius:12px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;transition:all .2s ease}.attraction-popup-close:hover{background:#6b728033;color:#374151;transform:scale(1.05)}.attraction-popup-container{pointer-events:auto;z-index:1000}.attraction-popup-images-section{flex-shrink:0;background:#f8fafc;border-bottom:1px solid rgba(0,0,0,.06);position:relative;transition:all .3s ease}.attraction-popup-images-loading,.attraction-popup-no-images{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#6b7280;gap:12px}.attraction-popup-images-loading .loading-spinner{width:24px;height:24px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.attraction-popup-no-images span:first-child{font-size:2rem}.attraction-popup-images-container{padding:16px}.attraction-popup-main-image{position:relative;width:100%;height:300px;border-radius:16px;overflow:hidden;background:#f1f5f9;margin-bottom:0}.attraction-popup-main-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.attraction-popup-main-image:hover img{transform:scale(1.02)}.attraction-popup-image-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;color:#374151;transition:all .2s ease;opacity:0;pointer-events:all}.attraction-popup-main-image:hover .attraction-popup-image-nav{opacity:1}.attraction-popup-image-prev{left:12px}.attraction-popup-image-next{right:12px}.attraction-popup-image-nav:hover{background:#fff;transform:translateY(-50%) scale(1.05);box-shadow:0 4px 12px #00000026}.attraction-popup-image-indicator{position:absolute;top:12px;right:12px;background:#000000b3;color:#fff;padding:6px 12px;border-radius:12px;font-size:.875rem;font-weight:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.attraction-popup-images-toggle{position:absolute;top:12px;right:12px;background:#ffffffe6;border:1px solid rgba(0,0,0,.1);border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s ease;color:#374151}.attraction-popup-images-toggle:hover{background:#fff;transform:scale(1.05);box-shadow:0 2px 8px #0000001a}.attraction-popup.images-minimized .attraction-popup-images-section{height:50px;min-height:50px;overflow:hidden}.attraction-popup.images-minimized .attraction-popup-images-container,.attraction-popup.images-minimized .attraction-popup-images-loading,.attraction-popup.images-minimized .attraction-popup-no-images{opacity:0;pointer-events:none}.attraction-popup.images-minimized .attraction-popup-content-wrapper{flex:1}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px 8px 0;width:100%}.photo-grid-item{position:relative;overflow:hidden;background:#f1f5f9;border-radius:12px;aspect-ratio:1 / 1}.photo-grid-item img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease;cursor:pointer}.photo-grid-item:hover img{transform:scale(1.03)}.photo-hero-grid{display:grid;grid-template-columns:3fr 2fr;gap:8px;padding:8px 8px 0;width:calc(100% - 60px);align-items:stretch;margin-left:30px}.photo-hero-grid .hero-image{position:relative;border-radius:16px;overflow:hidden;background:#f1f5f9;min-height:260px}.photo-hero-grid .hero-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease;cursor:pointer}.photo-hero-grid .hero-image:hover img{transform:scale(1.02)}.photo-hero-grid .thumbs{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:8px}.photo-hero-grid .thumb{padding:0;border:none;border-radius:12px;overflow:hidden;background:#f1f5f9;cursor:pointer}.photo-hero-grid .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease,filter .2s ease}.photo-hero-grid .thumb:hover img{transform:scale(1.03)}.photo-hero-grid .thumb.active img{filter:brightness(.9)}.photo-hero-grid[data-count="1"] .thumbs{display:none}.photo-hero-grid[data-count="2"]{grid-template-columns:1fr 1fr}.photo-hero-grid[data-count="2"] .hero-image{grid-column:1 / -1;min-height:280px}.photo-hero-grid[data-count="2"] .thumbs{display:grid;grid-template-columns:1fr}.photo-hero-grid[data-count="2"] .thumbs .thumb{height:200px}.photo-hero-grid[data-count="3"]{grid-template-columns:2fr 1fr}.photo-hero-grid[data-count="3"] .thumbs{grid-template-rows:1fr 1fr;grid-template-columns:1fr;grid-auto-rows:1fr}.photo-hero-grid[data-count="3"] .hero-image{min-height:300px}.attraction-popup{--attraction-photo-hero-height: 450px;--attraction-photo-grid-gap: 8px;--assistant-bubble-width: 845px}.photo-hero-grid{gap:var(--attraction-photo-grid-gap)}.photo-hero-grid .hero-image,.photo-hero-grid[data-count] .hero-image{height:var(--attraction-photo-hero-height);min-height:var(--attraction-photo-hero-height)}.photo-hero-grid .thumbs{height:var(--attraction-photo-hero-height)}.attraction-popup-chat-messages-unified{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;min-height:0;background:#f9fafb4d}.attraction-popup-initial-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:#1f2937;font-size:1.15rem;font-weight:500;padding:60px 20px;flex:1}.attraction-popup-initial-loading span{text-align:center;letter-spacing:-.01em;background:linear-gradient(135deg,#3b82f6,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.attraction-popup-initial-loading .loading-spinner{width:32px;height:32px;border:3px solid rgba(59,130,246,.15);border-top:3px solid #3b82f6;border-radius:50%;animation:spin .8s linear infinite;box-shadow:0 0 0 4px #3b82f614}.attraction-popup-chat-message{display:flex;max-width:85%}.attraction-popup-chat-message.user{align-self:flex-end}.attraction-popup-chat-message.assistant{max-width:none;align-self:stretch}.attraction-popup-chat-message .message-content{padding:12px 16px;border-radius:16px;font-size:1.05rem;line-height:1.5;word-wrap:break-word}.attraction-popup-chat-message.user .message-content{background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border-bottom-right-radius:6px;max-width:none;width:var(--user-bubble-width, 700px);margin-left:auto;margin-right:30px}.attraction-popup-chat-message.assistant .message-content{background:linear-gradient(180deg,#ffffffd9,#f8fafcd9);color:#0f172a;border-radius:18px;border:1px solid rgba(59,130,246,.1);text-align:left;padding:22px 24px;box-shadow:0 8px 24px #0206170f,inset 0 1px #fff9;backdrop-filter:blur(6px) saturate(140%);-webkit-backdrop-filter:blur(6px) saturate(140%);width:var(--assistant-bubble-width);max-width:none;margin-left:37px;margin-right:0}.attraction-popup-chat-message .message-content.typing{background:#f3f4f6cc;padding:16px}.attraction-popup-chat-input{display:flex;padding:16px 20px;gap:12px;background:#f9fafbcc;border-top:1px solid rgba(0,0,0,.06);align-items:flex-end;flex-shrink:0}.attraction-popup-chat-input input{flex:1;border:1px solid rgba(209,213,219,.8);border-radius:12px;padding:12px 16px;font-size:1.05rem;background:#fffffff2;color:#1f2937;transition:all .2s ease;resize:none;outline:none}.attraction-popup-chat-input input::placeholder{color:#6b7280}.attraction-popup-chat-input input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;background:#fff;color:#1f2937}.attraction-popup-chat-input input:disabled{opacity:.6;cursor:not-allowed}.attraction-popup-chat-input .send-button{background:linear-gradient(135deg,#3b82f6,#6366f1);border:none;border-radius:12px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:all .2s ease;flex-shrink:0}.attraction-popup-chat-input .send-button:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #3b82f64d}.attraction-popup-chat-input .send-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.attraction-popup-chat-messages-unified::-webkit-scrollbar{width:6px}.attraction-popup-chat-messages-unified::-webkit-scrollbar-track{background:#f3f4f680;border-radius:3px}.attraction-popup-chat-messages-unified::-webkit-scrollbar-thumb{background:#9ca3af80;border-radius:3px}.attraction-popup-chat-messages-unified::-webkit-scrollbar-thumb:hover{background:#9ca3afb3}#panel-ai{--assistant-bubble-width: 900px;--user-bubble-width: 900px}#panel-ai .attraction-popup-chat-message.assistant .message-content{margin-left:auto;margin-right:auto}.attraction-popup-maps-scroll{background:#f9fafb4d}.attraction-popup-maps-scroll::-webkit-scrollbar{width:6px}.attraction-popup-maps-scroll::-webkit-scrollbar-track{background:#f3f4f680;border-radius:3px}.attraction-popup-maps-scroll::-webkit-scrollbar-thumb{background:#9ca3af80;border-radius:3px}.attraction-popup-maps-scroll::-webkit-scrollbar-thumb:hover{background:#9ca3afb3}.attraction-tabs{display:inline-flex;background:#1118270a;border:1px solid rgba(17,24,39,.08);border-radius:12px;padding:4px;gap:4px;margin:10px 16px 8px}.attraction-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:#1f2937;border:none;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:600;cursor:pointer}.attraction-tab.active{background:#fff;box-shadow:0 1px 2px #0000000a,inset 0 0 0 1px #6366f12e;color:#111827}.attraction-tab:disabled{opacity:.55;cursor:not-allowed}.area-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:saturate(120%) blur(6px);backdrop-filter:saturate(120%) blur(6px)}.area-dialog-content{width:auto;max-width:95vw;max-height:90vh;overflow:visible;border-radius:0;background:transparent;box-shadow:none;border:none}.area-dialog-content .area-popup{max-height:90vh}.area-popup{width:1000px;max-width:1000px;max-height:85vh;height:85vh;--attraction-photo-hero-height: 450px;--attraction-photo-grid-gap: 8px;--assistant-bubble-width: 845px;background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:24px;box-shadow:0 20px 60px #00000026,0 8px 24px #00000014,0 0 0 1px #ffffff4d inset;border:1px solid rgba(255,255,255,.2);overflow:hidden;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;z-index:1000}.area-popup-content-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.area-popup-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;background:linear-gradient(135deg,#6366f10d,#3b82f60d);border-bottom:1px solid rgba(0,0,0,.06)}.area-popup-title{margin:0;font-size:1.75rem;font-weight:700;color:#1f2937;letter-spacing:-.02em}.area-popup-header-buttons{display:flex;align-items:center;gap:10px}.area-popup-close{background:#6b72801a;border:none;border-radius:12px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;transition:all .2s ease}.area-popup-close:hover{background:#6b728033;color:#374151;transform:scale(1.05)}.area-popup-container{pointer-events:auto;z-index:1000}.area-popup-images-section{flex-shrink:0;background:#f8fafc;border-bottom:1px solid rgba(0,0,0,.06);position:relative;transition:all .3s ease}.area-popup-images-loading,.area-popup-no-images{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#6b7280;gap:12px}.area-popup-images-loading .loading-spinner{width:24px;height:24px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.area-popup-no-images span:first-child{font-size:2rem}.area-popup-images-container{padding:16px}.area-popup-main-image{position:relative;width:100%;height:300px;border-radius:16px;overflow:hidden;background:#f1f5f9;margin-bottom:0}.area-popup-main-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.area-popup-main-image:hover img{transform:scale(1.02)}.area-popup-image-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;color:#374151;transition:all .2s ease;opacity:0;pointer-events:all}.area-popup-main-image:hover .area-popup-image-nav{opacity:1}.area-popup-image-prev{left:12px}.area-popup-image-next{right:12px}.area-popup-image-nav:hover{background:#fff;transform:translateY(-50%) scale(1.05);box-shadow:0 4px 12px #00000026}.area-popup-image-indicator{position:absolute;top:12px;right:12px;background:#000000b3;color:#fff;padding:6px 12px;border-radius:12px;font-size:.875rem;font-weight:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.area-popup-images-toggle{position:absolute;top:12px;right:12px;background:#ffffffe6;border:1px solid rgba(0,0,0,.1);border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s ease;color:#374151}.area-popup-images-toggle:hover{background:#fff;transform:scale(1.05);box-shadow:0 2px 8px #0000001a}.area-popup.images-minimized .area-popup-images-section{height:50px;min-height:50px;overflow:hidden}.area-popup.images-minimized .area-popup-images-container,.area-popup.images-minimized .area-popup-images-loading,.area-popup.images-minimized .area-popup-no-images{opacity:0;pointer-events:none}.area-popup.images-minimized .area-popup-content-wrapper{flex:1}.area-popup.images-minimized .area-popup-images-section:after{content:"Images minimized";position:absolute;left:20px;top:50%;transform:translateY(-50%);color:#6b7280;font-size:.875rem;pointer-events:none}.area-popup .photo-hero-grid{display:grid;grid-template-columns:3fr 2fr;gap:var(--attraction-photo-grid-gap);padding:8px 8px 0;width:calc(100% - 60px);align-items:stretch;margin-left:30px}.area-popup .photo-hero-grid .hero-image{position:relative;border-radius:16px;overflow:hidden;background:#f1f5f9;height:var(--attraction-photo-hero-height);min-height:var(--attraction-photo-hero-height)}.area-popup .photo-hero-grid .hero-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease;cursor:pointer}.area-popup .photo-hero-grid .hero-image:hover img{transform:scale(1.02)}.area-popup .photo-hero-grid .thumbs{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:8px;height:var(--attraction-photo-hero-height)}.area-popup .photo-hero-grid .thumb{padding:0;border:none;border-radius:12px;overflow:hidden;background:#f1f5f9;cursor:pointer}.area-popup .photo-hero-grid .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease,filter .2s ease}.area-popup .photo-hero-grid .thumb:hover img{transform:scale(1.03)}.area-popup .photo-hero-grid .thumb.active img{filter:brightness(.9)}.area-popup .photo-hero-grid[data-count="1"] .thumbs{display:none}.area-popup .photo-hero-grid[data-count="2"]{grid-template-columns:1fr 1fr}.area-popup .photo-hero-grid[data-count="2"] .hero-image{grid-column:1 / -1;min-height:280px}.area-popup .photo-hero-grid[data-count="2"] .thumbs{display:grid;grid-template-columns:1fr}.area-popup .photo-hero-grid[data-count="2"] .thumbs .thumb{height:200px}.area-popup .photo-hero-grid[data-count="3"]{grid-template-columns:2fr 1fr}.area-popup .photo-hero-grid[data-count="3"] .thumbs{grid-template-columns:1fr;grid-auto-rows:minmax(120px,1fr)}.area-popup .photo-hero-grid[data-count="3"] .hero-image{min-height:300px}.area-popup-chat-messages-unified{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;min-height:0;background:#f9fafb4d}.area-popup-initial-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:#1f2937;font-size:1.15rem;font-weight:500;padding:60px 20px;flex:1}.area-popup-initial-loading span{text-align:center;letter-spacing:-.01em;background:linear-gradient(135deg,#3b82f6,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.area-popup-initial-loading .loading-spinner{width:32px;height:32px;border:3px solid rgba(59,130,246,.15);border-top:3px solid #3b82f6;border-radius:50%;animation:spin .8s linear infinite;box-shadow:0 0 0 4px #3b82f614}.area-popup-chat-message{display:flex;max-width:85%}.area-popup-chat-message.user{align-self:flex-end}.area-popup-chat-message.assistant{max-width:none;align-self:stretch}.area-popup-chat-message .message-content{padding:12px 16px;border-radius:16px;font-size:1.05rem;line-height:1.5;word-wrap:break-word}.area-popup-chat-message.user .message-content{background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border-bottom-right-radius:6px;max-width:none;width:var(--user-bubble-width, 700px);margin-left:auto;margin-right:30px}.area-popup-chat-message.assistant .message-content{background:linear-gradient(180deg,#ffffffd9,#f8fafcd9);color:#0f172a;border-radius:18px;border:1px solid rgba(59,130,246,.1);text-align:left;padding:22px 24px;box-shadow:0 8px 24px #0206170f,inset 0 1px #fff9;backdrop-filter:blur(6px) saturate(140%);-webkit-backdrop-filter:blur(6px) saturate(140%);width:var(--assistant-bubble-width);max-width:none;margin-left:37px;margin-right:0}.area-popup-chat-message .message-content.typing{background:#f3f4f6cc;padding:16px}.typing-indicator{display:flex;gap:4px;align-items:center}.typing-indicator span{width:6px;height:6px;background:#9ca3af;border-radius:50%;animation:typing 1.4s infinite ease-in-out}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-10px);opacity:1}}.area-popup-chat-input{display:flex;padding:16px 20px;gap:12px;background:#f9fafbcc;border-top:1px solid rgba(0,0,0,.06);align-items:flex-end;flex-shrink:0}.area-popup-chat-input input{flex:1;border:1px solid rgba(209,213,219,.8);border-radius:12px;padding:12px 16px;font-size:1.05rem;background:#fffffff2;color:#1f2937;transition:all .2s ease;resize:none;outline:none}.area-popup-chat-input input::placeholder{color:#6b7280}.area-popup-chat-input input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;background:#fff;color:#1f2937}.area-popup-chat-input input:disabled{opacity:.6;cursor:not-allowed}.area-popup-chat-input .send-button{background:linear-gradient(135deg,#3b82f6,#6366f1);border:none;border-radius:12px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:all .2s ease;flex-shrink:0}.area-popup-chat-input .send-button:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #3b82f64d}.area-popup-chat-input .send-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.area-popup-chat-messages-unified::-webkit-scrollbar{width:6px}.area-popup-chat-messages-unified::-webkit-scrollbar-track{background:#f3f4f680;border-radius:3px}.area-popup-chat-messages-unified::-webkit-scrollbar-thumb{background:#9ca3af80;border-radius:3px}.area-popup-chat-messages-unified::-webkit-scrollbar-thumb:hover{background:#9ca3afb3}.formatted-response{line-height:1.7;color:#0f172a;letter-spacing:-.01em;font-size:1.05rem}.formatted-response.streaming{position:relative}.streaming-cursor{color:#4f46e5;font-weight:700;animation:blink 1s infinite;margin-left:4px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.formatted-text.streaming-pending{color:#0f172a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.05rem;line-height:1.7;white-space:pre-wrap;word-wrap:break-word;margin:0;padding:10px 12px;background:linear-gradient(90deg,#6366f10f,#3b82f60f);border-radius:10px;border:1px solid rgba(99,102,241,.12)}.formatted-text.streaming-pending .streaming-cursor{margin-left:2px}.formatted-main-headline{font-size:19px;font-weight:750;color:#0f172a;margin:18px 0 12px;padding:10px 14px;background:linear-gradient(135deg,#3b82f614,#6366f112);border-left:4px solid #6366f1;border-radius:0 10px 10px 0;letter-spacing:-.01em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.formatted-main-headline:first-child{margin-top:8px}.formatted-bullet-point{display:flex;align-items:flex-start;margin:8px 0;padding-left:10px}.bullet-symbol{width:8px;height:8px;border-radius:999px;background:linear-gradient(135deg,#60a5fa,#a78bfa);box-shadow:0 0 0 3px #3b82f61f;margin-right:10px;margin-top:9px;flex-shrink:0;color:transparent;font-size:0}.bullet-content{flex:1;font-size:1.05rem;line-height:1.7;color:#334155}.formatted-text{margin:12px 0;font-size:1.05rem;line-height:1.7;color:#0f172a;padding:0 2px}.formatted-text:first-child{margin-top:2px;font-weight:600;color:#111827}.formatted-text.ending-text{margin-bottom:4px;font-style:italic;color:#6b7280}.text-spacer{height:8px}.inline-emphasis{font-weight:600;color:#1f2937}h4.inline-emphasis{font-size:17px;font-weight:600;color:#4f46e5;margin:16px 0 8px;padding-left:8px;border-left:2px solid rgba(79,70,229,.3);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}strong.inline-emphasis{background:#3b82f61a;padding:1px 4px;border-radius:3px}strong.inline-emphasis[data-emphasis-type=tilde]{background:none;padding:0;border-radius:0;color:#000;font-weight:500;font-style:normal;text-decoration:none}@media (max-width: 768px){.formatted-main-headline{font-size:18px;padding:6px 10px;margin:16px 0 10px}h4.inline-emphasis{font-size:16px;margin:12px 0 6px}.formatted-bullet-point{margin:6px 0}.bullet-content{font-size:16px}.formatted-text{font-size:16px;margin:10px 0}}.tiny-chat{position:fixed;top:50%;right:30px;transform:translateY(-50%);background:#ffffff12;backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);border-radius:20px;box-shadow:0 6px 20px #00000029;border:1px solid rgba(255,255,255,.18);padding:22px 24px;cursor:move;-webkit-user-select:none;user-select:none;z-index:1500;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),background .25s cubic-bezier(.4,0,.2,1);font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;position:relative;min-width:320px;max-width:600px}.tiny-chat.hidden{display:none}.tiny-chat:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,var(--glass-darkness)),rgba(0,0,0,calc(var(--glass-darkness) - .1)));border-radius:inherit;transition:all .25s cubic-bezier(.4,0,.2,1);z-index:0}.tiny-chat:hover{transform:translateY(-50%) translateY(-2px);box-shadow:0 8px 24px #0000002e}.tiny-chat:hover:before{background:linear-gradient(180deg,rgba(0,0,0,calc(var(--glass-darkness) + .05)),rgba(0,0,0,calc(var(--glass-darkness) - .05)))}.tiny-chat.dragging{cursor:grabbing;transform:translateY(-50%) translateY(-4px) rotate(1deg);box-shadow:0 12px 32px #0000003d}.tiny-chat.resizing{cursor:ew-resize;transition:none}.tiny-chat-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.15);position:relative;z-index:2}.tiny-chat-title-row{display:flex;align-items:center;gap:8px}.tiny-chat-header-actions{display:flex;align-items:center;gap:8px;position:relative;z-index:3}.mode-selector{display:flex;align-items:center;gap:8px;margin:6px 0 10px;cursor:auto;position:relative;z-index:3;isolation:isolate}.mode-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;color:#fff;font:600 14px/18px Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;padding:6px 8px;border-radius:8px;display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:all .2s ease;text-shadow:0 1px 2px rgba(0,0,0,.5);position:relative;z-index:4}.mode-pill .dot{width:6px;height:6px;border-radius:50%;opacity:.8}.mode-pill .dot.plan{background:#00d4ff}.mode-pill .dot.explore{background:#9bff6d}.mode-pill:hover{color:#fff;border-color:#ffffff2e;background:#ffffff0f}.mode-pill.active{color:#fff;border-color:#ffffff47;background:#ffffff1a}.mode-pill:disabled{opacity:.6;cursor:not-allowed}.tiny-chat-title{font:700 17px/21px Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;color:#fff;margin:0;letter-spacing:.2px;text-shadow:0 1px 3px rgba(0,0,0,.65);-webkit-text-stroke:.25px rgba(0,0,0,.4)}.connection-indicator{display:flex;align-items:center;gap:4px;font:600 12px/22px Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;padding:0;height:auto;border-radius:8px;transition:all .25s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:.2px;text-shadow:0 1px 2px rgba(0,0,0,.5);-webkit-backdrop-filter:none;backdrop-filter:none;background:transparent}.connection-indicator.connected,.connection-indicator.disconnected{color:#fff;background:transparent}.clear-trip-btn{background:#dc262626;border:1px solid rgba(220,38,38,.25);color:#fff;border-radius:8px;padding:4px 8px;cursor:pointer;font-size:12px;line-height:1;transition:all .25s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;min-width:28px;height:22px;opacity:.8}.clear-trip-btn:hover{background:#dc262640;border-color:#dc262666;opacity:1;transform:scale(1.05)}.clear-trip-btn:active{transform:scale(.95)}.clear-trip-btn:focus-visible{outline:2px solid rgba(220,38,38,.6);outline-offset:2px}.minimize-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:8px;padding:4px 8px;cursor:pointer;font-size:14px;line-height:1;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;min-width:28px;height:22px;opacity:.8;margin-right:8px}.minimize-btn:hover{background:#ffffff26;border-color:#ffffff4d;opacity:1;transform:scale(1.05)}.minimize-btn:active{transform:scale(.95)}.minimize-btn:focus-visible{outline:2px solid rgba(255,255,255,.6);outline-offset:2px}.tiny-chat-minimized{position:fixed;width:48px;height:48px;background:#ffffff12;backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);border-radius:50%;box-shadow:0 6px 20px #00000029;border:1px solid rgba(255,255,255,.18);cursor:move;-webkit-user-select:none;user-select:none;z-index:1500;transition:all .25s cubic-bezier(.4,0,.2,1);font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;position:relative;display:flex;align-items:center;justify-content:center}.tiny-chat-minimized:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,var(--glass-darkness)),rgba(0,0,0,calc(var(--glass-darkness) - .1)));border-radius:inherit;transition:all .25s cubic-bezier(.4,0,.2,1)}.tiny-chat-minimized:hover{transform:scale(1.1);box-shadow:0 8px 24px #0000002e}.tiny-chat-minimized:hover:before{background:linear-gradient(180deg,rgba(0,0,0,calc(var(--glass-darkness) + .05)),rgba(0,0,0,calc(var(--glass-darkness) - .05)))}.tiny-chat-minimized.dragging{cursor:grabbing;transform:scale(1.15) rotate(5deg);box-shadow:0 12px 32px #0000003d}.tiny-chat-resize-handle{position:absolute;top:0;right:-6px;width:12px;height:100%;cursor:ew-resize;z-index:4;display:flex;align-items:center;justify-content:center;touch-action:none}.tiny-chat-resize-handle:after{content:"";width:4px;height:36px;border-radius:999px;background:#ffffff47;box-shadow:0 2px 6px #00000040;opacity:.7;transition:opacity .2s ease,background .2s ease}.tiny-chat-resize-handle:hover:after,.tiny-chat.resizing .tiny-chat-resize-handle:after{opacity:1;background:#ffffff73}.restore-btn{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;position:relative;z-index:2;text-shadow:0 1px 3px rgba(0,0,0,.65)}.restore-btn:hover{transform:scale(1.1);text-shadow:0 2px 6px rgba(0,0,0,.8)}.restore-btn:active{transform:scale(.95)}.restore-btn:focus-visible{outline:2px solid rgba(255,255,255,.6);outline-offset:2px}.tiny-chat-minimized .connection-indicator{position:absolute;top:-2px;right:-2px;width:8px;height:8px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#dc262699;z-index:3;opacity:.7}.tiny-chat-minimized .connection-indicator.connected{background:#16a34a99}.tiny-chat-input-container{position:relative;cursor:auto;z-index:2}.tiny-chat-input-wrapper{position:relative;display:flex;align-items:center;padding:4px 0;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);border-radius:12px;overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tiny-chat-input-wrapper:focus-within{border-color:#00c2ff66;background:#ffffff26;box-shadow:0 0 0 2px #00c2ff33}.tiny-chat-input{flex:1;padding:0 16px;margin:4px 0;border:none;outline:none;background:transparent;font:400 16px/22px Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;color:#ededed;letter-spacing:.2px;text-shadow:0 1px 2px rgba(0,0,0,.5);resize:none;overflow-y:auto;min-height:22px;max-height:150px;transition:height .1s ease}.tiny-chat-input::-webkit-scrollbar{width:4px}.tiny-chat-input::-webkit-scrollbar-track{background:transparent}.tiny-chat-input::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.tiny-chat-input::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.tiny-chat-input::placeholder{color:#dadada;font-weight:400}.tiny-chat-send-btn{padding:0;margin:6px;background:linear-gradient(135deg,#00c2ff,#09c);color:#fff;border:none;border-radius:10px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;width:32px;height:32px;position:relative;overflow:hidden;box-shadow:0 2px 8px #00c2ff40}.tiny-chat-send-btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#fff3,#ffffff0d);border-radius:inherit;opacity:0;transition:opacity .3s ease}.tiny-chat-send-btn:hover:not(:disabled){background:linear-gradient(135deg,#00d4ff,#00a8e6);transform:translateY(-2px) scale(1.05);box-shadow:0 4px 16px #00c2ff66}.tiny-chat-send-btn:hover:not(:disabled):before{opacity:1}.tiny-chat-send-btn:active:not(:disabled){transform:translateY(0) scale(.98);box-shadow:0 2px 8px #00c2ff4d}.tiny-chat-send-btn:disabled{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);cursor:not-allowed;transform:none;box-shadow:none;color:#fff6}.tiny-chat-send-btn svg{position:relative;z-index:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.send-btn-loading{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:16px;height:16px}.send-btn-spinner{width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top:2px solid #FFFFFF;border-radius:50%;animation:send-btn-spin 1s linear infinite}@keyframes send-btn-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tiny-chat-input-container{animation:slideInFromRight .4s cubic-bezier(.16,1,.3,1)}@keyframes slideInFromRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.tiny-chat{width:280px;right:20px;padding:16px}.tiny-chat-input{font-size:16px}}.tiny-chat-input:focus{outline:none}.tiny-chat-send-btn:focus-visible{outline:2px solid rgba(0,194,255,.6);outline-offset:2px}.tiny-chat.loading{pointer-events:auto}.tiny-chat-header:after{content:"";position:absolute;left:-24px;right:-24px;bottom:-2px;height:3px;border-radius:999px;background:linear-gradient(90deg,#00d4ff00,#00d4ff80,#9bff6dcc,#00d4ff80,#00d4ff00);background-size:200% 100%;opacity:0;transform:scaleX(.6);transform-origin:center;transition:opacity .25s ease,transform .4s cubic-bezier(.16,1,.3,1);pointer-events:none}.tiny-chat.loading .tiny-chat-header:after{opacity:1;transform:scaleX(1);animation:tiny-chat-progress-glow 1.2s ease-in-out infinite}@keyframes tiny-chat-progress-glow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.connection-indicator.loading{gap:6px}.fail-text{color:#ff4d4f;font-weight:700}.response-activity{width:12px;height:12px;border-radius:50%;border:2px solid rgba(0,212,255,.25);border-top-color:#00d4ff;border-right-color:#9bff6d;box-shadow:0 0 8px #00d4ff73;animation:spin .9s linear infinite}.tiny-chat-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffff05;backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%);border-radius:20px;border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;z-index:10;animation:fadeIn .25s cubic-bezier(.4,0,.2,1)}.loading-overlay:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,calc(var(--glass-darkness) - .2)),rgba(0,0,0,calc(var(--glass-darkness) - .25)));border-radius:inherit}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loading-dots{display:flex;gap:4px;align-items:center;position:relative;z-index:2}.dot{width:10px;height:10px;border-radius:50%;background:#00c2ff;box-shadow:0 0 8px #00c2ff66,0 2px 4px #0000004d;animation:bounce 1.4s infinite ease-in-out}.dot-1{animation-delay:-.32s}.dot-2{animation-delay:-.16s}.dot-3{animation-delay:0s}@keyframes bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.loading-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.tiny-chat.dragging,.tiny-chat.resizing{will-change:transform,width;backface-visibility:hidden;-webkit-backface-visibility:hidden;pointer-events:auto;transition:none}@media (prefers-reduced-motion: reduce){.tiny-chat,.tiny-chat-send-btn,.loading-spinner,.dot{animation:none!important;transition:none!important}.tiny-chat:hover,.tiny-chat.dragging{transform:translateY(-50%)}.loading-overlay{animation:none}}.tiny-chat-text-area{margin-top:12px;background:#ffffff14;backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);border-radius:10px;border:1px solid rgba(255,255,255,.12);overflow:hidden;cursor:auto;position:relative;z-index:2;animation:slideInFromBottom .3s cubic-bezier(.16,1,.3,1)}.tiny-chat-text-area:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,calc(var(--glass-darkness) - .15)),rgba(0,0,0,calc(var(--glass-darkness) - .2)));border-radius:inherit;transition:all .25s cubic-bezier(.4,0,.2,1)}.tiny-chat-text-area:hover:before{background:linear-gradient(180deg,rgba(0,0,0,calc(var(--glass-darkness) - .1)),rgba(0,0,0,calc(var(--glass-darkness) - .15)))}.text-area-close-btn{background:none;border:none;color:#fff;font-size:16px;line-height:1;cursor:pointer;padding:6px;border-radius:50%;transition:all .2s cubic-bezier(.4,0,.2,1);opacity:.6;font-weight:300;display:flex;align-items:center;justify-content:center;width:24px;height:24px;position:absolute;top:8px;right:8px;z-index:3}.text-area-close-btn:hover{background:#ffffff1a;opacity:1;transform:scale(1.1)}.text-area-close-btn:active{transform:scale(.9)}.tiny-chat-text-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.1);position:relative;z-index:3}.tiny-chat-text-title{font:600 12px/16px Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;color:#fff;text-transform:uppercase;letter-spacing:.5px;text-shadow:0 1px 2px rgba(0,0,0,.5)}.text-area-content{padding:16px 20px;max-height:400px;overflow-y:auto;font:400 16px/26px Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;color:#fff;letter-spacing:.2px;text-shadow:0 1px 3px rgba(0,0,0,.6);white-space:pre-wrap;word-wrap:break-word;position:relative;z-index:2;text-align:left;line-height:1.6;font-weight:500}.text-area-content::-webkit-scrollbar{width:6px}.text-area-content::-webkit-scrollbar-track{background:#ffffff14;border-radius:3px}.text-area-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px;transition:background .2s ease}.text-area-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(20px);max-height:0}to{opacity:1;transform:translateY(0);max-height:450px}}.tiny-chat.with-text-area{max-height:calc(100vh - 100px);overflow:visible}.tiny-chat.loading .tiny-chat-input-wrapper{background:#00c2ff14;border-color:#00c2ff40}@media (prefers-reduced-motion: reduce){.tiny-chat,.tiny-chat-send-btn,.lightning-icon,.loading-spinner,.dot,.text-area-close-btn{animation:none!important;transition:none!important}.tiny-chat:hover,.tiny-chat.dragging{transform:translateY(-50%)}.loading-overlay,.tiny-chat-text-area{animation:none}}.profile-button-root{position:fixed;top:25px;right:30px;z-index:1001}.profile-trigger{position:relative;background:transparent;border:none;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .16s ease}.profile-trigger:hover{transform:translateY(-1px) scale(1.02)}.profile-trigger:active{transform:translateY(0) scale(.98)}.avatar-glass{width:40px;height:40px;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;background:#ffffff12;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);box-shadow:0 6px 20px #00000029;position:relative;overflow:hidden}.avatar-glass:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,var(--glass-darkness)),rgba(0,0,0,calc(var(--glass-darkness) - .1)));border-radius:inherit;transition:all .25s cubic-bezier(.4,0,.2,1);z-index:0}.profile-trigger:hover .avatar-glass:before{background:linear-gradient(180deg,rgba(0,0,0,calc(var(--glass-darkness) + .05)),rgba(0,0,0,calc(var(--glass-darkness) - .05)))}.avatar-initial{position:relative;z-index:1;font-size:16px;letter-spacing:.2px;text-shadow:0 1px 3px rgba(0,0,0,.65)}.profile-menu{position:absolute;top:44px;right:0;width:240px;background:linear-gradient(180deg,#11182794,#0b111f94);border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:8px;box-shadow:0 20px 40px #0000002e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:hidden;animation:menu-in .16s ease forwards}.profile-menu:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px;pointer-events:none;background:radial-gradient(60% 60% at 20% 0%,rgba(59,130,246,.08),transparent 60%)}.profile-info{padding:8px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:8px}.profile-info .name{font-size:14px;color:#e5e7eb}.profile-info .email{font-size:12px;color:#9ca3af}.menu-item{width:100%;text-align:left;padding:8px;border:none;background:transparent;color:#e5e7eb;border-radius:8px;cursor:pointer;transition:background-color .16s ease,color .16s ease}.menu-item:hover{background:#ffffff08}.menu-item.danger{color:#fca5a5}@keyframes menu-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.trips-catalog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(60% 60% at 50% 20%,rgba(59,130,246,.1),transparent 60%),radial-gradient(50% 50% at 70% 80%,rgba(16,185,129,.08),transparent 60%),#00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1600;animation:overlay-fade .16s ease-out both}.trips-catalog-modal{width:1040px;max-width:96vw;max-height:88vh;min-height:200px;background:linear-gradient(180deg,#111827d6,#0b111fd6);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;box-sizing:border-box;box-shadow:0 24px 64px #00000059;position:relative;overflow:hidden;transform-origin:center;animation:modal-pop .18s cubic-bezier(.2,.8,.25,1) both;display:flex;flex-direction:column;--grid-gap: 16px;--card-min: 320px;--card-radius: 14px;--card-padding-x: 12px;--card-padding-y: 10px;--title-size: 14px;--dest-size: 12px}.trips-catalog-modal.density-spacious{--card-min: 350px;--grid-gap: 20px;--title-size: 16px;--dest-size: 13px}.trips-catalog-modal.density-comfortable{--card-min: 240px;--grid-gap: 18px;--title-size: 15px;--dest-size: 12px}.trips-catalog-modal.density-cozy{--card-min: 320px;--grid-gap: 16px;--title-size: 14px;--dest-size: 12px}.trips-catalog-modal.density-compact{--card-min: 260px;--grid-gap: 12px;--title-size: 13px;--dest-size: 11px}.trips-catalog-modal.density-ultra{--card-min: 220px;--grid-gap: 10px;--title-size: 12px;--dest-size: 11px}.trips-catalog-header{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 12px;color:#e5e7eb;border-bottom:1px solid rgba(255,255,255,.08)}.trips-catalog-header .title{font-size:18px;font-weight:600}.close-btn{background:transparent;border:none;color:#9ca3af;font-size:22px;cursor:pointer;padding:4px 8px;border-radius:8px}.close-btn:hover{color:#e5e7eb;background:#ffffff0f}.grid{padding:16px 20px 20px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--card-min),1fr));gap:var(--grid-gap);flex:1;min-height:0;align-items:start;align-content:start;overscroll-behavior:contain;justify-items:center}.grid::-webkit-scrollbar{width:10px;height:10px}.grid::-webkit-scrollbar-track{background:#ffffff08;border-radius:9999px}.grid::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#ffffff29,#ffffff14);border-radius:9999px;border:2px solid rgba(0,0,0,0)}.grid{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) rgba(255,255,255,.06)}.grid.single-item{padding:16px 20px 20px;grid-template-columns:1fr;justify-items:center;align-content:center}.grid.single-item .card{width:100%;max-width:400px}.grid.single-item .card .image{height:auto;aspect-ratio:16 / 10}@media (max-width: 900px){.grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}}@media (max-width: 520px){.grid{grid-template-columns:1fr;gap:12px}}.card{background:#0b111f;border:1px solid rgba(255,255,255,.08);border-radius:var(--card-radius);padding:0;cursor:pointer;text-align:left;color:#e5e7eb;overflow:visible;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease;position:relative;display:flex;flex-direction:column;box-sizing:border-box}.delete-btn{position:absolute;top:6px;right:6px;width:22px;height:22px;line-height:20px;text-align:center;border-radius:9999px;border:1px solid rgba(255,255,255,.25);background:#0b111fcc;color:#e5e7eb;cursor:pointer;z-index:20;font-size:14px;padding:0}.delete-btn:hover{background:#dc2626d9;border-color:#dc2626f2;color:#fff}.card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #00000059;border-color:#ffffff24}.card.active{border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f6,0 8px 24px #3b82f640}.card.active:hover{border-color:#60a5fa;box-shadow:0 0 0 1px #60a5fa,0 14px 28px #3b82f64d}.card .image{width:100%;height:auto;aspect-ratio:16 / 10;overflow:hidden;flex:0 0 auto;border-top-left-radius:var(--card-radius);border-top-right-radius:var(--card-radius)}.card .image img{width:100%;height:100%;object-fit:cover;object-position:center}.card .card-info{padding:var(--card-padding-y) var(--card-padding-x) calc(var(--card-padding-y) + 2px) var(--card-padding-x);flex:0 0 auto}.card .card-title{font-size:var(--title-size);font-weight:600;margin-bottom:4px;word-wrap:break-word;line-height:1.3;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card .card-destination{font-size:var(--dest-size);color:#9ca3af;word-wrap:break-word;line-height:1.3;display:-webkit-box;line-clamp:1;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.active-indicator{position:absolute;top:8px;left:8px;z-index:10}.active-badge{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;font-size:10px;font-weight:600;padding:4px 8px;border-radius:12px;box-shadow:0 2px 8px #3b82f666;text-transform:uppercase;letter-spacing:.5px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:160px;padding:20px;color:#9ca3af}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.12);border-top:3px solid #3B82F6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px;background:#ffffff0a;box-shadow:0 0 12px #3b82f626}.loading-text{font-size:14px;color:#e5e7eb}.empty{padding:32px;text-align:center;color:#9ca3af;font-size:16px;min-height:120px;display:flex;align-items:center;justify-content:center}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.create-trip-button{position:fixed;top:25px;right:100px;z-index:1001;height:40px;padding:0 16px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:#ffffff12;backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;white-space:nowrap;box-shadow:0 6px 20px #00000029;text-shadow:0 1px 3px rgba(0,0,0,.65);-webkit-text-stroke:.25px rgba(0,0,0,.4)}.create-trip-button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,var(--glass-darkness)),rgba(0,0,0,calc(var(--glass-darkness) - .1)));border-radius:inherit;transition:all .25s cubic-bezier(.4,0,.2,1);z-index:-1}.create-trip-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000002e}.create-trip-button:hover:before{background:linear-gradient(180deg,rgba(0,0,0,calc(var(--glass-darkness) + .05)),rgba(0,0,0,calc(var(--glass-darkness) - .05)))}.create-trip-button:active{transform:translateY(0);box-shadow:0 4px 16px #0003}.create-trip-button:focus{outline:2px solid rgba(255,255,255,.3);outline-offset:2px}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#060b19b3,#1a203880);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);z-index:9999;opacity:0;pointer-events:none;transition:opacity .4s cubic-bezier(.4,0,.2,1)}.loading-overlay.is-visible{opacity:1;pointer-events:all}.loading-card{display:flex;flex-direction:column;align-items:center;gap:24px;padding:48px 40px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 40px #0000004d,0 4px 12px #00000026,inset 0 1px #ffffff1a;transform:translateY(-2px)}@media (prefers-color-scheme: dark){.loading-card{background:#0f0f0f66;border-color:#ffffff0f}}.spinner{width:32px;height:32px;border-radius:50%;border:2px solid rgba(255,255,255,.1);border-top-color:#fffc;animation:spin .8s linear infinite;position:relative}.spinner:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:50%;border:1px solid transparent;border-top-color:#fff6;animation:spin 1.2s linear infinite reverse}.loading-overlay:not(.is-visible) .spinner,.loading-overlay:not(.is-visible) .spinner:after{animation-play-state:paused}.brand{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:20px;font-weight:500;letter-spacing:-.01em;color:#fffffff2;margin:0}.message{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:14px;font-weight:400;color:#ffffffb3;margin:-8px 0 0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.quiz-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(1200px 600px at 50% 10%,#1e1e288c,#0a0a0e99),#00000059;display:flex;align-items:center;justify-content:center;z-index:9999;animation:overlayFadeIn .2s ease-out}.quiz-modal{width:840px;max-width:calc(100vw - 32px);max-height:calc(100vh - 80px);overflow:auto;border-radius:24px;padding:20px 22px 16px;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);background:linear-gradient(180deg,#191923b3,#12121aa6);border:1px solid rgba(255,255,255,.14);box-shadow:0 20px 60px #0000008c,inset 0 0 0 1px #ffffff0d;color:#f2f4f9;transform:translateY(8px) scale(.98);opacity:0;animation:modalPop .24s cubic-bezier(.16,1,.3,1) forwards}.quiz-header{display:flex;align-items:center;margin-bottom:10px}.quiz-title{margin:0;font-size:20px;font-weight:800;letter-spacing:.2px;text-shadow:0 2px 8px rgba(0,0,0,.45)}.quiz-body{display:flex;flex-direction:column;gap:14px;margin:12px 2px}.quiz-question{background:#ffffff14;border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:24px;box-shadow:inset 0 0 0 1px #ffffff0d}.quiz-q-text{font-weight:700;margin-bottom:16px;letter-spacing:.2px;color:#f6f7fb;font-size:16px}.quiz-dates{display:flex;gap:48px;justify-content:center}.quiz-date-field{display:flex;flex-direction:column;gap:4px}.quiz-date-field label{font-size:12px;opacity:.9}.quiz-date-field input[type=date]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff24;border:1px solid rgba(255,255,255,.22);color:#fff;border-radius:10px;padding:8px 10px}.quiz-options{display:flex;flex-wrap:wrap;gap:8px 12px}.quiz-option{display:flex;align-items:center;gap:8px;color:#f1f5ff}.quiz-option input{accent-color:#6b8bff}.quiz-comment{margin-top:12px}.quiz-textarea{width:100%;max-width:250px;display:block;margin:0;min-height:30px;background:#ffffff24;border:1px solid rgba(255,255,255,.22);color:#fff;border-radius:10px;padding:10px 12px;outline:none;resize:none;font-family:inherit;font-size:14px;line-height:1.4}.quiz-textarea::placeholder{color:#ffffffa6}.quiz-textarea:focus{border-color:#6b8bffa6;box-shadow:0 0 0 3px #6b8bff33}.quiz-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.quiz-btn{border:none;border-radius:12px;padding:10px 16px;cursor:pointer;transition:all .16s ease;font-weight:600}.quiz-btn.primary{background:linear-gradient(135deg,#7ea1ff,#5b7dff);color:#fff;box-shadow:0 6px 16px #5b7dff59}.quiz-btn.primary:hover{transform:translateY(-1px);box-shadow:0 10px 22px #5b7dff73}.quiz-btn.primary:active{transform:translateY(0)}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalPop{to{opacity:1;transform:translateY(0) scale(1)}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--glass-darkness: .55}html,body{height:100%;overflow:hidden;overscroll-behavior:none}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;height:100vh;margin:0;padding:0}
