.tesla-splash{align-items:center;background:linear-gradient(180deg,#1a1a2e,#16213e 25%,#0f3460 50%,#533483 75%,#e94560 90%,#f38ba8);display:flex;height:100vh;justify-content:center;left:0;opacity:1;overflow:hidden;position:fixed;top:0;transition:opacity .5s ease-out;width:100vw;z-index:99999}.tesla-splash.fade-out{opacity:0}.tesla-splash-content{align-items:center;color:#fff;display:flex;flex-direction:column;height:100vh;justify-content:center;max-width:620px;padding:2rem;position:relative;text-align:center}.tesla-text-top{margin-bottom:3rem;opacity:0;transform:translateY(-20px);transition:all 1s ease-out}.tesla-text-top.visible{opacity:1;transform:translateY(0)}.tesla-text-top h1{-webkit-text-fill-color:#0000;animation:teslaTextShine 3s ease-in-out infinite;background:linear-gradient(45deg,#fff,#f38ba8,#e94560);-webkit-background-clip:text;background-clip:text;background-size:200% 200%;font-size:2.8rem;font-weight:300;margin:0;text-shadow:0 0 30px #ffffff4d}.tesla-text-bottom{margin-top:3rem;opacity:0;transform:translateY(20px);transition:all 1s ease-out}.tesla-text-bottom.visible{opacity:1;transform:translateY(0)}.tesla-text-bottom p{color:#f0f0f0;font-size:1.4rem;font-weight:300;line-height:1.5;margin:0;text-shadow:0 0 20px #fff3}@keyframes teslaTextShine{0%,to{background-position:-200%}50%{background-position:200%}}.tesla-progress-container{bottom:4rem;height:80px;left:50%;position:absolute;transform:translateX(-50%);width:400px}.tesla-progress-s-curve{background:#ffffff14;border-radius:2px;box-shadow:0 2px 10px #0003,inset 0 1px 2px #ffffff1a;height:4px;overflow:visible;position:relative;transform:perspective(100px) rotateX(5deg);width:100%}.tesla-progress-s-curve:before{background:#ffffff0d;border-radius:2px;content:"";height:100%;left:0;position:absolute;top:0;transform:translateY(-1px);width:100%}.tesla-progress-fill-s{animation:teslaProgressFlow 3s ease-in-out infinite;background:linear-gradient(90deg,#dc2626,#ef4444 30%,#f87171 60%,#fca5a5);border-radius:2px;box-shadow:0 0 8px #dc262666,0 0 16px #dc262633,inset 0 1px 0 #ffffff4d;height:100%;position:relative;transition:width .6s cubic-bezier(.25,.46,.45,.94);width:var(--progress)}.tesla-progress-fill-s:after{animation:teslaProgressPulse 2s ease-in-out infinite;background:radial-gradient(circle,#ffffffe6 0,#dc2626cc 40%,#0000 70%);border-radius:50%;box-shadow:0 0 12px #fff9,0 0 24px #dc262666;content:"";height:8px;position:absolute;right:0;top:50%;transform:translate(50%,-50%);width:8px}@keyframes teslaProgressFlow{0%,to{background-position:0 50%;filter:brightness(1) saturate(1)}50%{background-position:100% 50%;filter:brightness(1.1) saturate(1.2)}}@keyframes teslaProgressPulse{0%,to{opacity:.9;transform:translate(50%,-50%) scale(1)}50%{opacity:1;transform:translate(50%,-50%) scale(1.2)}}.tesla-progress-s-curve:after{animation:teslaParticles 4s linear infinite;background:radial-gradient(2px 2px at 20px 10px,#dc26264d,#0000),radial-gradient(2px 2px at 40px 15px,#ef444433,#0000),radial-gradient(1px 1px at 60px 8px,#f871714d,#0000),radial-gradient(1px 1px at 80px 12px,#dc262633,#0000);background-size:100px 20px;content:"";height:20px;left:0;opacity:.6;position:absolute;top:-10px;width:100%}@keyframes teslaParticles{0%{background-position:0 0}to{background-position:100% 0}}.tesla-logo-css{filter:drop-shadow(0 0 20px rgba(231,33,46,.6));height:50px;margin:0 auto;opacity:0;position:relative;transform:scale(1.2);transition:all 3s cubic-bezier(.4,0,.2,1);width:300px}.tesla-logo-css.visible{opacity:1;transform:scale(1.2)}.tesla-logo-css span{animation:teslaLogoGlow 3s ease-in-out infinite alternate;background:#e7212e;display:block;position:absolute;top:5.5px}.tesla-logo-css span:after,.tesla-logo-css span:before{background:inherit;content:"";display:block;position:absolute}.tesla-logo-css #t{height:38px;left:30.5px;top:5.5px;width:7px}.tesla-logo-css #t:before{border-radius:0 0 20px 20px;height:7.5px;left:-18.5px;width:44px}.tesla-logo-css #e{border-radius:0 0 20px 20px;height:7.5px;left:73.5px;top:5.5px;width:39.5px}.tesla-logo-css #e:after,.tesla-logo-css #e:before{border-radius:0 0 20px 20px;height:7.5px;top:15px;width:39.5px}.tesla-logo-css #e:after{top:30px}.tesla-logo-css #s{border-radius:0 0 20px 0;height:7.5px;left:133px;top:5.5px;width:38.5px}.tesla-logo-css #s:after,.tesla-logo-css #s:before{height:7.5px;top:15px;width:38.5px}.tesla-logo-css #s:after{border-radius:20px 0 0 0;top:30px}.tesla-logo-css #s .vert{height:20px;left:0;top:0;width:7px}.tesla-logo-css #s .vert:last-child{left:31.5px;top:15px}.tesla-logo-css #l{border-radius:0 0 20px 0;height:7.5px;left:191px;top:35.5px;width:37px}.tesla-logo-css #l:before{height:37.5px;left:0;top:-30px;width:7px}.tesla-logo-css #a{border-radius:0 0 20px 20px;height:7.5px;left:246.5px;top:5.5px;width:40.5px}.tesla-logo-css #a:before{height:7.5px;left:1px;top:15px;width:39px}.tesla-logo-css #a .vert{height:23px;left:1px;top:15px;width:7px}.tesla-logo-css #a .vert:last-child{left:33px}@keyframes teslaLogoGlow{0%{filter:drop-shadow(0 0 10px rgba(231,33,46,.6));transform:scale(1)}to{filter:drop-shadow(0 0 25px rgba(231,33,46,.9));transform:scale(1.02)}}.tesla-icons{display:flex;gap:2rem;justify-content:center;margin:2rem 0}.tesla-icon{animation:teslaIconFloat 3s ease-in-out infinite;font-size:2rem}.tesla-icon:first-child{animation-delay:0s}.tesla-icon:nth-child(2){animation-delay:.5s}.tesla-icon:nth-child(3){animation-delay:1s}@keyframes teslaIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.tesla-instructions{margin-top:2rem;opacity:.7}.tesla-instructions p{color:#999;font-size:.9rem;font-weight:300;margin:.5rem 0}@media (max-width:1200px){.tesla-splash-content{max-width:500px;padding:1.5rem}.tesla-text-top h1{font-size:2.2rem}.tesla-text-bottom p{font-size:1.2rem}.tesla-logo-css{transform:scale(1)}.tesla-progress-container{width:250px}}@media (max-width:768px){.tesla-splash-content{max-width:400px;padding:1rem}.tesla-text-top h1{font-size:1.8rem}.tesla-text-bottom p{font-size:1rem}.tesla-logo-css{transform:scale(.8)}.tesla-progress-container{bottom:3rem;width:200px}}@media (pointer:coarse){.tesla-splash-content{-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}}.general-splash{align-items:center;display:flex;height:100vh;justify-content:center;left:0;opacity:1;position:fixed;top:0;transition:opacity .5s ease-out;width:100vw;z-index:99999}.general-splash.light{background:linear-gradient(135deg,#f8f9fa,#e9ecef 50%,#dee2e6);color:#212529}.general-splash.dark{background:linear-gradient(180deg,#000,#000 20%,#0a1550 60%,#1a0a3f 80%,#2d1040);color:#fff}.general-splash.fade-out{opacity:0}.general-splash-content{animation:generalFadeIn 1s ease-out;max-width:600px;padding:2rem;text-align:center}@keyframes generalFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.general-logo-container{animation:generalLogoFloat 3s ease-in-out infinite;margin-bottom:2rem}.general-logo{filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));height:auto;max-width:350px}.general-splash.dark .general-logo{filter:drop-shadow(0 0 15px rgba(180,60,200,.3))}@keyframes generalLogoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.general-welcome{margin-bottom:2.5rem}.general-welcome h1{animation:generalTextGlow 3s ease-in-out infinite;font-size:2.5rem;font-weight:300;margin-bottom:1rem}.general-splash.light .general-welcome h1{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#495057,#212529);-webkit-background-clip:text;background-clip:text}.general-splash.dark .general-welcome h1{-webkit-text-fill-color:initial;background:none;-webkit-background-clip:initial;background-clip:initial;color:#fff;text-shadow:0 0 20px #c864ff99,0 0 40px #b43cc866,2px 2px 4px #0006}.general-welcome p{font-size:1.2rem;font-weight:300;line-height:1.5;opacity:.8}@keyframes generalTextGlow{0%,to{text-shadow:0 0 10px #0000001a}50%{text-shadow:0 0 20px #0003}}.general-splash.dark .general-welcome h1{animation:generalTextGlowDark 3s ease-in-out infinite}@keyframes generalTextGlowDark{0%,to{text-shadow:0 0 20px #c864ff99,0 0 40px #b43cc866}50%{text-shadow:0 0 30px #c864ffcc,0 0 50px #b43cc899}}.general-progress-container{margin:2rem 0}.general-progress-bar{border-radius:2px;height:4px;margin-bottom:1rem;overflow:hidden;width:100%}.general-splash.light .general-progress-bar{background:#0000001a}.general-splash.dark .general-progress-bar{background:#c864ff1a}.general-progress-fill{animation:generalProgressFlow 2s ease-in-out infinite;background:linear-gradient(90deg,#007bff,#28a745,#ffc107,#dc3545);background-size:200% 100%;border-radius:2px;height:100%;transition:width .3s ease}.general-splash.dark .general-progress-fill{background:linear-gradient(90deg,#0a0520,#2d1654,#b43cc8,#c864ff);background-size:200% 100%}@keyframes generalProgressFlow{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.general-progress-text{font-size:1rem;font-weight:300;opacity:.7}.general-icons{display:flex;gap:2rem;justify-content:center;margin:2rem 0}.general-icon{animation:generalIconBounce 2s ease-in-out infinite;font-size:2.5rem}.general-icon:first-child{animation-delay:0s}.general-icon:nth-child(2){animation-delay:.3s}.general-icon:nth-child(3){animation-delay:.6s}@keyframes generalIconBounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.general-info{margin-top:2rem;opacity:.7}.general-info p{font-size:.9rem;font-weight:300;margin:.5rem 0}@media (max-width:1200px){.general-splash-content{max-width:500px;padding:1.5rem}.general-welcome h1{font-size:2rem}.general-logo{max-width:280px}}.perimeter-loader-overlay{display:none;height:100vh;left:0;pointer-events:none;position:fixed;top:0;width:100vw;z-index:10002}.perimeter-loader{height:100%;left:0;position:absolute;top:0;width:100%}.progress-path{transition:stroke-dashoffset .1s ease-out}.progress-path-animated{animation:perimeterProgress 3s linear forwards}@keyframes perimeterProgress{0%{stroke-dashoffset:400}to{stroke-dashoffset:0}}@supports (padding:env(safe-area-inset-top)){.perimeter-loader-overlay{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}}@keyframes perimeterGlow{0%,to{filter:drop-shadow(0 0 3px rgba(0,123,255,.6))}25%{filter:drop-shadow(0 0 4px rgba(40,167,69,.7))}50%{filter:drop-shadow(0 0 5px rgba(255,193,7,.8))}75%{filter:drop-shadow(0 0 4px rgba(220,53,69,.7))}}.progress-path{animation:perimeterGlow 4s ease-in-out infinite}@media (max-width:768px){.general-splash-content{max-width:400px;padding:1rem}.general-welcome h1{font-size:1.8rem}.general-welcome p{font-size:1rem}.general-logo{max-width:250px}.general-icons{gap:1.5rem}.general-icon{font-size:2rem}.general-progress-container{display:none}.perimeter-loader-overlay{display:block}}@media (pointer:coarse){.general-splash-content{-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}}.logo-container{box-sizing:border-box;margin:10px auto 20px;min-height:60px;padding:15px 20px;text-align:center}.logo{box-sizing:border-box;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;margin:8px;max-width:calc(100% - 16px);padding:4px;transition:opacity .2s ease-in-out}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.logo{image-rendering:auto}}@media (max-width:768px) and (min-width:376px){.logo-container{margin:9px 0 18px;padding:14px 18px}.logo{margin:7px;padding:3.5px}}@media (max-width:320px){.logo-container{margin:6px 0 12px;padding:10px 12px}.logo{margin:5px;max-width:calc(100% - 10px);padding:2px}}.battery-banner{animation:slideDown .5s cubic-bezier(.68,-.55,.265,1.55);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ff4444f2;border-bottom:1px solid #fff3;box-shadow:0 4px 30px #0003;left:0;position:fixed;right:0;top:0;transition:transform .3s ease,opacity .3s ease;z-index:9999}.battery-banner.hiding{animation:slideUp .4s ease forwards}.battery-banner-content{align-items:center;display:flex;gap:10px;margin:0 auto;max-width:1200px;padding:6px 20px;position:relative}.battery-banner-icon{align-items:center;animation:pulse 2s ease-in-out infinite;background:#ffffff26;border-radius:8px;display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.battery-banner-icon svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));height:18px;width:18px}.battery-banner-text{color:#fff;flex:1 1;text-shadow:0 1px 3px #0000004d}.battery-banner-title{font-size:14px;font-weight:600;line-height:1.1;margin:0}.battery-banner-message{font-size:12px;line-height:1.2;margin:0;opacity:.95}.battery-banner-cta{align-items:center;background:#fff;border:none;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#f44;cursor:pointer;display:flex;flex-shrink:0;font-size:13px;font-weight:600;gap:5px;padding:6px 14px;text-decoration:none;transition:all .3s ease}.battery-banner-cta:hover{background:#fff;box-shadow:0 6px 20px #00000040;transform:translateY(-2px)}.battery-banner-cta:active{transform:translateY(0)}.battery-banner-cta-icon{font-size:16px;line-height:1}.battery-banner-cta-text{white-space:nowrap}.battery-banner-cta-arrow{font-size:18px;font-weight:700;transition:transform .3s ease}.battery-banner-cta:hover .battery-banner-cta-arrow{transform:translateX(4px)}.battery-banner-close{align-items:center;background:#fff3;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:24px;font-weight:300;height:28px;justify-content:center;line-height:1;position:absolute;right:10px;top:6px;transition:all .2s ease;width:28px}.battery-banner-close:hover{background:#ffffff4d;transform:rotate(90deg)}.battery-banner-close:active{transform:rotate(90deg) scale(.95)}.battery-banner-progress{background:#fff3;bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.battery-banner-progress-bar{background:linear-gradient(90deg,#ff6b6b,#ffd93d);box-shadow:0 0 10px #ffffff80;height:100%;transition:width .3s ease}.battery-banner-progress-bar[style*="width: 10%"],.battery-banner-progress-bar[style*="width: 5%"]{animation:criticalPulse 1s ease-in-out infinite}@keyframes criticalPulse{0%,to{box-shadow:0 0 10px #ffffff80;opacity:1}50%{box-shadow:0 0 20px #fffc;opacity:.6}}.dark-mode .battery-banner{background:#c83232f2;border-bottom:1px solid #ffffff1a}.dark-mode .battery-banner-icon{background:#ffffff1a}.dark-mode .battery-banner-cta{background:#fffffff2;color:#c83232}.dark-mode .battery-banner-cta:hover{background:#fff}.dark-mode .battery-banner-close{background:#ffffff26}.dark-mode .battery-banner-close:hover{background:#ffffff40}@media (max-width:768px){.battery-banner-content{gap:8px;padding:16px 40px 16px 0}.battery-banner-icon{height:28px;width:28px}.battery-banner-icon svg{height:18px;width:18px}.battery-banner-title{font-size:13px}.battery-banner-message{font-size:12px}.battery-banner-cta{font-size:13px;gap:5px;padding:7px 14px}.battery-banner-cta-icon{font-size:16px}.battery-banner-cta-text{font-size:13px}.battery-banner-close{font-size:18px;height:26px;right:8px;top:8px;width:26px}}@media (max-width:480px){.battery-banner-content{flex-wrap:wrap;padding:2px 10px 10px}.battery-banner-text{flex-basis:100%;order:1}.battery-banner-icon{height:32px;order:0;width:32px}.battery-banner-cta{flex:1 1;justify-content:center;margin-top:4px;order:2}.battery-banner-message{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}.battery-banner-close:focus-visible,.battery-banner-cta:focus-visible{outline:2px solid #fff;outline-offset:2px}@media (prefers-reduced-motion:reduce){.battery-banner{animation:none;transition:none}.battery-banner-icon,.battery-banner-progress-bar{animation:none}.battery-banner-cta{transition:background .2s ease}.battery-banner-cta:hover .battery-banner-cta-arrow{transform:none}}@media print{.battery-banner{display:none!important}}:root{--primary-color:#3b82f6;--primary-color-rgb:59,130,246;--secondary-color:#8b5cf6;--secondary-color-rgb:139,92,246;--background-primary:#fff;--background-secondary:#f8fafc;--background-tertiary:#f1f5f9;--text-color:#1e293b;--text-secondary:#97a5ba;--text-muted:#94a3b8;--border-color:#e2e8f0;--success-color:#22c55e;--border-radius-sm:12px;--blur-effect:blur(10px);--transition-default:all 0.3s ease;--common-shadow:0 4px 6px #0000001a;--hover-shadow:0 6px 8px #00000026;--auth-container-background:#4f9cd61a;--wait-time-very-short:#439b46;--wait-time-short:#3a853d;--wait-time-medium:orange;--wait-time-long:#ef4444;--wait-time-closed:#9ca3af;--wait-time-out-of-order:#f59e0b;--wait-time-refurbishment:#6b7280;--tv-status-operating:#27ae60;--tv-status-down:#e74c3c;--tv-status-closed:#7f8c8d;--tv-status-refurbishment:#f39c12;--tv-status-unknown:#95a5a6;--warning-background:#ff03;--warning-background-weather:rgba(129,194,231,.479);--warning-text:gold;--success-background:#0f03;--success-text:#0f0}[data-theme=dark]{--background-primary:#0f172a;--background-secondary:#1e293b;--background-tertiary:#334155;--text-color:#f8fafc;--text-secondary:#dfe7f2;--text-muted:#bdcfe8;--border-color:#334155;--error-color:#f87171;--success-color:#4ade80;--warning-color:#fbbf24;--auth-container-background:#753e993b}*{box-sizing:border-box}*,body{margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;min-height:100vh;transition:color .5s ease}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{border-radius:4px;outline:2px solid var(--accent-primary)}h1,h2,h3{font-weight:700;letter-spacing:-.025em;margin-bottom:12px}h1{font-size:2.5em;line-height:1.2;margin-bottom:10px;text-align:center}@media (max-width:490px){h1{font-size:2.2em}}@media (max-width:350px){h1{font-size:2em}}h2{font-size:2.25rem;line-height:1.3;margin-bottom:8px;padding:6px;text-align:center;text-shadow:0 2px 4px #0000001a}ol,ul{list-style:none}a{color:inherit;text-decoration:none}img{border-radius:3px;height:auto;max-width:100%}button{background:none;border:none;cursor:pointer}button,input,select,textarea{font:inherit}body,html{overflow-x:hidden;position:relative;width:100%}.container{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--border-radius-lg);contain:layout style paint;max-width:1600px;min-height:calc(100vh - 80px);padding:24px;position:relative;transition:background-color .2s ease-out,color .2s ease-out,border-color .2s ease-out,box-shadow .2s ease-out;will-change:background-color}.park-content.visible{opacity:1}.opening-hours{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-background);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:0 4px 16px #1f268726;contain:layout style paint;font-size:.95rem;margin-bottom:8px;margin-top:3px;padding:10px 20px;text-align:center;transition:transform .2s ease-out,box-shadow .2s ease-out;width:100%;will-change:transform}.opening-hours:hover{box-shadow:0 6px 20px #1f268733;transform:translateY(-1px)}.opening-hours p{color:var(--text-color);font-family:Roboto,sans-serif;font-weight:600;line-height:1.5;margin:6px 0}.park-content{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--card-shadow);box-sizing:border-box;contain:layout style paint;display:flex;flex-direction:column;margin:0 auto 24px;max-width:1600px;opacity:0;padding:16px;position:relative;transition:opacity .3s cubic-bezier(.4,0,.2,1),background-color .2s ease-out,box-shadow .2s ease-out,border-color .2s ease-out;will-change:opacity,background-color}.park-content,.root{background-color:initial}.error-message{background:linear-gradient(135deg,var(--warning-background),#ef44440d);border:1px solid #ef444433;border-radius:var(--border-radius-md);color:var(--error-color);font-size:.95rem;font-weight:500;margin-bottom:20px;padding:16px 20px;text-align:center}.flex{display:flex}.flex-col{flex-direction:column}.hidden{display:none}.visible{display:block}.park-header{margin-bottom:3px;padding:5px 0;position:relative;width:100%}.park-header-content{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;position:relative}.park-title{margin-bottom:5px;position:relative;text-align:center;width:100%}.park-hours{margin-top:5px;text-align:center}.schedule-label{color:var(--text-color-primary);font-size:.9rem;text-align:center}.park-header-weather{position:absolute;right:10px;top:0;z-index:100}@media (max-width:605px){.park-header-weather{right:10px}}@media (max-width:450px){.park-header-weather{right:5px}}@media (max-width:541px){.park-header-weather{position:absolute;right:-85px;top:10%;transform:none}}@media (max-width:513px){.park-header-weather{position:absolute;right:-65px;top:10%;transform:none}}@media (max-width:449px){.park-header-weather{position:absolute;right:-35px;top:10%;transform:none}}@media (max-width:384px){.park-header-weather{position:absolute;right:-15px;top:10%;transform:none}}.downtime-duration{border-radius:5px;bottom:-12px;font-size:.65rem;left:0;margin-top:5px;padding:2px 4px;position:absolute}.downtime-duration,.downtime-info{background-color:#ff00001a;color:#b91c1c}.downtime-info{border-radius:15px;font-size:.6rem;grid-column:1/-1;margin-top:8px;padding:5px 8px;text-align:center}.last-update .icon{margin-right:8px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #4facfe;outline-offset:2px}.arrow{color:var(--text-color);height:16px;margin-left:4px;transition:transform .3s ease;width:16px}.arrow.up{transform:rotate(180deg)}.extra-magic{color:#f39e01}.extra-magic svg{height:16px;width:16px}.theme-controls{align-items:center;display:flex;flex-wrap:wrap;max-width:min(100% - 40px,300px);position:fixed;right:10px;top:20px;z-index:999}.unusual-hours{color:#e74c3c;font-weight:700}.unusual-hours-warning{color:#e74c3c;display:block;font-size:.9em;margin-top:4px}.queue-times-credit{border-top:1px solid var(--border-color);color:var(--text-color-secondary);font-size:.85rem;margin-bottom:1rem;margin-top:3rem;padding-top:1rem;text-align:center}.queue-times-credit a{color:inherit;text-decoration:none}.queue-times-credit a:hover{text-decoration:underline}@media (max-width:768px){.desktop-only{display:none!important}}@media (min-width:769px){.mobile-only{display:none!important}}[data-contrast=high] *,[data-contrast=high] .container,[data-contrast=high] .opening-hours p,[data-contrast=high] .park-content,[data-contrast=high] body,[data-contrast=high] button,[data-contrast=high] input,[data-contrast=high] select,[data-contrast=high] textarea{font-family:Luciole,Segoe UI,Arial,sans-serif!important}.embossed2{color:#d1d9df;cursor:pointer;text-shadow:-1px -2px 0 #0006,1px 2px 0 #fff;transition:all .5s ease}.embossed2:hover{text-shadow:-1px -2px 0 #0009,1px 2px 0 #fff;transform:scale(1.05)}.reveal-text{color:#d1d9df;display:inline-block;opacity:0;position:relative;transform:translateY(5px);transition:all .3s ease}.reveal-text.animating{animation:gentleReveal 1.2s ease-out forwards;opacity:1;transform:translateY(0)}@keyframes gentleReveal{0%{filter:blur(2px);opacity:0;transform:translateY(5px)}50%{filter:blur(1px);opacity:.7;transform:translateY(0)}to{filter:blur(0);opacity:1;transform:translateY(0)}}@keyframes sweepLight{0%{transform:translateX(-100%)}50%{transform:translateX(0)}to{transform:translateX(100%)}}.pwa-install-banner{align-items:center;animation:pwaSlideDown .35s ease-out;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:linear-gradient(135deg,#4f9cff47,#ff4fd847),#000000db;border:none;border-radius:0;box-shadow:0 10px 28px #00000040;display:flex;gap:10px;left:0;padding:12px 14px;position:fixed;right:0;top:0;z-index:1101}.dark-mode .pwa-install-banner{box-shadow:0 12px 30px #00000073}.pwa-banner-text{color:#fff;display:flex;flex:1 1;flex-direction:column;font-size:clamp(.9rem,2.8vw,1rem);font-weight:600;gap:2px}.pwa-line{display:block;white-space:nowrap}.pwa-dismiss-btn,.pwa-install-btn{border:none;border-radius:10px;cursor:pointer;font-size:.9rem;padding:8px 12px}.pwa-install-btn{background:linear-gradient(135deg,#7066fd,#5b8df7);background:linear-gradient(135deg,var(--primary-color,#7066fd),#5b8df7);box-shadow:0 4px 12px #7066fd59;color:#fff;font-weight:700}.pwa-dismiss-btn{background:#0000;border:1px solid #ffffff59;color:#fff}.pwa-banner-close{background:#0000;border:none;color:#fff;cursor:pointer;font-size:1.4rem;line-height:1;padding:0 8px}@media (min-width:769px){.pwa-install-banner{left:0;right:0;top:0}}@media (display-mode:standalone){.pwa-install-banner{display:none!important}}@supports (-webkit-backdrop-filter:none){.pwa-install-banner{-webkit-backdrop-filter:blur(6px)!important;backdrop-filter:blur(6px)!important;background:linear-gradient(135deg,#4f9cff47,#ff4fd847),#000000db!important}}.pwa-install-overlay{align-items:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#000000b3;display:flex;inset:0;justify-content:center;position:fixed;z-index:1200}.pwa-install-card{background:linear-gradient(135deg,#4f9cff47,#ff4fd847),#000000db;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 10px 28px #00000040;max-height:80vh;overflow:auto;width:min(92%,560px)}.pwa-install-card-header{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-color);display:flex;font-weight:700;justify-content:space-between;padding:12px 14px}.pwa-install-card-body{color:var(--text-color);padding:14px}.pwa-install-lead{font-weight:600;margin-bottom:10px}.pwa-install-close{background:#0000;border:none;color:var(--text-color);cursor:pointer;font-size:1.4rem}.install-instructions{background:#7066fd14;border:1px solid var(--border-color);border-radius:10px;margin:10px 0;padding:10px 12px}.install-instructions strong{display:block;margin-bottom:8px}.install-instructions ol{margin:0 0 8px 16px}.install-instructions li{margin-bottom:6px}@keyframes pwaSlideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}:root{--text-color:#2d3748;--text-color-secondary:#4a5568;--button-text-color:#2d3748;--button-hover-text-color:#fff;--card-background:#ffffffd9;--background-gradient:hsla(0,0%,100%,.575);--gradient-dark:linear-gradient(45deg,#6366f126,#8b5cf626);--button-background:#ffffffd9;--button-hover-background:#6366f1cc;--border-color:#6366f14d;--border-color-primary:#6366f1;--border-color-secondary:#8b5cf6;--border-color-tertiary:#06b6d4;--card-shadow:0 8px 32px 0 #3278ff59,0 0 25px #1e50c833,0 0 20px #b43cc826;--accent-primary:#6366f1;--accent-secondary:#8b5cf6;--accent-tertiary:#06b6d4;--success-color:#10b981;--warning-color:#f59e0b;--error-color:#ef4444;--info-color:#3b82f6;--warning-background:#fbbf2426;--warning-text:#92400e;--success-background:#10b98126;--success-text:#065f46;--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:16px}body{background:hsla(0,0%,100%,.575);background:var(--background-gradient);color:#2d3748;color:var(--text-color);font-weight:400}h1{transition:color .2s ease-out,text-shadow .3s ease-out}:root:not(.dark-mode) #resetZoom,:root:not(.dark-mode) .continent-button,:root:not(.dark-mode) .date-select,:root:not(.dark-mode) .filter-button,:root:not(.dark-mode) .filters select,:root:not(.dark-mode) .modal-content,:root:not(.dark-mode) .opening-hours,:root:not(.dark-mode) .park-content,:root:not(.dark-mode) .park-selector button,:root:not(.dark-mode) .settings-item,:root:not(.dark-mode) .sort-dropdown-button,:root:not(.dark-mode) .view-selector .nav-button,:root:not(.dark-mode) .weather-widget-expanded{border:1px solid #6366f1;border:1px solid var(--border-color-primary)}:root:not(.dark-mode) .park-content{box-shadow:0 0 35px #3278ff33,0 0 45px #1e64dc26,0 0 30px #b43cc81a,inset 0 0 60px #2850b414;box-sizing:border-box;max-width:100%;transition:background .2s ease-out,color .2s ease-out,box-shadow .3s ease-out;will-change:background,color}.light-mode .app,:root:not(.dark-mode) .app{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;width:100%}:root:not(.dark-mode) ::-webkit-scrollbar{height:12px;width:12px}:root:not(.dark-mode) ::-webkit-scrollbar-track{background:#f0f0f0;border-radius:10px}:root:not(.dark-mode) ::-webkit-scrollbar-thumb{background-color:silver}:root:not(.dark-mode) ::-webkit-scrollbar-thumb:hover{background-color:#a8a8a8}:root:not(.dark-mode) ::-webkit-scrollbar-corner{background:#0000}:root:not(.dark-mode) .filter-buttons button{transition:all .3s ease-out}:root:not(.dark-mode) .filter-buttons button.active,:root:not(.dark-mode) .filter-buttons button:hover{box-shadow:0 0 30px #3278ff99,0 0 45px #1e64dc66,0 0 40px #b43cc84d;transform:translateY(-2px)}:root:not(.dark-mode) .opening-hours{box-shadow:0 0 25px #3278ff40,0 0 35px #1e64dc2e,0 0 20px #b43cc81f;transition:background .2s ease-out,border-color .2s ease-out,box-shadow .3s ease-out}:root:not(.dark-mode) .attraction-item,:root:not(.dark-mode) .show-item{border:1px solid #6366f1;border:1px solid var(--border-color-primary);box-shadow:0 0 18px #3278ff1f,0 0 25px #1e64dc1a;transition:background .2s ease-out,border-color .2s ease-out,box-shadow .3s ease-out}:root:not(.dark-mode) .attraction-item.expanded{box-shadow:0 0 30px #3278ff59,0 0 40px #1e64dc40,0 0 35px #b43cc833,inset 0 0 30px #3c78c826}:root:not(.dark-mode) .modal-content{box-shadow:0 0 45px #3278ff73,0 0 55px #1e64dc4d,0 0 40px #b43cc840,inset 0 0 60px #2850b41f}:root:not(.dark-mode) .modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}:root:not(.dark-mode) ::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#1e50b4cc,#3278ffcc 60%,#783cb4bf);border:3px solid #f0f0f0;border-radius:10px;box-shadow:0 0 12px #3278ff59,0 0 8px #b43cc833}:root:not(.dark-mode) ::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#3278ffe6,#468cffe6 50%,#b43cc8d9);box-shadow:0 0 18px #3278ff8c,0 0 15px #b43cc859}.dark-mode{--text-color:#fff;--text-secondary:#a8c5ff;--button-text-color:#fff;--button-hover-text-color:#fff;--card-background:#05081980;--background-gradient:linear-gradient(180deg,#000,#000 20%,#0a1550 60%,#1a0a3f 80%,#2d1040);--button-background:#1e3c8c80;--button-hover-background:linear-gradient(135deg,#3278ffcc,#b43cc8b3);--border-color:#508cff40;--card-shadow:0 8px 32px 0 #3278ff59,0 0 25px #1e50c833,0 0 20px #b43cc826;--wait-time-very-short:#005000;--wait-time-short:#1e4620;--wait-time-medium:#663d00;--wait-time-long:#5c1919;--wait-time-closed:#4a4e54;--wait-time-out-of-order:#613b04;--wait-time-refurbishment:#4b5563}body.dark-mode{background:var(--background-gradient);color:var(--text-color)}.dark-mode h1{color:#fff;text-shadow:0 0 20px #3296ffb3,0 0 40px #1e64dc80,0 0 35px #b450dc4d,0 0 50px #c864ff33,2px 2px 4px #0006;transition:color .2s ease-out,text-shadow .3s ease-out}.dark-mode .embossed2{color:#151515;text-shadow:-1px -2px 0 #d8d8d8b8,1px 2px 0 #ababab;transition:color .2s ease-out,text-shadow .2s ease-out}.dark-mode .embossed2:hover{text-shadow:-1px -2px 0 #d8d8d8e6,1px 2px 0 #abababe6;transform:scale(1.05)}.dark-mode .reveal-text{color:#fff;text-shadow:0 0 10px #ffffff4d}.dark-mode .reveal-text.animating{animation:darkGentleReveal 1.2s ease-out forwards;color:#fff;text-shadow:0 0 15px #ffffff80}@keyframes darkGentleReveal{0%{-webkit-text-fill-color:#666;filter:blur(2px);opacity:0;transform:translateY(5px)}50%{-webkit-text-fill-color:gold;filter:blur(1px);opacity:.7;transform:translateY(0)}to{-webkit-text-fill-color:gold;filter:blur(0);opacity:1;text-shadow:0 0 20px #ffd700cc;transform:translateY(0)}}@keyframes darkSweepLight{0%{transform:translateX(-100%)}50%{transform:translateX(0)}to{transform:translateX(100%)}}.dark-mode .park-content{background:linear-gradient(135deg,#05081966,#0a051e59);box-shadow:0 0 35px #3278ff33,0 0 45px #1e64dc26,0 0 30px #b43cc81a,inset 0 0 60px #2850b414;color:var(--text-color);transition:background .2s ease-out,color .2s ease-out,box-shadow .3s ease-out;will-change:background,color}.dark-mode .opening-hours{background:linear-gradient(135deg,#080c2380,#0f082373);border-color:#508cff59;box-shadow:0 0 25px #3278ff40,0 0 35px #1e64dc2e,0 0 20px #b43cc81f}.dark-mode .attraction-item,.dark-mode .opening-hours,.dark-mode .show-item{transition:background .2s ease-out,border-color .2s ease-out,box-shadow .3s ease-out}.dark-mode .attraction-item,.dark-mode .show-item{background:linear-gradient(135deg,#080c2399,#0f193c80);border-color:#508cff40;box-shadow:0 0 18px #3278ff1f,0 0 25px #1e64dc1a}.dark-mode .attraction-item.expanded{background:linear-gradient(135deg,#1e327880,#3250a066 50%,#50287859);border-color:#508cff73;box-shadow:0 0 30px #3278ff59,0 0 40px #1e64dc40,0 0 35px #b43cc833,inset 0 0 30px #3c78c826}.dark-mode .filter-buttons button{background:#14286480;border:1px solid #508cff40;box-shadow:0 0 12px #3278ff1f;color:#fff;transition:all .3s ease-out}.dark-mode .filter-buttons button.active,.dark-mode .filter-buttons button:hover{background:linear-gradient(135deg,#3278ffb3,#6450c899 50%,#b43cc880);border-color:#508cff99;box-shadow:0 0 30px #3278ff99,0 0 45px #1e64dc66,0 0 40px #b43cc84d;color:#fff;transform:translateY(-2px)}.dark-mode .park-selector button,.dark-mode .sort-dropdown-button,.dark-mode .sort-dropdown-menu button{background-color:#46464600;color:var(--text-color)}.dark-mode .park-selector button.active,.dark-mode .sort-dropdown-button:hover,.dark-mode .sort-dropdown-menu button:hover{background-color:#646464cc}.dark-mode .park-selector button:hover{background-color:#5a5a5acc}.dark-mode .sort-dropdown-menu{background-color:#202026f2;border:1px solid #ffffff1a;box-shadow:0 4px 6px #0000004d}.dark-mode .very-short-wait{background-color:#090;color:#fff}.dark-mode .short-wait{background-color:#2e7d32;color:#fff}.dark-mode .medium-wait{background-color:#cc7000;color:#fff}.dark-mode .closed{background-color:#4b5563}.dark-mode .out-of-order{background-color:#b45309;color:#fff}.dark-mode .last-update{color:#aaa}.dark-mode .land-title{border-bottom:2px solid #0000;border-image:linear-gradient(90deg,#1e64dc99,#3296ffb3 30%,#b450dc99 70%,#c864ff80) 1;color:#fff;text-shadow:0 0 20px #3278ff99,0 0 30px #1e64dc66,0 0 25px #b43cc84d}.dark-mode .attraction-item .closure-info,.dark-mode .attraction-item.attraction-closed.expanded .closure-info,.dark-mode .show-item .closure-info{background-color:#e53e3e33;color:#fc8181}.dark-mode .restaurant-item,.dark-mode .service-item{background:var(--gradient-dark);border-color:#ffffff1a}.dark-mode .restaurant-status{color:#fff}.dark-mode .service-status{color:var(--text-color)}.dark-mode .restaurant-open{background-color:#090}.dark-mode .restaurant-closed{background-color:#4b5563}.dark-mode .restaurant-busy{background-color:#8b0000}.dark-mode .location-group{background:linear-gradient(135deg,#080c2380,#0c081e73);border:1px solid #508cff59;box-shadow:0 0 25px #3278ff33,0 0 35px #1e64dc26,0 0 20px #b43cc81a}.dark-mode .location-title{border-bottom-color:#508cff80;text-shadow:0 0 15px #3278ff80,0 0 25px #1e64dc59,0 0 20px #b43cc840}.dark-mode .menu-button{background-color:#2e7d32}.dark-mode .reservation-button{background-color:#e65100}.dark-mode .show-item .upcoming-info{background-color:#4f46e533;color:#818cf8}.dark-mode .modal-content{background:linear-gradient(135deg,#080c23fa,#0f193cfa 50%,#140a32fa);border:1px solid #508cff59;box-shadow:0 0 45px #3278ff73,0 0 55px #1e64dc4d,0 0 40px #b43cc840,inset 0 0 60px #2850b41f}.dark-mode .modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#02010fe6}.dark-mode #resetZoom{background-color:#14051691;border-color:var(--border-color)}.dark-mode #resetZoom:hover{background-color:#646464cc}.dark-mode .location-modal{background:var(--gradient-dark)}.dark-mode .form-group input,.dark-mode .form-group select{background-color:#14051691;border-color:var(--border-color);color:var(--text-color)}.dark-mode ::-webkit-scrollbar{height:12px;width:12px}.dark-mode ::-webkit-scrollbar-track{background:#02010f99;border-radius:10px}.dark-mode ::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#1e50b4cc,#3278ffcc 60%,#783cb4bf);border:3px solid #02010f99;border-radius:10px;box-shadow:0 0 12px #3278ff59,0 0 8px #b43cc833}.dark-mode ::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#3278ffe6,#468cffe6 50%,#b43cc8d9);box-shadow:0 0 18px #3278ff8c,0 0 15px #b43cc859}.dark-mode ::-webkit-scrollbar-corner{background:#0000}.container{box-sizing:border-box;margin:0 auto;padding:5px;width:100%}@media (max-width:375px){.logo-container{margin-bottom:15px;padding:0 10px;text-align:center}.logo{display:block;height:auto;max-width:100%}.dark-mode .logo-light,.logo-dark{display:none}.dark-mode .logo-dark{display:block}.attraction-item{font-size:.65rem;max-width:320px;min-height:60px;padding:3px}.attraction-name{font-size:.85rem}.wait-time{font-size:.75rem}.downtime-duration{font-size:.7rem}.icons button{padding:4px}.icons svg{height:16px;width:16px}.refresh-button,.update-info{font-size:.75rem}.refresh-button{padding:5px 10px}.last-update{font-size:.7rem}.filters select{font-size:.8rem;padding:6px 20px 6px 6px}.filter-label{font-size:.75rem}.view-selector{display:flex;gap:5px;justify-content:center;width:100%}.view-selector .nav-button{flex:1 1;font-size:.75rem;min-width:0;padding:6px 10px;white-space:nowrap}}@media (max-width:500px){.filter-buttons{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;width:100%}}@media (max-width:600px){.filters{align-items:flex-start;flex-direction:column}.view-selector .nav-button{font-size:.85rem;padding:8px 12px}.land-group{flex-direction:column}.land-group .attractions{grid-template-columns:1fr;padding:0}}@media (min-width:601px) and (max-width:976px){.container{padding:20px}.park-header h2{font-size:2.2rem}.opening-hours{font-size:.85rem}.filters{flex-direction:row;flex-wrap:nowrap;padding:5px}.filters-left,.filters-right{margin-bottom:0;width:auto}.sort-dropdown{margin-left:10px}.filters select{font-size:.9rem;margin-bottom:0;width:auto}.filter-label{font-size:.85rem}}@media (min-width:977px){.container{padding:20px}.filters{justify-content:space-between}.filters,.filters-container{flex-direction:row}}@media (max-width:768px){.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow:auto;padding:0;position:fixed;right:0;top:0}}@media (max-width:768px) and (not (prefers-color-scheme:dark)){.modal-overlay{align-items:center;background-color:initial!important;display:flex;justify-content:center;overflow:hidden;padding:0}.modal-content{border:none!important;box-sizing:border-box;margin:0;max-width:95vw;overflow-x:hidden;padding:10px;width:100%}}@media (max-width:768px){.park-content{border-radius:var(--border-radius-md);box-sizing:border-box;max-width:100%;padding:12px;width:100%}}@media (max-width:480px){.park-content{border-radius:var(--border-radius-sm);padding:10px}}.about-container{line-height:1.6;margin:2rem auto;max-width:900px;padding:0 1rem}.about-section{background:var(--background-secondary);border-radius:12px;box-shadow:0 2px 8px #0000001a;margin:2rem 0;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.about-section:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.about-section h2{border-bottom:2px solid var(--primary-color);font-size:1.4rem;margin-bottom:1.2rem;padding-bottom:.5rem}.about-section h2,.about-section h3{color:var(--text-primary);font-weight:600}.about-section h3{font-size:1.1rem;margin:1.5rem 0 .8rem}.about-section ul{list-style-type:none;padding:0}.about-section li{line-height:1.5;margin:.8rem 0;padding-left:1.5rem;position:relative}.about-section li:before{color:var(--primary-color);content:"✓";font-weight:700;left:0;position:absolute}.coverage-stats{grid-gap:1.5rem;background:linear-gradient(135deg,var(--primary-color),var(--primary-color));background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark,var(--primary-color)));border-radius:12px;color:#fff;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin:1.5rem 0;padding:1.5rem}.stat-item{text-align:center}.stat-number{display:block;font-size:2.5rem;font-weight:700;line-height:1;margin-bottom:.5rem}.stat-label{font-size:.9rem;opacity:.9}.coverage-description{color:var(--text-secondary);font-style:italic;margin-top:1rem}.architecture-info,.performance-info,.support-info{border-radius:8px;margin-top:1rem;padding:1rem}.architecture-info h3,.performance-info h3,.support-info h3{color:var(--primary-color);font-size:1rem;margin-bottom:.5rem;margin-top:1rem}.architecture-info h3:first-child,.performance-info h3:first-child,.support-info h3:first-child{margin-top:0}@media (max-width:768px){.about-container{margin:1rem auto;padding:0 .5rem}.about-section{margin:1rem 0;padding:1rem}.coverage-stats{gap:1rem;grid-template-columns:repeat(2,1fr);padding:1rem}.stat-number{font-size:2rem}.about-section h2{font-size:1.2rem}}@media (max-width:480px){.coverage-stats{grid-template-columns:1fr}.stat-item{padding:.5rem 0}}.app-footer{contain:layout;content-visibility:auto;left:0;margin-top:auto;min-height:80px;padding:1.5rem 0;position:relative;text-align:center;width:100%;z-index:100}.footer-wrapper{width:100%}.footer-content{align-items:center;display:flex;flex-direction:column;flex-wrap:wrap;gap:1rem;justify-content:center;margin:0 auto;max-width:1200px;width:90%}.footer-copyright,.footer-link,.footer-separator{display:inline-block;margin:0;white-space:nowrap}.footer-link{color:var(--text-color);font-weight:500;text-decoration:none;transition:color .3s ease}.footer-link:hover{color:var(--primary-color);opacity:.8;text-decoration:underline}.footer-separator{color:var(--text-secondary)}.footer-made-with{align-items:center;color:var(--text-muted);display:flex;flex-wrap:wrap;font-size:.9rem;gap:.3rem;justify-content:center;margin:.5rem 0}.footer-made-with .footer-link{color:#7da7d9;font-weight:600;text-decoration:none}.footer-made-with .footer-link:hover{color:#8ec5fc;text-decoration:underline}.footer-copyright{color:var(--text-muted);font-size:.9rem;margin-top:.5rem}.footer-attributions{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center}.footer-contact-link,.footer-lite-link,.footer-photos-attribution,.footer-weather-attribution{align-items:center;color:var(--text-muted);display:flex;font-size:.85rem;gap:.5rem;margin:0;white-space:nowrap}.footer-contact-link .footer-link,.footer-lite-link .footer-link{color:#7da7d9;font-weight:600;text-decoration:none}.footer-contact-link .footer-link:hover,.footer-lite-link .footer-link:hover{color:#8ec5fc;text-decoration:underline}.footer-top{gap:1rem}.footer-favorites,.footer-top{align-items:center;display:flex;margin:0}.footer-favorites{color:var(--text-muted);flex-wrap:wrap;font-size:.85rem;gap:.3rem;white-space:nowrap}.footer-favorites .footer-link{color:#7da7d9;font-weight:600;text-decoration:none}.footer-favorites .footer-link:hover{color:#8ec5fc;text-decoration:underline}[data-contrast=high] .app-footer .footer-link,[data-contrast=high] .footer-photos-attribution a,[data-contrast=high] .footer-weather-attribution a{color:#0a2e6e!important;text-decoration:underline!important}[data-contrast=high].dark-mode .app-footer .footer-link,[data-contrast=high].dark-mode .footer-photos-attribution a,[data-contrast=high].dark-mode .footer-weather-attribution a{color:#a6c8ff!important;text-decoration:underline!important}[data-contrast=high] .app-footer .footer-favorites,[data-contrast=high] .app-footer .footer-photos-attribution,[data-contrast=high] .app-footer .footer-separator,[data-contrast=high] .app-footer .footer-weather-attribution{color:var(--text-color)!important}@media (max-width:1024px){.footer-content{flex-direction:column;gap:.7rem;text-align:center}.footer-copyright{margin-top:.5rem}.footer-attributions{align-items:center;flex-direction:column;gap:.5rem;justify-content:center}.footer-photos-attribution,.footer-weather-attribution{justify-content:center;margin:.2rem 0}.footer-favorites{flex-wrap:wrap;justify-content:center;white-space:normal}.app-footer{padding:1.2rem 0}}.view-selector{justify-items:stretch}.view-selector,.view-selector.traumatica-active{display:flex;gap:10px;justify-content:center;margin-bottom:20px;max-width:100%;padding-bottom:10px}.view-selector.traumatica-active .nav-button{flex:1 1;max-width:400px;min-width:120px}@media (min-width:600px){.view-selector:has(.nav-button:nth-child(3)){display:flex;gap:10px;justify-content:center;margin-bottom:20px;max-width:100%;padding-bottom:10px}.view-selector:has(.nav-button:nth-child(3)) .nav-button{flex:1 1;max-width:400px;min-width:120px}}.view-selector .nav-button{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:25px;box-shadow:var(--common-shadow);color:var(--button-text-color);cursor:pointer;flex:1 1;font-size:.9rem;font-weight:700;margin:0 3px;max-width:400px;min-width:120px;overflow:hidden;padding:10px 20px;position:relative;text-align:center;text-decoration:none;transition:all .3s ease;white-space:nowrap}.view-selector .nav-button:before{background:linear-gradient(90deg,#0000,#ff6b3533,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.view-selector .nav-button:hover:before{left:100%}.view-selector .nav-button.active{background-color:#7066fd;box-shadow:0 4px 6px #0003;color:#fff}.dark-mode .view-selector .nav-button.active{background:linear-gradient(135deg,#3278ffb3,#6450c899 50%,#b43cc880);border-color:#508cff99;box-shadow:0 0 30px #3278ff99,0 0 45px #1e64dc66,0 0 40px #b43cc84d;color:#fff;transform:translateY(-2px)}.park-selector{display:flex;justify-content:center;margin-bottom:15px}.park-selector button{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:25px;color:var(--text-color);cursor:pointer;font-size:.95rem;font-weight:700;padding:10px 20px;transition:var(--transition-default)}.park-selector button.active,.park-selector button:hover{background-color:var(--button-hover-background);color:var(--button-hover-text-color)}.update-info{align-items:center;justify-content:space-between;margin-bottom:10px}.last-update,.update-info{display:flex;font-size:.8rem}.last-update{align-items:baseline;color:#666;margin-right:8px;margin-top:10px}.last-update .icon{height:14px;margin-right:5px;width:14px}.last-update-text{white-space:nowrap}.view-selector.efteling-nav{flex-wrap:wrap}.view-selector.efteling-nav,.view-selector.universal-nav{display:flex;gap:10px;grid-template-columns:none;justify-content:center;margin-bottom:15px}.view-selector.universal-nav{flex-wrap:nowrap;width:100%}.view-selector.universal-nav .nav-button{align-items:center;display:flex;flex:1 1;font-size:.85rem;height:40px;justify-content:center;padding:8px 12px;white-space:normal}.view-selector.disney-california-nav,.view-selector.magic-kingdom-nav{display:flex;flex-wrap:nowrap;gap:10px;grid-template-columns:none;justify-content:center;margin-bottom:15px;width:100%}.view-selector.magic-kingdom-nav div{display:flex;gap:10px;justify-content:center;max-width:400px;width:100%}.view-selector.magic-kingdom-nav .nav-button{flex:1 1;max-width:180px}.view-selector.epcot-nav{flex-wrap:nowrap;grid-template-columns:none;margin-bottom:15px}.view-selector.epcot-nav,.view-selector.epcot-nav div{display:flex;gap:10px;justify-content:center;width:100%}.view-selector.epcot-nav div{max-width:400px}.view-selector.epcot-nav .nav-button{flex:1 1;max-width:180px}.view-selector.animal-kingdom-nav{display:flex;flex-wrap:nowrap;gap:10px;grid-template-columns:none;justify-content:center;margin-bottom:15px;width:100%}.view-selector.animal-kingdom-nav div{display:flex;gap:10px;justify-content:center;max-width:400px;width:100%}.view-selector.animal-kingdom-nav .nav-button{flex:1 1;max-width:180px}.view-selector.hollywood-studios-nav{display:flex;flex-wrap:nowrap;gap:10px;grid-template-columns:none;justify-content:center;margin-bottom:15px;width:100%}.view-selector.hollywood-studios-nav div{display:flex;gap:10px;justify-content:center;max-width:400px;width:100%}.view-selector.hollywood-studios-nav .nav-button{flex:1 1;max-width:180px}.view-selector.disney-california-nav .nav-button{align-items:center;display:flex;flex:1 1;font-size:.85rem;height:40px;justify-content:center;padding:8px 12px;white-space:normal}@media (max-width:977px){.view-selector.efteling-nav{gap:5px}.view-selector.efteling-nav .nav-button{flex:0 1 auto;font-size:.85rem;padding:8px 12px}}@media (max-width:600px){.view-selector.efteling-nav{flex-direction:row;justify-content:center}.view-selector.universal-nav{flex-wrap:wrap}.view-selector.universal-nav .nav-button{flex-basis:100%;max-width:none}}@media (max-width:480px){.view-selector .nav-button{font-size:.8rem;padding:8px 12px}}@media (max-width:977px){.view-selector{gap:5px}.view-selector .nav-button{font-size:.85rem;padding:8px 12px}.update-info{align-items:flex-start;flex-direction:column}.park-selector button{font-size:.9rem;padding:8px 15px}}@media (max-width:600px){.view-selector.traumatica-active{align-items:center;flex-direction:column;gap:8px}.view-selector.traumatica-active .nav-button{font-size:.8rem;max-width:200px;padding:8px 10px;width:100%}}@media (max-width:374px){.view-selector .nav-button{font-size:.7rem;min-width:0;overflow:hidden;padding:6px 8px;text-overflow:ellipsis;white-space:nowrap;width:100%}.view-selector{gap:4px;grid-template-columns:1fr 1fr;width:100%}.view-selector.traumatica-active{gap:6px}.view-selector.traumatica-active .nav-button{font-size:.75rem;max-width:none;padding:6px 8px;width:100%}}.sort-dropdown{align-items:center;display:flex;justify-content:flex-end}.filters{align-items:center;margin-bottom:10px;margin-top:10px}.filters select{background-color:initial;border:none;color:#4a4a4a}.filter-pills{align-items:center;display:flex}.land-group{align-items:stretch;align-self:flex-start;display:flex;flex-direction:column;flex-wrap:wrap;margin-bottom:10px;width:100%}.land-group .attractions{grid-gap:10px;align-items:stretch;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));justify-content:center}.land-title{border-bottom:2px solid #8ec5fc;color:#4a4a4a;font-size:1.2em;margin-bottom:10px;margin-left:5px;padding-bottom:10px}.filter-buttons{border:none;border-radius:20px;cursor:pointer;display:flex;flex-wrap:wrap;font-size:.9rem;font-weight:700;gap:10px;margin-bottom:8px;max-width:100%;padding:5px}.custom-prompt .confirm-button,.custom-prompt .time-button,.filter-button,.filter-buttons button,.park-selector button,.sort-dropdown-button{backdrop-filter:var(--blur-effect);-webkit-backdrop-filter:var(--blur-effect);background-color:var(--button-background);border:1px solid var(--border-color);border-radius:25px;color:var(--button-text-color);cursor:pointer;font-size:.9rem;font-weight:700;padding:5px 15px;transition:var(--transition-default)}.filter-buttons button.active,.filter-buttons button:hover{background:linear-gradient(135deg,#3278ffcc,#6450c8b3 50%,#b43cc899);box-shadow:0 0 25px #3278ff80,0 0 20px #b43cc84d;color:#fff}.custom-prompt .confirm-button:hover,.custom-prompt .time-button:hover,.filter-button.active,.filter-button:hover,.filter-buttons button:hover,.park-selector button:hover,.sort-dropdown-button:hover,.view-selector .nav-button:hover{background:linear-gradient(135deg,#3278ffcc,#6450c8b3 50%,#b43cc899);box-shadow:0 4px 6px #0003,0 0 20px #3278ff4d,0 0 15px #b43cc833;color:#fff}.icon-button{align-items:center;background:none;border:none;color:#4a4a4a;cursor:pointer;display:inline-flex;justify-content:center;padding:5px;transition:color .2s}.dark-mode .icon-button{color:#fff}.icon-button:hover{color:var(--primary)}.icon-button .history-graph-icon{stroke:currentColor;fill:none;stroke-width:2px;color:currentColor;display:block;height:24px;object-fit:contain;transition:opacity .2s;width:24px}.icon-button:hover .history-graph-icon{opacity:.7}.attraction-item button{align-items:center;border:none;cursor:pointer;display:flex;justify-content:center;overflow:visible;padding:5px;position:relative}.attraction-item button:hover{opacity:.7}.attraction-item button:active .favorite-icon:before,.park-favorite-btn:active .favorite-icon:before{animation:stardust .5s ease-out}@keyframes stardust{0%{opacity:.8;transform:translate(-50%,-50%) scale(.6)}70%{opacity:.4;transform:translate(-50%,-50%) scale(1.1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.6)}}.attraction-item button:active .favorite-icon,.park-favorite-btn:active .favorite-icon{animation:favorite-spin .35s ease-out}@keyframes favorite-spin{0%{transform:scale(1) rotate(0deg)}40%{transform:scale(1.25) rotate(-18deg)}70%{transform:scale(1.1) rotate(12deg)}to{transform:scale(1) rotate(0deg)}}.favorite-icon{color:#4a4a4a;height:24px;position:relative;transition:color .3s ease;width:24px}.dark-mode .favorite-icon{color:#fff}.favorite-icon.active{fill:#f59e0b;color:#f59e0b}.favorite-icon:hover{color:#d97706}.favorite-icon:before{background:radial-gradient(circle,#f59e0b 10%,#0000 70%);content:"";height:200%;left:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:200%}.sort-dropdown-button:hover{background:linear-gradient(135deg,#3278ff99,#6450c88c 50%,#b43cc880);box-shadow:0 0 20px #3278ff66,0 0 15px #b43cc840}.sort-dropdown-button .arrow{color:#468cff;margin-left:10px;transition:transform .3s ease}.sort-dropdown-button .arrow.up{transform:rotate(180deg)}.sort-dropdown-menu button{background:#3278ff26;color:#4a4a4a}.sort-dropdown-menu button:hover{background:linear-gradient(135deg,#3278ff40,#6450c833 50%,#b43cc82e);box-shadow:0 0 15px #3278ff40,0 0 10px #b43cc826;color:#3278ff}.nav-button{overflow:visible;position:relative}.attraction-item button:focus-visible,.filter-buttons button:focus-visible,.language-selector button:focus-visible,.refresh-button:focus-visible,.sort-dropdown-button:focus-visible,.view-selector .nav-button:focus-visible{outline:2px solid #4facfe;outline-offset:2px}.mobile-order-button{align-items:center;background:linear-gradient(135deg,#3278ffe6,#1e64dccc);border:none;border-radius:20px;box-shadow:0 0 15px #3278ff4d;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;gap:8px;margin-top:10px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.mobile-order-button:hover{background:linear-gradient(135deg,#468cffe6,#7850c8d9 50%,#b43cc8cc);box-shadow:0 0 30px #3278ff99,0 0 25px #b43cc866;transform:translateY(-2px)}.mobile-order-icon{height:16px;width:16px}.restaurant-button{align-items:center;border:none;border-radius:20px;cursor:pointer;display:inline-flex;font-size:.9rem;gap:8px;margin-top:10px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.menu-button{background-color:#4caf50;color:#fff}.menu-button:hover{background-color:#388e3c;transform:translateY(-2px)}.reservation-button{background-color:#ff9800;color:#fff;display:flex;justify-content:center}.reservation-button:hover{background-color:#f57c00;transform:translateY(-2px)}.map-container{border-radius:8px;height:300px;overflow:hidden}.map-container iframe{border:none;height:100%;width:100%}.directions-button{background:var(--primary);border:none;border-radius:var(--border-radius);color:var(--button-text-color);cursor:pointer;font-weight:500;margin-top:10px;padding:10px;transition:background-color .2s;width:100%}.directions-button:hover{background:var(--primary-dark)}.language-selector{contain:layout;height:30px;margin-left:10px;position:relative;width:40px}.language-selector button{align-items:center;border:none;border-radius:10px;color:#333;color:var(--text-color);cursor:pointer;display:flex;gap:8px;height:100%;justify-content:center;padding:1px 5px;width:100%}.language-selector button:hover{background:#f1f1ffcc}.language-dropdown{background:var(--button-background);border-radius:8px;box-shadow:0 2px 10px #0000001a;contain:layout;margin-top:8px;min-width:100%;overflow:hidden;position:absolute;right:0;top:100%;width:-webkit-max-content;width:max-content;z-index:1001}.language-dropdown button{padding:8px;text-align:left;white-space:nowrap;width:100%}.language-dropdown button img{height:19px;object-fit:contain;width:28px}.last-update-compact{align-items:center;display:flex;font-size:13px;gap:4px}.share-btn-compact{background:linear-gradient(135deg,#3278ffe6,#1e64dccc);border-radius:5px;box-shadow:0 0 10px #3278ff33;display:flex;font-weight:500;gap:3px;height:26px;min-width:0;padding:2px 8px;transition:all .2s}.share-btn-compact:hover{background:linear-gradient(135deg,#468cffe6,#7850c8d9 50%,#b43cc8cc);box-shadow:0 0 20px #3278ff80,0 0 15px #b43cc84d}.share-wait-times-button{display:none!important}[data-contrast=high]{--text-color:#0a0a0a;--text-color-secondary:#000;--button-text-color:#0a0a0a;--button-hover-text-color:#fff;--card-background:#fff;--border-color:#111;--background-gradient:linear-gradient(#fff,#fff);--wait-time-very-short:#006400;--wait-time-short:#1b5e20;--wait-time-medium:#7a3e00;--wait-time-long:#8b0000;--wait-time-closed:#4b5563;--wait-time-out-of-order:#733f00;--wait-time-refurbishment:#374151}[data-contrast=high].dark-mode{--text-color:#fff;--text-color-secondary:#f5f5f5;--button-text-color:#fff;--card-background:#0e0e0e;--border-color:#e5e7eb;--background-gradient:linear-gradient(#0e0e0e,#0e0e0e);--wait-time-very-short:#005a00;--wait-time-short:#1b5e20;--wait-time-medium:#7a3e00;--wait-time-long:#a30000;--wait-time-closed:#6b7280;--wait-time-out-of-order:#8a4d00;--wait-time-refurbishment:#6b7280}[data-contrast=high] .share-btn-compact{background:#0a2e6e;border:2px solid #fff;color:#fff}[data-contrast=high].dark-mode .share-btn-compact{background:#1e40af;border-color:#fff;color:#fff}.attraction-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.attractions{grid-gap:10px;align-content:center;align-items:stretch;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));justify-content:center;justify-items:stretch;max-width:inherit;width:100%}.attraction-item,.show-item{backdrop-filter:var(--blur-effect);-webkit-backdrop-filter:var(--blur-effect);background-color:var(--gradient-light);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);box-shadow:var(--common-shadow);cursor:pointer;display:flex;flex-direction:column;margin-bottom:2px;max-width:100%;padding:10px;position:relative;transition:var(--transition-default)}.attraction-item:hover,.show-item:hover{box-shadow:var(--hover-shadow);transform:translateY(-3px)}.attraction-name{font-size:1rem;font-weight:700;margin-bottom:8px}.attraction-right{align-items:flex-end;display:flex;gap:8px;justify-content:space-between}.wait-time{align-items:center;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;font-size:.8rem;font-weight:700;gap:6px;justify-content:center;min-width:100px;padding:3px 8px;text-align:center;white-space:nowrap}.wait-time-container{align-items:center;display:flex;justify-content:flex-end;padding:1px}.very-short-wait{background-color:var(--wait-time-very-short);color:#fff}.short-wait{background-color:var(--wait-time-short);color:#fff}.medium-wait{background-color:var(--wait-time-medium);color:#fff}.long-wait{background-color:var(--wait-time-long);color:#fff}.out-of-order{background-color:var(--wait-time-out-of-order);color:#fff}.refurbishment{background-color:var(--wait-time-refurbishment);color:#fff}.icons{align-items:center;display:flex;gap:8px}.attraction-item .closure-icon,.attraction-item .icons button{align-items:center;background:none;border:none;color:var(--text-color);cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;width:24px}.attraction-item .icons svg{height:20px;width:20px}.info-button{color:var(--info-text);transition:transform .2s ease,color .2s ease}.info-button:hover{color:var(--primary-color);transform:scale(1.15)}.info-icon{stroke-width:2px}.attraction-item.attraction-closed{cursor:pointer;transition:all .3s ease}.attraction-item .closure-info{background-color:#a24834;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;display:none;font-size:.85rem;margin-top:15px;padding:10px;position:relative;transition:all .3s ease;width:100%}.attraction-item.expanded{background-color:#f6dbff2b;border:1px solid #b0f;padding-bottom:10px}.attraction-item.expanded .closure-info{display:block}.attraction-item.expanded .closure-info:before{content:"🚧";font-size:1rem;margin-right:8px}.attraction-description{color:var(--text-color);font-size:.9rem;line-height:1.5;text-align:justify}.height-restriction{align-items:center;background-color:gold;border-radius:4px;color:#664d03;display:flex;font-weight:500;gap:8px;margin-top:8px;padding:4px 8px}.height-restriction.none{background-color:var(--success-background);color:var(--success-text)}.single-rider-container{align-items:center;background-color:var(--info-background);border-radius:4px;color:var(--info-text);display:flex;font-weight:500;gap:8px;margin-top:8px;padding:4px 8px}.wait-times>div:nth-child(2) .wait-time{filter:brightness(.7);font-size:.75rem}.return-time-badge{background-color:#ffcc86;border-radius:12px;color:var(--text-color-inverted);font-size:.8em;font-weight:700;margin-left:8px;margin-right:8px;padding:3px 8px}.dark-mode .return-time-badge{background-color:#ad691b}.new-ride-badge{animation:pulse-glow 2s infinite;background:linear-gradient(135deg,#ff6b6b,#feca57);border-radius:12px;color:#fff;display:inline-block;font-size:.7rem;font-weight:700;margin-left:8px;padding:2px 6px;text-shadow:0 1px 2px #0000004d}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px #ff6b6b80;transform:scale(1)}50%{box-shadow:0 0 15px #ff6b6bcc;transform:scale(1.05)}}.attraction-item.new-ride{background:linear-gradient(90deg,#ff6b6b0d,#0000);border-left:4px solid #ff6b6b}.attraction-item.new-ride:hover{background:linear-gradient(90deg,#ff6b6b1a,#0000)}.wait-time.scheduled-opening{background-color:#e3f2fd;border:1px solid #90caf9;border-radius:4px;color:#1565c0;font-weight:600;padding:4px 8px}.dark-mode .wait-time.scheduled-opening{background-color:#1a237e;border-color:#3f51b5;color:#90caf9}.wait-time.unavailable{background-color:#fff3e0;border-radius:12px;font-weight:500;padding:4px 8px}.dark-mode .wait-time.unavailable{background-color:#868686}.wait-time.unknown{background-color:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;color:#757575;font-weight:500;padding:4px 8px}.dark-mode .wait-time.unknown{background-color:#424242;border-color:#616161;color:#bdbdbd}.wait-time.show-schedule{background-color:#f3e5f5;border-radius:12px;font-weight:600;padding:4px 8px}.dark-mode .wait-time.show-schedule{background-color:#4a148c;color:#fff}.wait-time.maintenance{background-color:#ff9800;background-color:var(--warning-background,#ff9800);border-radius:12px;color:#fff;color:var(--warning-text,#fff);font-weight:600;padding:4px 8px}.dark-mode .wait-time.maintenance{background-color:#ff6f00;background-color:var(--warning-background-dark,#ff6f00);color:#fff;color:var(--warning-text-dark,#fff)}[data-contrast=high] .wait-times>div:nth-child(2) .wait-time{filter:none!important}.shows-list{align-items:start;padding:10px}.show-item{align-content:stretch;align-items:stretch;backdrop-filter:var(--blur-effect);-webkit-backdrop-filter:var(--blur-effect);background:var(--gradient-light);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);box-shadow:var(--common-shadow);display:flex;flex-direction:column;flex-wrap:wrap;justify-content:space-between;margin-bottom:10px;margin-left:0;max-width:100%;padding:10px;transition:all .3s ease}.show-item .closure-info p{margin:5px 0}.show-item .closure-info p:first-child{font-weight:700}.show-time.passed{background-color:#9e9e9e;color:#fff;opacity:.7;text-decoration:line-through}.show-info{align-content:space-between;flex-wrap:wrap;gap:8px}.show-image{border:1px solid var(--border-color);border-radius:var(--border-radius-sm);flex-shrink:0;height:100px;object-fit:cover;object-position:center top;width:140px}.show-header{align-items:center;display:flex;gap:8px}.show-times{width:100%}.show-language{margin-left:6px}.language-flag{border-radius:2px;height:10px;margin-left:2px;width:14px}.show-content{display:flex;flex-direction:column;gap:12px}.show-times-wrapper{width:100%}.show-times{gap:2px;margin-left:5px;margin-top:5px}.future-date-notice{font-size:.9rem;font-weight:700;margin-bottom:1px;text-transform:capitalize}.shows-and-events{margin-bottom:20px}.shows-list{grid-gap:5px;align-items:stretch;display:grid;gap:5px;grid-template-columns:1fr 1fr;justify-content:center;justify-items:stretch}@media (max-width:500px){.shows-list{gap:10px;grid-template-columns:1fr}.show-image{height:80px;object-position:center top;width:120px}}.show-item{background-color:var(--card-background);border-radius:12px;cursor:pointer;margin:8px 0;padding:12px;transition:all .2s ease}.show-info{align-items:flex-start;display:flex;flex-direction:column;width:100%}.show-name{word-wrap:break-word;flex:1 1;font-weight:500;line-height:1.3;text-align:left}.show-right{align-items:center;display:flex;gap:12px}.show-region{background-color:#4c0bff69;border-radius:4px;color:#fff;font-size:.8em;margin-left:8px;padding:2px 6px}.dark-mode .show-region{background-color:#701b6ac2;color:#fff}.show-item.expanded{background-color:var(--button-hover-background)}.show-item .closure-info{border-top:1px solid var(--border-color);margin-top:12px;padding-top:12px}.show-item:hover{box-shadow:0 6px 8px #00000026;transform:translateY(-3px)}.show-item h3{color:#4a4a4a;margin:0 0 10px}.show-times{align-items:center;color:#666;display:flex;flex-wrap:wrap;font-size:.9rem;gap:1px;margin-top:3px}.show-time{align-items:center;background-color:#7066fd;border-radius:12px;color:#fff;display:inline-flex;font-size:.85rem;gap:4px;padding:3px 8px;white-space:nowrap}.closure-info{color:#b91c1c;display:none;font-size:.8rem;margin-top:5px}.show-item.expanded{padding-bottom:20px}.show-item .closure-info{background-color:#e53e3e1a;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#e53e3e;display:none;font-size:.85rem;margin-top:15px;padding:10px;position:relative;transition:all .3s ease;width:calc(100% - 20px)}.show-item.expanded .closure-info{display:block}.show-item .closure-info:before{font-size:1rem;margin-right:8px}.show-item{position:relative}.show-item:focus-within{outline:2px solid #4facfe;outline-offset:2px}.show-item .upcoming-info{background-color:#4f46e51a;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:none;font-size:.85rem;margin-top:15px;padding:10px;position:relative;transition:all .3s ease;width:calc(100% - 20px)}.show-item.expanded .upcoming-info{display:block}.show-item .upcoming-info:before{content:"🎭";font-size:1rem;margin-right:8px}.show-item .upcoming-info p{margin:5px 0}.show-item .upcoming-info p:first-child{font-weight:700}.upcoming-icon{color:#4f46e5;margin-left:4px}.show-wait-time{display:flex;justify-content:flex-start;margin-bottom:5px}.show-wait-time .wait-time{align-items:center;border-radius:12px;display:inline-flex;font-size:.9rem;font-weight:500;padding:4px 10px}.shows-loading-skeleton{animation:fadeIn .3s ease-in;padding:20px}.skeleton-show-item,.skeleton-text{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--card-background) 25%,#0000001a 50%,var(--card-background) 75%);background:linear-gradient(90deg,var(--card-background) 25%,rgba(var(--text-color-rgb,0,0,0),.1) 50%,var(--card-background) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm)}.dark-mode .skeleton-show-item,.dark-mode .skeleton-text{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#ffffff0d 25%,#ffffff26 50%,#ffffff0d 75%);background-size:200% 100%}.skeleton-base{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--card-background) 25%,#0000001a 50%,var(--card-background) 75%);background:linear-gradient(90deg,var(--card-background) 25%,rgba(var(--text-color-rgb,0,0,0),.1) 50%,var(--card-background) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm)}.skeleton-container{animation:fadeIn .3s ease-in;padding:20px}.skeleton-text{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--card-background) 25%,#0000001a 50%,var(--card-background) 75%);background:linear-gradient(90deg,var(--card-background) 25%,rgba(var(--text-color-rgb,0,0,0),.1) 50%,var(--card-background) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm);display:block;height:16px;margin-bottom:8px}.attractions-skeleton-grid{grid-gap:16px;animation:fadeIn .3s ease-in;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));padding:20px}.skeleton-attraction-item{background:var(--card-background);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);display:flex;flex-direction:column;gap:12px;padding:16px}.skeleton-attraction-header{align-items:center;display:flex;justify-content:space-between}.skeleton-attraction-name{height:20px;width:70%}.skeleton-attraction-name,.skeleton-wait-time{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--card-background) 25%,#0000001a 50%,var(--card-background) 75%);background:linear-gradient(90deg,var(--card-background) 25%,rgba(var(--text-color-rgb,0,0,0),.1) 50%,var(--card-background) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm)}.skeleton-wait-time{height:32px;width:60px}.skeleton-attraction-details{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--card-background) 25%,#0000001a 50%,var(--card-background) 75%);background:linear-gradient(90deg,var(--card-background) 25%,rgba(var(--text-color-rgb,0,0,0),.1) 50%,var(--card-background) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm);height:14px;width:50%}.shows-skeleton-list{grid-gap:12px;animation:fadeIn .3s ease-in;display:grid;gap:12px;grid-template-columns:1fr 1fr;padding:20px}.skeleton-show-item{background:var(--card-background);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);display:flex;flex-direction:column;gap:8px;padding:16px}.skeleton-show-name{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--card-background) 25%,#0000001a 50%,var(--card-background) 75%);background:linear-gradient(90deg,var(--card-background) 25%,rgba(var(--text-color-rgb,0,0,0),.1) 50%,var(--card-background) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm);height:18px;width:60%}.skeleton-show-times{display:flex;flex-wrap:wrap;gap:6px}.skeleton-show-time{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--card-background) 25%,#0000001a 50%,var(--card-background) 75%);background:linear-gradient(90deg,var(--card-background) 25%,rgba(var(--text-color-rgb,0,0,0),.1) 50%,var(--card-background) 75%);background-size:200% 100%;border-radius:12px;height:24px;width:50px}.restaurants-skeleton-grid{grid-gap:16px;animation:fadeIn .3s ease-in;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));padding:20px}.skeleton-restaurant-item{background:var(--card-background);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);display:flex;flex-direction:column;gap:12px;padding:16px}.skeleton-restaurant-name{height:20px;width:70%}.skeleton-restaurant-cuisine,.skeleton-restaurant-name{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--card-background) 25%,#0000001a 50%,var(--card-background) 75%);background:linear-gradient(90deg,var(--card-background) 25%,rgba(var(--text-color-rgb,0,0,0),.1) 50%,var(--card-background) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm)}.skeleton-restaurant-cuisine{height:14px;width:40%}.skeleton-park-header{animation:fadeIn .3s ease-in;display:flex;flex-direction:column;gap:16px;padding:20px}.skeleton-park-title{height:32px;width:40%}.skeleton-park-info,.skeleton-park-title{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--card-background) 25%,#0000001a 50%,var(--card-background) 75%);background:linear-gradient(90deg,var(--card-background) 25%,rgba(var(--text-color-rgb,0,0,0),.1) 50%,var(--card-background) 75%);background-size:200% 100%;border-radius:var(--border-radius-sm)}.skeleton-park-info{height:20px;width:60%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dark-mode .skeleton-attraction-details,.dark-mode .skeleton-attraction-name,.dark-mode .skeleton-park-info,.dark-mode .skeleton-park-title,.dark-mode .skeleton-restaurant-cuisine,.dark-mode .skeleton-restaurant-name,.dark-mode .skeleton-show-name,.dark-mode .skeleton-show-time,.dark-mode .skeleton-text,.dark-mode .skeleton-wait-time{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#ffffff0d 25%,#ffffff26 50%,#ffffff0d 75%);background-size:200% 100%}@media (max-width:768px){.attractions-skeleton-grid{gap:12px;grid-template-columns:1fr;padding:12px}.shows-skeleton-list{gap:8px;grid-template-columns:1fr;padding:12px}.restaurants-skeleton-grid{gap:12px;grid-template-columns:1fr;padding:12px}}.filters{align-items:flex-start;justify-content:space-between;margin-bottom:15px}.filters,.filters-left{display:flex;flex-wrap:wrap}.filters-left{align-items:baseline;flex-direction:column;justify-content:space-around}.filters-right{align-items:center;display:flex;margin-left:auto}.filters select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--card-background);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%238ec5fc' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 5px center;background-repeat:no-repeat;background-size:16px;border:1px solid var(--border-color);color:var(--text-color);cursor:pointer;font-size:.95rem;padding:10px 30px 10px 10px;transition:all .3s ease}.filters select:focus,.filters select:hover{color:#8ec5fc;outline:none}.filters-container{display:flex;gap:15px;margin-bottom:10px}.filter-label{color:#666;font-size:.9rem;margin-right:5px}.sort-dropdown{margin-bottom:3px;margin-left:auto;position:relative}.sort-dropdown-button{align-items:center;background:var(--card-background);border:1px solid var(--border-color);color:var(--text-color);cursor:pointer;display:flex;font-size:.9rem;font-weight:700;padding:10px 15px;transition:all .3s ease;white-space:nowrap}.sort-dropdown-button:hover,.sort-dropdown-menu{background-color:#e0c3fc}.sort-dropdown-menu{border-radius:8px;box-shadow:0 4px 6px #0000001a;left:auto;overflow:hidden;position:absolute;top:100%;transition:all .3s ease;z-index:10}.sort-dropdown-menu button{background:var(--card-background);border:none;border-bottom:1px solid var(--border-color);color:var(--text-color);cursor:pointer;display:block;font-size:.9rem;font-weight:700;padding:10px 15px;text-align:right;transition:all .3s ease;width:100%}.sort-dropdown-menu button:hover{background-color:var(--button-hover-background);color:var(--button-hover-text-color);color:#8ec5fc}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-color);display:block;margin-bottom:.5rem}.form-group input,.form-group select{background-color:var(--button-background);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-color);padding:.5rem;width:100%}.form-group input:focus,.form-group select:focus{border-color:var(--button-background);box-shadow:0 0 0 2px #8ec5fc33;outline:none}.form-actions{display:flex;justify-content:flex-end;margin-top:1.5rem}.save-button{background-color:var(--button-background);border:none;border-radius:var(--border-radius-sm);color:var(--button-text-color);cursor:pointer;padding:10px 20px;transition:var(--transition-default)}.save-button:hover{background-color:var(--button-hover-background);color:var(--button-hover-text-color)}.auth-container{background-color:var(--auth-container-background);border-radius:var(--border-radius-lg);box-shadow:var(--common-shadow);margin:2rem auto;max-width:480px;padding:1.5rem}.auth-title{color:var(--text-color);font-size:1.5rem;margin-bottom:.5rem}.auth-subtitle{color:var(--text-muted);margin-bottom:1.5rem}.auth-form{margin-top:1rem}.auth-error{background-color:#ef44441a;color:var(--error-color)}.auth-error,.auth-success{border-radius:var(--border-radius-sm);margin-top:.75rem;padding:.75rem 1rem}.auth-success{background-color:#22c55e1a;color:var(--success-color)}.auth-links{align-items:center;color:var(--text-secondary);display:flex;gap:.5rem;justify-content:space-between;margin-top:1.5rem}.auth-links a{color:var(--primary-color);text-decoration:none}.auth-links a:hover{text-decoration:underline}.dashboard-links{list-style:none;margin-top:1.5rem;padding-left:0}.dashboard-links li+li{margin-top:.5rem}.dashboard-links a{color:var(--primary-color);text-decoration:none}.dashboard-links a:hover{text-decoration:underline}.modal-overlay{animation:modalFadeIn .2s ease-out;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background-color:#00000080;bottom:0;left:0;overflow-y:auto;padding:0;position:fixed;right:0;top:0;width:100vw;z-index:11000}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}:root:not(.dark-mode) .modal-overlay{background-color:#0006}.modal-content{animation:modalContentFadeIn .25s ease-out;backdrop-filter:var(--blur-effect);-webkit-backdrop-filter:var(--blur-effect);background-color:var(--card-background);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #0000004d;left:50%;margin-bottom:100px;max-height:80vh;max-width:600px;overflow-y:auto;padding:20px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:11001}@keyframes modalContentFadeIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}:root:not(.dark-mode) .modal-content{border:1px solid #0000001a;box-shadow:0 4px 15px #00000040}.modal-header{align-items:center;background:linear-gradient(135deg,#3278ff14,#5050b40f 50%,#963cb40d);border-bottom:1px solid var(--border-color);border-radius:12px 12px 0 0;display:flex;justify-content:space-between;margin:-20px;padding:20px;position:-webkit-sticky;position:sticky;z-index:1}.modal-title-section{display:flex;flex:1 1;flex-direction:column;gap:12px}.modal-title-wrapper{align-items:center;display:flex;gap:12px}.modal-icon{align-items:center;background:linear-gradient(135deg,#3278ffe6,#6450c8d9 50%,#963cb4cc);border-radius:10px;box-shadow:0 0 20px #3278ff80,0 0 15px #b43cc84d;color:#fff;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.modal-title-content{display:flex;flex-direction:column;gap:4px}.modal-title{color:var(--text-color);font-size:1.25rem;font-weight:700;line-height:1.2;margin:0}.modal-subtitle{color:var(--text-color-primary);font-size:.875rem;font-weight:500;opacity:.8}.modal-content .modal-actions{align-items:center!important;display:flex!important;flex-shrink:0!important;justify-content:flex-start!important;min-width:-webkit-fit-content!important;min-width:fit-content!important;width:auto!important}.modal-tabs{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#3278ff1f,#5050b41a 50%,#963cb414);border-bottom:1px solid var(--border-color);border-radius:12px 12px 0 0;margin:0 -20px;padding:0 20px}.modal-tabs,.tab-button{display:flex;overflow:hidden}.tab-button{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:var(--text-color-primary);cursor:pointer;font-size:.9rem;font-weight:600;gap:8px;padding:14px 24px;position:relative}.tab-button,.tab-button:before{transition:all .3s cubic-bezier(.4,0,.2,1)}.tab-button:before{background:linear-gradient(90deg,#3278ffe6,#6450c8d9 50%,#b43cc8cc);bottom:0;box-shadow:0 0 12px #3278ff80,0 0 8px #b43cc84d;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:0}.tab-button:hover:before{width:80%}.tab-button:hover{background:linear-gradient(135deg,#3278ff1f,#6450c81a 50%,#b43cc814);transform:translateY(-1px)}.tab-button.active{background:linear-gradient(135deg,#3278ff2e,#6450c826 50%,#b43cc81f);border-bottom-color:#0000}.tab-button.active:before{width:100%}.tab-icon{transition:transform .2s ease}.tab-button.active .tab-icon,.tab-button:hover .tab-icon{transform:scale(1.1)}.modal-body{display:flex;flex-direction:column;flex-wrap:wrap;min-height:200px;padding:2px}.error-state,.loading-state,.no-data-state{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:40px 20px;text-align:center}.error-icon,.loading-spinner-container,.no-data-icon{align-items:center;background:#3278ff26;border-radius:50%;display:flex;height:64px;justify-content:center;width:64px}.loading-state .loading-spinner-container{background:#3278ff26;box-shadow:0 0 20px #3278ff33}.error-state .error-icon{background:#ef44441a;background:rgba(var(--error-color-rgb,239,68,68),.1);color:var(--error-color)}.no-data-state .no-data-icon{background:#f59e0b1a;background:rgba(var(--warning-color-rgb,245,158,11),.1);color:var(--warning-color)}.error-icon svg,.loading-spinner,.no-data-icon svg{height:32px;width:32px}.error-text,.loading-text,.no-data-text{color:var(--text-color);font-size:1rem;font-weight:600;margin:0}.error-text{color:var(--error-color)}.no-data-text{color:var(--warning-color)}.no-data-subtext{color:var(--text-color-secondary);font-size:.875rem;margin:0}.retry-button{background:linear-gradient(135deg,#3278ffe6,#6450c8d9 50%,#963cb4cc);box-shadow:0 0 20px #3278ff66,0 0 15px #b43cc840;font-size:.875rem;font-weight:600;margin-top:8px;transition:all .3s ease}.retry-button:hover{box-shadow:0 4px 12px #3278ff99,0 0 30px #3278ff80,0 0 25px #b43cc859;transform:translateY(-2px)}.date-display-button{align-items:center!important;align-self:flex-start!important;-webkit-appearance:none!important;appearance:none!important;background:linear-gradient(135deg,#3278ffe6,#1e64dccc)!important;border:1px solid #0000!important;border-radius:10px!important;box-shadow:0 2px 8px #3278ff59,0 0 15px #3278ff33!important;color:#fff!important;cursor:pointer!important;display:inline-flex!important;flex:0 0 auto!important;font-size:.9rem!important;font-weight:600!important;gap:8px!important;max-width:200px!important;min-width:-webkit-min-content!important;min-width:min-content!important;overflow:hidden!important;padding:10px 16px!important;position:relative!important;transition:all .3s ease!important;white-space:nowrap!important;width:-webkit-fit-content!important;width:fit-content!important}.date-display-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.date-display-button:hover:before{left:100%}.date-display-button:hover{box-shadow:0 4px 16px #3278ff99,0 0 30px #3278ff66,0 0 25px #b43cc84d;transform:translateY(-2px)}.date-display-button:active{transform:translateY(0)}.calendar-icon{flex-shrink:0;transition:transform .2s ease}.date-display-button:hover .calendar-icon{transform:scale(1.1)}.loading-spinner{flex-shrink:0}.loading-spinner-container.neon-loader,.neon-loader{align-items:center!important;display:flex!important;height:80px!important;justify-content:center!important;width:80px!important}.neon-loader-ring{animation:neon-spin 1s linear infinite!important;height:60px!important;position:relative!important;width:60px!important}.neon-loader-ring,.neon-loader-ring:before{border:3px solid #0000!important;border-radius:50%!important;border-top-color:#0ff!important}.neon-loader-ring:before{animation:neon-glow 1.5s ease-in-out infinite!important;bottom:-3px!important;content:""!important;filter:blur(3px)!important;left:-3px!important;opacity:.7!important;position:absolute!important;right:-3px!important;top:-3px!important}@keyframes neon-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes neon-glow{0%,to{filter:blur(3px);opacity:.7}50%{filter:blur(6px);opacity:1}}.date-display-button:hover:not(:disabled){background:#0056b3;background:var(--primary-color-dark,#0056b3)}.date-display-button:disabled{cursor:not-allowed;opacity:.6}.date-display-button .calendar-icon,.date-display-button .date-text{color:inherit}.dark-mode .date-display-button{border-color:#ffffff26;color:#fff}.calendar-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.calendar-modal-content{background:#fff;background:var(--card-background,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:-webkit-fit-content;max-height:fit-content;max-width:90vw;overflow:visible;padding:16px;width:340px}@media (max-width:768px){.modal-body{flex-direction:column;padding:16px}.modal-content{border-radius:16px;left:50%!important;margin-bottom:90px!important;max-height:85vh;max-width:95%;padding:16px;top:50%!important;transform:translate(-50%,-50%)!important}.modal-header{flex-direction:column;gap:16px;margin:-16px -16px 16px;padding:16px}.modal-title-section{align-items:flex-start;width:100%}.modal-title-wrapper{width:100%}.modal-icon{height:36px;width:36px}.modal-title{font-size:1.1rem}.modal-subtitle{font-size:.8rem}.modal-actions{justify-content:flex-start;width:100%}.modal-tabs{margin:0 -16px;padding:0 16px}.tab-button{flex:1 1;font-size:.85rem;justify-content:center;padding:12px 16px}.error-state,.loading-state,.no-data-state{padding:32px 16px}.error-icon,.loading-spinner-container,.no-data-icon{height:56px;width:56px}.error-icon svg,.loading-spinner,.no-data-icon svg{height:28px;width:28px}}@media (max-width:480px){.modal-overlay{padding:8px}.modal-content{border-radius:12px;left:50%!important;max-height:95vh;max-width:100%;padding:12px;transform:translate(-50%,-50%)!important}.modal-close{background:#ef44441a;background:rgba(var(--error-color-rgb,239,68,68),.1);border-radius:8px;font-size:1.4rem;margin:-12px;padding:12px;transition:all .2s ease}.modal-close:hover{background:#ef444433;background:rgba(var(--error-color-rgb,239,68,68),.2);transform:scale(1.1)}.modal-header{margin:-12px -12px 12px;padding:12px}.modal-title-section{gap:12px}.modal-title-wrapper{gap:8px}.modal-icon{height:32px;width:32px}.modal-title{font-size:1rem}.modal-subtitle{font-size:.75rem}.modal-tabs{margin:0 -12px;padding:0 12px}.tab-button{font-size:.8rem;padding:10px 12px}.date-display-button{font-size:.8rem;gap:6px;padding:8px 12px}.calendar-icon{height:14px;width:14px}.error-state,.loading-state,.no-data-state{padding:24px 12px}.error-icon,.loading-spinner-container,.no-data-icon{height:48px;width:48px}.error-icon svg,.loading-spinner,.no-data-icon svg{height:24px;width:24px}.error-text,.loading-text,.no-data-text{font-size:.9rem}.no-data-subtext{font-size:.8rem}.chart-container{max-height:45vh}.advanced-stats-container{max-height:60vh;overflow-y:auto;position:relative;scrollbar-color:#3b82f64d #0000;scrollbar-color:rgba(var(--primary-color-rgb,59,130,246),.3) #0000;scrollbar-width:thin}.advanced-stats-container::-webkit-scrollbar{width:6px}.advanced-stats-container::-webkit-scrollbar-track{background:#0000;border-radius:3px}.advanced-stats-container::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--primary-color),var(--secondary-color));border-radius:3px;opacity:.6;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}.advanced-stats-container::-webkit-scrollbar-thumb:hover{opacity:.9}.advanced-stats-container:after{background:linear-gradient(90deg,#0000,#3b82f633,#0000);background:linear-gradient(90deg,#0000,rgba(var(--primary-color-rgb,59,130,246),.2),#0000);bottom:0;content:"";height:1px;left:0;opacity:0;position:absolute;right:0;transition:opacity .3s ease}.advanced-stats-container:has(>div:last-child):not(:hover):after{opacity:.4}.advanced-stats-container:hover:after{opacity:.7}.advanced-stats-container:hover{background:linear-gradient(180deg,#0000,#3b82f605);background:linear-gradient(180deg,#0000,rgba(var(--primary-color-rgb,59,130,246),.02))}.dark-mode .advanced-stats-container{scrollbar-color:#3b82f666 #1e293b4d}.dark-mode .advanced-stats-container::-webkit-scrollbar-track{background:#1e293b4d}.dark-mode .advanced-stats-container::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#4f46e5,#7c3aed);opacity:.7}.dark-mode .advanced-stats-container::-webkit-scrollbar-thumb:hover{opacity:1}.dark-mode .advanced-stats-container:after{background:linear-gradient(90deg,#0000,#4f46e54d,#0000)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-body>*{animation:slideInUp .4s ease-out}.date-display-button,.modal-content,.modal-overlay,.tab-button{-webkit-backface-visibility:hidden;backface-visibility:hidden;will-change:transform}.dark-mode .modal-header{background:linear-gradient(135deg,#3278ff26,#6450c81f 50%,#963cb41a);border-bottom:1px solid #508cff33;box-shadow:0 0 25px #3278ff26,0 0 20px #b43cc814}.dark-mode .modal-tabs{background:linear-gradient(135deg,#3278ff33,#6450c82b 50%,#963cb426);border-bottom:1px solid #508cff33}.dark-mode .tab-button:hover{background:linear-gradient(135deg,#3278ff33,#6450c82b 50%,#b43cc826);color:#468cff}.dark-mode .tab-button.active{background:linear-gradient(135deg,#3278ff40,#6450c838 50%,#b43cc833);box-shadow:0 0 20px #3278ff59,0 0 15px #b43cc840}.dark-mode .date-display-button{background:linear-gradient(135deg,#3278ffe6,#6450c8d9 50%,#963cb4cc);box-shadow:0 0 25px #3278ff66,0 0 20px #b43cc840}.dark-mode .error-icon,.dark-mode .loading-spinner-container,.dark-mode .no-data-icon{background:#3278ff40;box-shadow:0 0 20px #3278ff33}.dark-mode .error-text,.dark-mode .loading-text,.dark-mode .no-data-text{color:var(--text-color)}.dark-mode .no-data-subtext{color:var(--text-color-secondary)}.dark-mode .retry-button{background:linear-gradient(135deg,#3278ffe6,#6450c8d9 50%,#963cb4cc);box-shadow:0 0 25px #3278ff66,0 0 20px #b43cc840}:root:not(.dark-mode) .modal-content{background:linear-gradient(135deg,#fffffff2,#f8fafcf2);border:1px solid #e2e8f0cc;box-shadow:0 8px 32px #3b82f626}:root:not(.dark-mode) .modal-header{background:linear-gradient(135deg,#3278ff14,#1e64dc0d);border-bottom:1px solid #e2e8f0cc}:root:not(.dark-mode) .modal-tabs{background:linear-gradient(135deg,#3278ff1f,#1e64dc14);border-bottom:1px solid #e2e8f0cc}:root:not(.dark-mode) .tab-button:hover{background:#3278ff1f;color:#3278ff}:root:not(.dark-mode) .tab-button.active{background:#3278ff2e;color:#3278ff}:root:not(.dark-mode) .loading-spinner-container{background:#3278ff1f}:root:not(.dark-mode) .error-icon{background:#ef44441a;color:var(--error-color)}:root:not(.dark-mode) .no-data-icon{background:#f59e0b1a;color:var(--warning-color)}@media (prefers-reduced-motion:reduce){.date-display-button,.modal-body>*,.modal-content,.modal-overlay,.tab-button{animation:none!important;transition:none!important}}@media (max-height:600px) and (orientation:landscape){.modal-content{left:50%!important;max-height:90vh;top:50%!important;transform:translate(-50%,-50%)!important}}@media (prefers-reduced-motion:reduce){.modal-content,.modal-overlay{animation:none;transition:opacity .1s ease-out}}@media (max-width:768px){.modal-content,.modal-overlay{animation-duration:.15s}}.modal-header h3{font-size:1rem;padding:8px}.theme-toggle{background:none;border:none;border-radius:50%;cursor:pointer;height:35px;overflow:hidden;position:relative;width:35px}.theme-toggle:focus-visible{box-shadow:0 0 0 3px #8ec5fc80}.icon-container{height:100%;position:relative;width:100%}.moon,.sun{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:transform .5s ease,opacity .5s ease,filter .5s ease}.dark-mode .moon{filter:invert(1) drop-shadow(0 0 2px rgba(255,255,255,.7));transition:filter .3s ease}.dark-mode .moon:hover{filter:invert(1) drop-shadow(0 0 8px rgba(255,255,255,.932))}.hidden{opacity:0;transform:translate(-50%,100%)}.theme-toggle.animating .sun{animation:sunSet .5s ease forwards}.theme-toggle.animating .moon{animation:moonRise .5s ease forwards}@keyframes sunSet{0%{transform:translate(-50%,-50%)}to{transform:translate(-50%,100%)}}@keyframes moonRise{0%{transform:translate(-50%,-150%)}to{transform:translate(-50%,-50%)}}.liquid-glass-filter{height:0;position:absolute;width:0;z-index:-1}.bottom-navigation.liquid-glass-chrome:before{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);content:"";filter:url(#mpt-lg-dist);inset:0;isolation:isolate;pointer-events:none;position:absolute;z-index:0}.bottom-navigation.liquid-glass-chrome:after{backdrop-filter:blur(3px) saturate(180%) brightness(1.05);-webkit-backdrop-filter:blur(3px) saturate(180%) brightness(1.05);background:var(--lg-bg-color);border-radius:inherit;box-shadow:inset 0 0 20px #ffffff0d;content:"";inset:0;pointer-events:none;position:absolute;z-index:0}.bottom-navigation{align-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:#ffffff1a;border:none;border-radius:20px;bottom:20px;box-shadow:0 8px 32px #0000001a;display:flex;height:70px;justify-content:space-around;left:20px;margin:0;opacity:1;overflow:hidden;padding:8px 16px;position:fixed;right:20px;transform:translateY(0);transition:transform .3s ease-in-out,opacity .3s ease,background-color .4s cubic-bezier(1,0,.4,1),box-shadow .4s cubic-bezier(1,0,.4,1);z-index:10000}.bottom-navigation.liquid-glass-chrome{--c-glass:#d4d4d8;--c-light:#fff;--c-dark:#000;--glass-reflex-dark:0.8;--glass-reflex-light:1.2;--saturation:180%;--brightness:1.05;--lg-bg-color:#ffffff2e;--lg-highlight:#ffffffbf;backdrop-filter:none;-webkit-backdrop-filter:none;background:linear-gradient(135deg,#ffffff1f,#ffffff0a 25%,#d4d4d814 50%,#ffffff0f 75%,#ffffff1a);box-shadow:0 4px 16px #0000001a,0 8px 32px #00000014,0 2px 8px #85d2ff0f}.bottom-navigation.hidden{opacity:0;transform:translateY(100%)}.bottom-navigation.visible{opacity:1;transform:translateY(0)}.dark-mode .bottom-navigation{background:#0003;border:1px solid #ffffff1a;box-shadow:0 8px 32px #0000004d}.dark-mode .bottom-navigation.liquid-glass-chrome{--c-glass:#6b7280;--c-light:#fff;--c-dark:#000;--glass-reflex-dark:1.5;--glass-reflex-light:0.8;--saturation:160%;--brightness:0.95;--lg-bg-color:#00000038;--lg-highlight:#fff9;background:linear-gradient(135deg,#ffffff14,#ffffff08 25%,#6b72801f 50%,#ffffff0d 75%,#ffffff14);box-shadow:inset -.5px -1px 5px 0 #00000040,inset -2px 3px 0 -2px #00000059,inset 0 4px 6px -2px #0000004d,inset 3px -8px 2px -6px #0003,0 2px 8px #00000040,0 8px 20px #0003,0 3px 12px #85d2ff1f,0 0 0 1px #ffffff14,inset 0 0 0 .5px #ffffff26}.nav-bubble{backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%);background:linear-gradient(135deg,#ffffff26,#ffffff0d 50%,#85d2ff14);border:1px solid #fff3;border-radius:16px;box-shadow:0 4px 16px #85d2ff26,0 1px 4px #0000001a,inset 0 1px 0 #ffffff4d,inset 0 -1px 0 #ffffff1a;opacity:0;pointer-events:none;position:absolute;transition:all .6s cubic-bezier(.25,.46,.45,.94);z-index:1}.nav-bubble.active{opacity:1}.dark-mode .nav-bubble{background:linear-gradient(135deg,#ffffff14,#ffffff05 50%,#85d2ff1f);border:1px solid #ffffff26;box-shadow:0 4px 20px #85d2ff33,0 2px 8px #0000004d,inset 0 1px 0 #ffffff26,inset 0 -1px 0 #ffffff0d}.bottom-navigation.liquid-glass-chrome .nav-bubble{backdrop-filter:blur(16px) saturate(160%) brightness(1.1);-webkit-backdrop-filter:blur(16px) saturate(160%) brightness(1.1);background:linear-gradient(135deg,#ffffff40,#ffffff14 30%,#85d2ff1f 70%,#85d2ff0d);border:1px solid #ffffff4d;box-shadow:inset 0 2px 0 #fff6,inset 0 1px 0 #fff3,inset 0 -2px 0 #ffffff1a,inset 0 -4px 8px #0000001a,0 6px 20px #85d2ff26,0 2px 8px #0000001a,0 0 0 1px #ffffff1a}.nav-btn{align-items:center;border:none;border-radius:12px;color:var(--text-color);cursor:pointer;display:flex;flex:1 1;flex-direction:column;justify-content:center;max-width:80px;min-width:60px;padding:8px 6px;position:relative;transition:all .2s ease;z-index:2}.nav-btn:hover{transform:translateY(-2px)}.dark-mode .nav-btn{background:#00000026}.btn-icon{font-size:18px;margin-bottom:2px}.filotomatix-icon{filter:invert(1)}.dark-mode .filotomatix-icon{filter:none}.btn-image{display:block;height:24px;object-fit:contain;width:24px}.btn-text{font-size:10px;font-weight:500;line-height:1;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.bottom-navigation.labels-hidden .btn-text{display:none}.bottom-menu-overlay{align-items:flex-end;animation:slideUp .3s ease-out;display:flex}.bottom-menu-content{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid #ffffff1a;border-top-color:#ffffff26;border-top-left-radius:24px;border-top-right-radius:24px;box-shadow:0 -8px 32px #0003,inset 0 1px 0 #ffffff1a;padding-bottom:env(safe-area-inset-bottom,20px);width:100%}.menu-header{align-items:center;border:1px solid var(--border-color);border-radius:12px;display:flex;justify-content:space-between;margin-bottom:20px}.menu-header h2{color:var(--text-color);font-size:1.2rem}.menu-header-actions{align-items:center;display:flex;gap:.5rem}.close-menu-btn{background:#ff696933;border:1px solid #ff69694d;font-size:16px;height:32px;width:32px}.close-menu-btn:hover{background:#ff69694d;transform:scale(1.1)}.continent-tabs{-ms-overflow-style:none;display:flex;gap:6px;margin-bottom:16px;overflow-x:auto;padding:0 16px;scrollbar-width:none}.continent-tabs::-webkit-scrollbar{display:none}.continent-tab{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#0000001a;border:1px solid #fff3;border:1px solid var(--border-color-primary);border-radius:16px;color:#fff;cursor:pointer;flex:0 0 auto;font-size:13px;font-weight:500;padding:8px 16px;text-shadow:0 1px 2px #0003;transition:all .2s ease;white-space:nowrap}.continent-tab.disabled{cursor:not-allowed;opacity:.45}.continent-tab.disabled:hover{background:#0000001a;border-color:var(--border-color-primary);transform:none}.continent-tab:hover{background:#ffffff26;border-color:#ffffff40}.continent-tab.active{background:#3b82f6;background:var(--primary-color,#3b82f6);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);color:#fff;font-weight:600}.parks-list{margin-bottom:20px;padding:0 16px}.park-item{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid #ffffff26;border-radius:12px;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;gap:12px;margin-bottom:8px;padding:12px;position:relative;transition:all .2s ease}.park-item:hover{background:#ffffff1f;border-color:#fff3;transform:translateX(2px)}.park-item.active{background:#3b82f633;border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.park-logo-mini{background:#ffffff1a;border-radius:6px;flex-shrink:0;height:32px;overflow:hidden;width:32px}.park-logo-mini img{height:100%;object-fit:contain;padding:2px;width:100%}.park-name{flex:1 1;font-size:15px;font-weight:500;line-height:1.3;text-shadow:0 1px 2px #0003}.park-arrow{color:#ffffff80;font-size:16px;font-weight:700;transition:transform .2s ease}.park-item:hover .park-arrow{color:#fffc;transform:translateX(3px)}.park-logo.active{filter:brightness(1.2);transform:scale(1.05)}.menu-settings{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;padding:20px 16px}.settings-section h3{color:#fff;font-size:16px;margin-bottom:16px;text-shadow:0 1px 2px #0000004d}.setting-item{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff1a;border-radius:10px;transition:all .2s ease}.setting-item:hover{background:#ffffff1f;border-color:#fff3}.setting-item span{font-size:14px;font-weight:500;text-shadow:0 1px 2px #0003}.toggle-switch{gap:10px}.toggle-slider{background-color:#fff3;border:1px solid var(--border-color);transition:.3s;width:44px}.toggle-slider:before{bottom:2px;height:18px;left:2px;transition:.3s;width:18px}input:checked+.toggle-slider{border-color:var(--primary-color)}input:checked+.toggle-slider:before{transform:translateX(20px)}.menu-links{gap:10px}.menu-link{background:#ffffff0d;border:1px solid var(--border-color);border-radius:10px;color:var(--text-color);display:block;font-size:.95rem;padding:12px 16px;text-align:center}.menu-link:hover{background:#ffffff1a;color:var(--text-color);text-decoration:none;transform:translateY(-1px)}.menu-link.lite-link{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.weather-btn{border-color:#3b82f64d}.weather-btn:hover{background:#3b82f633;transform:translateY(-1px)}.weather-btn .btn-icon{font-size:1.2rem}.weather-btn .btn-text{font-weight:500}.weather-btn.has-rain-alert,.weather-btn.has-rain-alert .btn-icon{position:relative}.weather-btn.has-rain-alert .btn-icon:after{animation:mpt-rain-pulse 1.8s ease-in-out infinite;background:#ff4d4f;border:1px solid #fffc;border-radius:50%;box-shadow:0 0 0 0 #ff4d4f99;content:"";height:8px;position:absolute;right:-2px;top:-2px;width:8px}@keyframes mpt-rain-pulse{0%{box-shadow:0 0 0 0 #ff4d4f8c;opacity:.9}70%{box-shadow:0 0 0 6px #ff4d4f00;opacity:.7}to{box-shadow:0 0 0 0 #ff4d4f00;opacity:.9}}.dark-mode .weather-btn.has-rain-alert .btn-icon:after{border-color:#0009}.menu-link.lite-link:hover{background:#22c55e33;color:#22c55e}.menu-link.support-link{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.menu-link.support-link:hover{background:#ef444433;color:#ef4444}.parking-assistant-item{margin-top:16px}.parking-assistant-btn{align-items:center;background:linear-gradient(135deg,#3b82f626,#6366f126);border:2px solid #3b82f64d;border-radius:12px;color:var(--text-color);cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:12px;justify-content:center;padding:16px;text-decoration:none;transition:all .3s ease;width:100%}.parking-assistant-btn:hover{background:linear-gradient(135deg,#3b82f640,#6366f140);border-color:#3b82f680;box-shadow:0 8px 20px #3b82f633;transform:translateY(-2px)}.parking-icon{font-size:1.5rem;line-height:1}body.dark-mode .parking-assistant-btn{background:linear-gradient(135deg,#3b82f633,#6366f133);border-color:#3b82f666}body.dark-mode .parking-assistant-btn:hover{background:linear-gradient(135deg,#3b82f64d,#6366f14d);border-color:#3b82f699;box-shadow:0 8px 20px #3b82f64d}.admin-section{background:#ffffff0d;border:1px solid var(--border-color);margin-top:15px;padding:15px}.menu-toggle-btn{align-items:center;background:var(--primary-color);border:none;border-radius:50%;box-shadow:0 4px 12px #00000026;color:#fff;cursor:pointer;display:flex;flex-direction:column;justify-content:center;margin:0 16px;min-height:56px;min-width:56px;padding:12px;transition:all .3s ease}.menu-toggle-btn:hover{box-shadow:0 6px 16px #0003;transform:scale(1.05)}.menu-toggle-btn.active{background:#e11d48;transform:rotate(90deg)}.menu-icon{font-size:20px;margin-bottom:2px}.menu-text{font-size:9px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.action-buttons{align-items:center;display:flex;flex:1 1;gap:8px;justify-content:flex-end}.action-btn{background:#0000;color:var(--text-color);flex-direction:column;min-width:50px;padding:6px 8px;transition:all .2s ease}.action-btn:hover{background:#ffffff1a;transform:translateY(-2px)}.action-btn.active{background:var(--primary-color);color:#fff}.action-icon{font-size:18px;margin-bottom:2px}.action-text{font-size:10px;font-weight:500;line-height:1;text-align:center}.bottom-menu-overlay{backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);bottom:70px;left:0;position:fixed;right:0;top:0;z-index:999}.bottom-menu-content{animation:slideUp .3s ease;border-radius:20px 20px 0 0;border-top:1px solid #fff3;bottom:0;box-shadow:0 -8px 32px #0003;left:0;max-height:80vh;overflow-y:auto;padding:20px;position:fixed;right:0}.bottom-menu-content.closing{animation:slideDown .3s ease forwards}.dark-mode .bottom-menu-content{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#00000047;border:1px solid #ffffff1a;box-shadow:0 8px 32px #0000004d}.menu-header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:20px 16px 16px}.menu-header h2{font-size:20px;font-weight:600;margin:0;text-shadow:0 1px 2px #0000004d}.close-menu-btn{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;font-size:18px;height:36px;width:36px}.close-menu-btn:hover{background:#ffffff1a;transform:rotate(90deg)}.continent-selector{gap:12px;margin-bottom:20px}.continent-button{border-radius:20px;font-size:14px;font-weight:500;padding:12px 24px;transition:all .3s ease}.continent-button.active,.continent-button:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff;transform:translateY(-2px)}.menu-settings{border-top:1px solid #ffffff1a;padding-top:20px}.settings-section{margin-bottom:20px}.settings-section h3{color:var(--text-color);font-size:1.1rem;font-weight:600;margin:0 0 15px}.settings-items{gap:12px}.setting-item{align-items:center;background:#ffffff1a;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;padding:12px 16px;transition:background .3s ease}.setting-item:hover{background:#ffffff26}.toggle-slider{background-color:#ccc}.bottom-navigation.liquid-glass-chrome .toggle-switch[data-active=true] .toggle-slider{backdrop-filter:blur(2px) saturate(150%);-webkit-backdrop-filter:blur(2px) saturate(150%);transform:scale(1.15);transition:transform .2s cubic-bezier(.34,1.56,.64,1),-webkit-backdrop-filter .2s ease-out;transition:transform .2s cubic-bezier(.34,1.56,.64,1),backdrop-filter .2s ease-out;transition:transform .2s cubic-bezier(.34,1.56,.64,1),backdrop-filter .2s ease-out,-webkit-backdrop-filter .2s ease-out}.bottom-navigation.liquid-glass-chrome .toggle-switch[data-active=true] .toggle-slider:before{box-shadow:inset 1px -1px 3px #fff9,inset 0 -1px 3px #fff9,inset -1px -1px 3px #fff9,inset 1px 1px 3px #4d4d4d99,inset -5px 3px 10px -5px #4d4d4d59,inset -1px 1px 5px #4d4d4d59,-2px -2px 8px #99999940,2px 2px 3px #4d4d4d40,3px 3px 6px #4d4d4d40,inset -3px -2px 3px #ffffff59,3px 5px 12px -5px #4d4d4d99;transform:translateX(13px) scale(1.1);transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease-out}.bottom-navigation.liquid-glass-chrome .toggle-switch[data-active=true] input:checked+.toggle-slider:before{transform:translateX(13px) scale(1.1)}.bottom-navigation.liquid-glass-chrome .nav-btn{overflow:visible;position:relative;will-change:transform,filter}.bottom-navigation.liquid-glass-chrome .nav-btn[data-active=true]{filter:url(#liquid-goo-filter);transform:scale(1.65) translateY(-5px);transition:transform .2s cubic-bezier(.34,1.56,.64,1),filter .2s ease-out}.bottom-navigation.liquid-glass-chrome .nav-btn[data-active=true]:before{border-radius:12px;box-shadow:inset 1px -1px 3px #fff9,inset 0 -1px 3px #fff9,inset -1px -1px 3px #fff9,inset 1px 1px 3px #4d4d4d99,inset -5px 3px 10px -5px #4d4d4d59,inset -1px 1px 5px #4d4d4d59,-2px -2px 8px #99999940,2px 2px 3px #4d4d4d40,3px 3px 6px #4d4d4d40,inset -3px -2px 3px #ffffff59,3px 5px 12px -5px #4d4d4d99;content:"";inset:-4px;opacity:1;pointer-events:none;position:absolute;transition:opacity .2s ease-out;z-index:-1}.bottom-navigation.liquid-glass-chrome .nav-btn[data-active=true] .btn-icon,.bottom-navigation.liquid-glass-chrome .nav-btn[data-active=true] .btn-text{filter:blur(0);transition:filter .2s ease-out}.bottom-navigation.liquid-glass-chrome .nav-btn[data-active=true]:after{backdrop-filter:blur(8px) saturate(150%);-webkit-backdrop-filter:blur(8px) saturate(150%);background:color-mix(in srgb,var(--c-glass) 25%,#0000);border-radius:10px;content:"";inset:2px;pointer-events:none;position:absolute;z-index:-1}.bottom-navigation.liquid-glass-chrome .nav-bubble{overflow:visible;transition:all .6s cubic-bezier(.25,.46,.45,.94);will-change:transform,filter,border-radius}.bottom-navigation.liquid-glass-chrome .nav-bubble.active{backdrop-filter:blur(18px) saturate(180%) brightness(1.15);-webkit-backdrop-filter:blur(18px) saturate(180%) brightness(1.15);background:linear-gradient(135deg,#ffffff4d,#ffffff1a 30%,#85d2ff26 70%,#85d2ff14);border:1px solid #ffffff59;border-radius:18px;box-shadow:inset 0 2px 0 #ffffff80,inset 0 1px 0 #ffffff40,inset 0 -2px 0 #ffffff26,inset 0 -5px 10px #00000014,0 8px 25px #85d2ff33,0 3px 12px #00000026;opacity:1}.bottom-navigation.liquid-glass-chrome .nav-bubble[data-active=true]{animation:bubbleMorph .6s ease-out infinite alternate;border-radius:20px;filter:url(#liquid-goo-filter) blur(0) contrast(1.1) brightness(1.05);transform:scale(1.4) translateY(-2px);transition:all .4s cubic-bezier(.34,1.56,.64,1)}@keyframes bubbleMorph{0%{border-radius:18px;transform:scale(1.4) translateY(-2px)}to{border-radius:22px 16px 20px 16px;transform:scale(1.42) translateY(-3px)}}.bottom-navigation.liquid-glass-chrome .nav-bubble[data-active=true]:before{animation:shadowPulse .8s ease-in-out infinite alternate;border-radius:20px;box-shadow:inset 1px -1px 3px #fff9,inset 0 -1px 3px #fff9,inset -1px -1px 3px #fff9,inset 1px 1px 3px #ccc6,inset -2px 2px 8px #cccccc4d,inset -8px 4px 12px -6px #4d4d4d59,inset -2px 2px 8px #4d4d4d66,inset -1px 1px 6px #4d4d4d4d,-2px -2px 12px #99999940,2px 2px 6px #4d4d4d4d,4px 4px 12px #4d4d4d40,inset -3px -2px 4px #ffffff59,3px 8px 20px -6px #4d4d4d99;content:"";inset:-2px;opacity:1;pointer-events:none;position:absolute;transition:opacity .3s ease-out,box-shadow .3s ease-out;z-index:-1}@keyframes shadowPulse{0%{box-shadow:inset 1px -1px 3px #fff9,inset 0 -1px 3px #fff9,inset -1px -1px 3px #fff9,inset 1px 1px 3px #ccc6,inset -2px 2px 8px #cccccc4d,inset -8px 4px 12px -6px #4d4d4d59,inset -2px 2px 8px #4d4d4d66,inset -1px 1px 6px #4d4d4d4d,-2px -2px 12px #99999940,2px 2px 6px #4d4d4d4d,4px 4px 12px #4d4d4d40,inset -3px -2px 4px #ffffff59,3px 8px 20px -6px #4d4d4d99}to{box-shadow:inset 1px -1px 4px #ffffffb3,inset 0 -1px 4px #ffffffb3,inset -1px -1px 4px #ffffffb3,inset 1px 1px 4px #cccccc80,inset -3px 3px 10px #ccc6,inset -10px 6px 15px -8px #4d4d4d66,inset -3px 3px 10px #4d4d4d73,inset -2px 2px 8px #4d4d4d59,-3px -3px 15px #9999994d,3px 3px 8px #4d4d4d59,5px 5px 15px #4d4d4d4d,inset -4px -3px 6px #fff6,4px 10px 25px -8px #4d4d4db3}}.bottom-navigation.liquid-glass-chrome .nav-bubble[data-active=true]:after{animation:shimmerEffect 1.2s ease-in-out infinite alternate;backdrop-filter:blur(20px) saturate(200%) brightness(1.2);-webkit-backdrop-filter:blur(20px) saturate(200%) brightness(1.2);background:linear-gradient(135deg,#fff6,#ffffff26 30%,#85d2ff33 70%,#85d2ff1a);border-radius:19px;content:"";inset:1px;pointer-events:none;position:absolute;transition:all .3s ease-out;z-index:-1}@keyframes shimmerEffect{0%{background:linear-gradient(135deg,#fff6,#ffffff26 30%,#85d2ff33 70%,#85d2ff1a);filter:brightness(1.1) saturate(1.1)}to{background:linear-gradient(45deg,#ffffff73,#fff3 25%,#85d2ff40 75%,#85d2ff26);filter:brightness(1.15) saturate(1.15)}}.sound-toggle-button{background:#0000;@keyframes bubbleFloat{0%{border-radius:16px;transform:scale(1) translateY(0)}50%{border-radius:18px 14px 17px 15px;transform:scale(1.02) translateY(-1px)}to{border-radius:14px 18px 15px 17px;transform:scale(.98) translateY(1px)}}@keyframes bubbleTransition{0%{border-radius:20px 16px 19px 17px;filter:brightness(1.1);transform:scale(1.1)}50%{border-radius:22px 14px 21px 15px;filter:brightness(1.15);transform:scale(1.2)}to{border-radius:16px;filter:brightness(1);transform:scale(1)}}.nav-bubble[data-direction=right][data-transitioning=true]{animation:bubbleStretchRight .3s cubic-bezier(.25,.46,.45,.94) forwards,bubbleTransition .6s cubic-bezier(.34,1.56,.64,1) .3s}.nav-bubble[data-direction=left][data-transitioning=true]{animation:bubbleStretchLeft .3s cubic-bezier(.25,.46,.45,.94) forwards,bubbleTransition .6s cubic-bezier(.34,1.56,.64,1) .3s}@keyframes bubbleStretchRight{0%{border-radius:16px}50%{border-radius:25px 10px 22px 12px;filter:brightness(1.05);transform:scaleX(1.3) scaleY(.9)}to{border-radius:30px 8px 28px 10px;filter:brightness(1.08);transform:scaleX(1.4) scaleY(.85)}}@keyframes bubbleStretchLeft{0%{border-radius:16px}50%{border-radius:10px 25px 12px 22px;filter:brightness(1.05);transform:scaleX(1.3) scaleY(.9)}to{border-radius:8px 30px 10px 28px;filter:brightness(1.08);transform:scaleX(1.4) scaleY(.85)}}@keyframes shimmerGlow{0%{box-shadow:inset 0 2px 0 #ffffff80,inset 0 1px 0 #ffffff40,inset 0 -2px 0 #ffffff26,inset 0 -5px 10px #00000014,0 8px 25px #85d2ff33,0 3px 12px #00000026;filter:brightness(1.05)}to{box-shadow:inset 0 3px 0 #fff9,inset 0 2px 0 #ffffff59,inset 0 -1px 0 #fff3,inset 0 -6px 12px #0000001a,0 10px 30px #85d2ff40,0 4px 15px #0000002e;filter:brightness(1.1)}}border-radius:8px;font-size:18px;padding:8px;transition:all .2s ease}.sound-toggle-button:hover{background:#ffffff1a}.menu-links{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;padding:0 16px}.menu-link{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;font-size:15px;font-weight:500;justify-content:space-between;padding:14px 16px;text-decoration:none;transition:all .2s ease}.menu-link:hover{background:#ffffff1f;border-color:#fff3;transform:translateX(2px)}.lite-link{background:linear-gradient(135deg,#6366f133,#7c3aed33)}.support-link{background:linear-gradient(135deg,#ec489933,#db277733)}.admin-section{padding:16px}.admin-header{font-size:1.1rem;margin-bottom:12px}.admin-logout-btn{background:#ff696933;border:1px solid #ff69694d;border-radius:8px;color:var(--text-color);cursor:pointer;font-size:.9rem;font-weight:500;padding:12px;transition:all .3s ease;width:100%}.admin-logout-btn:hover{background:#ff69694d;transform:translateY(-2px)}.admin-code-form{backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;gap:16px;left:50%;padding:24px;position:fixed;top:50%;transform:translate(-50%,-50%);width:300px;z-index:1001}.dark-mode .admin-code-form{background:#000000f2;border:1px solid #ffffff1a}.code-input{border-radius:12px;padding:12px 16px}.code-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f11a}.code-submit{background:var(--primary-color);border-radius:12px;color:#fff;font-weight:600;padding:12px 16px}.code-submit:hover{background:#4338ca}.code-submit:disabled{transform:none}.attempts-warning{background:#ef44441a;border:1px solid #ef444433;border-radius:8px;color:#ef4444;padding:8px 12px}.secret-button{background:#0000;bottom:0;z-index:10001}@media (max-width:768px){.bottom-navigation{bottom:15px;height:65px;left:20px;padding:6px 8px;right:20px}.nav-btn{max-width:70px;min-width:50px;padding:6px 4px}.btn-icon{font-size:16px}.btn-text{font-size:9px}.menu-toggle-btn{margin:0 12px;min-height:50px;min-width:50px;padding:10px}.menu-icon{font-size:18px}.menu-text{font-size:8px}.action-btn{min-width:45px;padding:4px 6px}.action-icon{font-size:16px}.action-text{font-size:9px}.bottom-menu-content{max-height:80vh}.menu-header h2{font-size:1.2rem}.continent-selector{gap:8px}.continent-button{font-size:13px;padding:10px 16px}.parks-grid{gap:8px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}}@media (max-width:480px){.bottom-navigation{height:60px;padding:4px 8px}.nav-btn{max-width:60px;min-width:43px;padding:6px 2px}.quick-access{gap:2px}.quick-access-btn{min-width:45px;padding:3px 4px}.park-icon{font-size:14px}.park-name{font-size:18px}.menu-toggle-btn{margin:0 8px;min-height:45px;min-width:45px;padding:8px}.menu-icon{font-size:16px}.menu-text{font-size:7px}.action-btn{min-width:40px;padding:3px 4px}.action-icon{font-size:14px}.action-text{font-size:8px}.continent-selector{flex-direction:column;gap:6px}.continent-button{font-size:12px;padding:8px 12px}.parks-grid{gap:6px;grid-template-columns:repeat(2,1fr);max-height:180px}.bottom-menu-content{max-height:75vh}.admin-code-form{padding:20px;width:280px}}.bottom-menu-content::-webkit-scrollbar{width:6px}.bottom-menu-content::-webkit-scrollbar-track{background:#0000000d;border-radius:10px}.bottom-menu-content::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:10px}.bottom-menu-content::-webkit-scrollbar-thumb:hover{background:#ffffff80}.dark-mode .bottom-menu-content::-webkit-scrollbar-thumb{background:#fff3}.dark-mode .bottom-menu-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.parks-grid::-webkit-scrollbar{width:4px}.parks-grid::-webkit-scrollbar-track{background:#0000000d;border-radius:10px}.parks-grid::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:10px}.parks-grid::-webkit-scrollbar-thumb:hover{background:#ffffff80}.mobile-browser-bar-present .bottom-menu-content{max-height:calc(100vh - 130px - env(safe-area-inset-bottom, 0px))}@media (max-width:768px){.mobile-browser-bar-present .bottom-menu-content{max-height:calc(100vh - 130px - env(safe-area-inset-bottom, 0px))}}@media (max-width:480px){.mobile-browser-bar-present .bottom-menu-content{max-height:calc(100vh - 135px - env(safe-area-inset-bottom, 0px))}}.reorder-btn-mobile.icon-only,.reset-order-btn-mobile.icon-only{align-items:center;background:#0000;border:1px solid #ffffff26;border-radius:50%;color:var(--text-color);cursor:pointer;display:flex;font-size:1.1rem;height:32px;justify-content:center;opacity:.7;padding:0;position:relative;transition:all .3s ease;width:32px}.reorder-btn-mobile.icon-only:active{background:#ffffff1a;opacity:1;transform:scale(.95)}.reset-order-btn-mobile.icon-only{color:#ef4444}.reset-order-btn-mobile.icon-only:active{background:#ef44441a;transform:scale(.95)}.reorder-btn-mobile .tooltip-mobile,.reset-order-btn-mobile .tooltip-mobile{background:#000000e6;border-radius:6px;color:#fff;font-size:.75rem;font-weight:500;left:50%;opacity:0;padding:.4rem .8rem;pointer-events:none;position:absolute;top:100%;transform:translateX(-50%) translateY(8px);transition:opacity .2s ease,transform .2s ease;white-space:nowrap;z-index:1000}.reorder-btn-mobile:active .tooltip-mobile,.reset-order-btn-mobile:active .tooltip-mobile{opacity:1;transform:translateX(-50%) translateY(4px)}.dark-mode .reorder-btn-mobile .tooltip-mobile,.dark-mode .reset-order-btn-mobile .tooltip-mobile{background:#fffffff2;color:#222}.reorder-mode-info-mobile{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#3b82f61a;border:1px solid #3b82f64d;border-radius:12px;margin:.8rem 1rem;padding:.8rem}.reorder-mode-header-mobile{margin-bottom:.8rem}.reorder-mode-title-mobile{color:var(--text-color);display:block;font-size:1rem;font-weight:600;margin-bottom:.5rem}.reorder-mode-text-mobile{color:var(--text-color);font-size:.8rem;line-height:1.4;margin:0;opacity:.8}.reorder-actions-mobile{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.cancel-order-btn-mobile,.save-order-btn-mobile{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .3s ease}.save-order-btn-mobile{background:#22c55e33;border:1px solid #22c55e66;color:var(--text-color)}.save-order-btn-mobile:active{background:#22c55e4d;transform:scale(.95)}.cancel-order-btn-mobile{background:#ef444433;border:1px solid #ef444466;color:var(--text-color)}.cancel-order-btn-mobile:active{background:#ef44444d;transform:scale(.95)}.parks-list.reorder-mode{gap:1rem}.park-item.reorder-active{background:#3b82f61a;border:2px solid #3b82f64d;padding-left:50px;position:relative}.park-item-content{align-items:center;display:flex;gap:12px;width:100%}.reorder-buttons-mobile{align-items:center;display:flex;gap:4px;position:absolute;right:10px;top:50%;transform:translateY(-50%);z-index:10}.reorder-arrows-mobile{display:flex;flex-direction:column;gap:2px}.move-btn-mobile{background:#3b82f6e6;border:1px solid #ffffff4d;border-radius:50%;box-shadow:0 2px 6px #0003;color:#fff;font-size:.95rem;font-weight:700;height:26px;transition:all .2s ease;width:26px}.move-btn-mobile,.park-favorite-btn{align-items:center;cursor:pointer;display:flex;justify-content:center}.park-favorite-btn{background:#0000;border:none;color:inherit;padding:0}.park-favorite-btn.active{background:#0000;box-shadow:none}.move-btn-mobile:active:not(:disabled){background:#3b82f6;transform:scale(.9)}.move-btn-mobile:disabled{background:#9ca3af80;cursor:not-allowed;opacity:.5}@media (max-width:480px){.menu-header-actions{gap:.3rem}.reorder-btn-mobile.icon-only,.reset-order-btn-mobile.icon-only{font-size:1rem;height:28px;width:28px}.reorder-mode-info-mobile{margin:.6rem .8rem;padding:.6rem}.reorder-mode-title-mobile{font-size:.9rem}.reorder-mode-text-mobile{font-size:.75rem}.move-btn-mobile{font-size:.85rem;height:24px;width:24px}.park-favorite-btn{font-size:.9rem;height:auto;width:auto}.park-item.reorder-active{padding-right:52px}.reorder-buttons-mobile{gap:4px;right:8px}.continent-tabs{gap:4px;padding:0 8px}.continent-tab{font-size:12px;padding:6px 10px}}.status-notification-bell{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:50%;bottom:2rem;box-shadow:0 4px 20px #e74c3c4d;color:#fff;cursor:pointer;display:flex;height:3.5rem;justify-content:center;opacity:0;position:fixed;right:2rem;transform:translateY(20px) scale(.8);transition:all .3s cubic-bezier(.4,0,.2,1);visibility:hidden;width:3.5rem;z-index:1000}.status-notification-bell.visible{opacity:1;transform:translateY(0) scale(1);visibility:visible}.status-notification-bell.has-unread{animation:bellPulse 2s infinite}.status-notification-bell.no-unread{filter:saturate(.3)}.status-notification-bell.active{background:linear-gradient(135deg,#27ae60,#2ecc71);box-shadow:0 4px 20px #27ae604d}.status-notification-bell.hiding{opacity:0;pointer-events:none;transform:translateY(20px) scale(.8)}.status-notification-bell:hover{box-shadow:0 6px 25px #e74c3c66;transform:translateY(-2px) scale(1.05)}.status-notification-bell.active:hover{box-shadow:0 6px 25px #27ae6066}.status-notification-bell:active{transform:translateY(0) scale(.95)}.notification-badge{align-items:center;background:#e74c3c;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 8px #0003;color:#fff;display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;position:absolute;right:-8px;top:-8px;width:24px}.status-notification-bell.active .notification-badge{background:#27ae60}@keyframes bellPulse{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.05)}}.status-notification-popup{animation:popupSlideIn .3s cubic-bezier(.34,1.56,.64,1);background:#fff;border:1px solid #e1e5e9;border-radius:12px;bottom:6rem;box-shadow:0 8px 32px #00000026;max-width:calc(100vw - 2rem);overflow:hidden;position:fixed;right:2rem;width:320px;z-index:999}.status-notification-popup.closing{animation:popupSlideOut .3s cubic-bezier(.34,1.56,.64,1)}@keyframes popupSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes popupSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.popup-header{background-color:#f8f9fa;border-bottom:1px solid #e1e5e9;justify-content:space-between;padding:12px 16px}.popup-header,.popup-title{align-items:center;display:flex}.popup-title{color:#495057;font-size:14px;font-weight:600;gap:8px;margin:0}.popup-close{align-items:center;background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s}.popup-close:hover{background-color:#e9ecef;color:#495057}.popup-body{max-height:300px;overflow-y:auto;padding:0}.status-notifications-list{padding:8px 0}.status-notif-item{align-items:center;border-bottom:1px solid #f1f3f4;display:flex;gap:12px;padding:12px 16px;transition:background-color .2s}.status-notif-item:last-child{border-bottom:none}.status-notif-item.down{background-color:#e67e220d}.status-notif-item.reopen{background-color:#2ecc710d}.status-notif-item:hover{background-color:#00000005}.status-notif-icon{align-items:center;display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.status-notif-item.down .status-notif-icon{color:#e67e22}.status-notif-item.reopen .status-notif-icon{color:#2ecc71}.status-notif-text{color:#495057;flex:1 1;font-size:14px;line-height:1.4}.status-notif-text strong{font-weight:600}@media (min-width:769px){.status-notification-bell{bottom:6rem}.status-notification-popup{bottom:10rem}}@media (max-width:768px){.status-notification-bell{bottom:5rem;height:3rem;right:1.5rem;width:3rem}.status-notification-bell svg{height:18px;width:18px}.notification-badge{font-size:10px;height:20px;width:20px}.status-notification-popup{bottom:8rem;right:1rem;width:calc(100vw - 2rem)}}@media (max-width:480px){.status-notification-bell{bottom:4.8rem;height:2.75rem;right:1rem;width:2.75rem}.status-notification-bell svg{height:16px;width:16px}.notification-badge{font-size:9px;height:18px;width:18px}}@media (prefers-color-scheme:dark){.status-notification-bell{background:linear-gradient(135deg,#e74c3c,#c0392b)}.status-notification-bell.active{background:linear-gradient(135deg,#27ae60,#2ecc71)}.status-notification-bell.no-unread{filter:saturate(.5)}.status-notification-popup{background:#2d3748;border-color:#4a5568}.popup-header{background-color:#1a202c;border-color:#4a5568}.popup-title{color:#e2e8f0}.popup-close{color:#a0aec0}.popup-close:hover{background-color:#4a5568;color:#e2e8f0}.status-notif-item{border-color:#4a5568}.status-notif-item.down{background-color:#e67e221a}.status-notif-item.reopen{background-color:#2ecc711a}.status-notif-item:hover{background-color:#ffffff0d}.status-notif-text{color:#e2e8f0}}.status-notification-bell{margin-bottom:env(safe-area-inset-bottom,0);margin-right:env(safe-area-inset-right,0)}.status-notification-bell:focus{outline:2px solid #6366f1;outline:2px solid var(--focus-color,#6366f1);outline-offset:2px}.status-notification-bell:focus:not(:focus-visible){outline:none}.my-pass-container{align-items:stretch;display:flex;flex-direction:column;margin:0 auto;max-width:800px;padding:20px;z-index:998}.my-pass-container button{z-index:998}.important-notice{background-color:#ffe5644d;border-left:4px solid gold;border-radius:4px;margin:20px 0;padding:15px;position:relative}.dark-mode .important-notice{background-color:#ffe5641a}.important-notice h2{color:#b45309;font-size:1.2em;margin-bottom:10px}.pass-form{background:var(--gradient-light);border-radius:var(--border-radius-lg);box-shadow:var(--card-shadow);margin-top:20px;padding:20px;position:relative;z-index:998}.dark-mode .pass-form{background:var(--gradient-dark)}.upload-section{display:flex;flex-direction:column;gap:15px;margin:20px 0}.file-input{position:relative}.file-input input[type=file]{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.delete-button,.save-button{border:none;border-radius:var(--border-radius-sm);cursor:pointer;font-weight:700;padding:10px;transition:var(--transition-default)}.save-button{background-color:var(--wait-time-very-short);color:#fff}.delete-button{background-color:var(--wait-time-long)}.save-button:disabled{cursor:not-allowed;opacity:.5}.error-message{color:var(--wait-time-long);font-size:.9em}.format-info{color:var(--text-color);font-size:.9em;margin-top:15px;opacity:.8}.saved-pass{margin:20px 0}.pass-preview{align-items:center;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);box-shadow:0 2px 4px #0000001a;cursor:pointer;display:flex;height:100%;justify-content:center;margin:15px 0;overflow:hidden;position:relative;width:100%}.pass-preview:hover:after{background-color:#000c;border-radius:4px;bottom:100%;color:#fff;content:attr(data-tooltip);font-size:14px;left:50%;padding:5px 10px;position:absolute;transform:translateX(-50%);white-space:nowrap}.pass-preview img{background:#0000;height:50%;object-fit:contain;transition:transform .3s ease;width:50%}.pass-preview:hover img{transform:scale(1.05)}.pass-info{background:#ffffff1a;border-radius:var(--border-radius-sm);margin-top:10px;padding:15px;transition:background .3s ease}.pass-info.gaulois{background:linear-gradient(0deg,#344793,#69a1dc);color:#fff}.pass-info.premium{background:linear-gradient(0deg,#c88f00,#fffcf5);color:#000}@media (max-width:600px){.my-pass-container{padding:10px}.pass-preview{max-height:300px}}.qr-only-image{height:auto;width:100%}.toggle-qr-button{background-color:var(--button-background);border:none;border-radius:var(--border-radius-sm);color:var(--button-text-color);cursor:pointer;margin-right:10px;padding:10px;transition:var(--transition-default)}.toggle-qr-button:hover{background-color:var(--button-hover-background);color:var(--button-hover-text-color)}.example-pass{border-radius:var(--border-radius-sm);cursor:pointer;display:block;margin:20px auto;max-width:300px;transition:transform .2s ease}.example-pass:hover{transform:scale(1.05)}.close-qr-button{align-items:center;background:var(--button-background);border:none;border-radius:50%;color:var(--text-color);cursor:pointer;display:flex;font-size:20px;height:40px;justify-content:center;left:45%;position:relative;top:5%;transition:var(--transition-default);width:40px;z-index:1001}.close-qr-button:hover{background:var(--button-hover-background);color:var(--button-hover-text-color)}.qr-only-display{background:#fff;margin:0 auto}.qr-container,.qr-only-display{align-content:flex-start;display:flex;flex-wrap:wrap;justify-content:space-evenly;max-width:400px;overflow:hidden;width:100%;z-index:1000}.qr-container{align-items:flex-start;background-color:#fff;max-height:50vh;overflow-x:hidden;overflow-y:auto;padding:10px}.edit-button{background-color:var(--button-background);border-radius:var(--border-radius-sm);color:var(--button-text-color);margin-right:10px;padding:10px;transition:var(--transition-default)}.edit-button:hover{background-color:var(--button-hover-background);color:var(--button-hover-text-color)}.pass-details{margin-bottom:15px}.pass-actions{display:flex}.close-notice{align-items:center;background:none;border:none;color:#b45309;cursor:pointer;display:flex;font-size:1.2em;justify-content:center;padding:5px;position:absolute;right:10px;top:10px;transition:opacity .2s ease}.close-notice:hover{opacity:.7}.capture-options{display:flex;flex-direction:row;gap:1rem;margin-bottom:1rem;width:100%}.camera-button,.file-input{align-items:center;background:#14051691;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex:1 1;justify-content:center;padding:10px;text-align:center}.camera-button:hover,.file-input:hover{background:#1e0a20c4}.camera-button.confirm-state{animation:pulse 1.5s infinite;background-color:gold}.camera-section{align-items:center;display:flex;flex-direction:column;margin:20px 0}.camera-controls{justify-content:center;margin-top:20px;max-width:500px;width:100%}.capture-button{background-color:#4caf50}.cancel-button,.capture-button{border:none;border-radius:25px;color:#fff;cursor:pointer;font-weight:700;padding:12px 24px;text-transform:uppercase}.cancel-button{background-color:#f44336}@media (max-width:768px){.camera-controls{bottom:10px}.cancel-button,.capture-button{border:none;border-radius:25px;box-shadow:0 2px 4px #0003;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.5px;padding:12px 24px;text-transform:uppercase}}.input-controls{margin-bottom:20px;width:100%}.camera-container{margin:0 auto}.camera-container,.camera-section{border-radius:8px;max-width:500px;overflow:hidden;position:relative;width:100%}.camera-section{margin:20px auto}.camera-section video{border-radius:8px;display:block;height:auto;width:100%}.camera-controls{bottom:20px;display:flex;gap:10px;left:50%;position:absolute;transform:translateX(-50%);z-index:10}.modal-content h3{color:var(--text-color);margin:0 0 20px;text-align:center}.modal-actions{justify-content:center;margin-top:5px}.confirm-button{background-color:var(--wait-time-very-short);border:none;border-radius:var(--border-radius-sm);cursor:pointer;font-weight:700;padding:10px 20px;transition:var(--transition-default)}.confirm-button:hover{background-color:var(--wait-time-short)}.modal-close{line-height:1;margin:0}.code-input{font-size:16px;margin:15px 0}.pass-container{background:var(--gradient-light);border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:20px;padding:20px;position:relative}.dark-mode .pass-container{background:var(--gradient-dark)}.settings-button{background:none;border-radius:50%;padding:8px;position:absolute;right:23px;top:40px;transition:background-color .3s;z-index:1000}.settings-button svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.settings-menu{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000c;border:1px solid #ffffff1a;border-radius:8px;box-shadow:0 2px 10px #0003;padding:15px;position:absolute;right:20px;top:80px;z-index:998}.settings-menu h4{color:#fff;margin-bottom:10px;margin-top:0}.color-settings{flex-direction:column}.color-buttons,.color-settings{display:flex;gap:10px}.color-button{backdrop-filter:var(--blur-effect);-webkit-backdrop-filter:var(--blur-effect);background-color:var(--button-background);border:1px solid var(--border-color);border-radius:25px;color:var(--button-text-color);cursor:pointer;font-size:.9rem;font-weight:700;min-width:100px;padding:5px 15px;text-align:center;transition:var(--transition-default)}.color-button.active,.color-button:hover{background-color:#e0c3fc;color:#4a4a4a}.barcode-display{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:10px 0;padding:20px}.barcode-display img{display:block;margin:0 auto;max-width:300px;width:100%}.modal-close{color:#666;font-size:24px;z-index:999}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.cancel-button,.confirm-button{border:none;border-radius:4px;cursor:pointer;padding:8px 16px}.confirm-button{background-color:#4caf50;color:#fff}.confirm-button:disabled{background-color:#ccc;cursor:not-allowed}.cancel-button{background-color:#f5f5f5;color:#333}.pass-form{display:flex;flex-direction:column;gap:20px}.upload-section{text-align:center}.format-info{color:#666;font-size:14px}.error-message{color:#f44336;margin:10px 0}.pass-preview{margin:20px 0}.pass-preview img{border-radius:4px;max-width:100%}.pass-number{align-items:center;display:flex;font-size:18px;gap:10px;margin:10px 0}.action-button{background-color:#4caf50;margin:5px 0}.action-button,.delete-button{border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}.delete-button{background-color:#f44336}.zoom-modal{align-items:center;background-color:#000000e6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:999}.zoom-modal img{max-height:90vh;max-width:90%;object-fit:contain}.zoom-modal .close-button{align-items:center;background:none;background-color:#00000080;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;padding:10px;position:absolute;right:20px;top:20px;transition:background-color .3s;width:40px;z-index:1000}.zoom-modal .close-button:hover{background-color:#000c}.edit-button{align-items:center;background:none;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:5px;transition:background-color .3s;z-index:998}.edit-button:hover{background-color:#0000001a}.barcode-edit{background-color:#f5f5f5;border-radius:4px;margin:10px 0;padding:15px}.barcode-edit input{border:1px solid #ddd;border-radius:4px;font-size:16px;margin-bottom:10px;padding:8px;width:100%}.edit-actions{display:flex;gap:5px;justify-content:flex-end}.pass-button{align-items:center;background:none;border:none;border-radius:8px;color:var(--text-color);cursor:pointer;display:flex;margin:3px 0;padding:.7rem 1rem;text-align:left;transition:background-color .2s ease;width:100%}.pass-button:hover{background-color:#ffffff0d}.dark-mode .pass-button{color:#fff}.dark-mode .pass-button:hover{background-color:#ffffff0d}.camera-preview{background:#000000e6;border-radius:10px;box-shadow:0 0 20px #00000080;left:50%;padding:20px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:1000}.camera-preview video{border-radius:5px;height:480px;width:640px}.camera-button:hover{background:#ff6b81}.dark-mode .ecocup-settings .ecocup-button span,.ecocup-settings .ecocup-button span{color:#fff!important}.restaurant-item{background:var(--gradient-light);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);box-shadow:var(--common-shadow);display:flex;flex-direction:column;margin-bottom:15px;padding:15px}.restaurant-name{font-size:1.1rem;font-weight:700;margin-bottom:8px}.restaurant-info{align-items:center;display:flex;justify-content:space-between;margin-top:10px}.restaurant-status{border-radius:15px;font-size:.9rem;font-weight:500;padding:5px 10px}.restaurant-open{background-color:var(--wait-time-very-short);color:#fff}.restaurant-closed{background-color:var(--wait-time-closed);color:#fff}.restaurant-busy{background-color:var(--wait-time-long);color:#fff}.service-item{align-items:center;background:var(--gradient-light);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);box-shadow:var(--common-shadow);margin-bottom:10px}.service-icon{font-size:1.5rem;margin-right:15px}.service-details{flex-grow:1}.service-name{font-weight:500;margin-bottom:5px}.service-status{color:var(--text-color);font-size:.9rem}.restaurant-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.restaurants-content{background-color:hsla(0,0%,100%,.164);border:1px solid #ffffff2e;border-radius:16px;box-shadow:0 8px 32px 0 #1f26875e;box-sizing:border-box;margin-bottom:20px;max-width:1600px;padding:8px}.dark-mode .restaurants-content{background-color:#7054d329;background-color:var(--card-background);border:1px solid #ffffff1a;box-shadow:0 8px 32px 0 #00000080}.restaurants-list{grid-gap:20px;border-radius:16px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));justify-content:center;padding:15px}.dark-mode .location-group{background:#02034547;border:1px solid #ffffff1a}.location-group{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;box-shadow:0 4px 10px #0000001a;margin-bottom:30px;padding:10px}.status-pill.closed{background-color:#ef4444}.dark-mode .closed{color:#fff}.status-pill{align-items:center;border-radius:12px;display:inline-flex;font-size:.85rem;font-weight:700;padding:4px 8px;width:-webkit-fit-content;width:fit-content}.closed{background-color:#9ca3af;background-color:var(--wait-time-closed);color:#fff}.restaurant-hours{align-items:center;display:flex;gap:10px;margin-bottom:5px}.status-pill.open{background-color:var(--wait-time-very-short);color:#fff}.status-pill.closed{background-color:var(--wait-time-long);color:#fff}.status-pill.closing-soon{background-color:var(--wait-time-medium);color:#fff}.hours-range{background-color:#7066fd33;border-radius:12px;color:var(--text-color);font-size:.85rem;padding:4px 8px}.restaurant-cuisine{font-style:italic;margin-bottom:5px}.restaurant-park{color:#333;color:var(--text-color);font-size:.9rem}.services-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));justify-content:center}.service-item{align-content:space-between;align-items:baseline;background:linear-gradient(45deg,#2d2ace26,#8824b933);border-left:4px solid #4a90e2;border-radius:4px;display:flex;flex-direction:column;flex-wrap:wrap;margin-bottom:8px;padding:12px}.service-name{color:var(--text-color);font-size:1.1rem;font-weight:700;margin-bottom:10px}.service-accessibility{align-items:center;color:#666;display:flex;font-size:.9em;gap:8px;margin-top:4px}.service-location{background-color:#4c0bff69;border-radius:4px;color:#fff;font-size:.8em;margin-left:8px;padding:2px 6px}.dark-mode .service-location{background-color:#701b6ac2;color:#fff}.search-filter-container{align-items:center;display:flex;flex-direction:row-reverse;gap:8px;margin-left:10px}.search-toggle-button{align-items:center;background-color:var(--button-background-color);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--button-text-color);cursor:pointer;display:flex;justify-content:center;padding:8px}.search-toggle-button:hover{background-color:var(--button-hover-background-color)}.search-toggle-button.active{background-color:var(--button-active-background-color);color:var(--button-active-text-color)}.search-input{background-color:var(--input-background-color);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);box-sizing:border-box;color:var(--input-text-color);font-size:.9rem;margin-left:0;opacity:0;overflow:hidden;padding:8px 0;transition:width .3s ease-in-out,opacity .3s ease-in-out,padding .3s ease-in-out,margin-left .3s ease-in-out,visibility 0s linear .3s;visibility:hidden;width:0}.search-input.visible{margin-left:8px;opacity:1;padding:8px 12px;transition-delay:0s;visibility:visible;width:200px}.search-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent);outline:none}.search-toggle-button{border-radius:6px;margin-right:5px;padding:6px;transition:background-color .2s ease-in-out,color .2s ease-in-out,box-shadow .2s ease-in-out}.search-toggle-button:hover{background-color:var(--button-hover-background);box-shadow:0 1px 3px #0000001a;color:var(--button-hover-text-color)}.search-toggle-button.active{background-color:var(--button-background);color:var(--button-text-color)}@media (max-width:768px){.search-filter-container{justify-content:center;margin-left:0;margin-top:10px;width:100%}.search-input{width:calc(100% - 50px)}}@media (max-width:480px){.search-input{width:calc(100% - 45px)}}.restaurant-waittime{border-radius:12px;color:#fff;font-size:.9rem;font-weight:500;margin-right:8px;padding:4px 8px}.wait-time-very-short{background-color:var(--wait-time-very-short)}.wait-time-short{background-color:var(--wait-time-short)}.wait-time-medium{background-color:var(--wait-time-medium)}.wait-time-long{background-color:var(--wait-time-long)}.location-title{border-bottom:2px solid #8ec5fc80;color:var(--text-color);font-size:1.4rem;margin-bottom:15px;padding-bottom:10px}.loading-overlay{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:hsla(0,0%,100%,.621);bottom:0;contain:layout style paint;display:flex;height:100vh;justify-content:center;left:0;opacity:0;pointer-events:all;position:fixed;right:0;top:0;transition:opacity .25s ease-out,visibility .25s ease-out;visibility:hidden;width:100vw;will-change:opacity,visibility;z-index:99999}.loading-overlay.visible{opacity:1;visibility:visible}.loading-overlay.hidden{opacity:0;pointer-events:none;visibility:hidden}.mickey-loading{animation:pulse 1s infinite alternate;-webkit-backface-visibility:hidden;backface-visibility:hidden;contain:layout style paint;height:100px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:100px;will-change:transform;z-index:100000}.ear{background-color:#000;border-radius:50%;box-shadow:0 4px 8px #0003;height:40px;position:absolute;top:0;width:40px}.ear-left{animation:wiggle 1s infinite alternate;left:0}.ear-right{animation:wiggle 1s infinite alternate-reverse;right:0}.head{background-color:#000;border-radius:50%;bottom:.5rem;box-shadow:0 4px 8px #0003;height:63px;left:15px;position:absolute;width:68px}@keyframes wiggle{0%{transform:rotate(-6deg) translateZ(0)}to{transform:rotate(6deg) translateZ(0)}}.dark-mode .loading-overlay{background-color:rgba(0,0,0,.621)}.dark-mode .mickey-loading .ear,.dark-mode .mickey-loading .head{background-color:hsla(0,0%,100%,.621);box-shadow:0 4px 8px #fff3}.shows-content{contain:layout style paint;min-height:100vh;opacity:0;position:relative;transition:opacity .3s ease-out;will-change:opacity}.shows-content.loaded{opacity:1}.park-content,.restaurants-content{contain:layout style paint;min-height:100vh;opacity:0;position:relative;transition:opacity .3s ease-out;will-change:opacity}.park-content.loaded,.restaurants-content.loaded{opacity:1}.asterix-loading{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.asterix-loading img{animation:bounce 1s infinite;filter:brightness(0);height:100px;width:100px}.dark-mode .asterix-loading img{filter:invert(1) brightness(100%)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.phantasialand-loading{align-items:center;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.phantasialand-loading .train-container{animation:trainMove .7s linear infinite;display:flex;position:absolute}.phantasialand-loading .wagon{filter:brightness(0);height:auto;margin-right:10px;width:120px}.dark-mode .phantasialand-loading .wagon{filter:invert(1) brightness(100%)}@keyframes trainMove{0%{transform:translateX(100vw)}to{transform:translateX(-100px)}}@keyframes rollerCoaster{0%{transform:translateY(0) translateX(0) rotate(0deg)}25%{transform:translateY(-15px) translateX(10px) rotate(5deg)}50%{transform:translateY(0) translateX(0) rotate(0deg)}75%{transform:translateY(15px) translateX(-10px) rotate(-5deg)}to{transform:translateY(0) translateX(0) rotate(0deg)}}.nigloland-loading{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.niglo-mascot{animation:parrotSwing 2s infinite alternate,parrotBob 3s infinite;filter:brightness(0);height:auto;position:relative;transform-origin:bottom center;width:120px}.niglo-mascot:after{background-color:#000;border-radius:50%;bottom:-10px;content:"";height:5px;left:50%;opacity:.3;position:absolute;transform:translateX(-50%);width:40px}@keyframes parrotSwing{0%{transform:rotate(-15deg)}to{transform:rotate(15deg)}}@keyframes parrotBob{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.dark-mode .niglo-mascot{filter:invert(1) brightness(100%)}.universal-loading{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.universal-logo{animation:spin-bounce 2s infinite;filter:brightness(0);height:auto;position:relative;transform-origin:center;width:300px}.universal-logo:after{background-color:#000;border-radius:50%;bottom:-15px;content:"";height:5px;left:50%;opacity:.3;position:absolute;transform:translateX(-50%);width:60px}.dark-mode .universal-logo{filter:invert(1) brightness(100%)}@keyframes spin-bounce{0%{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-15px) rotate(5deg)}50%{transform:translateY(0) rotate(0deg)}75%{transform:translateY(-10px) rotate(-5deg)}to{transform:translateY(0) rotate(0deg)}}.toverland-loading{height:120px;width:120px}.legoland-loading,.toverland-loading{align-items:center;display:flex;justify-content:center;position:relative}.legoland-loading{height:400px;width:400px}.dark-mode .lego-animation{filter:invert(1)}.lego-animation{height:500px;width:500px}.magic-wand{animation:castSpell 3s infinite;background:linear-gradient(180deg,#8b4513,sienna);border-radius:7px;height:100px;position:relative;transform:rotate(45deg);transform-origin:50% 90%;width:15px;z-index:1}.wand-tip{animation:glow 1.5s infinite alternate;background-color:gold;border-radius:50%;box-shadow:0 0 10px gold,0 0 20px gold;height:20px;left:50%;position:absolute;top:-15px;transform:translateX(-50%);width:20px}.magic-stars{height:100%;position:absolute;width:100%;z-index:0}.magic-star{animation:starAppear 3s infinite;color:gold;font-size:20px;opacity:0;position:absolute}.magic-star:first-child{animation-delay:0s;left:20%;top:20%}.magic-star:nth-child(2){animation-delay:.3s;left:70%;top:30%}.magic-star:nth-child(3){animation-delay:.6s;left:40%;top:70%}.magic-star:nth-child(4){animation-delay:.9s;left:80%;top:50%}.magic-star:nth-child(5){animation-delay:1.2s;left:60%;top:80%}.magic-amulet{animation:float 2s infinite alternate;background-color:indigo;border:2px solid gold;border-radius:50%;bottom:15px;box-shadow:0 0 10px #ffd70080;height:40px;left:50%;overflow:hidden;position:absolute;transform:translateX(-50%);width:40px}.amulet-symbol{color:gold;font-size:20px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}@keyframes castSpell{0%,to{transform:rotate(45deg)}25%{transform:rotate(60deg)}50%{transform:rotate(30deg)}75%{transform:rotate(50deg)}}@keyframes glow{0%{box-shadow:0 0 10px gold,0 0 20px gold}to{box-shadow:0 0 15px gold,0 0 30px gold,0 0 40px gold}}@keyframes starAppear{0%{opacity:0;transform:scale(0) rotate(0deg)}20%{opacity:1;transform:scale(1.2) rotate(45deg)}40%{opacity:.8;transform:scale(.8) rotate(90deg)}60%{opacity:1;transform:scale(1) rotate(135deg)}80%{opacity:.8;transform:scale(1.2) rotate(180deg)}to{opacity:0;transform:scale(0) rotate(225deg)}}.dark-mode .magic-wand{background:linear-gradient(180deg,#6a3805,#8b4513)}.dark-mode .wand-tip{background-color:orange;box-shadow:0 0 10px orange,0 0 20px orange}.dark-mode .magic-star{color:orange}.dark-mode .magic-amulet{background-color:#2c0347;border-color:orange;box-shadow:0 0 10px #ffa50080}.dark-mode .amulet-symbol{color:orange}.seaworld-loading{align-items:center;display:flex;justify-content:center}.circle,.seaworld-loading{height:150px;position:relative;width:150px}.circle{background:#ccc;border:5px solid #fff;box-shadow:0 0 0 5px #4973ff;overflow:hidden}.circle,.wave{border-radius:50%}.wave{background:#4973ff;box-shadow:inset 0 0 50px #00000080;height:100%;position:relative;width:100%}.wave:after,.wave:before{content:"";height:200%;left:50%;position:absolute;top:0;transform:translate(-50%,-75%);width:200%}.wave:before{animation:animate 5s linear infinite;background:#fff;border-radius:45%}.wave:after{animation:animate 10s linear infinite;background:#ffffff80;border-radius:40%}.dark-mode .circle{background:#2c3e50;border-color:#34495e;box-shadow:0 0 0 5px #2980b9}.dark-mode .wave{background:#2980b9;box-shadow:inset 0 0 50px #000000b3}.dark-mode .wave:before{background:#fffc}.dark-mode .wave:after{background:#ffffff4d}@keyframes animate{0%{transform:translate(-50%,-75%) rotate(0deg)}to{transform:translate(-50%,-75%) rotate(1turn)}}.busch-loading{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.busch-logo{animation:busch-float 3s ease-in-out infinite;height:auto;position:relative;transform-origin:center;width:200px}.busch-logo:after{animation:bush-shadow-pulse 3s ease-in-out infinite;background-color:#000;border-radius:50%;bottom:-15px;content:"";height:5px;left:50%;opacity:.3;position:absolute;transform:translateX(-50%);width:60px}.dark-mode .busch-logo{filter:invert(1) brightness(100%)}@keyframes busch-float{0%{transform:translateY(0) rotate(0deg) scale(1)}25%{transform:translateY(-15px) rotate(2deg) scale(1.02)}50%{transform:translateY(-5px) rotate(-1deg) scale(1)}75%{transform:translateY(-12px) rotate(1deg) scale(1.01)}to{transform:translateY(0) rotate(0deg) scale(1)}}@keyframes bush-shadow-pulse{0%{opacity:.3;transform:translateX(-50%) scale(1)}50%{opacity:.15;transform:translateX(-50%) scale(.8)}to{opacity:.3;transform:translateX(-50%) scale(1)}}.plopsaland-loading{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.plopsaland-logo{animation:plopsa-float 3s ease-in-out infinite;height:auto;position:relative;transform-origin:center;width:300px}.plopsaland-logo:after{animation:shadow-pulse 3s ease-in-out infinite;background-color:#000;border-radius:50%;bottom:-15px;content:"";height:5px;left:50%;opacity:.3;position:absolute;transform:translateX(-50%);width:60px}.dark-mode .plopsaland-logo{filter:invert(1) brightness(100%)}@keyframes plopsa-float{0%{transform:translateY(0) rotate(0deg) scale(1)}25%{transform:translateY(-15px) rotate(2deg) scale(1.02)}50%{transform:translateY(-5px) rotate(-1deg) scale(1)}75%{transform:translateY(-12px) rotate(1deg) scale(1.01)}to{transform:translateY(0) rotate(0deg) scale(1)}}@keyframes shadow-pulse{0%{opacity:.3;transform:translateX(-50%) scale(1)}50%{opacity:.15;transform:translateX(-50%) scale(.8)}to{opacity:.3;transform:translateX(-50%) scale(1)}}.portaventura-loading{align-items:center;bottom:0;display:flex;justify-content:center;left:0;min-height:100vh;position:fixed;right:0;top:0;width:100%}.portaventura-loading .portaventura-logo{animation:pulse 1.5s ease-in-out infinite;height:auto;width:400px}.parc-asterix-loading{align-items:center;bottom:0;display:flex;justify-content:center;left:0;min-height:100vh;position:fixed;right:0;top:0;width:100%}.parc-asterix-loading .parc-asterix-logo{animation:pulse 1.5s ease-in-out infinite;height:auto;width:300px}@media (max-width:768px){.parc-asterix-loading .parc-asterix-logo{width:200px}}.walibi-loading{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.walibi-loading .walibi-logo{animation:walibi-float 3s ease-in-out infinite;height:auto;position:relative;transform-origin:center;width:400px}.walibi-loading .walibi-logo:after{animation:walibi-shadow-pulse 3s ease-in-out infinite;background-color:#000;border-radius:50%;bottom:-15px;content:"";height:5px;left:50%;opacity:.3;position:absolute;transform:translateX(-50%);width:60px}.dark-mode .walibi-loading .walibi-logo{filter:invert(0) brightness(100%)}@keyframes walibi-float{0%{transform:translateY(0) rotate(0deg) scale(1)}25%{transform:translateY(-15px) rotate(2deg) scale(1.02)}50%{transform:translateY(-5px) rotate(-1deg) scale(1)}75%{transform:translateY(-12px) rotate(1deg) scale(1.01)}to{transform:translateY(0) rotate(0deg) scale(1)}}@keyframes walibi-shadow-pulse{0%{opacity:.3;transform:translateX(-50%) scale(1)}50%{opacity:.15;transform:translateX(-50%) scale(.8)}to{opacity:.3;transform:translateX(-50%) scale(1)}}.knotts-loading{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.knotts-loading .knotts-logo{animation:knotts-float 3s ease-in-out infinite;height:auto;position:relative;transform-origin:center;width:500px}.knotts-loading .knotts-logo:after{animation:knotts-shadow-pulse 3s ease-in-out infinite;background-color:#000;border-radius:50%;bottom:-15px;content:"";height:5px;left:50%;opacity:.3;position:absolute;transform:translateX(-50%);width:60px}.dark-mode .knotts-loading .knotts-logo{filter:invert(1) brightness(100%)}@keyframes knotts-float{0%{transform:translateY(0) rotate(0deg) scale(1)}25%{transform:translateY(-15px) rotate(2deg) scale(1.02)}50%{transform:translateY(-5px) rotate(-1deg) scale(1)}75%{transform:translateY(-12px) rotate(1deg) scale(1.01)}to{transform:translateY(0) rotate(0deg) scale(1)}}.ep-rulantica-loading{align-items:center;background:#0000;display:flex;flex-direction:column;justify-content:center;left:50%;max-width:100%;min-height:100vh;position:absolute;transform:translateX(-50%);width:100%;z-index:1000}.ep-rulantica-logo{filter:drop-shadow(0 0 12px rgba(0,0,0,.22));height:520px;max-height:90vh;max-width:100vw;object-fit:contain;transition:filter .3s,transform .3s;width:520px}.dark-mode .bellewaerde-logo,.dark-mode .ep-rulantica-logo,.dark-mode .gardaland-logo{filter:invert(1) brightness(100%)}@keyframes knotts-shadow-pulse{0%{opacity:.3;transform:translateX(-50%) scale(1)}50%{opacity:.15;transform:translateX(-50%) scale(.8)}to{opacity:.3;transform:translateX(-50%) scale(1)}}.ferrari-land-loading{align-items:center;bottom:0;display:flex;justify-content:center;left:0;min-height:100vh;position:fixed;right:0;top:0;width:100%}.ferrari-land-loading .ferrari-land-logo{animation:pulse 1.5s ease-in-out infinite;height:auto;width:400px}.dark-mode .ferrari-land-loading .ferrari-land-logo{filter:invert(1) brightness(100%)}.back-to-top{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#6366f1;background:var(--primary-color,#6366f1);border:none;border-radius:50%;bottom:2rem;box-shadow:0 4px 20px #00000026;color:#fff;cursor:pointer;display:flex;height:3.5rem;justify-content:center;opacity:0;position:fixed;right:2rem;transform:translateY(20px) scale(.8);transition:all .3s cubic-bezier(.4,0,.2,1);visibility:hidden;width:3.5rem;z-index:1000}.back-to-top.visible{opacity:1;transform:translateY(0) scale(1);visibility:visible}.back-to-top:hover{background:#5855eb;background:var(--primary-hover-color,#5855eb);box-shadow:0 6px 25px #0003;transform:translateY(-2px) scale(1.05)}.back-to-top:active{transform:translateY(0) scale(.95)}[data-theme=dark] .back-to-top{background:#6366f1;background:var(--primary-color,#6366f1);box-shadow:0 4px 20px #0000004d}[data-theme=dark] .back-to-top:hover{background:#5855eb;background:var(--primary-hover-color,#5855eb);box-shadow:0 6px 25px #0006}@media (max-width:768px){.back-to-top{bottom:1.5rem;height:3rem;right:1.5rem;width:3rem}.back-to-top svg{height:20px;width:20px}}@media (max-width:480px){.back-to-top{bottom:1rem;height:2.75rem;right:1rem;width:2.75rem}.back-to-top svg{height:18px;width:18px}}@keyframes backToTopAppear{0%{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}.back-to-top.visible{animation:backToTopAppear .3s cubic-bezier(.4,0,.2,1) forwards}.back-to-top{margin-bottom:env(safe-area-inset-bottom,0);margin-right:env(safe-area-inset-right,0)}.back-to-top:focus{outline:2px solid #6366f1;outline:2px solid var(--focus-color,#6366f1);outline-offset:2px}.back-to-top:focus:not(:focus-visible){outline:none}.mini-calendar{border:none;border-radius:0;box-shadow:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:320px;padding:0;width:100%}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px;padding:0}.calendar-nav-btn{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-color);cursor:pointer;display:flex;font-size:1.2rem;height:36px;justify-content:center;min-width:36px;padding:8px;transition:all .2s ease}.calendar-nav-btn:hover:not(:disabled){background:#007bff1a;background:var(--primary-color-light,#007bff1a);color:var(--primary-color)}.calendar-nav-btn:disabled{cursor:not-allowed;opacity:.3}.calendar-title{flex:1 1;text-align:center}.calendar-current-month{background:none;border:none;border-radius:6px;color:var(--text-color);cursor:pointer;font-size:1.1rem;font-weight:600;padding:8px 12px;transition:all .2s ease}.calendar-current-month:hover{background:var(--background-color);color:var(--primary-color)}.calendar-weekdays{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.weekday{color:var(--text-color-secondary);font-size:.7rem;font-weight:600;letter-spacing:.3px;padding:6px 2px;text-align:center;text-transform:uppercase}.calendar-grid{grid-gap:2px;gap:2px;margin-bottom:2px}.calendar-day{aspect-ratio:1;background:none;border:none;border-radius:6px;color:var(--text-color);cursor:pointer;font-size:.85rem;min-height:36px;padding:6px;transition:all .2s ease}.calendar-day:hover{background:var(--background-color)}.calendar-day:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.calendar-day.other-month{color:var(--text-color-secondary);opacity:.3}.calendar-day.today{background:#007bff1a;background:var(--primary-color-light,#007bff1a);color:var(--primary-color);font-weight:600}.calendar-day.selected{background:var(--primary-color);box-shadow:0 2px 8px #007bff4d;box-shadow:0 2px 8px rgba(var(--primary-color-rgb,0,123,255),.3);color:#fff;font-weight:600}.calendar-day.available{color:var(--text-color)}.calendar-day.available:hover{background:#007bff1a;background:var(--primary-color-light,#007bff1a);transform:translateY(-1px)}.calendar-day.unavailable{background:linear-gradient(45deg,#0000 45%,var(--border-color) 45%,var(--border-color) 55%,#0000 55%);background-size:4px 4px;color:var(--text-color-secondary);cursor:not-allowed;opacity:.4}.calendar-day.unavailable:hover{background:linear-gradient(45deg,#0000 45%,var(--border-color) 45%,var(--border-color) 55%,#0000 55%);transform:none}.calendar-day.future-date{cursor:not-allowed;opacity:.6}.calendar-day.future-date:hover{background:none;transform:none}.selected-indicator{bottom:2px;color:inherit;font-size:.7rem;opacity:.8;position:absolute;right:2px}.calendar-legend{border-top:1px solid var(--border-color);gap:12px;justify-content:center;padding-top:10px}.legend-item{color:var(--text-color-secondary);font-size:.7rem;gap:4px}.legend-color{border:1px solid var(--border-color);border-radius:2px;height:10px;width:10px}.legend-color.available{background:#28a745;background:var(--success-color,#28a745)}.legend-color.unavailable{background:linear-gradient(45deg,#0000 45%,var(--border-color) 45%,var(--border-color) 55%,#0000 55%);background-size:8px 8px}.legend-color.today{background:#007bff33;background:var(--primary-color-light,#007bff33);border-color:var(--primary-color)}@media (max-width:768px){.mini-calendar{max-width:100%;padding:12px}.calendar-header{margin-bottom:12px}.calendar-nav-btn{font-size:1rem;height:32px;min-width:32px}.calendar-current-month{font-size:1rem;padding:6px 10px}.calendar-day{font-size:.8rem;min-height:36px;padding:6px}.calendar-legend{font-size:.75rem;gap:12px}.legend-color{height:10px;width:10px}}@media (max-width:480px){.mini-calendar{padding:10px}.calendar-weekdays{margin-bottom:6px}.weekday{font-size:.75rem;padding:6px 2px}.calendar-day{font-size:.75rem;min-height:32px;padding:4px}.calendar-legend{align-items:center;flex-direction:column;gap:8px}}@keyframes calendarFadeIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.mini-calendar{animation:calendarFadeIn .3s ease-out}@media (prefers-color-scheme:dark){.calendar-nav-btn:hover:not(:disabled){background:#007bff33;background:var(--primary-color-dark,#007bff33)}.calendar-current-month:hover{background:#2a2a2a;background:var(--background-color-dark,#2a2a2a)}.weekday{color:#999;color:var(--text-color-secondary-dark,#999)}.calendar-day{color:#e0e0e0;color:var(--text-color-dark,#e0e0e0)}.calendar-day:hover{background:#2a2a2a;background:var(--background-color-dark,#2a2a2a)}.calendar-day.today{background:#007bff33;background:var(--primary-color-dark,#007bff33)}.calendar-legend{border-color:#333;border-color:var(--border-color-dark,#333)}}.calendar-day.available:active{transform:translateY(0) scale(.98)}.calendar-day.selected:active{transform:translateY(0) scale(.95)}.calendar-day.loading{overflow:hidden;position:relative}.calendar-day.loading:after{animation:loading-shimmer 1.5s infinite;background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes loading-shimmer{0%{left:-100%}to{left:100%}}@media (prefers-reduced-motion:reduce){.mini-calendar{animation:none}.calendar-current-month,.calendar-day,.calendar-nav-btn{transition:none}}.mini-calendar:focus-within .calendar-day:focus{z-index:1}@media (hover:none) and (pointer:coarse){.calendar-day{min-height:44px;padding:10px}.calendar-nav-btn{height:44px;min-width:44px}}.weather-widget{align-items:center;border-radius:30px;box-shadow:var(--shadow-sm);cursor:pointer;display:inline-flex;max-width:90px;min-width:70px;padding:5px 8px;position:relative;transition:all .3s ease;width:100%;z-index:100}.weather-widget-header{display:none}[data-park-id=DLP] .weather-widget,[data-park-id=WDS] .weather-widget{max-width:120px;min-width:100px}.weather-widget-mobile{background:var(--background-color);border-radius:12px;display:none;margin-bottom:2px;padding:3px 0}.weather-widget-mobile-scroll-container{position:relative}.weather-widget-mobile-scroll{-webkit-overflow-scrolling:touch;display:flex;gap:12px;margin:0 -12px;overflow-x:auto;padding:0 12px;scrollbar-width:none}.weather-widget-mobile-scroll::-webkit-scrollbar{display:none}.weather-widget-mobile-scroll.scrolled+.scroll-indicator{display:none}.scroll-indicator{display:flex;gap:4px;justify-content:center;margin-top:8px;opacity:.6}.scroll-dot{animation:fadeInOut 1.5s infinite;background-color:var(--primary-color);border-radius:50%;height:4px;width:4px}.scroll-dot:nth-child(2){animation-delay:.2s}.scroll-dot:nth-child(3){animation-delay:.4s}@keyframes fadeInOut{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@media (min-width:768px){.scroll-indicator{display:none}}.weather-widget-mobile-day{align-items:center;background-color:var(--background-color-light);border-radius:8px;display:flex;flex-direction:column;gap:2px;min-width:60px;padding:6px 4px;transition:transform .2s ease}.weather-widget-mobile-day:hover{transform:translateY(-2px)}.weather-widget-mobile-date{color:var(--text-color);font-size:.85em;text-transform:capitalize}.weather-widget-mobile-icon{color:var(--primary-color);font-size:1.4em;margin:2px 0}.weather-widget-mobile-temp{font-size:.82em;font-weight:500}.weather-widget-mobile-drone{margin:2px 0}.weather-widget-mobile-wind{flex-direction:column;gap:2px}.weather-widget-mobile-wind-speed{color:var(--text-color-light);font-size:.85em}.weather-widget-mobile-wind-dir{color:var(--text-color);font-size:.9em}.weather-widget-mobile-header{align-items:center;justify-content:center;margin-bottom:12px}.weather-widget-mobile-title{align-items:center;color:var(--text-color);display:flex;font-size:.9em;gap:8px}@media screen and (max-width:320px){.weather-widget-mobile-day{gap:4px;min-width:60px;padding:6px 2px}.weather-widget-mobile-date{font-size:.8em}.weather-widget-mobile-icon{font-size:1.2em}.weather-widget-mobile-temp{font-size:1em}.weather-widget-mobile-wind-speed{font-size:.8em}}[data-park-id=DLP] .weather-widget-mobile-day,[data-park-id=WDS] .weather-widget-mobile-day{min-width:65px}.weather-widget-mobile-drone{color:var(--text-secondary);display:none;font-size:.7rem;margin-top:2px}[data-park-id=DLP] .weather-widget-mobile-drone,[data-park-id=WDS] .weather-widget-mobile-drone{display:block!important}.weather-widget-mobile-container{display:none;margin:3px 0;width:100%}@media (max-width:630px){.park-header-weather,.weather-widget{display:none}.weather-widget-mobile,.weather-widget-mobile-container{display:block}}.weather-widget.loading{animation:pulse 1.5s infinite;cursor:default}.weather-widget:hover{background:var(--button-hover-background);border-radius:25px}.weather-widget-compact{grid-gap:0;align-items:center;border-radius:8px;cursor:pointer;display:grid;gap:0;grid-template-columns:auto auto auto;padding:3px;transition:all .3s ease}.info-button,.info-column{align-items:center;display:flex;justify-content:center}.info-button{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:none;background-color:#ffffff1a;border:none;border-radius:50%;box-shadow:0 2px 4px #0003;color:var(--text-color);cursor:pointer;height:28px;opacity:.7;padding:4px;transition:all .2s ease;width:28px}.info-button:hover{background-color:#fff3;opacity:1;transform:scale(1.05)}.weather-widget-column,.weather-widget-temp{align-items:center;display:flex;flex-direction:column;gap:2px}.weather-widget-temp svg{height:16px;width:16px}.weather-widget-temp-value{font-size:.75rem;font-weight:600;line-height:1}.weather-widget-drone{display:none;flex-direction:column;font-size:.75rem;gap:8px}[data-park-id=DLP] .weather-widget-drone,[data-park-id=WDS] .weather-widget-drone{display:flex}.weather-widget-drone-text{color:var(--text-secondary);display:none;font-size:.65rem;line-height:1}.weather-widget-drone-status{display:none;font-size:.75rem;line-height:1}[data-park-id=DLP] .weather-widget-drone-status,[data-park-id=DLP] .weather-widget-drone-text,[data-park-id=WDS] .weather-widget-drone-status,[data-park-id=WDS] .weather-widget-drone-text{display:block}.weather-widget-overlay{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:30px;bottom:0;left:0;position:fixed;right:0;top:0;z-index:99}.weather-widget-expanded{backdrop-filter:var(--blur-effect);-webkit-backdrop-filter:var(--blur-effect);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-lg);max-width:320px;padding:8px;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.weather-widget-daily{-ms-overflow-style:none;display:flex;overflow-x:scroll;scrollbar-width:none}.weather-widget-daily::-webkit-scrollbar{display:none}.weather-widget-day{border-radius:6px;display:flex;flex-direction:column;flex-shrink:0;gap:4px;min-width:45px;padding:8px 6px;text-align:center}.weather-widget-day:last-child{border-bottom:none}.weather-widget-day-date{font-size:.8rem;text-transform:capitalize}.weather-widget-day-temp{font-size:.8rem}.weather-widget-day-wind-dir{align-items:center;display:flex;justify-content:center}.weather-widget-day-wind-gust,.weather-widget-day-wind-speed{font-size:.9rem}.weather-widget-day-drone{color:var(--text-secondary);display:none;font-size:.95rem;margin-bottom:4px}[data-park-id=DLP] .weather-widget-day-drone,[data-park-id=WDS] .weather-widget-day-drone{display:block}.dark-mode .weather-widget-expanded{background-color:#050819cc;border-color:#508cff59;box-shadow:0 0 25px #3278ff40,0 0 35px #1e64dc2e,0 0 20px #b43cc81f}.dark-mode .weather-widget-mobile-container{background:linear-gradient(135deg,#05081966,#0a051e59)}.dark-mode .weather-widget-mobile-container.expanded{background:linear-gradient(135deg,#080c2399,#0f193c80);border-color:#508cff59;box-shadow:0 0 30px #3278ff59,0 0 40px #1e64dc40,0 0 35px #b43cc833,inset 0 0 30px #3c78c826}.dark-mode .weather-widget-day,.dark-mode .weather-widget-mobile-day{background:linear-gradient(135deg,#080c2380,#0f082373);border:1px solid #508cff40;box-shadow:0 0 15px #3278ff26,0 0 20px #1e64dc1a}:root:not(.dark-mode) .weather-widget-expanded{border:1px solid var(--border-color-primary);box-shadow:0 0 35px #3278ff33,0 0 45px #1e64dc26,0 0 30px #b43cc81a}:root:not(.dark-mode) .weather-widget-expanded,:root:not(.dark-mode) .weather-widget-mobile-container{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff}:root:not(.dark-mode) .weather-widget-mobile-container.expanded{backdrop-filter:none;-webkit-backdrop-filter:none;border-color:var(--border-color-primary);box-shadow:0 0 30px #3278ff59,0 0 40px #1e64dc40,0 0 35px #b43cc833}:root:not(.dark-mode) .weather-widget-day{border:1px solid var(--border-color-primary);box-shadow:0 0 15px #3278ff26,0 0 20px #1e64dc1a}:root:not(.dark-mode) .weather-widget-day,:root:not(.dark-mode) .weather-widget-mobile-day{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff}@media (max-width:605px){.weather-widget-expanded{min-width:280px;right:-10px}.weather-widget-day{grid-template-columns:70px 30px 80px 30px 30px 50px}.opening-hours{font-size:.85rem}}@media (max-width:768px){.weather-widget-compact{gap:8px;grid-template-columns:1fr 1fr auto;padding:8px}.info-button{height:24px;width:24px}.weather-info-content{margin:16px;padding:16px;width:95%}.weather-info-section h3{font-size:1.3rem}.weather-info-section h4{font-size:1rem}.weather-info-modal{padding:12px}}@media (max-width:480px){.weather-widget-compact{gap:4px;grid-template-columns:1fr 1fr auto;padding:6px}}.weather-widget-mobile-wind{color:var(--text-secondary);font-size:.7rem;gap:4px;margin-top:2px;text-align:center}.weather-widget-mobile-wind,.weather-widget-mobile-wind-dir{align-items:center;display:flex;justify-content:center}.weather-widget-mobile-wind-speed{font-size:.7rem}.drone-status{align-items:center;display:flex;font-size:1.2rem;justify-content:center}.weather-widget-mobile-drone .drone-status{font-size:1rem}.weather-widget-day-drone .drone-status{font-size:.9rem}.weather-info-section{margin-bottom:20px}.weather-info-section:last-child{margin-bottom:0}.weather-info-section h4{color:var(--primary-color);font-size:1.1em;margin:0 0 12px}.weather-info-section ul{list-style-type:none;margin:0;padding-left:20px}.weather-info-section li{line-height:1.4;margin-bottom:10px;position:relative}.weather-info-section li:last-child{margin-bottom:0}.nested-list{list-style-type:circle;margin:8px 0 8px 16px}.wind-info-note{background-color:rgba(var(--primary-color-rgb),.1);border-radius:8px;font-size:.9em;margin-top:8px;padding:8px 12px}.wind-info-note p{line-height:1.4;margin:0}.modal-close-btn{background-color:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:1em;margin-top:16px;padding:12px;transition:background-color .2s ease;width:100%}.modal-close-btn:hover{background-color:var(--primary-color-dark)}@media (max-width:480px){.weather-info-section{margin-bottom:16px}.weather-info-section h4{font-size:1em}.wind-info-note{font-size:.85em}.modal-close-btn{font-size:.95em;padding:10px}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header h3{color:var(--text-color);font-size:1.2em;margin:0}.modal-close{align-items:center;border-radius:50%;color:var(--text-color-light);display:flex;font-size:1.5em;height:32px;justify-content:center;padding:0;transition:background-color .2s ease;width:32px}.modal-close:hover{background-color:var(--background-color-hover)}@media (max-width:480px){.modal-header h3{font-size:1.2em}.weather-info-section{margin-bottom:12px}.weather-info-section h4{font-size:1em;margin-bottom:6px}.weather-info-section ul{padding-left:16px}.weather-info-section li{margin-bottom:6px;padding-left:24px}.nested-list{margin-bottom:6px;margin-left:16px;margin-top:4px}.wind-info-note{font-size:.9em;margin-top:8px;padding:8px}.modal-close-btn{font-size:1em;margin-top:auto;padding:12px;width:100%}.modal-close{font-size:28px;padding:8px}}@media screen and (max-width:320px){.modal-content{padding:12px}.modal-header h3{font-size:1.1em}.weather-info-section h4{font-size:.95em}.weather-info-section li,.wind-info-note{font-size:.9em}}.weather-widget-mobile-header{display:flex;justify-content:flex-end;margin-bottom:3px;padding:0 12px}.weather-widget-mobile .info-button{align-items:center;background:none;border:none;color:var(--primary-color);cursor:pointer;display:flex;font-size:1.3em;justify-content:center;padding:8px;position:relative;transition:transform .2s ease}.weather-widget-mobile .info-button:after{background-color:var(--primary-color);border-radius:50%;content:"";height:32px;left:50%;opacity:.1;position:absolute;top:50%;transform:translate(-50%,-50%);width:32px;z-index:-1}.weather-widget-mobile .info-button:focus:after,.weather-widget-mobile .info-button:hover:after{animation:pulse 1.5s infinite}@keyframes pulse{0%{opacity:.1;transform:translate(-50%,-50%) scale(1)}50%{opacity:.05;transform:translate(-50%,-50%) scale(1.2)}to{opacity:.1;transform:translate(-50%,-50%) scale(1)}}.weather-widget-mobile .info-button:focus,.weather-widget-mobile .info-button:hover{transform:scale(1.1)}.weather-widget-mobile .info-button:active{transform:scale(.95)}@media screen and (max-width:320px){.weather-widget-mobile-title{font-size:1em}.weather-widget-mobile .info-button{font-size:1.2em;padding:6px}}.weather-info-content,.weather-info-modal,.weather-info-overlay{display:none}@media (max-width:768px){.weather-info-content{margin:0;max-height:calc(100vh - var(--modal-top) - 20px);padding:20px;width:calc(100vw - 40px)}.weather-info-modal{left:20px!important}}@media screen and (max-width:480px){.weather-info-section{margin-bottom:12px}.weather-info-section h4{font-size:1em;margin-bottom:6px}.weather-info-section ul{padding-left:16px}.weather-info-section li{margin-bottom:6px;padding-left:24px}.nested-list{margin-bottom:6px;margin-left:16px;margin-top:4px}.wind-info-note{font-size:.9em;margin-top:8px;padding:8px}.modal-close-btn{font-size:1em;margin-top:auto;padding:12px;width:100%}.modal-close{font-size:28px;padding:8px}}@media screen and (max-width:320px){.weather-info-section h4{font-size:.95em}.weather-info-section li,.wind-info-note{font-size:.9em}}.modal-section{margin-bottom:20px}.status-indicators{display:flex;flex-direction:column;gap:10px;margin-top:10px}.status-indicator{align-items:center;display:flex;gap:10px}.status-icon{font-size:1.2em}.weather-widget-drone{gap:5px}.modal-loader,.weather-widget-drone{align-items:center;display:flex;justify-content:center}.modal-loader{height:100px;width:100%}.modal-loader-spinner{animation:spin 1s linear infinite;border:4px solid rgba(var(--primary-color-rgb),.2);border-radius:50%;border-top-color:var(--primary-color);height:40px;width:40px}.weather-widget-mobile-container{border-radius:12px;overflow:hidden;transition:all .3s ease-in-out}.weather-widget-mobile-header{cursor:pointer;position:relative}.weather-widget-mobile-controls{align-items:center;display:flex;gap:15px}.expand-arrow{align-items:center;color:var(--text-color-secondary);display:flex;transition:transform .3s ease}.weather-widget-mobile-content{max-height:0;opacity:0;overflow:hidden;transition:max-height .4s ease-out,opacity .2s ease-out,visibility 0s linear .4s;visibility:hidden}.weather-widget-mobile-container.expanded .weather-widget-mobile-content{max-height:400px;opacity:1;padding-bottom:15px;transition:max-height .4s ease-in,opacity .3s ease-in;visibility:visible}.shareable-modal-overlay{align-items:center;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background-color:#0000009e;display:flex;justify-content:center;left:0;overflow-y:auto;padding:15px;position:fixed;right:0;top:0;z-index:1000}.dark-mode .shareable-modal-overlay{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:#02010fe6}.shareable-modal-content{align-items:center;backdrop-filter:var(--blur-effect);-webkit-backdrop-filter:var(--blur-effect);background:var(--background-gradient);background-color:#141428;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 5px 20px #0000004d;display:flex;flex-direction:column;gap:20px;margin:0 auto;max-height:80vh;max-width:500px;overflow-x:hidden;overflow-y:hidden;padding:20px;text-align:center;width:90%}.dark-mode .shareable-modal-content{background:linear-gradient(135deg,#080c23fa,#0f193cfa 50%,#140a32fa);box-shadow:var(--card-shadow);color:var(--text-color)}.shareable-instructions{color:var(--text-color);font-size:14px;line-height:1.5;margin-bottom:15px;max-width:400px;padding:0 10px;text-align:center}.modal-close{background:none;border:none;color:var(--text-color);cursor:pointer;font-size:1.5rem;margin:-10px;padding:10px;position:absolute;right:15px;top:15px}.shareable-container-wrapper{align-items:center;background-color:#121212;border:1px solid #fff3;border-radius:12px;box-shadow:0 4px 8px #0000004d;display:flex;height:600px;justify-content:center;margin:0 auto;overflow:hidden;position:relative;width:270px}.shareable-container{background:linear-gradient(145deg,#020010,#050a30 25%,#0a1550 50%,#1a0a3f 75%,#2d1040);color:#fff;display:flex;flex-direction:column;height:1920px;left:0;padding:60px;position:absolute;top:0;transform:scale(.25);transform-origin:top left;width:1080px}.dark-mode .shareable-container-wrapper{background:#0f0a2d66;border-color:var(--border-color);box-shadow:var(--card-shadow)}.dark-mode .shareable-container{background:linear-gradient(145deg,#020010,#050a30 25%,#0a1550 50%,#1a0a3f 75%,#2d1040)}.shareable-header{margin-bottom:30px;text-align:center}.shareable-header h1{font-size:80px;margin:0 0 20px;text-shadow:0 0 20px #c864ff80,0 0 35px #3278ff59}.shareable-date{font-size:40px;margin:0;opacity:.9;text-shadow:0 0 12px #3278ff66}.shareable-time-container{align-items:center;display:flex;flex-direction:column;margin-top:10px}.shareable-time{font-size:36px;margin:0;opacity:.7}.shareable-local-time{color:#a8d8ff;font-size:30px;margin:10px 0 0;opacity:.7}.shareable-local-time-footer{color:#a8d8ff;font-size:32px;margin:10px 0;opacity:.8}.shareable-attractions{display:flex;flex:1 1;flex-direction:column;gap:10px;max-height:1500px;overflow-y:auto;padding:20px 0}.shareable-attraction-item{align-items:center;border-radius:20px;display:flex;font-size:40px;justify-content:space-between;padding:25px 30px}.dark-mode .shareable-attraction-item,.shareable-attraction-item{background:linear-gradient(135deg,#080c2399,#0f193c80);border:1px solid var(--border-color);box-shadow:0 0 18px #3278ff1f,0 0 25px #1e64dc1a;transition:background .2s ease-out,border-color .2s ease-out,box-shadow .3s ease-out}.shareable-attraction-name{flex:1 1;font-weight:500;margin-right:20px}.shareable-wait-time{border-radius:50px;font-weight:700;min-width:160px;padding:10px 30px;text-align:center}.shareable-wait-time.open{background-color:#4caf50;color:#fff}.shareable-wait-time.short{background-color:#8bc34a;color:#fff}.shareable-wait-time.moderate{background-color:#ffc107;color:#000}.shareable-wait-time.long{background-color:#ff9800;color:#000}.shareable-wait-time.very-long{background-color:#f44336;color:#fff}.shareable-wait-time.closed{background-color:var(--wait-time-closed);color:#fff}.shareable-wait-time.refurbishment{background-color:var(--wait-time-refurbishment);color:#fff}.shareable-wait-time.down{background-color:var(--wait-time-down);color:#fff}.dark-mode .shareable-wait-time.open{background-color:var(--wait-time-very-short);color:#fff}.dark-mode .shareable-wait-time.short{background-color:var(--wait-time-short);color:#fff}.dark-mode .shareable-wait-time.moderate{background-color:var(--wait-time-medium);color:#fff}.dark-mode .shareable-wait-time.long{background-color:var(--wait-time-long);color:#fff}.dark-mode .shareable-wait-time.very-long{background-color:#8b0000;color:#fff}.shareable-footer{border-top:2px solid #fff3;font-size:36px;margin-top:auto;opacity:.7;padding-top:40px;text-align:left}.dark-mode .shareable-footer{border-top-color:var(--border-color);color:var(--text-color)}.shareable-watermark{color:#fff;font-size:40px;font-weight:700;margin-top:20px;text-align:center}.shareable-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:10px;width:100%}.back-button,.download-button,.generate-button,.share-button{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s ease}.dark-mode .back-button,.dark-mode .download-button,.dark-mode .generate-button,.dark-mode .share-button{background:var(--button-background);border:1px solid var(--border-color);box-shadow:0 0 12px #3278ff59;color:var(--button-text-color)}.dark-mode .back-button:hover,.dark-mode .download-button:hover,.dark-mode .generate-button:hover,.dark-mode .share-button:hover{background:var(--button-hover-background)}.generate-button{background-color:#4285f4;color:#fff;flex:1 1}.generate-button:hover{background-color:#3367d6}.generate-button:disabled{background-color:#a4c2f4;cursor:not-allowed}.share-button{background-color:#4caf50;color:#fff;flex:1 1}.share-button:hover{background-color:#3d8b40}.download-button{background-color:#ff9800;color:#fff;flex:1 1}.download-button:hover{background-color:#f57c00}.back-button{background-color:#9e9e9e;color:#fff;flex:1 1}.back-button:hover{background-color:#757575}.shareable-preview{align-items:center;border-radius:12px;display:flex;justify-content:center;margin:0 auto;max-height:500px;overflow:hidden;width:100%}.shareable-preview img{border:1px solid #fff3;box-shadow:0 4px 8px #0000004d;height:auto;max-width:270px;object-fit:contain}.dark-mode .shareable-preview img{border-color:var(--border-color);box-shadow:var(--card-shadow)}.share-wait-times-button{align-items:center;animation:fadeInButton .3s ease-out forwards;background-color:#4285f4;border:none;border-radius:50%;bottom:20px;box-shadow:0 2px 10px #0000004d;color:#fff;cursor:pointer;display:flex;height:50px;justify-content:center;position:fixed;right:20px;transition:all .2s ease;width:50px;z-index:9999}.share-wait-times-button:hover{background-color:#3367d6;box-shadow:0 4px 12px #0006;transform:scale(1.05)}.share-wait-times-button svg{height:20px;width:20px}@keyframes fadeInButton{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.share-btn-compact{align-items:center;background-color:#307ffd;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;justify-content:center;margin-left:6px;padding:3px 8px;transition:all .2s ease}.share-btn-compact:hover{background-color:#6eadff}.share-btn-compact svg{margin-right:3px}.last-update-share-row{align-items:center;display:flex;gap:6px;margin-bottom:8px}@media (max-width:768px){.share-wait-times-button{box-shadow:0 3px 12px #0006;height:45px;width:45px}.share-wait-times-button svg{height:18px;width:18px}.shareable-modal-content{border-radius:0;height:100%;max-height:100%;max-width:100%;padding:15px;width:100%}.shareable-container-wrapper{height:400px;width:270px}.shareable-instructions{font-size:12px;margin-bottom:10px}.modal-close{right:10px;top:10px}.shareable-actions{flex-direction:column}.shareable-preview img{max-height:400px}}.calendar-modal-modern{background:#fff;border-radius:24px;box-shadow:0 10px 40px #00000026,0 4px 10px #0000000d;display:flex;flex-direction:column;max-height:90vh;max-width:400px;overflow:hidden;padding:0;width:95%}.modern-calendar-header{border-bottom:1px solid #0000000a;display:flex;flex-direction:column;gap:16px;padding:20px 24px 16px}.header-top{align-items:center;display:flex;justify-content:space-between}.month-year-title{font-size:1.35rem;font-weight:700;letter-spacing:-.02em;text-transform:capitalize}.nav-buttons{align-items:center;display:flex;gap:8px}.nav-buttons button{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:50%;color:#4a5568;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.nav-buttons button:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000000d;color:var(--button-hover-background);transform:translateY(-1px)}.nav-buttons .close-btn{background:#0000000d;border:none;color:#718096;font-size:1.5rem;line-height:1;margin-left:12px}.nav-buttons .close-btn:hover{background:#fee2e2;color:#ef4444}.segmented-control{background:#e2e8f0;border-radius:12px;display:flex;padding:4px;position:relative}.segment{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;flex:1 1;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;padding:8px;transition:all .2s ease}.segment.active{background:#fff;box-shadow:0 2px 4px #0000000d;color:#1e293b}.segment:hover:not(.active){color:#475569}.modern-body{display:block;flex:1 1;overflow-y:auto;padding:24px}@media (max-width:768px){.calendar-modal-modern{max-height:calc(100vh - 120px);width:calc(100% - 24px)}.modern-body{padding:20px 20px 24px}}.calendar-grid-container{display:flex;flex-direction:column;gap:8px;width:100%}.calendar-header-row{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px;text-align:center}.calendar-day-header{color:#a0aec0;font-size:.8rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.calendar-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,1fr)}.calendar-day{align-items:center;aspect-ratio:1/1;border-radius:12px;color:#4a5568;cursor:default;display:flex;flex-direction:column;font-size:.95rem;font-weight:500;justify-content:center;overflow:hidden;position:relative;transition:transform .1s ease}.calendar-day.empty{background:#0000}.calendar-day.closed{background:#edf2f7;color:#a0aec0}.calendar-day.hours-a{background:#e3f2fd;border:1px solid #bbdefb;color:#1565c0;font-weight:700}.calendar-day.hours-b{background:#f3e5f5;border:1px solid #e1bee7;color:#7b1fa2;font-weight:700}.calendar-day.hours-c{background:#fce4ec;border:1px solid #f8bbd0;color:#c2185b;font-weight:700}.calendar-day.hours-d{background:#e0f7fa;border:1px solid #b2ebf2;color:#006064;font-weight:700}.calendar-day.hours-e{background:#e8eaf6;border:1px solid #c5cae9;color:#283593;font-weight:700}.calendar-day.hours-f{background:#e0f2f1;border:1px solid #b2dfdb;color:#00695c;font-weight:700}.calendar-day.crowd-vert_clair{background:#d1fae5;color:#065f46}.calendar-day.crowd-vert{background:#bbf7d0;color:#166534}.calendar-day.crowd-jaune{background:#fef08a;color:#854d0e}.calendar-day.crowd-orange{background:#fed7aa;color:#9a3412}.calendar-day.crowd-rouge{background:#fecaca;color:#991b1b}.calendar-day.crowd-noir{background:#1f2937;color:#f3f4f6}.calendar-day.crowd-unknown{background:#e2e8f0;color:#64748b}.calendar-day.crowd-past{background:#f1f5f9;color:#cbd5e1;opacity:.6}.calendar-day.today{box-shadow:inset 0 0 0 3px #3182ce;font-weight:800;transform:scale(1.05);z-index:2}.calendar-day:hover:not(.empty):not(.crowd-past){box-shadow:0 4px 6px #0000000d;transform:translateY(-2px);z-index:3}.crowd-icon{font-size:1.2em;margin-top:2px}.day-number{z-index:1}.modern-legend{display:block;margin-top:6px;padding-top:6px;width:100%}.modern-legend>.legend-item{display:inline-flex;margin-bottom:8px;margin-right:12px}.legend-item,.modern-legend>.legend-item{align-items:center;color:#64748b;font-size:.75rem;font-weight:500;gap:6px}.legend-item{display:flex}.legend-dot{border-radius:3px;height:10px;width:10px}.legend-dot.hours-a{background:#1565c0}.legend-dot.hours-b{background:#7b1fa2}.legend-dot.hours-c{background:#c2185b}.legend-dot.hours-d{background:#006064}.legend-dot.hours-e{background:#283593}.legend-dot.hours-f{background:#00695c}.legend-dot.closed{background:#a0aec0}.legend-dot.crowd-vert_clair{background:#d1fae5;border:1px solid #065f46}.legend-dot.crowd-vert{background:#bbf7d0;border:1px solid #166534}.legend-dot.crowd-jaune{background:#fef08a;border:1px solid #854d0e}.legend-dot.crowd-orange{background:#fed7aa;border:1px solid #9a3412}.legend-dot.crowd-rouge{background:#fecaca;border:1px solid #991b1b}.legend-dot.crowd-noir{background:#1f2937}.detailed-crowd-legend{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-top:8px;width:100%}.crowd-legend-item{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-direction:column;gap:2px;padding:6px 8px}.crowd-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.7rem;font-weight:700;gap:4px;margin-bottom:2px;padding:2px 6px;width:-webkit-fit-content;width:fit-content}.crowd-badge-icon{font-size:.9em;line-height:1}.crowd-description{color:#64748b;font-size:.65rem;line-height:1.2}.freshness-text{color:#94a3b8;font-size:.7rem;margin-top:8px;text-align:center}.freshness-text.stale{color:#d97706}body.dark-mode .freshness-text{color:#64748b}body.dark-mode .freshness-text.stale{color:#fbbf24}body.dark-mode .crowd-legend-item{background:#2d3748;border-color:#4a5568}body.dark-mode .crowd-description{color:#a0aec0}body.dark-mode .calendar-modal-modern{background:linear-gradient(135deg,#080c23fa,#0f193cfa 50%,#140a32fa);border:1px solid #508cff40;box-shadow:0 0 45px #3278ff40,0 0 30px #b43cc826}body.dark-mode .modern-calendar-header{background:#ffffff08;border-bottom-color:#508cff26}body.dark-mode .month-year-title{color:#fff;text-shadow:0 0 10px #3278ff80}body.dark-mode .calendar-day-header{color:#a8c5ff}body.dark-mode .nav-buttons button{background:#ffffff0d;border-color:#508cff33;color:#a8c5ff}body.dark-mode .nav-buttons button:hover{background:var(--button-hover-background);border-color:#508cff80;box-shadow:0 0 10px #3278ff4d;color:#fff}body.dark-mode .segmented-control{background:#0000004d;border:1px solid #508cff1a}body.dark-mode .segment{color:#a8c5ff}body.dark-mode .segment.active{background:linear-gradient(135deg,#3278ffb3,#6450c899 50%,#b43cc880);box-shadow:0 0 10px #3278ff26;color:#fff}body.dark-mode .segment:hover{background:var(--button-hover-background);color:#79a6ff}body.dark-mode .calendar-day{background:#ffffff08;color:#a8c5ff}body.dark-mode .calendar-day.closed{background:#ffffff05;color:#64748b}body.dark-mode .calendar-day.crowd-vert_clair{background:#064e3bcc;border:1px solid #34d39933;color:#a7f3d0}body.dark-mode .calendar-day.crowd-vert{background:#14532dcc;border:1px solid #4ade8033;color:#bbf7d0}body.dark-mode .calendar-day.crowd-jaune{background:#713f12cc;border:1px solid #facc1533;color:#fef08a}body.dark-mode .calendar-day.crowd-orange{background:#7c2d12cc;border:1px solid #fb923c33;color:#fed7aa}body.dark-mode .calendar-day.crowd-rouge{background:#7f1d1dcc;border:1px solid #f8717133;color:#fecaca}body.dark-mode .calendar-day.crowd-noir{background:#000;border:1px solid #333;color:#f3f4f6}body.dark-mode .calendar-day.today{box-shadow:inset 0 0 0 2px #60a5fa,0 0 10px #60a5fa4d}body.dark-mode .crowd-legend-item{background:#ffffff08;border-color:#508cff26}body.dark-mode .crowd-description{color:#a8c5ff}body.dark-mode .calendar-day.hours-a{background:#1565c066;border-color:#1565c099;color:#90caf9}body.dark-mode .calendar-day.hours-b{background:#7b1fa266;border-color:#7b1fa299;color:#e1bee7}body.dark-mode .calendar-day.hours-c{background:#c2185b66;border-color:#c2185b99;color:#f8bbd0}body.dark-mode .calendar-day.hours-d{background:#00606466;border-color:#00606499;color:#b2ebf2}body.dark-mode .calendar-day.hours-e{background:#28359366;border-color:#28359399;color:#c5cae9}body.dark-mode .calendar-day.hours-f{background:#00695c66;border-color:#00695c99;color:#b2dfdb}.opening-hours-container{width:100%}.today-hours-row{display:flex;flex-wrap:wrap}.today-hours{font-weight:600;margin-right:auto}.calendar-icon-btn{align-items:center;background:none;border:none;cursor:pointer;display:inline-flex;margin-left:0;padding:0}.calendar-icon-only{margin-left:3px;padding:0 0 5px;position:relative;top:1px}.calendar-legend{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap}.calendar-legend-item{align-items:center;display:inline-flex;margin-right:16px}@media (max-width:768px){.today-hours{justify-content:space-between;margin-bottom:5px;margin-right:0}}.remaining-time-analysis-container{clear:both;display:block;margin-top:15px;width:100%}.remaining-time-analysis{background-color:--var(--card-background);border-radius:4px;color:--var(--text-color);display:block;font-size:.95rem;line-height:1.4;margin-left:0;margin-top:10px;padding:12px 15px;text-align:center;width:100%}.remaining-time-analysis p{margin:0}.remaining-time-analysis strong{color:#4fc3f7;font-weight:700}@media (max-width:768px){.remaining-time-analysis{font-size:.85rem;padding:10px}}.news-block{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin:16px 0;padding:20px;transition:all .3s ease}.news-block:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-2px)}.news-block.collapsed{padding-bottom:12px}.news-block.collapsed .news-header{margin-bottom:0}[data-theme=dark] .news-block{background:#0000004d;border:1px solid #ffffff1a;box-shadow:0 8px 32px #0000004d}[data-theme=dark] .news-block:hover{box-shadow:0 12px 40px #0006}.news-header{align-items:center;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:16px;padding:8px 0;position:relative;transition:all .2s ease}@keyframes peek-content{0%,85%{max-height:0;opacity:0}90%{max-height:40px;opacity:.7}95%{max-height:40px;opacity:.7}to{max-height:0;opacity:0}}.news-block.collapsed .news-content{animation:peek-content 6s ease-in-out 4;animation-delay:3s;overflow:hidden}.news-block.expanded .news-content{animation:none}.news-header:hover{background:#ffffff0d}[data-theme=dark] .news-header:hover{background:#ffffff1a}.news-title{align-items:center;display:flex;flex:1 1;font-size:1.2rem;font-weight:600;gap:8px;margin:0}.news-count{color:#666;color:var(--text-secondary,#666);font-size:.9rem;font-weight:500;margin-left:4px}[data-theme=dark] .news-count{color:#ccc;color:var(--text-secondary-dark,#ccc)}.news-header-buttons{align-items:center;display:flex;gap:8px}.news-close-btn,.news-toggle-btn{align-items:center;background:none;border:none;border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.news-close-btn:hover,.news-toggle-btn:hover{background:#ffffff1a;color:#333;color:var(--text-primary,#333);transform:scale(1.1)}.news-close-btn:hover{background:#ff6b6b33;color:#ff6b6b}[data-theme=dark] .news-close-btn,[data-theme=dark] .news-toggle-btn{color:#ccc;color:var(--text-secondary-dark,#ccc)}[data-theme=dark] .news-close-btn:hover,[data-theme=dark] .news-toggle-btn:hover{background:#ffffff26;color:#fff;color:var(--text-primary-dark,#fff)}[data-theme=dark] .news-close-btn:hover{background:#ff6b6b4d;color:#ff8a8a}[data-theme=dark] .news-title{color:#fff;color:var(--text-primary-dark,#fff)}.news-icon{font-size:1.3rem}.news-content{overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1)}.news-content.expanded{max-height:none;opacity:1}.news-content.collapsed{margin-bottom:0;max-height:0;opacity:0}.news-items{display:flex;flex-direction:column;gap:12px;padding-top:4px}.news-item{align-items:flex-start;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:12px;padding:12px;position:relative;transition:all .2s ease}.news-item:hover{background:#ffffff1a;transform:translateX(4px)}[data-theme=dark] .news-item{background:#ffffff0d;border:1px solid #ffffff0d}.news-item-icon,[data-theme=dark] .news-item:hover{background:#ffffff1a}.news-item-icon{align-items:center;border-radius:8px;display:flex;flex-shrink:0;font-size:1.5rem;height:32px;justify-content:center;width:32px}.news-item-content{flex:1 1;min-width:0}.news-item-title{align-items:center;display:flex;flex-wrap:wrap;font-size:.95rem;font-weight:600;gap:8px;margin-bottom:4px}[data-theme=dark] .news-item-title{color:#fff;color:var(--text-primary-dark,#fff)}.news-item-date{color:var(--text-secondary);font-size:.85rem;font-weight:500}[data-theme=dark] .news-item-date{color:#ccc;color:var(--text-secondary-dark,#ccc)}.news-item.open,[data-theme=dark] .news-item.open{background:#ffffff1f;border-color:#ffffff40}.news-item-details{border-top:1px dashed #fff3;font-size:.92rem;line-height:1.45;margin-top:8px;padding-top:8px}@keyframes news-details-fade-slide-in{0%{max-height:0;opacity:0;transform:translateY(-4px)}to{max-height:500px;opacity:1;transform:translateY(0)}}.news-item.open .news-item-details{animation:news-details-fade-slide-in .22s ease-out both;overflow:hidden}@media (prefers-reduced-motion:reduce){.news-item.open .news-item-details{animation:none}}.news-item-description{margin:0 0 6px}.news-item-details-list{margin:6px 0 0;padding-left:18px}.news-item-details-list li{margin:2px 0}.news-item[role=button]:focus-visible{outline:2px solid #4c9ffe;outline:2px solid var(--focus-color,#4c9ffe);outline-offset:2px}.news-event .news-item-icon{background:linear-gradient(135deg,#667eea,#764ba2)}.news-experience .news-item-icon{background:linear-gradient(135deg,#f093fb,#f5576c)}.news-activity .news-item-icon{background:linear-gradient(135deg,255,255,255,.05)}@media (max-width:768px){.news-block{margin:12px 0;padding:16px}.news-title{font-size:1.1rem}.news-item{gap:10px;padding:10px}.news-item-icon{font-size:1.3rem;height:28px;width:28px}.news-item-title{font-size:.9rem}.news-item-date{font-size:.8rem}.news-badge{font-size:.65rem;padding:1px 4px}}@media (max-width:480px){.news-items{gap:8px}.news-item{padding:8px}.news-item-title{align-items:flex-start;flex-direction:column;gap:4px}}.parks-list-container{margin:0 auto;max-width:1200px;min-height:calc(100vh - 200px);padding:20px}.parks-list-header{margin-bottom:40px;text-align:center}.parks-list-header h1{color:var(--text-color);font-size:2.5rem;font-weight:700;margin-bottom:10px}.parks-list-intro{color:var(--text-secondary);font-size:1.2rem;line-height:1.6;margin:0 auto;max-width:800px}.continent-section{margin-bottom:60px}.continent-title{border-bottom:2px solid var(--accent-color);color:var(--text-color);font-size:2rem;font-weight:600;margin-bottom:10px;padding-bottom:10px}.continent-description{color:var(--text-secondary);font-size:1.1rem;line-height:1.5;margin-bottom:30px}.parks-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:30px}.park-card{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.park-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.park-card-content{padding:20px}.park-name{font-size:1.4rem;font-weight:600;margin-bottom:8px}.park-name a{color:var(--text-color);text-decoration:none;transition:color .2s ease}.park-name a:hover{color:var(--accent-color)}.park-country{color:var(--text-secondary);font-size:.9rem;font-weight:500;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.park-description{color:var(--text-secondary);font-size:1rem;line-height:1.5;margin-bottom:15px}.park-link{color:var(--accent-color);display:inline-block;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s ease}.park-link:hover{color:var(--accent-hover);text-decoration:underline}.parks-stats{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;margin-top:40px;padding:20px;text-align:center}.parks-stats p{color:var(--text-secondary);font-size:1.1rem;font-weight:500;margin:0}@media (max-width:768px){.parks-list-container{padding:15px}.parks-list-header h1{font-size:2rem}.parks-list-intro{font-size:1.1rem}.continent-title{font-size:1.6rem}.parks-grid{gap:15px;grid-template-columns:1fr}.park-card-content{padding:15px}.park-name{font-size:1.2rem}}@media (max-width:480px){.parks-list-header h1{font-size:1.8rem}.continent-title{font-size:1.4rem}.parks-grid{gap:12px}.park-card-content{padding:12px}}.dark-mode .park-card{background:var(--card-background-dark);border-color:var(--border-color-dark)}.dark-mode .continent-title{border-bottom-color:var(--accent-color-dark)}.dark-mode .park-link:hover,.dark-mode .park-name a:hover{color:var(--accent-hover-dark)}.logo-container{align-items:center;display:flex;justify-content:center;min-height:108px;padding:20px 0}.logo{contain:layout style paint;content-visibility:auto;display:block;height:auto;max-width:320px;width:100%}.loading-container{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:#fffc;border-radius:12px;box-shadow:0 4px 20px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:1rem;min-height:200px;padding:2rem;text-align:center}.loading-spinner{animation:spin 1s ease-in-out infinite;border:4px solid #007bff33;border-top-color:#007bff;margin-bottom:1rem}.loading-container p{color:#333;font-family:Inter,Roboto,sans-serif;font-size:1.1rem;font-weight:500;margin:0}@media (prefers-color-scheme:dark){.loading-container{background-color:#000c;box-shadow:0 4px 20px #0000004d}.loading-container p{color:#fff}.loading-spinner{border:4px solid #fff3;border-top-color:#fff}}@media (max-width:480px){.logo{max-width:280px}.loading-container{margin:.5rem;min-height:150px;padding:1.5rem}.loading-container p{font-size:1rem}.loading-spinner{border-width:3px;height:32px;width:32px}}@media (max-width:375px){.logo{max-width:240px}.loading-container{border-radius:8px;margin:.25rem;min-height:120px;padding:1rem}}@media (max-width:320px){.logo{max-width:200px}}.rain-widget{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin-bottom:15px;padding:15px}.rain-widget h3{color:#fff;font-size:1.1rem;font-weight:600;margin:0 0 15px;text-shadow:0 1px 2px #0000004d}.rain-widget-button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;margin-bottom:15px;padding:8px 15px;transition:opacity .3s,background-color .3s}.rain-widget-button:hover{background-color:#0069d9}.rain-widget-button:disabled{cursor:not-allowed;opacity:.7}.rain-widget-error{background:#ff6b6b1a;border:1px solid #ff6b6b4d;border-radius:6px;color:#ff6b6b;font-size:.9rem;margin-bottom:10px;padding:8px 12px}.rain-widget-loading{color:#fff;font-size:.9rem;opacity:.8;padding:20px;text-align:center}.rain-chart-container{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;height:200px;margin-bottom:15px;padding:10px;position:relative;transition:all .3s ease}.rain-chart-container canvas{height:100%;width:100%}.rain-chart-container.loading{opacity:.7}.rain-intensity-legend{border-top:1px solid #ffffff1a;display:flex;gap:10px;justify-content:space-around;padding-top:10px}.intensity-item{align-items:center;display:flex;flex-direction:column;gap:4px}.intensity-color{border:1px solid #ffffff4d;border-radius:2px;height:12px;width:20px}.intensity-color.light{background:#87ceeb}.intensity-color.moderate{background:#00bfff}.intensity-color.heavy{background:#00008b}.intensity-color.unavailable{background:#a9a9a9}.intensity-item span{color:#fff;font-size:.8rem;font-weight:500;text-shadow:0 1px 2px #0000004d}@media (max-width:768px){.rain-widget{margin-bottom:12px;padding:12px}.rain-widget h3{font-size:1rem;margin-bottom:12px}.rain-chart-container{height:180px;margin-bottom:12px}.rain-intensity-legend{gap:8px}.intensity-color{height:10px;width:16px}.intensity-item span{font-size:.75rem}}@media (max-width:480px){.rain-widget{margin-bottom:10px;padding:10px}.rain-widget h3{font-size:.95rem;margin-bottom:10px}.rain-chart-container{height:160px;margin-bottom:10px;padding:8px}.rain-intensity-legend{flex-wrap:wrap;gap:6px}.intensity-color{height:8px;width:14px}.intensity-item span{font-size:.7rem}}.weather-alerts-container{animation:slideIn .3s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px 0 #0000001a;margin:20px 0;padding:16px;width:100%}.weather-alerts-header{align-items:center;border-bottom:1px solid #fff3;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.weather-alerts-header h3{color:#000;color:var(--text-primary,#000);font-size:1.2rem;font-weight:600;margin:0}.alerts-source{color:#666;color:var(--text-secondary,#666);font-size:.75rem;opacity:.7}.alerts-stale-badge{background:#ffa50033;border:1px solid #ffa50066;border-radius:12px;color:#000;color:var(--text-primary,#000);font-size:.7rem;padding:2px 8px}.weather-alerts-status{padding:12px;text-align:center}.status-disabled,.status-error,.status-stale{border-radius:8px;font-size:.9rem;padding:8px 12px}.status-disabled{background:#8080801a;border-left:4px solid grey}.status-error{background:#ff6b6b1a;border-left:4px solid #ff6b6b}.status-stale{background:#ffa5001a;border-left:4px solid orange}.weather-alerts-list{display:flex;flex-direction:column;gap:12px}.weather-alert-item{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border-left:4px solid;border-radius:12px;box-shadow:0 4px 16px #0000000d;padding:14px;transition:all .3s ease}.weather-alert-item:hover{background:#ffffff14;box-shadow:0 6px 20px #0000001a;transform:translateY(-2px)}.weather-alert-item.info{border-left-color:#4a9eff}.weather-alert-item.warning{border-left-color:orange}.weather-alert-item.error{border-left-color:#ff6b6b}.weather-alert-item.critical{animation:pulse-critical 2s infinite;border-left-color:#dc143c}.weather-alert-item.expired{filter:grayscale(50%);opacity:.5}.alert-header{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:10px}.alert-event-type{color:#000;color:var(--text-primary,#000);font-size:1rem;font-weight:700}.alert-severity-badge{background:#fff3;border-radius:12px;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.weather-alert-item.info .alert-severity-badge{background:#4a9eff33;color:#4a9eff}.weather-alert-item.warning .alert-severity-badge{background:#ffa50033;color:orange}.weather-alert-item.error .alert-severity-badge{background:#ff6b6b33;color:#ff6b6b}.weather-alert-item.critical .alert-severity-badge{background:#dc143c33;color:#dc143c}.alert-headline{color:#000;color:var(--text-primary,#000);font-size:.95rem;font-weight:600;line-height:1.4;margin-bottom:10px}.alert-meta{color:#666;color:var(--text-secondary,#666);display:flex;flex-wrap:wrap;font-size:.85rem;gap:10px;margin-bottom:10px}.meta-item{background:#ffffff1a;border-radius:6px;padding:4px 8px}.alert-areas{background:#ffffff0d;border-radius:8px;color:#666;color:var(--text-secondary,#666);font-size:.85rem;margin-bottom:10px;padding:8px}.alert-areas strong{color:#000;color:var(--text-primary,#000)}.alert-dates{background:#ffffff0d;border-radius:8px;display:flex;flex-wrap:wrap;font-size:.85rem;gap:12px;margin-bottom:10px;padding:8px}.alert-date{display:flex;flex-direction:column;gap:2px}.date-label{color:#000;color:var(--text-primary,#000);font-weight:600}.date-value{color:#666;color:var(--text-secondary,#666)}.alert-description,.alert-instructions{background:#ffffff0d;border-radius:8px;font-size:.85rem;margin-top:10px;padding:10px}.alert-description summary,.alert-instructions summary{color:#000;color:var(--text-primary,#000);cursor:pointer;font-weight:600;padding:4px 0;-webkit-user-select:none;user-select:none}.alert-description summary:hover,.alert-instructions summary:hover{color:#4a9eff}.alert-description p,.alert-instructions p{background:#ffffff0d;border-radius:6px;color:#666;color:var(--text-secondary,#666);line-height:1.5;margin:10px 0 0;padding:8px}.alert-instructions p{border-left:3px solid orange;padding-left:12px}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-critical{0%,to{box-shadow:0 4px 16px #dc143c4d}50%{box-shadow:0 4px 24px #dc143c99}}@media (max-width:768px){.weather-alerts-container{margin:16px 0;padding:12px}.weather-alerts-header h3{font-size:1.1rem}.weather-alert-item{padding:12px}.alert-header{align-items:flex-start;flex-direction:column}.alert-event-type{font-size:.95rem}.alert-severity-badge{font-size:.7rem;padding:3px 8px}.alert-dates{flex-direction:column}}body.dark-mode .weather-alerts-container{background:#0000004d;border:1px solid #ffffff1a}body.dark-mode .alert-description summary,body.dark-mode .alert-event-type,body.dark-mode .alert-instructions summary,body.dark-mode .date-label,body.dark-mode .weather-alerts-header h3{color:#fff}body.dark-mode .alert-areas,body.dark-mode .alert-description p,body.dark-mode .alert-instructions p,body.dark-mode .alert-meta,body.dark-mode .alerts-source,body.dark-mode .date-value{color:#ffffffb3}body.dark-mode .weather-alert-item{background:#ffffff0d}body.dark-mode .weather-alert-item:hover{background:#ffffff1a}.weather-modal-overlay{align-items:flex-end;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0006;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}@supports (height:100svh){.weather-modal-content{max-height:calc(100svh - 66px - env(safe-area-inset-bottom, 0px))}.weather-modal-body{max-height:calc(100svh - 186px)}@media (max-width:768px){.weather-modal-content{max-height:calc(100svh - 70px - env(safe-area-inset-bottom, 0px))}.weather-modal-body{max-height:calc(100svh - 190px)}}@media (max-width:480px){.weather-modal-content{max-height:calc(100svh - 75px - env(safe-area-inset-bottom, 0px))}.weather-modal-body{max-height:calc(100svh - 195px)}}}.mobile-browser-bar-present .weather-modal-content{max-height:calc(100vh - 126px - env(safe-area-inset-bottom, 0px))}.mobile-browser-bar-present .weather-modal-body{max-height:calc(100vh - 246px)}@media (max-width:768px){.mobile-browser-bar-present .weather-modal-content{max-height:calc(100vh - 130px - env(safe-area-inset-bottom, 0px))}.mobile-browser-bar-present .weather-modal-body{max-height:calc(100vh - 250px)}}@media (max-width:480px){.mobile-browser-bar-present .weather-modal-content{max-height:calc(100vh - 135px - env(safe-area-inset-bottom, 0px))}.mobile-browser-bar-present .weather-modal-body{max-height:calc(100vh - 255px)}}.weather-modal-content{animation:slideUp .3s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#4a91e286,#3579bd83 50%,#1e3a5f9c);border:1px solid #ffffff1a;border-top-color:#ffffff26;border-top-left-radius:24px;border-top-right-radius:24px;border-radius:24px;box-shadow:0 -8px 32px #0003,inset 0 1px 0 #ffffff1a;margin-bottom:66px;max-height:calc(100vh - 66px - env(safe-area-inset-bottom, 0px));overflow-y:auto;padding-bottom:env(safe-area-inset-bottom,20px);width:100%}.weather-modal-content.closing{animation:slideDown .3s ease-out forwards}.weather-modal-header{align-items:center;background:#0000;display:flex;justify-content:flex-end;padding:15px 20px 10px}.weather-modal-header h2{display:none}.weather-modal-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;padding:8px;transition:all .2s ease;width:32px}.weather-modal-close:hover{background:#ffffff4d;transform:scale(1.1)}.weather-modal-body{color:#fff;max-height:calc(90vh - 120px);overflow-y:auto;padding:0 20px 20px}.weather-loading{align-items:center;color:var(--text-color);display:flex;flex-direction:column;justify-content:center;padding:40px 20px}.loading-spinner{border-top:3px solid var(--border-color);border:3px solid var(--border-color);border-top-color:var(--primary-color);height:40px;margin-bottom:15px;width:40px}.weather-error{color:var(--text-color);padding:40px 20px;text-align:center}.retry-button{background:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;margin-top:15px;padding:10px 20px;transition:background-color .2s ease}.retry-button:hover{background:var(--primary-hover)}.weather-header-main{color:#fff;padding:15px 0 20px;text-align:center}.location-name{font-size:1rem;font-weight:400;letter-spacing:.5px;margin-bottom:5px;opacity:.9}.main-temperature{font-size:3rem;font-weight:200;line-height:1;margin:5px 0}.weather-condition{font-size:1rem;font-weight:400;margin-bottom:5px;opacity:.9}.temp-range{font-size:.9rem;font-weight:400;opacity:.8}.weather-summary{background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin-bottom:5px;padding:15px}.summary-text{color:#fff;font-size:.9rem;line-height:1.4;opacity:.9}.weather-content{display:flex;flex-direction:column;gap:5px}.rain-alert{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffc10726;border:1px solid #ffc10766;border-radius:12px;color:#fff;margin-bottom:15px;padding:15px}.rain-alert-title{color:#ffcc02;font-weight:600;margin-bottom:5px}.rain-alert-details{display:flex;flex-wrap:wrap;font-size:.9rem;gap:10px;margin-top:10px}.rain-amount,.rain-intensity,.rain-probability,.rain-source{background:#fff3;border-radius:6px;color:#fff;font-size:.8rem;padding:4px 8px}.current-weather-details{background:#ffffff0d;border:1px solid var(--border-color);border-radius:12px;padding:20px}.weather-main-info{margin-bottom:5px;text-align:center}.weather-park-name{color:#fff;font-size:1.9rem;font-weight:500;letter-spacing:.5px}.weather-icon{font-size:2.2rem;margin-bottom:0}.temperature-main{font-size:2rem;font-weight:700;margin-bottom:0}.weather-description{color:var(--text-secondary);font-size:1rem;margin-bottom:3px}.feels-like{color:var(--text-secondary);font-size:.9rem}.weather-details-section{grid-gap:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:15px;padding:15px}.detail-item{align-items:center;background:#ffffff08;border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between;padding:10px}.detail-label{color:var(--text-secondary);font-size:.9rem}.detail-value{font-size:.9rem;font-weight:500}.forecast-header{align-items:center;border-bottom:1px solid #fff3;display:flex;gap:8px;margin-bottom:15px;padding-bottom:8px}.forecast-icon{font-size:1rem;opacity:.8}.forecast-title{color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.5px;opacity:.8}.hourly-forecast-ios{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin-bottom:10px;padding:10px}.hourly-scroll-container{-ms-overflow-style:none;display:flex;gap:15px;overflow-x:auto;padding-bottom:10px;scrollbar-width:none}.hourly-scroll-container::-webkit-scrollbar{display:none}.hourly-item-ios{align-items:center;color:#fff;display:flex;flex-direction:column;flex-shrink:0;gap:4px;min-width:60px}.hourly-time-ios{font-size:.8rem;font-weight:500;opacity:.9}.hourly-icon-ios{font-size:1.4rem}.hourly-rain-ios{color:#60a5fa;font-size:.7rem;font-weight:500}.hourly-temp-ios{font-size:1rem;font-weight:500}.daily-forecast-ios{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin-bottom:10px;padding:10px}.daily-forecast-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:5px 0}.daily-forecast-toggle{background:none;border:none;color:#fff;cursor:pointer;font-size:1.2rem;transition:transform .2s ease}.daily-forecast-toggle.expanded{transform:rotate(180deg)}.daily-forecast-content{max-height:0;overflow:hidden;transition:max-height .3s ease}.daily-forecast-content.expanded{max-height:400px}.daily-list-ios{display:flex;flex-direction:column;gap:8px}.daily-item-ios{grid-gap:8px;align-items:center;color:#fff;display:grid;gap:8px;grid-template-columns:50px 35px 35px 1fr 70px;padding:6px 0}.daily-day-ios{display:flex;flex-direction:column}.day-name-ios{font-size:.9rem;font-weight:500}.day-date-ios{font-size:.8rem;opacity:.7}.daily-icon-ios{font-size:1.2rem;text-align:center}.daily-rain-ios{color:#60a5fa;font-size:.8rem;font-weight:500;text-align:center}.daily-temp-bar-ios{flex:1 1;padding:0 10px}.temp-bar-container{background:#fff3;border-radius:2px;height:4px;overflow:hidden}.temp-bar{border-radius:2px;height:100%;transition:width .3s ease}.daily-temps-ios{align-items:center;display:flex;gap:8px;justify-content:space-between}.temp-min-ios{font-size:.9rem;opacity:.7}.temp-max-ios{font-size:.9rem;font-weight:600}.weather-modal-footer{background:#ffffff0d;border-radius:12px;border-top:1px solid #fff3;padding:0 15px;text-align:center}.weather-modal-footer div{color:#ffffffb3;font-size:.7rem;margin:5px 0}.weather-modal-footer a{color:#ffffffe6;text-decoration:none}.weather-modal-footer a:hover{color:#fff;text-decoration:underline}@media (max-width:768px){.weather-modal-overlay{padding:5px}.weather-modal-header{padding:10px 15px 5px}.weather-modal-body{max-height:calc(85vh - 100px);padding:0 15px 15px}.weather-modal-content{margin-bottom:70px;max-height:calc(100vh - 70px - env(safe-area-inset-bottom, 0px))}.main-temperature{font-size:3.5rem}.daily-item-ios{gap:8px;grid-template-columns:50px 35px 35px 1fr 70px}.hourly-item-ios{min-width:50px}.hourly-icon-ios{font-size:1.5rem}}@media (max-width:480px){.weather-modal-content{margin-bottom:75px;max-height:calc(100vh - 75px - env(safe-area-inset-bottom, 0px))}.weather-modal-body{max-height:calc(80vh - 90px);padding:0 12px 12px}.weather-modal-header{padding:8px 12px 5px}.weather-park-name{font-size:1.6rem}.temperature-main{font-size:1.8rem}.weather-icon{font-size:2rem}}.parking-assistant-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffb3;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:10000}.dark-mode .parking-assistant-overlay{background:#000000b3}.parking-assistant-overlay.closing{animation:fadeOut .3s ease-out}.parking-assistant-modal{animation:slideUp .3s ease-out;border:1px solid #ffffff4d;border:1px solid var(--glassmorphism-border,#ffffff4d);border-radius:24px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:100%}.parking-assistant-modal.closing{animation:slideDown .3s ease-out}.parking-assistant-modal.fullscreen{border-radius:0;height:100vh;max-height:100vh;max-width:100%;width:100%}body.dark-mode .parking-assistant-modal{background:#14141ef2;background:var(--glassmorphism-bg-dark,#14141ef2);border-color:#ffffff1a;border-color:var(--glassmorphism-border-dark,#ffffff1a);color:#fff;color:var(--text-primary-dark,#fff)}.parking-header{align-items:center;border-bottom:1px solid #0000001a;border-bottom:1px solid var(--border-color,#0000001a);display:flex;justify-content:space-between;padding:20px}body.dark-mode .parking-header{border-bottom-color:#ffffff1a;border-bottom-color:var(--border-color-dark,#ffffff1a)}.parking-header h2{font-size:1.5rem;font-weight:600;margin:0}.parking-close-btn{background:#0000;border:none;border-radius:8px;color:inherit;cursor:pointer;padding:8px;transition:background .2s}.parking-close-btn:hover{background:#0000001a}body.dark-mode .parking-close-btn:hover{background:#ffffff1a}.parking-content{flex:1 1;overflow-y:auto;padding:20px}.parking-save-section{display:flex;flex-direction:column;gap:20px}.parking-error{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:12px;color:#dc2626;display:flex;gap:12px;justify-content:space-between;padding:16px}.retry-btn{background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:background .2s}.retry-btn:hover{background:#dc2626}.parking-loading{padding:40px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #3b82f633;border-radius:50%;border-top-color:#3b82f6;height:48px;margin:0 auto 20px;width:48px}.loading-subtext{font-size:.9rem;margin-top:8px;opacity:.7}.parking-info-box{align-items:center;background:rgba(156,189,241,.685);border:1px solid #3b82f64d;border-radius:12px;display:flex;gap:16px;padding:16px}body.dark-mode .parking-info-box{background:#3b82f633;color:#60a5fa}.add-note-btn{background:#0000;border:2px dashed #0003;border:2px dashed var(--border-color,#0003);border-radius:12px;color:inherit;cursor:pointer;font-size:1rem;padding:16px;transition:all .2s;width:100%}.add-note-btn:hover{background:#3b82f60d;border-color:#3b82f6;color:#3b82f6}.note-input-section,.photo-section{display:flex;flex-direction:column;gap:8px}.note-input-section label,.photo-section label{font-size:.9rem;font-weight:500;opacity:.9}.note-input-section input{background:#fff;background:var(--input-bg,#fff);border:1px solid #0003;border:1px solid var(--border-color,#0003);border-radius:8px;font-size:1rem;padding:12px;transition:border-color .2s;width:100%}.note-input-section input:focus{border-color:#3b82f6;outline:none}body.dark-mode .note-input-section input{background:#ffffff0d;border-color:#ffffff1a}.photo-input-hidden{display:none}.photo-btn{align-items:center;background:#0000;border:2px dashed #0003;border:2px dashed var(--border-color,#0003);border-radius:8px;color:inherit;cursor:pointer;display:flex;font-size:1rem;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s}.photo-btn:hover{background:#3b82f60d;border-color:#3b82f6;color:#3b82f6}.photo-preview{border-radius:12px;margin-top:8px;overflow:hidden;position:relative}.photo-preview img{display:block;height:200px;object-fit:cover;width:100%}.photo-delete-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:8px;top:8px;transition:background .2s;width:32px}.photo-delete-btn:hover{background:#dc2626}.save-parking-btn{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:16px;transition:transform .2s,box-shadow .2s;width:100%}.save-parking-btn:hover{box-shadow:0 8px 20px #10b9814d;transform:translateY(-2px)}.save-parking-btn:disabled{background:#0000001a;cursor:not-allowed;transform:none}body.dark-mode .save-parking-btn:disabled{background:#ffffff1a}.reset-position-btn{background:#0000;border:2px solid #ef4444;border-radius:12px;color:#ef4444;cursor:pointer;font-size:.9rem;font-weight:600;padding:12px;transition:all .2s;width:100%}.reset-position-btn:hover{background:#ef44441a}.parking-view-section{display:flex;flex-direction:column;gap:16px}.parking-notes-display{background:rgba(1,46,119,.568);border-radius:12px;padding:12px 16px}body.dark-mode .parking-notes-display{background:#3b82f633;color:#60a5fa}.parking-photo-display{border-radius:12px;height:200px;object-fit:cover;width:100%}.compass-widget{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:16px;color:#fff;padding:24px;text-align:center}.compass-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.compass-title{flex:1 1;font-size:.9rem;font-weight:500;opacity:.9}.compass-close-btn{align-items:center;background:#fff3;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:6px;transition:background .2s}.compass-close-btn:hover{background:#ffffff4d}.compass-arrow{height:120px;margin:0 auto;position:relative;width:120px}.arrow-pointer{border-bottom:80px solid #ef4444;border-left:24px solid #0000;border-right:24px solid #0000;height:0;left:50%;position:absolute;top:0;transform:translateX(-50%);width:0}.compass-bearing{font-size:2rem;font-weight:700;margin-top:16px}.compass-distance{font-size:1rem;margin-top:8px;opacity:.9}.enable-compass-btn{align-items:center;background:rgba(27,27,27,.699);border:1px solid #6366f14d;border-radius:12px;color:#6366f1;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s;width:100%}.enable-compass-btn:hover{background:#6366f133}body.dark-mode .enable-compass-btn{background:#6366f133;color:#818cf8}.parking-preview-map-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#3b82f61a,#8b5cf61a);background:linear-gradient(135deg,rgba(var(--primary-color-rgb,59,130,246),.1),rgba(var(--secondary-color-rgb,139,92,246),.1));border:2px solid #ffffff40;border-radius:12px;border-radius:var(--border-radius-sm,12px);box-shadow:0 4px 16px #00000026;height:250px;overflow:hidden;position:relative;width:100%}.parking-preview-map{border:none;height:100%;transition:opacity .3s ease;width:100%}.map-loading-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#3b82f626,#8b5cf626);background:linear-gradient(135deg,rgba(var(--primary-color-rgb,59,130,246),.15),rgba(var(--secondary-color-rgb,139,92,246),.15));bottom:0;color:#fff;display:flex;flex-direction:column;gap:16px;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.map-loading-overlay p{font-size:.95rem;font-weight:500;margin:0;opacity:.9}.map-help-text{animation:fadeIn .3s ease-out;background:linear-gradient(135deg,#3b82f6f2,#8b5cf6f2);background:linear-gradient(135deg,rgba(var(--primary-color-rgb,59,130,246),.95),rgba(var(--secondary-color-rgb,139,92,246),.95));border:1px solid #fff3;border-radius:20px;bottom:12px;box-shadow:0 4px 12px #0000004d;color:#fff;font-size:.85rem;font-weight:500;left:50%;max-width:90%;padding:8px 16px;pointer-events:none;position:absolute;text-align:center;transform:translateX(-50%);white-space:nowrap;z-index:1000}.map-help-text,.parking-map-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.parking-map-container{background:linear-gradient(135deg,#3b82f61a,#8b5cf61a);background:linear-gradient(135deg,rgba(var(--primary-color-rgb,59,130,246),.1),rgba(var(--secondary-color-rgb,139,92,246),.1));border:2px solid #ffffff40;border-radius:12px;border-radius:var(--border-radius-sm,12px);box-shadow:0 4px 16px #00000026;height:250px;overflow:hidden;position:relative;width:100%}.parking-map{border:none;height:100%;width:100%}.distance-display{background:#6366f11a;border-radius:12px;padding:20px;text-align:center}.distance-value{color:#6366f1;font-size:2rem;font-weight:700}body.dark-mode .distance-value{color:#818cf8}.distance-label{font-size:.9rem;margin-top:4px;opacity:.7}.parking-info-row{align-items:center;background:#00000008;border-radius:8px;display:flex;font-size:.95rem;gap:8px;padding:12px}body.dark-mode .parking-info-row{background:#ffffff0d}.parking-actions-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.action-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:transform .2s,box-shadow .2s}.action-btn.primary{background:#3b82f6;color:#fff}.action-btn.primary:hover{box-shadow:0 8px 20px #3b82f64d;transform:translateY(-2px)}.action-btn.secondary{background:#10b981;color:#fff}.action-btn.secondary:hover{box-shadow:0 8px 20px #10b9814d;transform:translateY(-2px)}.parking-actions-row{display:flex;gap:12px}.icon-btn{background:#0000000d;border:none;border-radius:8px;color:inherit;cursor:pointer;padding:12px;transition:background .2s}.icon-btn:hover{background:#0000001a}body.dark-mode .icon-btn{background:#ffffff0d}body.dark-mode .icon-btn:hover{background:#ffffff1a}.delete-parking-btn{align-items:center;background:#ef4444;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:transform .2s,box-shadow .2s}.delete-parking-btn:hover{box-shadow:0 8px 20px #ef44444d;transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:640px){.parking-assistant-overlay{padding:0}.parking-assistant-modal{border-radius:0;height:100vh;max-height:100vh;max-width:100%}.parking-actions-grid{grid-template-columns:1fr}.parking-map-container{height:250px}}.liquid-toggle-wrapper{align-items:center;background:#0000;display:flex;gap:12px;height:auto;justify-content:space-between;position:relative;width:100%}.liquid-toggle-label{color:var(--text-color);flex:1 1 auto;font-size:.95rem;line-height:1.2;min-width:0;overflow-wrap:anywhere;white-space:normal}.liquid-toggle{--unchecked:#cbced2;--checked:hsl(var(--hue,214),calc((60 + var(--complete)/100*40)*1%),calc((90 - var(--complete)/100*40)*1%));--border:3px;--width:50;--height:24;--transition:0.2s;--ease:ease-out;background:#0000;border:0;border-radius:100px;container-type:inline-size;cursor:pointer;flex:0 0 auto;height:calc(var(--height)*1px);outline-offset:2px;overflow:visible;padding:0;position:relative;transition:outline var(--transition) var(--ease);width:calc(var(--width)*1px)}.liquid-toggle:focus-visible{outline:2px solid color-mix(in oklch,var(--checked),#0000 50%)}.liquid-toggle:active{outline:none}.liquid-knockout{filter:url(#liquid-remove-black-filter);height:calc(var(--height)*1px);inset:0;transform:translateZ(0);width:calc(var(--width)*1px);will-change:filter,scale}.liquid-indicator,.liquid-knockout{border-radius:100px;pointer-events:none;position:absolute}.liquid-indicator{left:50%;top:50%;translate:-50% -50%}.liquid-indicator--background{background:var(--checked);height:100%;width:100%;z-index:1}.liquid-indicator--masked{background:var(--checked);container-type:inline-size;height:100%;width:100%;z-index:12}.liquid-mask{background:#000;transition-property:height,width,margin,scale;transition-timing-function:var(--ease);translate:calc((var(--complete)/100)*(100cqi - 60cqi - var(--border)*0)) -50%;will-change:height,width,margin}.liquid-indicator__liquid,.liquid-mask{border-radius:100px;height:calc(100% - var(--border)*2);left:var(--border);position:absolute;top:50%;transition-duration:var(--transition);width:calc(60% - var(--border)*2)}.liquid-indicator__liquid{background:#0000;container-type:inline-size;transition-property:scale;transition-timing-function:var(--ease);translate:calc((var(--complete)/100)*(100cqi - 100% - var(--border)*2)) -50%;z-index:10}.liquid-shadow{box-shadow:inset 1px -1px 2px #ffffff80,inset 0 -1px 2px #ffffff80,inset -1px -1px 2px #ffffff80,inset 1px 1px 2px #4d4d4d80,inset -8px 4px 10px -6px #4d4d4d40,inset -1px 1px 6px #4d4d4d40,-1px -1px 8px #99999926,1px 1px 2px #4d4d4d26,2px 2px 6px #4d4d4d26,inset -2px -1px 2px #ffffff40,3px 6px 16px -6px #4d4d4d80;opacity:0;transition:opacity var(--transition) var(--ease);z-index:20}.liquid-shadow,.liquid-wrapper{border-radius:100px;inset:0;position:absolute}.liquid-wrapper{-webkit-clip-path:inset(0 0 0 0 round 100px);clip-path:inset(0 0 0 0 round 100px);filter:blur(6px);transition:filter var(--transition) var(--ease)}.liquid-liquids{filter:url(#liquid-goo-filter);overflow:hidden;transform:translateZ(0)}.liquid-liquids,.liquid__shadow{border-radius:100px;inset:0;position:absolute}.liquid__shadow{box-shadow:inset 0 0 3px 4px var(--checked),inset calc((var(--complete)/100)*8px - 4px) 0 3px 4px var(--checked)}.liquid__track{background:var(--checked);height:calc(var(--height)*1px - var(--border)*0);left:0;top:50%;transition-duration:var(--transition);transition-property:height,width,filter,left;transition-timing-function:var(--ease);translate:calc((var(--complete)/100)*(100cqi - 100% - var(--border)*6)) -50%;width:calc(var(--width)*1px - var(--border)*0)}.liquid-cover,.liquid__track{border-radius:100px;content:"";position:absolute}.liquid-cover{background:#fff;inset:0;transition:opacity var(--transition) var(--ease)}.liquid-toggle-wrapper[data-active=true] .liquid-mask{height:calc(165% - var(--border)*2*1.65);margin-left:calc(-19.5% - var(--border)*2*-.325);width:calc(99% - var(--border)*2*1.65)}.liquid-toggle-wrapper[data-active=true] .liquid-indicator__liquid{scale:1.65}.liquid-toggle-wrapper[data-active=true] .liquid-wrapper{filter:blur(0)}.liquid-toggle-wrapper[data-active=true] .liquid-shadow{opacity:1}.liquid-toggle-wrapper[data-active=true] .liquid-cover{opacity:0}.liquid-toggle-wrapper[data-active=true] .liquid__track{height:calc(var(--height)*1px - var(--border)*6);left:calc(var(--border)*3)}.liquid-toggle[aria-pressed=true]:not([data-active=true]) .liquid__track{left:calc(var(--border)*6)}.dark-mode .liquid-toggle{--unchecked:#787f8c}.dark-mode .liquid-cover{background:#1a1a1a}.liquid-glass-svg-filter{height:0;pointer-events:none;position:absolute;width:0;z-index:-1}.park-menu{position:relative;width:100%;z-index:1000}.park-menu.liquid-glass-chrome{--c-light:#fff;--c-dark:#000;--glass-reflex-dark:0.8;--glass-reflex-light:1.2;--saturation:180%;--brightness:1.05;--lg-bg-color:#ffffff2e;--lg-highlight:#ffffffbf}.dark-mode .park-menu.liquid-glass-chrome{--c-glass:#6b7280;--c-light:#fff;--c-dark:#000;--glass-reflex-dark:1.5;--glass-reflex-light:0.8;--saturation:160%;--brightness:0.95;--lg-bg-color:#00000038;--lg-highlight:#fff9}.park-menu.liquid-glass-chrome .menu-content:before{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);content:"";filter:url(#mpt-lg-dist);inset:0;isolation:isolate;pointer-events:none;position:absolute;z-index:0}.park-menu.liquid-glass-chrome .menu-content:after{backdrop-filter:blur(3px) saturate(180%) brightness(1.05);-webkit-backdrop-filter:blur(3px) saturate(180%) brightness(1.05);background:var(--lg-bg-color);border-radius:inherit;box-shadow:inset 0 0 20px #ffffff0d;content:"";inset:0;pointer-events:none;position:absolute;z-index:0}.park-menu.liquid-glass-chrome .menu-content{backdrop-filter:none;-webkit-backdrop-filter:none}.park-menu.liquid-glass-chrome .park-logo-container{backdrop-filter:none;-webkit-backdrop-filter:none;background:#0000}.hamburger{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:8px;box-shadow:0 4px 6px #0000001a;cursor:pointer;display:flex;flex-direction:column;height:40px;justify-content:space-around;left:20px;padding:8px;position:absolute;top:20px;transition:all .3s ease,background .3s ease,border-color .3s ease;width:40px;z-index:1002}.hamburger.scrolled{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#fffc;box-shadow:0 4px 12px #00000026;transform:scale(.95)}.dark-mode .hamburger.scrolled{background:#000c;transition:all .3s ease,background .3s ease,border-color .3s ease}.hamburger:hover{background:#ffffff4d;box-shadow:0 6px 12px #00000026;transform:translateY(-2px)}.hamburger span{background:var(--text-color);height:2px;margin:2px 0;transform-origin:center;transition:all .3s;width:100%}.hamburger.active span:first-child{transform:translateY(7px) rotate(45deg)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.menu-content{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff9;border-radius:0 20px 20px 0;border-right:1px solid #fff3;box-shadow:5px 0 30px #0003;display:flex;flex-direction:column;height:100vh;left:0;opacity:0;padding:4rem 2rem 0;position:fixed;top:0;transform:translateX(-100%);transition:all .3s ease-in-out,visibility .3s ease,background .3s ease,border-right .3s ease;width:auto;z-index:1001}.menu-header-controls{border-bottom:1px solid #ffffff1a;flex-shrink:0;margin-bottom:1rem;padding:1rem 0}.theme-toggle-section{align-items:center;display:flex;justify-content:flex-end;padding:.5rem 0}.theme-label{color:var(--text-color);font-size:.95rem;font-weight:500}.theme-toggle-absolute{position:absolute;right:20px;top:14px;z-index:1102}@media (max-width:768px){.theme-toggle-absolute{right:0}}@media (max-width:344px){.theme-toggle-absolute{right:14px}}.dark-mode .menu-content{background:#221d3c7a;border-right:1px solid #ffffff1a;transition:all .3s ease-in-out,visibility .3s ease,background .3s ease,border-right .3s ease}.side-menu-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:20px}.side-menu-header h2{color:var(--text-color);font-size:1.5rem;font-weight:500;margin:0}.close-menu-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-color);cursor:pointer;display:flex;font-size:1.2rem;height:30px;justify-content:center;transition:all .2s ease;width:30px}.close-menu-btn:hover{background:#fff3}.menu-tabs{border-bottom:1px solid #ffffff1a;display:flex;margin-bottom:0}.menu-tab{background:#0000;border:none;color:#ffffffb3;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:500;padding:12px 0;position:relative;transition:all .2s ease}.menu-tab:hover{background-color:#ffffff0d;color:#fff}.menu-tab.active{color:#fff}.menu-tab.active:after{background-color:#fff;border-radius:3px 3px 0 0;bottom:0;content:"";height:3px;left:25%;position:absolute;width:50%}.side-menu-content{display:flex;flex-direction:column;max-height:calc(100vh - 130px);overflow-y:auto;padding:20px}.menu-content::-webkit-scrollbar{width:8px}.menu-content::-webkit-scrollbar-track{background:#0000000d;border-radius:10px}.menu-content::-webkit-scrollbar-thumb{background:#ffffff4d;border:2px solid #0000000d;border-radius:10px}.menu-content::-webkit-scrollbar-thumb:hover{background:#ffffff80}.dark-mode .menu-content::-webkit-scrollbar-thumb{background:#fff3}.dark-mode .menu-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.menu-content.open{opacity:1;transform:translateX(0);visibility:visible}.continent-selector{display:flex;gap:20px;justify-content:center;margin-bottom:10px;margin-top:10px}.continent-button{background:var(--card-background);border:1px solid var(--border-color);border-radius:25px;color:var(--text-color);cursor:pointer;font-size:18px;padding:15px 30px;position:relative;transition:all .3s ease,background .3s ease,color .3s ease,border-color .3s ease}.continent-button.disabled{cursor:not-allowed;filter:grayscale(20%);opacity:.45}.continent-button.disabled:hover{background:var(--card-background);color:var(--text-color);transform:none}.continent-button.active,.continent-button:hover{background:var(--button-hover-background);color:var(--button-hover-text-color)}.continent-button:after{display:none}.parks-grid{grid-gap:1.2rem;display:grid;gap:1.2rem;grid-template-columns:repeat(3,1fr);max-width:1000px;padding:1.2rem;transition:opacity .3s ease}.park-logo-container{align-items:center;animation:fadeInUp .5s forwards;aspect-ratio:16/9;background-color:#ffffff40;border-radius:12px;cursor:pointer;display:flex;justify-content:center;margin:0 auto;max-width:280px;opacity:0;padding:5px;position:relative;transform:translateY(20px);transition:all .3s ease,transform .3s ease,opacity .3s ease,background .3s ease;will-change:transform}.park-logo-container .glass-filter,.park-logo-container .glass-overlay,.park-logo-container .glass-specular{border-radius:inherit;inset:0;pointer-events:none;position:absolute}.park-logo-container .glass-filter{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);filter:url(#glass-distortion) saturate(120%) brightness(1.15);z-index:1}.park-logo-container .glass-overlay{background:#ffffff40;z-index:2}.park-logo-container .glass-specular{box-shadow:inset 1px 1px 1px #fff6;transition:background .3s ease;z-index:3}.park-logo-container .park-logo-wrapper{position:relative;z-index:4}.dark-mode .park-logo-container .glass-overlay{background:#00000040}.parks-grid.reorder-mode .park-logo-container .glass-filter,.parks-grid.reorder-mode .park-logo-container .glass-overlay,.parks-grid.reorder-mode .park-logo-container .glass-specular{display:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.parks-grid>div:first-child{animation-delay:.1s}.parks-grid>div:nth-child(2){animation-delay:.15s}.parks-grid>div:nth-child(4){animation-delay:.25s}.parks-grid>div:nth-child(5){animation-delay:.3s}.parks-grid>div:nth-child(6){animation-delay:.35s}.parks-grid>div:nth-child(7){animation-delay:.4s}.parks-grid>div:nth-child(8){animation-delay:.45s}.parks-grid>div:nth-child(9){animation-delay:.5s}.park-logo-container:hover{transform:translateY(-5px)}.park-logo-container:hover .glass-overlay{background:#ffffff4d}.park-logo-container:active{transform:scale(.95)}.park-logo{filter:grayscale(50%) brightness(.85);height:100%;max-height:120px;min-height:80px;object-fit:contain;transition:all .3s ease,filter .3s ease;width:100%}.park-logo-container:hover .park-logo,.park-logo.active{filter:grayscale(0) brightness(1)}.overlay{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:#0000004d;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:all .3s ease,visibility .3s ease,background .3s ease;visibility:hidden;width:100vw;z-index:999}.overlay.visible{opacity:1;visibility:visible}.dark-mode .hamburger{background:#0003;transition:all .3s ease,background .3s ease,border-color .3s ease}.dark-mode .menu-item{background:#0000001a}.dark-mode .menu-item:hover{background:#ffffff1a}@media (max-width:1200px){.parks-grid{gap:1.2rem;grid-template-columns:repeat(2,1fr)}.park-logo{max-height:100px;min-height:70px}.park-logo-container{max-width:250px}}@media (max-width:768px){.menu-content{border-radius:0 15px 15px 0;padding:4rem .2rem 0 .5rem;transition:transform .25s ease,opacity .25s ease,visibility .25s ease}.side-menu-header h2{font-size:1.3rem}.menu-tab{font-size:.85rem;padding:10px 0}.side-menu-content{padding:15px}.parks-grid{gap:.8rem;grid-template-columns:repeat(2,1fr);padding:.8rem}.park-logo-container{aspect-ratio:3/2;margin:0 auto;padding:.8rem;width:100%}.continent-selector{gap:10px;margin-bottom:10px;margin-top:10px}.continent-button{font-size:15px;padding:10px 20px}.code-form{padding:15px;width:250px}.code-form h3{font-size:1rem}.parks-grid>div{animation-duration:.3s}.parks-grid>div:first-child{animation-delay:.02s}.parks-grid>div:nth-child(2){animation-delay:.04s}.parks-grid>div:nth-child(3){animation-delay:.06s}.parks-grid>div:nth-child(4){animation-delay:.08s}.parks-grid>div:nth-child(5){animation-delay:.1s}.parks-grid>div:nth-child(6){animation-delay:.12s}.parks-grid>div:nth-child(7){animation-delay:.14s}.parks-grid>div:nth-child(8){animation-delay:.16s}.parks-grid>div:nth-child(9){animation-delay:.18s}.park-logo-container{transition:transform .2s ease,opacity .2s ease}.continent-button{transition:background .2s ease,color .2s ease}.hamburger{transition:background .2s ease}}@media (max-width:390px){.menu-content{padding:4rem .1rem 0 .5rem}.parks-grid{padding:1.2rem}}@media (max-width:380px){.parks-grid>div{animation:none;opacity:1;transform:none}.menu-content{transition:transform .2s ease,opacity .2s ease}.park-logo-container{transition:none}.continent-button,.hamburger{transition:background .15s ease}.side-menu-header h2{font-size:1.2rem}.menu-tab{font-size:.8rem;padding:8px 0}.parks-grid{gap:.6rem;grid-template-columns:repeat(2,1fr)}.continent-button{font-size:14px;padding:3px 12px}.park-logo-container{padding:.6rem}.code-form{left:10px;width:220px}}.menu-scroll-container,.parks-tab-content,.settings-tab-content{display:flex;flex:1 1;flex-direction:column;overflow-x:hidden;overflow-y:auto;padding-bottom:2rem;padding-right:1rem;position:relative;z-index:1}.about-section,.settings-section{background:#ffffff1a;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:15px;padding:15px}.about-section h3,.settings-section h3{color:var(--text-color);font-size:1.1rem;font-weight:600;margin:0 0 15px}.settings-button{background:#ffffff26;border:none;border-radius:8px;color:var(--text-color);cursor:pointer;font-size:.9rem;padding:12px;text-align:center;transition:all .3s ease;width:100%}.settings-button:hover{background:#ffffff40;transform:translateY(-2px)}.menu-item-container{margin-bottom:8px;position:relative;width:100%}.menu-item{background:#ffffff1a;border:none;border-radius:8px;color:var(--text-color);cursor:pointer;display:block;font-size:.95rem;padding:12px 15px;text-align:left;transition:all .3s ease;width:100%}.menu-item:hover{background:#fff3;transform:translateY(-2px)}.menu-item.has-submenu{align-items:center;display:flex;justify-content:space-between}.submenu-arrow{cursor:pointer;font-size:12px;padding:5px;transition:transform .3s ease}.submenu-arrow.open{transform:rotate(180deg)}.submenu{padding-left:20px}.submenu-item{background:#ffffff1a;border:none;border-radius:8px;color:var(--text-color);cursor:pointer;display:block;font-size:14px;margin:5px 0;padding:12px;text-align:left;transition:all .3s ease;width:100%}.submenu-item:hover{background:#fff3;transform:translateX(5px)}.code-form{backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);background:#ffffff26;border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;gap:15px;left:20px;padding:20px;position:fixed;top:80px;width:280px;z-index:1001}.code-form h3{color:var(--text-color);font-size:1.1rem;font-weight:600;margin:0 0 10px;text-align:center}.dark-mode .code-form{background:#261643cf;border:1px solid #ffffff1a}.code-input{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:var(--text-color);font-size:14px;letter-spacing:2px;padding:12px;text-align:center;transition:all .3s ease;width:100%}.code-input:focus{border-color:#fff6;box-shadow:0 0 0 2px #ffffff1a;outline:none}.code-submit{background:#fff3;border:none;border-radius:8px;color:var(--text-color);cursor:pointer;font-weight:500;padding:12px;transition:all .3s ease}.code-submit:hover{background:#ffffff4d;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.code-submit:active{box-shadow:none;transform:translateY(0)}.attempts-warning{background:#ff69691a;border:1px solid #ff696933;border-radius:6px;color:#ff6b6b;font-size:14px;margin-top:5px;padding:8px;text-align:center}.code-input:disabled,.code-submit:disabled{cursor:not-allowed;opacity:.6}.secret-button{cursor:default;height:50px;left:0;position:fixed;top:0;width:50px;z-index:1000}.admin-section{background:#caaeff33;border:1px solid #ffffff1a;border-radius:12px;margin-top:1.5rem;padding:1.5rem}.admin-logout-button{background:#ff696933;border:1px solid #ff69694d;border-radius:8px;color:var(--text-color);cursor:pointer;font-size:.9rem;font-weight:500;margin-top:10px;padding:12px;text-align:center;transition:all .3s ease;width:100%}.admin-logout-button:hover{background:#ff69694d;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.admin-logout-button:active{box-shadow:none;transform:translateY(0)}.admin-toggle-container{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff73;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:10px;padding:10px 15px;transition:background .3s ease,color .3s ease}.dark-mode .admin-toggle-container{background:#ffffff1a;transition:background .3s ease,color .3s ease}.toggle-switch{align-items:center;background:#0000;display:flex;gap:12px;height:auto;justify-content:space-between;position:relative;width:100%}.toggle-switch input{height:0;opacity:0;position:absolute;width:0}.toggle-switch>span:not(.toggle-slider){color:var(--text-color);flex:1 1 auto;font-size:.95rem;line-height:1.2;min-width:0;overflow-wrap:anywhere;white-space:normal}.toggle-slider{background-color:#7c7c7c;border-radius:24px;cursor:pointer;flex:0 0 auto;height:24px;position:relative;transition:.4s;width:50px}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:4px;content:"";height:16px;left:4px;position:absolute;transition:.4s;width:16px}input:checked+.toggle-slider{background-color:var(--primary-color)}input:focus+.toggle-slider{box-shadow:0 0 1px var(--primary-color)}input:checked+.toggle-slider:before{transform:translateX(26px)}.park-menu.liquid-glass-chrome{--c-glass:#d4d4d8;--c-glass-dark:#a1a1aa;--c-reflect:#fff9;--c-reflect-2:#fffc;--c-reflect-3:#ffffffb3;--c-shadow:#0000002e;--c-shadow-2:#0000001a;--c-glow:#85d2ff26}.park-menu.liquid-glass-chrome .toggle-slider{animation:bubbleMorph .6s ease-in-out alternate;backdrop-filter:blur(16px) saturate(160%) brightness(1.1);-webkit-backdrop-filter:blur(16px) saturate(160%) brightness(1.1);background:linear-gradient(135deg,color-mix(in srgb,#7c7c7c 15%,#0000),color-mix(in srgb,#7c7c7c 5%,#0000));box-shadow:inset 0 1px 0 var(--c-reflect),inset 2px 3px 0 -2px var(--c-reflect-2),inset -2px -2px 0 -2px var(--c-reflect-3),inset 0 0 0 1px color-mix(in srgb,#fff 12%,#0000),inset 1px 2px 0 -1px color-mix(in srgb,#fff 35%,#0000),inset -1px -1px 0 -1px color-mix(in srgb,#fff 25%,#0000),0 1px 3px 0 var(--c-shadow),0 4px 8px 0 var(--c-shadow-2);overflow:visible}.park-menu.liquid-glass-chrome input:checked+.toggle-slider{background-color:color-mix(in srgb,var(--primary-color) 85%,#0000);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 18%,#0000),inset 1px 2px 0 -1px color-mix(in srgb,#fff 45%,#0000),inset -1px -1px 0 -1px color-mix(in srgb,#fff 30%,#0000),inset -2px -4px 1px -3px color-mix(in srgb,#fff 15%,#0000),0 1px 4px 0 color-mix(in srgb,#000 20%,#0000),0 4px 10px 0 color-mix(in srgb,var(--primary-color) 35%,#0000)}.park-menu.liquid-glass-chrome .toggle-slider-wrapper{filter:url(#liquid-goo-filter);position:relative}.park-menu.liquid-glass-chrome .toggle-slider:before{box-shadow:inset 1px -1px 2px #ffffff80,inset 0 -1px 2px #ffffff80,inset -1px -1px 2px #ffffff80,inset 1px 1px 2px #4d4d4d80,inset -4px 2px 8px -4px #4d4d4d40,inset -1px 1px 4px #4d4d4d40,-1px -1px 6px #99999926,1px 1px 2px #4d4d4d26,2px 2px 4px #4d4d4d26,inset -2px -1px 2px #ffffff40,2px 4px 10px -4px #4d4d4d80;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}.dark-mode .park-menu.liquid-glass-chrome .toggle-slider{background-color:color-mix(in srgb,#5c5c5c 80%,#0000);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 8%,#0000),inset 1px 2px 0 -1px color-mix(in srgb,#fff 20%,#0000),inset -1px -1px 0 -1px color-mix(in srgb,#fff 15%,#0000),0 1px 3px 0 color-mix(in srgb,#000 30%,#0000),0 4px 8px 0 color-mix(in srgb,#000 20%,#0000)}.dark-mode .park-menu.liquid-glass-chrome input:checked+.toggle-slider{background-color:color-mix(in srgb,var(--primary-color) 80%,#0000);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 12%,#0000),inset 1px 2px 0 -1px color-mix(in srgb,#fff 30%,#0000),inset -1px -1px 0 -1px color-mix(in srgb,#fff 20%,#0000),inset -2px -4px 1px -3px color-mix(in srgb,#fff 10%,#0000),0 1px 4px 0 color-mix(in srgb,#000 30%,#0000),0 4px 10px 0 color-mix(in srgb,var(--primary-color) 40%,#0000)}.park-menu.liquid-glass-chrome .toggle-switch[data-active=true] .toggle-slider{backdrop-filter:blur(2px) saturate(150%);-webkit-backdrop-filter:blur(2px) saturate(150%);transform:scale(1.15);transition:transform .2s cubic-bezier(.34,1.56,.64,1),-webkit-backdrop-filter .2s ease-out;transition:transform .2s cubic-bezier(.34,1.56,.64,1),backdrop-filter .2s ease-out;transition:transform .2s cubic-bezier(.34,1.56,.64,1),backdrop-filter .2s ease-out,-webkit-backdrop-filter .2s ease-out}.park-menu.liquid-glass-chrome .toggle-switch[data-active=true] .toggle-slider:before{box-shadow:inset 1px -1px 3px #fff9,inset 0 -1px 3px #fff9,inset -1px -1px 3px #fff9,inset 1px 1px 3px #4d4d4d99,inset -5px 3px 10px -5px #4d4d4d59,inset -1px 1px 5px #4d4d4d59,-2px -2px 8px #99999940,2px 2px 3px #4d4d4d40,3px 3px 6px #4d4d4d40,inset -3px -2px 3px #ffffff59,3px 5px 12px -5px #4d4d4d99;transform:translateX(13px) scale(1.1);transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease-out}.park-menu.liquid-glass-chrome .toggle-switch[data-active=true] input:checked+.toggle-slider:before{transform:translateX(13px) scale(1.1)}.sound-toggle-button-settings{align-items:center;background:#ffffff26;border:1px solid #fff3;border-radius:20px;color:var(--text-color);display:inline-flex;height:28px;justify-content:center;transition:background .2s ease,transform .2s ease;width:44px}.sound-toggle-button-settings:hover{background:#ffffff40;transform:translateY(-1px)}.dark-mode .sound-toggle-button-settings{background:#0003;border-color:#ffffff26}.admin-header{border-bottom:1px solid #ffffff1a;color:var(--text-color);font-size:1.2rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem;text-align:center}.admin-item{background:#ffffff1a;border:none;border-radius:8px;color:var(--text-color);cursor:pointer;font-size:1rem;margin:8px 0;padding:12px;transition:all .3s ease;width:100%}.admin-item:hover{background:#fff3;transform:translateY(-2px)}.admin-item:active{transform:translateY(0)}@media (max-width:768px){.admin-section{margin-top:1.5rem;padding:1rem}.admin-header{font-size:1.1rem}.admin-item{font-size:.9rem;padding:10px}}.data-attribution{background-color:#ffffff1a;border-radius:8px;color:var(--text-color);font-size:14px;margin-top:30px;padding:15px;text-align:center;width:100%}.data-attribution a{color:#6366f1;font-weight:600;text-decoration:none;transition:color .3s ease}.data-attribution a:hover{color:#818cf8;text-decoration:underline}.my-pass-link-container{margin:2rem auto;max-width:400px;width:80%}.my-pass-link{align-items:center;background:var(--button-background);border:none;border-radius:12px;box-shadow:0 4px 6px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;font-weight:600;justify-content:center;padding:1rem;transition:all .3s ease;width:100%}.my-pass-link:hover{background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 6px 12px #00000026;transform:translateY(-3px)}.my-pass-link:active{transform:translateY(0)}.my-pass-link.active{background:linear-gradient(135deg,#4338ca,#6d28d9);box-shadow:inset 0 2px 4px #0003}.my-pass-icon{font-size:1.5rem;margin-right:.8rem}.my-pass-text{font-size:1.1rem}@media (max-width:768px){.my-pass-link-container{margin:1.5rem auto;width:90%}.my-pass-link{padding:.8rem}.my-pass-icon{font-size:1.3rem;margin-right:.6rem}.my-pass-text{font-size:1rem}}.app-settings{border-top:1px solid #0000001a;margin-top:.5rem;padding:1rem}.about-link-container{border-top:1px solid #ffffff1a;margin-bottom:1rem;margin-top:.5rem;padding:.5rem 1rem 0}.about-link,.lite-link,.support-link{align-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:#fff6;border-radius:8px;color:var(--text-color);display:flex;font-weight:500;justify-content:center;margin-bottom:.5rem;padding:.8rem;text-decoration:none;transition:all .3s ease;width:100%}.about-link:hover,.lite-link:hover,.support-link:hover{background:#fff6;transform:translateY(-2px)}.lite-link{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:linear-gradient(135deg,#6366f1b3,#7c3aedb3);border:1px solid #6366f14d}.lite-link:hover{background:linear-gradient(135deg,#6366f14d,#7c3aed4d);border-color:#6366f180;box-shadow:0 4px 12px #6366f133}.support-link{background:linear-gradient(135deg,#ec489966,#db277766);border:1px solid #ec48994d}.support-link:hover{background:linear-gradient(135deg,#ec48994d,#db27774d);border-color:#ec489980;box-shadow:0 4px 12px #ec489933;transform:translateY(-2px)}.dark-mode .about-link-container{border-top-color:#ffffff1a}.settings-header{color:#333;font-size:1.1rem;font-weight:600;margin-bottom:.8rem}.settings-items{display:flex;flex-direction:column;gap:.5rem}.settings-item{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;padding:.7rem 1rem;text-align:left;transition:background-color .2s ease;width:100%}.settings-item:hover{background-color:#0000000d}.settings-icon{align-items:center;display:flex;font-size:1.2rem;justify-content:center;margin-right:.8rem;width:24px}.settings-text{color:#333;font-size:.9rem}.dark-mode .app-settings{border-top-color:#ffffff1a}.dark-mode .settings-header,.dark-mode .settings-text{color:#fff}.dark-mode .settings-item:hover{background-color:#ffffff0d}.sound-toggle-button{align-items:center;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#ffffff1a;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:1.2rem;height:40px;justify-content:center;position:fixed;right:20px;top:20px;transition:all .3s ease;width:40px;z-index:1002}.sound-toggle-button:hover{background:#fff3;transform:scale(1.1)}.sound-toggle-button:active{transform:scale(.95)}.dark-mode .sound-toggle-button{background:#0003;color:var(--text-color)}.dark-mode .sound-toggle-button:hover{background:#0000004d}@media (max-width:768px){.sound-toggle-button{font-size:1rem;height:35px;right:85px;top:20px;width:35px}}@media (max-width:480px){.sound-toggle-button{font-size:1rem;height:35px;right:80px;top:11px;transform:translateZ(0);width:35px;z-index:1003}}@media (max-width:380px){.sound-toggle-button{height:35px;right:75px;top:11px;transform:translateZ(0);width:35px;z-index:1003}}.my-pass-button{align-items:center;background:var(--card-background);border-radius:8px;box-shadow:0 4px 6px #0000001a;color:var(--text-color);cursor:pointer;display:flex;font-size:1.3rem;font-weight:600;height:40px;justify-content:center;margin:1rem 0 1.5rem;max-height:40px;max-width:40px;min-height:40px;min-width:40px;overflow:visible;position:relative;transition:all .3s ease,background .3s ease,color .3s ease,box-shadow .3s ease;width:40px;z-index:1003}.my-pass-button:focus,.my-pass-button:hover{background:linear-gradient(135deg,#4f46e5,#7c3aed)}.my-pass-button.active{background:linear-gradient(135deg,#4338ca,#6d28d9);box-shadow:inset 0 2px 4px #0003}.my-pass-button .settings-icon{font-size:1.3rem;margin:0}.my-pass-button .my-pass-text{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;color:#222;display:block;font-size:1rem;font-weight:500;left:110%;opacity:0;padding:.5em 1em;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .2s,left .2s;white-space:nowrap;z-index:1100}.my-pass-button:focus .my-pass-text,.my-pass-button:hover .my-pass-text{left:120%;opacity:1;pointer-events:auto}@media (max-width:600px){.my-pass-button .my-pass-text{left:50%;top:110%;transform:translate(-50%)}.my-pass-button:focus .my-pass-text,.my-pass-button:hover .my-pass-text{left:50%;top:120%}}.menu-top-bar{align-items:center;display:flex;flex-direction:row;justify-content:space-between;left:20px;max-width:400px;position:fixed;top:20px;width:calc(100vw - 40px);z-index:1100}@media (min-width:768px){.menu-top-bar{width:380px}}@media (max-width:480px){.menu-top-bar{max-width:320px;width:calc(100vw - 32px)}}.menu-left-controls{gap:12px}.menu-left-controls,.menu-right-controls{align-items:center;display:flex}.menu-top-bar .hamburger,.menu-top-bar .my-pass-button{margin:0;position:static;z-index:1101}@media (max-width:600px){.menu-top-bar{gap:8px;left:8px;top:12px}.menu-content{transition:transform .2s ease,opacity .2s ease,visibility .2s ease}.park-logo-container{transition:transform .15s ease}.hamburger{transition:all .2s ease}.continent-button:hover,.park-logo-container:hover{transform:none}}.reorder-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;margin:.5rem 0;padding:0 1rem}.reorder-btn.icon-only,.reset-order-btn.icon-only{align-items:center;background:#0000;border:1px solid #ffffff26;border-radius:8px;color:var(--text-color);cursor:pointer;display:flex;font-size:1.2rem;height:36px;justify-content:center;opacity:.6;padding:.5rem;position:relative;transition:all .3s ease;width:36px}.reorder-btn.icon-only:hover,.reset-order-btn.icon-only:hover{background:#ffffff1a;box-shadow:0 4px 12px #00000026;opacity:1;transform:translateY(-2px)}.reset-order-btn.icon-only{color:#ef4444}.reset-order-btn.icon-only:hover{background:#ef44441a}.reorder-btn .tooltip,.reset-order-btn .tooltip{background:#000000e6;border-radius:6px;bottom:100%;color:#fff;font-size:.75rem;font-weight:500;left:50%;opacity:0;padding:.4rem .8rem;pointer-events:none;position:absolute;transform:translateX(-50%) translateY(-8px);transition:opacity .2s ease,transform .2s ease;white-space:nowrap;z-index:1000}.reorder-btn:hover .tooltip,.reset-order-btn:hover .tooltip{opacity:1;transform:translateX(-50%) translateY(-4px)}.dark-mode .reorder-btn .tooltip,.dark-mode .reset-order-btn .tooltip{background:#fffffff2;color:#222}.reorder-mode-info{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#3b82f61a;border:1px solid #3b82f64d;border-radius:12px;margin:1rem;padding:1rem}.reorder-mode-header{margin-bottom:1rem}.reorder-mode-title{color:var(--text-color);display:block;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.reorder-mode-text{color:var(--text-color);font-size:.85rem;margin:0;opacity:.8}.reorder-actions{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}.cancel-order-btn,.save-order-btn{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;padding:.6rem 1.2rem;transition:all .3s ease}.save-order-btn{background:#22c55e33;border:1px solid #22c55e66;color:var(--text-color)}.save-order-btn:hover{background:#22c55e4d;box-shadow:0 4px 12px #22c55e4d;transform:translateY(-2px)}.cancel-order-btn{background:#ef444433;border:1px solid #ef444466;color:var(--text-color)}.cancel-order-btn:hover{background:#ef44444d;box-shadow:0 4px 12px #ef44444d;transform:translateY(-2px)}.parks-grid.reorder-mode{gap:1.5rem}.park-logo-container.reorder-active{background:#3b82f61a;border:2px solid #3b82f64d;position:relative}.park-logo-container.reorder-active:hover{background:#3b82f626;transform:none}.reorder-buttons{display:flex;gap:.3rem;position:absolute;right:-8px;top:-8px;z-index:10}.move-btn{align-items:center;background:#3b82f6e6;border:1px solid #ffffff4d;border-radius:50%;box-shadow:0 2px 8px #0003;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;font-weight:700;height:32px;justify-content:center;transition:all .3s ease;width:32px}.move-btn:hover:not(:disabled){background:#3b82f6;box-shadow:0 4px 12px #3b82f666;transform:translateY(-2px)}.move-btn:disabled{background:#9ca3af80;cursor:not-allowed;opacity:.5}.park-logo-wrapper{height:100%;width:100%}@media (max-width:768px){.reorder-controls{gap:.4rem;margin:.3rem 0;padding:0 .5rem}.reorder-btn.icon-only,.reset-order-btn.icon-only{font-size:1.1rem;height:32px;width:32px}.reorder-mode-info{margin:.8rem;padding:.8rem}.reorder-mode-title{font-size:1rem}.reorder-mode-text{font-size:.8rem}.move-btn{font-size:1rem;height:28px;width:28px}}.park-videos-sidebar-root{pointer-events:none;position:fixed;right:0;top:0;z-index:10001}.park-videos-toggle{background:red;border:none;border-radius:8px 0 0 8px;box-shadow:0 4px 12px #0006;color:#fff;cursor:pointer;font-weight:700;letter-spacing:.06em;opacity:0;padding:12px 10px;pointer-events:none;position:fixed;right:-72px;text-orientation:mixed;text-transform:uppercase;top:50%;transform:translateY(-50%);transition:right .4s ease-out,opacity .3s ease-out,transform .4s ease-out;writing-mode:vertical-rl}.park-videos-toggle.visible{opacity:1;pointer-events:auto;right:0}.park-videos-toggle.active{background:#c00}.park-videos-toggle:focus-visible{outline:2px solid #fff;outline-offset:2px}.yt-toggle-label{font-size:.8rem}.park-videos-drawer{background:#0b1020;background:var(--background-card-dark,#0b1020);border-left:1px solid #ffffff1f;box-shadow:-4px 0 18px #0009;display:flex;flex-direction:column;height:100vh;height:100dvh;max-width:85vw;pointer-events:auto;position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .35s ease-out;width:320px}.park-videos-drawer.open{transform:translateX(0)}.park-videos-header{align-items:center;border-bottom:1px solid #ffffff1f;display:flex;justify-content:space-between;padding:14px 16px 10px}.park-videos-title{color:#fff;display:flex;flex-direction:column;font-size:.9rem;font-weight:600;gap:2px}.park-videos-park-name{font-size:.8rem;font-weight:400;opacity:.85}.yt-dot{background:red;border-radius:999px;box-shadow:0 0 12px #f00c;height:10px;margin-bottom:4px;width:10px}.park-videos-close{background:#0000;border:none;color:#fff;cursor:pointer;font-size:1.4rem;line-height:1}.park-videos-close:hover{color:#fdd}.park-videos-content{flex:1 1;overflow-y:auto;padding:12px 14px 10px}.park-videos-message{background:#ffffff0f;border-radius:8px;color:#ffffffd9;font-size:.9rem;padding:10px 12px}.park-videos-loader{display:flex;flex-direction:column;gap:8px}.park-videos-loader .loader-bar{animation:yt-shimmer 1.4s infinite;background:linear-gradient(90deg,#ffffff14,#fff3,#ffffff14);background-size:200% 100%;border-radius:999px;height:16px}.park-videos-list{display:flex;flex-direction:column;gap:10px}.park-video-item{background:#0f172ae6;border:1px solid #94a3b866;border-radius:10px;display:flex;gap:10px;padding:8px;text-decoration:none;transition:transform .15s ease-out,box-shadow .15s ease-out,border-color .15s ease-out}.park-video-item:hover{border-color:#f8fafce6;box-shadow:0 4px 12px #0f172acc;transform:translateY(-2px)}.park-video-thumbnail{background:#020617;border-radius:8px;flex-shrink:0;height:68px;overflow:hidden;position:relative;width:120px}.park-video-thumbnail img{display:block;height:100%;object-fit:cover;width:100%}.park-video-play-icon{align-items:center;color:#fff;display:flex;font-size:1.4rem;inset:0;justify-content:center;position:absolute;text-shadow:0 0 10px #000c}.park-video-info{display:flex;flex-direction:column;gap:4px;justify-content:center;min-width:0}.park-video-title{color:#e5e7eb;font-size:.85rem;font-weight:600;line-height:1.3}.park-video-author{color:#9ca3af;font-size:.75rem}.park-videos-footer{border-top:1px solid #94a3b84d;flex-shrink:0;padding:8px 14px calc(12px + env(safe-area-inset-bottom, 0px))}.park-videos-dismiss{background:#0000;border:1px solid #94a3b8b3;border-radius:999px;color:#e5e7eb;cursor:pointer;font-size:.8rem;padding:8px 10px;width:100%}.park-videos-dismiss:hover{background:#0f172ae6}@keyframes yt-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (max-width:768px){.park-videos-drawer{width:280px}.park-video-thumbnail{height:62px;width:110px}.park-videos-toggle{padding:10px 8px;right:-68px}}@supports (-webkit-touch-callout:none){.park-videos-drawer{height:-webkit-fill-available}.park-videos-footer{padding-bottom:calc(16px + env(safe-area-inset-bottom, 8px))}.park-videos-content{-webkit-overflow-scrolling:touch}}
/*# sourceMappingURL=main.2fefb0b0.css.map*/