*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.bottom-4{bottom:1rem}.left-0{left:0}.left-1\/2{left:50%}.right-0{right:0}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-20{top:5rem}.top-36{top:9rem}.top-4{top:1rem}.top-52{top:13rem}.z-30{z-index:30}.z-50{z-index:50}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-3{margin-bottom:.75rem}.mb-6{margin-bottom:1.5rem}.ml-14{margin-left:3.5rem}.ml-3{margin-left:.75rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-auto{margin-right:auto}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.hidden{display:none}.h-12{height:3rem}.h-\[32px\]{height:32px}.max-h-\[130px\]{max-height:130px}.max-h-\[60px\]{max-height:60px}.w-12{width:3rem}.w-2{width:.5rem}.w-\[60px\]{width:60px}.w-full{width:100%}.max-w-md{max-width:28rem}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-full{--tw-translate-y:-100%}.-translate-y-full,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-hidden{overflow-y:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.bg-danger{--tw-bg-opacity:1;background-color:rgb(235 21 10/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-info{--tw-bg-opacity:1;background-color:rgb(4 213 241/var(--tw-bg-opacity,1))}.bg-primary{--tw-bg-opacity:1;background-color:rgb(71 255 209/var(--tw-bg-opacity,1))}.bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-yellow-500{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}.bg-opacity-80{--tw-bg-opacity:0.8}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-background{--tw-text-opacity:1;color:rgb(1 22 39/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-danger{--tw-text-opacity:1;color:rgb(235 21 10/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-info{--tw-text-opacity:1;color:rgb(4 213 241/var(--tw-text-opacity,1))}.text-primary-dark{--tw-text-opacity:1;color:rgb(58 214 176/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}#loading-bar{background-color:#4a5568;height:8px;transition:width .4s ease;width:0}.current-location-marker{background-color:blue;border:2px solid #fff}button{background-color:var(--primary-color);border:none;border-radius:5px;color:var(--text-on-primary);cursor:pointer;padding:10px 20px;transition:background-color .3s}button:hover{background-color:var(--primary-dark)}button.disabled,button:disabled{cursor:not-allowed;opacity:.5;pointer-events:none}body:has(#offline-banner:not(.hidden)) #send-feedback,body:has(#offline-banner:not(.hidden)) #submit-location{cursor:not-allowed!important;opacity:.5!important;pointer-events:none!important;position:relative}body:has(#offline-banner:not(.hidden)) #send-feedback:after,body:has(#offline-banner:not(.hidden)) #submit-location:after{bottom:-25px;color:var(--danger-color,#eb150a);content:"Unavailable while offline";font-size:10px;font-weight:700;left:50%;position:absolute;transform:translateX(-50%);white-space:nowrap}body:has(#offline-banner:not(.hidden)) #send-feedback:hover:before,body:has(#offline-banner:not(.hidden)) #submit-location:hover:before{background-color:rgba(0,0,0,.8);border-radius:4px;bottom:-30px;color:#fff;content:"This feature requires an internet connection";font-size:12px;left:50%;padding:5px 10px;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:100}body.dark{background-color:#1a202c;color:#cbd5e0}body.dark .bg-white{background-color:#2d3748}body.dark .text-white{color:#cbd5e0}body.dark .bg-purple-700{background-color:#6b46c1}body.dark .text-purple-700{color:#9f7aea}body.dark .bg-purple-700{background-color:var(--primary-color)}body.dark .text-purple-700{color:var(--primary-light)}body.dark .bg-gray-200{background-color:#4a5568}body.dark .text-gray-700{color:#cbd5e0}body.dark .border-gray-300{border-color:#4a5568}body.dark .bg-gray-100{background-color:#2d3748}body.dark .text-gray-900{color:#cbd5e0}@media (max-width:768px){.flex.items-center.mb-4{align-items:flex-start;flex-direction:column}.flex.items-center.mb-4>*{margin-bottom:10px}}.error-message{color:#e53e3e;font-weight:700;padding:1rem;text-align:center}body{transition:background-color .3s,color .3s}body.light{--primary-color:#47ffd1;--primary-dark:#3ad6b0;--primary-light:#7affdf;--text-on-primary:#011627;--background-color:#fff;--text-color:#1a202c;--card-bg:#fff;--border-color:#e2e8f0;--hover-color:#ebfffa;--info-color:#04d5f1;--warning-color:#e7e247;--danger-color:#eb150a;--success-color:#22c55e}body.dark{--primary-color:#47ffd1;--primary-dark:#3ad6b0;--primary-light:#7affdf;--text-on-primary:#011627;--background-color:#011627;--text-color:#f7fafc;--card-bg:#0a2942;--border-color:#1a3c5a;--hover-color:#153450;--info-color:#04d5f1;--warning-color:#e7e247;--danger-color:#eb150a;--success-color:#22c55e}body{background-color:var(--background-color);color:var(--text-color)}h1,h2,h3,h4,h5,h6{color:var(--primary-dark)}.card{background-color:var(--card-bg);border:1px solid var(--border-color);box-shadow:0 4px 8px rgba(0,0,0,.2)}.switch{display:inline-block;height:26px;margin-right:8px;position:relative;width:52px}.switch input{height:0;opacity:0;width:0}.slider{background-color:#ccc;border-radius:34px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{background-color:#fff;border-radius:50%;bottom:4px;content:"";height:18px;left:4px;width:18px}input:checked+.slider{background-color:var(--info-color)!important}input:focus+.slider{box-shadow:0 0 1px var(--info-color)}input:checked+.slider:before{transform:translateX(26px)!important}input[type=checkbox]{display:none}input[type=checkbox]:checked+.slider{background-color:var(--info-color)}input[type=checkbox]:checked+.slider:before{transform:translateX(26px)}.loading-dots:after{animation:dots 1.5s infinite;content:"...";display:inline-block;text-align:left;width:20px}.alert-info{background-color:rgba(4,213,241,.2);border-left:4px solid var(--info-color)}.alert-warning{background-color:rgba(231,226,71,.2);border-left:4px solid var(--warning-color)}.alert-danger{background-color:rgba(235,21,10,.2);border-left:4px solid var(--danger-color)}.modal-form-text{color:var(--text-color)}body.light .modal-form-text{color:#000}.btn-cancel{background-color:#ccc;color:#333;transition:background-color .2s}.btn-cancel:hover{background-color:#b3b3b3}body.dark .btn-cancel{background-color:#3a3a3a;color:#f0f0f0}body.dark .btn-cancel:hover{background-color:#555}input.form-input,textarea.form-input{background-color:#fff;color:#333}body.dark input.form-input,body.dark textarea.form-input{background-color:var(--card-bg);color:#fff}#feedback-modal,#location-modal{background-color:rgba(1,22,39,.5)}body.light #feedback-modal .card,body.light #location-modal .card{background-color:#fff;border:1px solid #e2e8f0;color:#333}body.dark #feedback-modal .card,body.dark #location-modal .card{background-color:var(--card-bg);border:1px solid var(--border-color);color:#fff}.modal-form-text{color:#333}body.dark .modal-form-text{color:#fff}.form-checkbox{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-color:#fff;border:2px solid var(--primary-color);border-radius:4px;cursor:pointer;height:18px;margin-right:5px;outline:none;position:relative;vertical-align:middle;width:18px}body.dark .form-checkbox{background-color:var(--card-bg)}.form-checkbox:checked{background-color:var(--primary-color)}.form-checkbox:checked:after{color:var(--text-on-primary);content:"\2714";font-size:12px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.location-panels{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width:640px){.location-panels{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.location-panels{grid-template-columns:repeat(3,1fr)}}.location-panel{border-radius:.5rem;box-shadow:0 4px 6px rgba(0,0,0,.1);cursor:pointer;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.location-panel:hover{box-shadow:0 8px 15px rgba(0,0,0,.1);transform:translateY(-3px)}.location-panel-header{border-bottom:1px solid var(--border-color);padding:1rem 1rem .5rem}.location-panel-body{padding:1rem}.location-panel-footer{align-items:center;display:flex;justify-content:space-between;padding:.5rem 1rem 1rem}.panel-info-row{align-items:center;display:flex;margin-bottom:.5rem}.panel-info-row i{text-align:center;width:30px}.panel-status{align-items:center;display:flex;margin-bottom:.5rem;margin-top:.5rem;padding-left:0;position:relative}.status-indicator{width:30px}.status-indicator.open{color:var(--success-color)}.status-indicator.closing-soon{color:var(--warning-color)}.status-indicator.closed{color:var (--danger-color)}.location-panel.closed{border-top:4px solid var(--danger-color);opacity:.8}.location-panel.closed .location-panel-header h2{color:var(--text-color);opacity:.7}.location-panel.closed .panel-info-row{color:var(--text-color);opacity:.8}.location-panel.closed .panel-info-row i{color:#999}.location-panel.closed .status-indicator.closed{color:var(--danger-color)}body.dark .location-panel.closed .location-panel-header h2,body.dark .location-panel.closed .panel-info-row{color:#cbd5e0;opacity:.7}.fixed-top-section{background-color:var(--background-color);box-shadow:0 4px 6px -1px rgba(0,0,0,.1);left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:10}.scrollable-content{min-height:100vh;padding-top:600px}@media (max-width:768px){.scrollable-content{padding-top:460px}}#theme-toggle{z-index:20}.location-panels{margin-top:1rem}@media screen{:root{--js-header-height:600px}.scrollable-content{padding-top:var(--js-header-height)}}.app-title{background-color:rgba(1,22,39,.7)}.controls-panel{align-items:center;background-color:rgba(1,22,39,.85);bottom:0;box-shadow:0 -4px 6px rgba(0,0,0,.1);display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;left:0;padding:1rem;position:fixed;right:0;z-index:10}.buttons-container{display:flex;flex-wrap:wrap;gap:.5rem}.filters-container{align-items:center;display:flex}@media (min-width:768px){.locations-panel{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:rgba(1,22,39,.85);bottom:5rem;left:0;overflow-y:auto;padding:.5rem;position:fixed;top:4rem;width:320px;z-index:5}.locations-container{display:flex;flex-direction:column;gap:.75rem;padding-bottom:1rem;padding-right:.25rem}.location-panel{opacity:.9;transition:all .2s ease}.location-panel:hover{opacity:1;transform:scale(1.02)}}@media (max-width:767px){.locations-panel{background-color:rgba(1,22,39,.9);box-shadow:0 2px 10px rgba(0,0,0,.3);left:0;overflow-y:auto;padding:.75rem;position:fixed;right:0;top:4rem;width:100%;z-index:5}.locations-container{display:flex;flex-direction:column;gap:.75rem;padding:.25rem .25rem 1rem}.location-panel{border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.15);font-size:1rem;margin-bottom:.5rem;min-height:120px;width:100%}.location-panel-header h2{font-size:1.2rem;line-height:1.2;margin-bottom:.25rem}.location-panel-header{padding:.5rem .75rem .25rem}.location-panel-body{padding:.4rem .75rem}.panel-info-row,.panel-status{margin-bottom:.35rem}.panel-status{margin-top:.35rem}.locations-panel:after{background:linear-gradient(0deg,rgba(1,22,39,.9),transparent);content:"";height:20px;pointer-events:none;position:absolute;z-index:1}.controls-panel,.locations-panel:after{bottom:0;left:0;right:0}}.location-panel{display:none}#theme-toggle{z-index:30}.filters-container label{color:var(--primary-color);font-weight:500}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.5)}.locations-container,.locations-panel,.modal-container,.notes-container,.weekly-hours-container,[class*=overflow-],div[style*=overflow-x],div[style*=overflow-y],div[style*=overflow]{scrollbar-color:hsla(0,0%,100%,.2) transparent;scrollbar-width:thin}.app-title{z-index:10}@media (min-width:768px){.locations-panel{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background-color:rgba(1,22,39,.7);box-shadow:0 2px 10px rgba(0,0,0,.3);transition:transform .3s ease}}@media (max-width:767px){.locations-panel{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background-color:rgba(1,22,39,.85);bottom:auto;left:0;max-height:70vh;overflow-y:auto;padding:.5rem;position:fixed;right:0;top:4rem;transform:translateY(-100%);transition:transform .3s ease;width:100%;z-index:5}.locations-panel.expanded{transform:translateY(0)}.locations-panel-toggle{align-items:center;background-color:rgba(1,22,39,.8);border:none;border-radius:0 0 1rem 1rem;bottom:-40px;box-shadow:0 2px 10px rgba(0,0,0,.3);color:var(--primary-color);cursor:pointer;display:flex;font-size:1.25rem;justify-content:center;left:50%;min-width:120px;padding:.25rem 1.5rem .5rem;position:absolute;transform:translateX(-50%);transition:transform .3s ease;width:auto;z-index:20}.locations-panel-toggle:hover{background-color:rgba(1,22,39,.95)}.locations-panel:not(.expanded) .locations-panel-toggle{bottom:auto;position:fixed;top:4rem}.locations-container{display:flex;flex-direction:column;gap:.75rem;padding:.25rem .25rem 1rem}.location-panel{height:auto;max-width:none;min-width:auto;width:100%}.locations-panel-toggle.expanded .toggle-icon{transform:rotate(180deg)}}.controls-panel{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background-color:rgba(1,22,39,.7)}@media (min-width:768px){.locations-panel{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background-color:rgba(1,22,39,.85);bottom:0;box-shadow:0 0 15px rgba(0,0,0,.3);left:0;overflow-y:auto;padding:.5rem;position:fixed;top:0;width:320px;z-index:5}.locations-container{display:flex;flex-direction:column;gap:.75rem;margin-top:4rem;padding:.5rem .25rem 5rem .5rem}}@media (max-width:767px){.locations-panel{background-color:rgba(1,22,39,.9);box-shadow:0 2px 10px rgba(0,0,0,.3);left:0;overflow-y:auto;padding:.75rem;position:fixed;right:0;top:4rem;width:100%;z-index:5}.locations-container{display:flex;flex-direction:column;gap:.75rem;padding:.25rem}.location-panel{font-size:1.1rem;margin-bottom:.75rem;min-height:140px;width:100%}.location-panel-header h2{font-size:1.25rem;line-height:1.4;margin-bottom:.25rem}.locations-panel-toggle{display:none}.controls-panel{bottom:0;left:0;right:0}.locations-panel{background-color:rgba(1,22,39,.9);bottom:auto;left:0;max-height:80vh;overflow-y:auto;padding:1rem;position:fixed;right:0;top:4rem;transform:translateY(-100%);transition:transform .3s ease;width:100%;z-index:15}.locations-panel.expanded{transform:translateY(0)}.locations-container{display:flex;flex-direction:column;gap:1rem;padding:.5rem .5rem 3rem}.location-panel{font-size:1.15rem;height:auto;margin-bottom:.75rem;max-width:none;min-height:140px;min-width:auto;width:100%}.location-panel-header h2{font-size:1.3rem;line-height:1.4;margin-bottom:.5rem}.panel-info-row{font-size:1.05rem;margin-bottom:.75rem}.panel-status{font-size:1.05rem;margin-top:.75rem}.locations-panel-toggle{align-items:center;background-color:rgba(1,22,39,.8);border:none;border-radius:0 0 1rem 1rem;bottom:-40px;box-shadow:0 2px 10px rgba(0,0,0,.3);color:var(--primary-color);cursor:pointer;display:flex;font-size:1.25rem;justify-content:center;left:50%;min-width:120px;padding:.25rem 1.5rem .5rem;position:absolute;transform:translateX(-50%);transition:transform .3s ease;width:auto;z-index:20}.locations-panel-toggle:hover{background-color:rgba(1,22,39,.95)}.locations-panel:not(.expanded) .locations-panel-toggle{bottom:auto;position:fixed;top:4rem}.locations-panel-toggle.expanded .toggle-icon{transform:rotate(180deg)}}@media (min-width:768px){.controls-panel{left:320px}}.location-panel-header{padding:.75rem 1rem .5rem}.location-panel-body{padding:.75rem 1rem}.panel-info-row i,.status-indicator{font-size:1.2rem;width:24px}@media (max-width:767px){.locations-panel{background-color:rgba(1,22,39,.95);box-shadow:0 2px 10px rgba(0,0,0,.3);display:block!important;height:320px;left:0;max-height:50vh;min-height:320px;overflow-x:hidden;overflow-y:auto;padding:.75rem;position:fixed;right:0;top:4rem;visibility:visible!important;width:100%;z-index:10}.location-panel.location-loaded{display:block;margin-bottom:.75rem;min-height:120px;visibility:visible}.locations-container{display:flex;flex-direction:column;gap:.75rem;min-height:300px;padding:.5rem}.controls-panel{bottom:0;left:0;right:0;z-index:20}}body,html{overflow-x:hidden}@media (max-width:767px){.app-title{align-items:center;display:flex;height:4rem;z-index:15}.panel-info-row,.panel-status{min-height:28px}#theme-toggle{z-index:30}.locations-panel{background-color:rgba(1,22,39,.95);box-shadow:0 2px 10px rgba(0,0,0,.3);display:block!important;height:320px;left:0;overflow-x:hidden;overflow-y:auto;padding:.75rem;position:fixed;right:0;top:0;transform:none!important;transition:none;visibility:visible!important;width:100%;z-index:10}.app-title{bottom:4.5rem;position:fixed;top:auto;z-index:15}}@media (min-width:768px){.locations-panel{transform:none!important}}.location-panel.location-loaded{display:block}.app-title{pointer-events:none}@media (max-width:767px){.app-title{background-color:rgba(1,22,39,.8);border-radius:0 0 1rem 0;bottom:auto;height:auto;left:0;padding:.5rem 1rem;position:fixed;right:auto;text-align:left;top:0;width:auto;z-index:15}.app-title h1{font-size:1.5rem}.locations-panel{background-color:rgba(1,22,39,.95);display:block!important;height:340px;overflow-x:hidden;overflow-y:auto;padding:.75rem;transform:none!important;visibility:visible!important;z-index:10}.controls-panel{padding-top:1.5rem;z-index:20}}.controls-panel,.locations-panel{opacity:0;transition:opacity .5s ease;visibility:hidden}.controls-panel.locations-loaded,.locations-panel.locations-loaded{opacity:1;visibility:visible}.locations-panel{opacity:0;transition:opacity .5s ease;visibility:hidden}.locations-panel.locations-loaded{opacity:1;visibility:visible}.custom-popup{background-color:var(--card-bg);border-radius:8px;color:var(--text-color);overflow:hidden}.custom-popup h3{background-color:var(--primary-color);color:var(--text-on-primary);font-size:16px;font-weight:700;margin:0;padding:12px 15px}body.dark .custom-popup h3{background-color:var(--card-bg);border-bottom:2px solid var(--primary-color);color:var(--primary-color)}.popup-content{padding:10px 15px}.popup-row{align-items:center;display:flex;margin-bottom:8px}.popup-icon{width:20px}.status-green{color:var(--success-color)}.status-orange{color:var(--warning-color)}.status-grey{color:#999}@media (max-width:767px){.locations-panel{display:none!important}}@media (min-width:768px){.controls-panel{left:320px}.locations-panel{background-color:var(--background-color)!important;bottom:0;box-shadow:0 0 15px rgba(0,0,0,.3);left:0;overflow-y:auto;padding:.5rem;position:fixed;top:0;width:320px;z-index:5}body.light .app-title h1{color:var(--text-on-primary);text-shadow:none}}.weekly-hours-container{margin-top:8px;max-height:200px;overflow-y:auto;transition:all .3s ease;width:100%}.weekly-hours-container.hidden{display:none}.weekly-hours{border-top:1px solid hsla(0,0%,100%,.1);font-size:.85em;padding-top:8px}.day-row{align-items:center;display:flex;justify-content:space-between;padding:3px 0}.day-row.current-day{background-color:rgba(71,255,209,.1);border-radius:4px;font-weight:700;padding:3px 4px}.day-row .day-name{flex:1;text-align:left}.day-row .day-hours{min-width:100px;text-align:right}.toggle-hours-btn{align-items:center;background:none;border:none;border-radius:50%;color:var(--color-primary);cursor:pointer;display:inline-flex;font-size:.85em;height:20px;justify-content:center;margin-left:8px;padding:0;transition:background-color .2s ease;width:20px}.toggle-hours-btn:hover{background-color:rgba(71,255,209,.1)}.hours-display{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;width:100%}.hours-display .today-hours{flex:1;min-width:150px}.popup-hours{align-items:flex-start;display:flex;flex:1;flex-wrap:wrap;position:relative}.popup-hours>span{flex:1;min-width:150px;padding-right:30px}.popup-hours .toggle-hours-btn{position:absolute;right:0;top:0}.popup-hours .weekly-hours-container{margin-top:12px;width:100%}.custom-popup .weekly-hours{margin-top:5px;max-height:200px;overflow-y:auto;padding:4px}.custom-popup .day-row{align-items:center;display:flex;justify-content:space-between;padding:3px 0}.custom-popup .day-row.current-day{background-color:rgba(71,255,209,.1);border-radius:4px;font-weight:700;padding:3px 4px}@media (max-width:480px){.hours-display .today-hours,.popup-hours>span{width:calc(100% - 30px)}}#share-popup{border-radius:8px;box-shadow:0 10px 15px rgba(0,0,0,.2);min-width:200px;transition:opacity .3s,transform .3s}#share-popup.hidden{opacity:0;pointer-events:none;transform:scale(.95)}#share-popup:not(.hidden){opacity:1;transform:scale(1)}.share-option{transition:background-color .2s}.share-option:hover{background-color:rgba(71,255,209,.1)}.share-option i{font-size:1.1rem;text-align:center;width:24px}#toast-container{left:50%;pointer-events:none;position:fixed;top:1rem;transform:translateX(-50%);z-index:9999}#toast-container>div{animation:slideIn .3s ease-out forwards;background-color:hsla(0,0%,100%,.95);border:1px solid rgba(0,0,0,.1);border-radius:.375rem;box-shadow:0 4px 6px rgba(0,0,0,.1);color:#333;font-weight:500;margin-bottom:.5rem;max-width:300px;padding:.75rem 1.25rem;pointer-events:none;text-align:center}body.dark #toast-container>div{background-color:rgba(1,22,39,.95);border:1px solid hsla(0,0%,100%,.1);color:#fff}body.dark #toast-container>div.bg-info{background-color:rgba(4,213,241,.95);border:1px solid rgba(4,213,241,.5);color:#011627}body.dark #toast-container>div.bg-danger{background-color:rgba(235,21,10,.95);border:1px solid rgba(235,21,10,.5);color:#fff}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){#settings-button,#share-button,#theme-toggle{height:10vw;max-height:42px;max-width:42px;width:10vw}#settings-button{top:calc(4rem + 16px)}#share-button{top:calc(8rem + 16px)}#share-popup{max-width:300px;right:8px;width:calc(100vw - 16px)}}.notes-preview{padding-right:30px}.notes-content{font-size:.95em;padding-top:5px;transition:all .3s ease}.notes-container{margin-top:5px;max-height:200px;overflow-y:auto;transition:all .3s ease;width:100%}.notes-container.hidden{display:none}.toggle-notes-btn{align-items:center;background:none;border:none;border-radius:50%;color:var(--primary-color);cursor:pointer;display:inline-flex;font-size:.85em;height:20px;justify-content:center;margin-left:8px;padding:0;position:absolute;right:0;top:0;transition:background-color .2s ease;width:20px}.toggle-notes-btn:hover{background-color:rgba(71,255,209,.1)}body.dark .notes-row{border-top-color:hsla(0,0%,100%,.1)}body.dark .toggle-notes-btn{color:var(--primary-light)}:root{--js-header-height:0px}.notes-row{border-top:1px solid rgba(0,0,0,.1);cursor:pointer;margin-top:8px;padding-top:8px;transition:background-color .2s ease}.notes-row:hover{background-color:rgba(71,255,209,.05)}.location-notes{display:flex;flex:1;flex-direction:column;position:relative}.panel-info-row,.popup-row{border-radius:4px;padding:4px;transition:background-color .2s ease}.panel-info-row:hover,.popup-row:hover{background-color:rgba(71,255,209,.05)}.fa-fw{text-align:center;width:1.25em!important}.panel-info-row i{align-items:center;color:var(--primary-color);display:flex;justify-content:center}.panel-info-row i,.status-indicator{font-size:1.25rem;margin-right:.75rem}.status-indicator{display:inline-block;line-height:1;text-align:center;vertical-align:middle}.popup-icon{margin-right:10px;text-align:center}.modal{align-items:center;display:flex;height:100%;justify-content:center;left:0;overflow-y:auto;position:fixed;top:0;width:100%;z-index:1000}.modal[hidden]{display:none}.modal-backdrop{background-color:rgba(0,0,0,.5);height:100%;left:0;position:fixed;top:0;width:100%;z-index:-1}.modal-container{max-height:90vh;overflow-y:auto;padding:20px;position:relative;z-index:1001}.setting-section{border-bottom:1px solid rgba(0,0,0,.1);padding-bottom:1.5rem}.setting-section:last-child{border-bottom:none}.setting-row{align-items:center;display:flex;justify-content:space-between}.text-success{color:#4ade80;font-weight:500}.text-danger{color:#f87171;font-weight:500}.dark .setting-section{border-bottom-color:hsla(0,0%,100%,.1)}.dark .setting-row{color:#f3f4f6}.dark .text-success{color:#86efac}.dark .text-danger{color:#fca5a5}@media (max-width:640px){.modal-container{padding:16px;width:100%}.setting-row{align-items:flex-start;flex-direction:column}.setting-row span{margin-bottom:4px}}#offline-banner{background-color:rgba(255,193,7,.85)!important;box-shadow:0 2px 4px rgba(0,0,0,.2);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.app-title{background-color:transparent;border-bottom-right-radius:1rem;left:0;padding:1rem;position:fixed;top:0;z-index:15}.app-title,.app-title h1{color:var(--primary-color)}.app-title h1{font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.8),0 2px 6px rgba(0,0,0,.6)}#zoom-for-markers-message{animation:pulse 2s infinite;box-shadow:0 0 0 0 #000;pointer-events:none;transform:translate(-50%,calc(-50% + 100px)) scale(1);transition:all .3s ease-in-out}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(0,106,106,.7);transform:translate(-50%,calc(-50% + 100px)) scale(.95)}70%{box-shadow:0 0 0 10px rgba(0,106,106,0);transform:translate(-50%,calc(-50% + 100px)) scale(1)}to{box-shadow:0 0 0 0 rgba(0,106,106,0);transform:translate(-50%,calc(-50% + 100px)) scale(.95)}}.dark #zoom-for-markers-message{animation:pulse-dark 2s infinite;box-shadow:0 0 0 0 #fff}@keyframes pulse-dark{0%{box-shadow:0 0 0 0 rgba(71,255,209,.7);transform:translate(-50%,calc(-50% + 100px)) scale(.95)}70%{box-shadow:0 0 0 10px rgba(71,255,209,0);transform:translate(-50%,calc(-50% + 100px)) scale(1)}to{box-shadow:0 0 0 0 rgba(71,255,209,0);transform:translate(-50%,calc(-50% + 100px)) scale(.95)}}@media (forced-colors:active){.slider,.slider:before,.status-indicator,button{border:1px solid ButtonText}.status-indicator{forced-color-adjust:none}.location-panel,.mapboxgl-popup-content{border:1px solid ButtonText}}.dismiss-btn{align-items:center;background:transparent;border:2px solid var(--color-background,#011627);border-radius:50%;color:var(--color-background,#011627);cursor:pointer;display:flex;height:36px;justify-content:center;padding:8px;position:relative;transition:all .2s;width:36px}.dismiss-btn:hover{background-color:var(--color-background,#011627);color:#fff;transform:scale(1.1)}.dismiss-btn:active{transform:scale(.95)}.dismiss-btn i{font-size:1.25rem;line-height:1}.dark .dismiss-btn{border-color:var(--color-primary,#47ffd1);color:var(--color-primary,#47ffd1)}.dark .dismiss-btn:hover{background-color:var(--color-primary,#47ffd1);color:var(--color-background,#011627)}@media (max-width:640px){.dismiss-btn{height:44px;padding:10px;width:44px}.dismiss-btn i{font-size:1.5rem}.modal-container{padding:16px}.modal-container .card{padding:1rem}.modal-container .card>div:first-child{margin-bottom:1rem}}.btn-primary{background-color:var(--primary-color);color:var(--text-on-primary);transition:background-color .2s}.btn-primary:hover{background-color:var(--primary-dark)}@media (max-width:768px){.buttons-container{display:flex;flex-wrap:wrap}.buttons-container button{flex:1 1 auto;margin-bottom:.5rem;margin-right:.5rem;min-width:140px}}.circular-button{transition:transform .2s}.circular-button:hover{transform:scale(1.1)}.circular-button:active{transform:scale(.95)}.circular-button i{font-size:1.25rem;transition:transform .3s}#theme-toggle:hover i{transform:rotate(180deg)}#settings-button:hover i{transform:rotate(30deg)}#share-button:hover i{transform:rotate(45deg)}#install-banner{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:2px solid var(--color-background,#011627);border-radius:8px;bottom:20px;box-shadow:0 4px 15px rgba(0,0,0,.3);color:var(--color-background,#011627);font-weight:500;max-width:400px;padding:1rem;position:fixed;right:20px;transition:all .3s ease;z-index:1000}#install-banner:before{background-color:#47ffd1;border-radius:6px;content:"";height:100%;left:0;opacity:.95;position:absolute;top:0;width:100%;z-index:-1}#install-banner.hidden{opacity:0;pointer-events:none;right:-400px}#install-banner .install-content{align-items:center;display:flex;flex-direction:column;gap:.75rem;position:relative;z-index:2}#install-banner #install-button{background-color:var(--color-background,#011627);border:none;border-radius:4px;color:var(--color-primary,#47ffd1);cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}#install-banner #install-button:hover{background-color:var(--color-background-light,#1e2d40)}#install-banner #dismiss-install-button{background-color:transparent;border:2px solid var(--color-background,#011627);border-radius:4px;color:var(--color-background,#011627);cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}#install-banner #dismiss-install-button:hover{background-color:rgba(1,22,39,.1)}#install-banner span{flex:1}@media (max-width:640px){#install-banner{bottom:70px;left:20px;max-width:calc(100% - 40px);right:20px}#install-banner.hidden{bottom:-100px;right:20px}#install-banner .install-content{flex-direction:column;text-align:center}#install-banner #install-button{margin-top:.5rem;width:100%}}.dark #install-banner{border-color:#e2e8f0}.dark #install-banner:before{background-color:#47ffd1}.dark #install-banner #install-button{background-color:#e2e8f0;color:#011627}.dark #install-banner #install-button:hover{background-color:#cbd5e0}.mapboxgl-popup-content{background-color:var(--primary-color);color:#fff;position:relative}.mapboxgl-popup-content h3{display:block;font-size:16px;font-weight:700;margin:0;padding:10px}.mapboxgl-popup-content p{display:block;font-size:14px;margin:5px 0 0;padding:0 10px 10px}.mapboxgl-popup-close-button{color:#fff;cursor:pointer;font-size:20px;position:absolute;right:10px;top:10px}.mapboxgl-map{height:100%;position:relative;width:100%}.map-loading{align-items:center!important;bottom:0!important;display:flex!important;justify-content:center!important;left:0!important;padding:0!important;position:absolute!important;right:0!important;top:0!important;transform:none!important}.map-loading[style*="display: none"]{display:none!important;opacity:0!important;visibility:hidden!important}.map-loading .fa-spinner,.map-loading i{margin:0 auto!important}body.dark .map-loading{background-color:rgba(45,55,72,.9)}body.dark .map-loading .fa-spinner,body.dark .map-loading i{filter:drop-shadow(0 0 5px rgba(0,0,0,.5))}.loading-dots:after{animation:dots 1.5s steps(4) infinite;content:""}@keyframes dots{0%,20%{content:" "}40%{content:"."}60%{content:".."}80%{content:"..."}}.loading-cell{color:var(--primary-color);font-style:italic}.mapboxgl-control-container{opacity:0;transition:opacity .3s}.map-ready .mapboxgl-control-container{opacity:1}.map-container{height:auto;position:relative;width:100%}.dark .map-loading{background-color:rgba(0,0,0,.7)}body.dark .mapboxgl-popup-content{background-color:#4a5568}body.dark .mapboxgl-popup-content h3,body.dark .mapboxgl-popup-content p{color:#cbd5e0}.map-loading{color:var(--primary-color);font-size:2rem;left:50%;top:50%;transform:translate(-50%,-50%)}.current-location-marker{background-color:var(--primary-color);border:2px solid var(--text-on-primary);border-radius:50%;box-shadow:0 0 0 4px rgba(71,255,209,.4);height:20px;width:20px}#map{height:350px;max-height:35vh;width:100%}@media (max-width:768px){#map{height:250px;max-height:30vh}}.map-fullscreen{bottom:0;position:fixed;right:0;width:100vw;z-index:1}#map,.map-fullscreen{left:0;margin:0;padding:0;top:0}#map{height:100%!important;max-height:none!important;position:absolute;width:100%!important}.map-loading{z-index:5}#map{height:100%}@media (max-width:767px){#map{height:calc(100% - 320px)}.map-fullscreen{overflow:visible!important;padding-top:320px;z-index:1}#map{height:calc(100vh - 320px);position:absolute;top:320px;z-index:1}.map-fullscreen{overflow:visible!important;padding:0;z-index:1}#map{bottom:0;height:100vh!important;left:0;position:absolute;right:0;top:0;width:100%!important}}.mapboxgl-popup-content{border-radius:8px;box-shadow:0 4px 15px rgba(0,0,0,.2);overflow:hidden;padding:0!important}.mapboxgl-popup-close-button{background:transparent;border:none;color:var(--text-on-primary);font-size:16px;padding:5px 10px;z-index:5}.mapboxgl-popup-close-button:hover{background-color:rgba(0,0,0,.1);color:var(--text-on-primary)}@media (max-width:767px){#map{bottom:0;height:100vh!important;left:0;position:absolute;right:0;top:0;width:100%!important}.map-fullscreen{padding:0!important}}.map-loading{background-color:rgba(1,22,39,.8)}.map-loading .fa-spinner,.map-loading i{color:var(--primary-color);display:block;filter:drop-shadow(0 0 10px rgba(0,0,0,.5));font-size:4rem!important}@media (min-width:768px){#map{left:320px!important;width:calc(100% - 320px)!important}.map-fullscreen{padding-left:320px}}.mapboxgl-popup-content{min-width:240px}.map-fullscreen{height:100vh;overflow:hidden;position:relative;width:100%}.map-loading{align-items:center;background-color:hsla(0,0%,100%,.8);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1000}.map-loading i{color:#333;font-size:2rem}.map-fullscreen .mapboxgl-map{bottom:0;left:0;position:absolute;right:0;top:0}.update-notification{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:2px solid var(--color-background,#011627);border-radius:8px;box-shadow:0 4px 15px rgba(0,0,0,.3);color:var(--color-background,#011627);font-weight:500;left:50%;max-width:90%;position:fixed;top:20px;transform:translateX(-50%);transition:all .3s ease;width:auto;z-index:1000}.update-notification:before{background-color:#47ffd1;border-radius:6px;content:"";height:100%;left:0;opacity:.95;position:absolute;top:0;width:100%;z-index:-1}.update-notification.hidden{opacity:0;pointer-events:none;top:-100px}.update-content{align-items:center;display:flex;gap:12px;padding:14px 18px}.update-content i{color:var(--color-background,#011627);font-size:18px}.update-content span{color:var(--color-background,#011627);flex-grow:1;font-weight:600}#update-now{background-color:var(--color-background,#011627);border:none;border-radius:4px;color:var(--color-primary,#47ffd1);cursor:pointer;font-weight:600;padding:8px 14px;transition:background-color .2s}#update-now:hover{background-color:var(--color-background-light,#0a2942);transform:scale(1.05)}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-primary-dark:hover{--tw-bg-opacity:1;background-color:rgb(58 214 176/var(--tw-bg-opacity,1))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.hover\:bg-opacity-100:hover{--tw-bg-opacity:1}@media (min-width:640px){.sm\:w-auto{width:auto}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}}@media (min-width:768px){.md\:p-8{padding:2rem}}@media (prefers-color-scheme:dark){.dark\:bg-background-light{--tw-bg-opacity:1;background-color:rgb(10 41 66/var(--tw-bg-opacity,1))}.dark\:bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.dark\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.dark\:text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.dark\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:text-yellow-400{--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}.dark\:hover\:bg-background:hover{--tw-bg-opacity:1;background-color:rgb(1 22 39/var(--tw-bg-opacity,1))}.dark\:hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}}