.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:1000}@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%;max-height:80vh;max-width:600px;overflow-y:auto;padding:20px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1001}@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;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin:-20px -20px 20px;padding:15px;position:-webkit-sticky;position:sticky;z-index:1}.modal-close{font-size:1.5rem;margin:-10px;padding:10px}.modal-body{display:flex;flex-direction:column;flex-wrap:wrap;padding:10px}@media (max-width:768px){.modal-body{flex-direction:column}.modal-content{left:50%!important;max-height:75vh;max-width:90%;padding:18px;top:50%!important;transform:translate(-50%,-50%)!important}.modal-header{margin:-18px -18px 18px;padding:12px}}@media (max-width:480px){.modal-overlay{padding:10px}.modal-content{left:50%!important;max-height:90vh;max-width:100%;padding:15px;transform:translate(-50%,-50%)!important}.modal-close{font-size:1.3rem;margin:-15px;padding:15px}.modal-header{margin:-15px -15px 15px;padding:10px}.modal-header h3,.modal-header h5{font-size:.95rem}.chart-container{max-height:50vh}}@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;margin:0;padding:8px}.pwa-modal-overlay{background-color:#000000b3}.pwa-modal-overlay .modal-content{animation:fadeInUp .6s ease-out forwards;background:linear-gradient(135deg,#f5f7fa,#e4e8f0);border:none;border-radius:16px;box-shadow:0 10px 25px #0003;max-width:90%;overflow:hidden}.pwa-modal-overlay .modal-header{background:linear-gradient(135deg,#3498db,#2980b9);border-bottom:none;padding:15px 20px}.pwa-modal-overlay .modal-header h3{font-size:1.3rem;font-weight:600;margin:0;text-shadow:0 1px 2px #0003}.pwa-modal-overlay .modal-close{color:#fff;font-size:1.5rem;opacity:.8}.pwa-modal-overlay .modal-body{padding:10px}.pwa-modal-overlay .modal-body p{font-size:1.1rem;margin-bottom:15px}.install-instructions{background-color:#3e094f9c;border:none;border-radius:12px;box-shadow:0 4px 8px #0000000d;margin:5px 0;padding:12px}.install-instructions strong{color:#a0d6fa;display:block;font-size:1.1rem;margin-bottom:10px}.install-instructions ol{margin-bottom:15px;margin-left:0}.install-instructions li{color:#fff;line-height:1.5;margin-bottom:12px;padding-left:5px;position:relative}.install-instructions li:before{color:#3498db;content:"•";display:inline-block;font-weight:700;margin-right:8px}.warning{background-color:#e74c3c1a;border-left:3px solid #e74c3c;border-radius:8px;color:#e74c3c;margin-top:10px;padding:10px}.never-show-again,.warning{font-size:.95rem;font-weight:500}.never-show-again{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:50px;box-shadow:0 4px 8px #0000001a;color:#fff;cursor:pointer;display:block;margin-left:auto;margin-right:auto;margin-top:5px;padding:10px 20px;transition:all .3s ease;width:-webkit-fit-content;width:fit-content}.never-show-again:hover{background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 6px 12px #00000026;transform:translateY(-2px)}.never-show-again:active{box-shadow:0 2px 4px #0000001a;transform:translateY(1px)}@media (max-width:768px){.pwa-modal-overlay .modal-content{max-height:calc(100vh - 105px)!important;top:20px!important;transform:translateX(-50%)!important}}@media (max-width:480px){.pwa-modal-overlay .modal-content{max-height:calc(100vh - 100px)!important}}@media (min-width:769px){.pwa-modal-overlay{display:none!important}}.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:9999}.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:10001}.general-splash.light{background:linear-gradient(135deg,#f8f9fa,#e9ecef 50%,#dee2e6);color:#212529}.general-splash.dark{background:linear-gradient(135deg,#0a0a0a,#1a1a1a 50%,#2a2a2a);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 4px 8px rgba(255,255,255,.1))}@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:#0000;background:linear-gradient(45deg,#fff,#e0e0e0);-webkit-background-clip:text;background-clip:text}.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 10px #ffffff1a}50%{text-shadow:0 0 20px #fff3}}.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:#ffffff1a}.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}@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}}: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;--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-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}*{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);background-color:var(--card-background);border-radius:var(--border-radius-lg);max-width:1600px;min-height:calc(100vh - 80px);padding:24px;position:relative;transition:background-color .5s ease,color .5s ease,border-color .5s ease,box-shadow .5s ease}.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;font-size:.95rem;margin-bottom:8px;margin-top:3px;padding:10px 20px;text-align:center;transition:all .2s ease;width:100%}.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(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--card-shadow);box-sizing:border-box;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 .5s ease,box-shadow .5s ease,border-color .5s ease}.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-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}}:root{--text-color:#2d3748;--text-color-secondary:#4a5568;--button-text-color:#2d3748;--button-hover-text-color:#fff;--card-background:#ffffffd9;--background-gradient:linear-gradient(135deg,#fdfbff,#e7f0ff 25%,#dffaff 50%,#fff);--gradient-light:linear-gradient(180deg,#fff,hsla(0,0%,86%,.651));--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 4px 24px #1f26871f;--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:linear-gradient(135deg,#fdfbff,#e7f0ff 25%,#dffaff 50%,#fff);background:var(--background-gradient);color:#2d3748;color:var(--text-color);font-weight:400}h1{color:#1e293b;font-weight:700;text-shadow:0 2px 4px #ffffff4d}: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{background-color:#ffffffd9;background-image:linear-gradient(135deg,#fff6,#ebe6ff4d);box-shadow:0 4px 24px #1f26871f;box-shadow:var(--card-shadow);box-sizing:border-box;max-width:100%}.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;border:3px solid #f0f0f0;border-radius:10px}:root:not(.dark-mode) ::-webkit-scrollbar-thumb:hover{background-color:#a8a8a8}:root:not(.dark-mode) ::-webkit-scrollbar-corner{background:#0000}.dark-mode{--text-color:#fff;--button-text-color:#fff;--button-hover-text-color:#fff;--card-background:#25252533;--background-gradient:linear-gradient(135deg,#2b134b,#102066 50%,#02285a);--button-background:#14051691;--button-hover-background:#2d0096cc;--border-color:#ffffff1a;--card-shadow:0 8px 32px 0 #0000005e;--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:2px 2px 4px #0006}.dark-mode .park-content{background-color:var(--card-background);color:var(--text-color)}.dark-mode .opening-hours{background:#0003;border-color:#ffffff1a}.dark-mode .attraction-item,.dark-mode .show-item{background:var(--gradient-dark);border-color:#ffffff1a}.dark-mode .attraction-item.expanded{background-color:#4f46e54d;border-color:#ffffff26}.dark-mode .filter-buttons button{background-color:#3a3a3a;color:#fff}.dark-mode .filter-buttons button.active,.dark-mode .filter-buttons button:hover{background-color:#8a4fff;color:#fff}.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-color:#4facfe;color:#e0e0e0}.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-title{border-bottom-color:#4facfe80}.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:var(--gradient-dark)}.dark-mode .modal-overlay{background-color:#000529b3}.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:#1e1e1e;border-radius:10px}.dark-mode ::-webkit-scrollbar-thumb{background-color:#4f4f4f;border:3px solid #1e1e1e;border-radius:10px}.dark-mode ::-webkit-scrollbar-thumb:hover{background-color:#6a6a6a}.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%}}.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-copyright{color:var(--text-muted);font-size:.9rem;margin-top:.5rem}.footer-attributions{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:1.5rem;justify-content:center;text-align: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-basis:100%;flex-wrap:wrap;font-size:.85rem;gap:.3rem;justify-content:center}.footer-favorites .footer-link{color:#7da7d9;font-weight:600;text-decoration:none}.footer-favorites .footer-link:hover{color:#8ec5fc;text-decoration:underline}@media (max-width:1024px){.footer-content{flex-direction:column;gap:.7rem;text-align:center}.footer-copyright{margin-left:0;margin-top:.5rem}.footer-attributions{flex-direction:column;gap:.5rem}.footer-photos-attribution,.footer-weather-attribution{justify-content:center;margin:.2rem 0}.app-footer{padding:1.2rem 0}}.view-selector{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);justify-content:center;justify-items:stretch;margin-bottom:20px;max-width:100%;padding-bottom:10px}.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;font-size:.9rem;font-weight:700;margin:0 3px;padding:10px 15px;text-align:center;text-decoration:none;transition:var(--transition-default);white-space:nowrap}.view-selector .nav-button:hover{background-color:#8ec5fc}.view-selector .nav-button.active{background-color:#7066fd;box-shadow:0 4px 6px #0003;color:#fff}.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: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%}}.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:0 5px 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-color:#e0c3fc;color:#4a4a4a}.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-color:var(--button-hover-background);box-shadow:0 4px 6px #0003;color:var(--button-hover-text-color)}.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{filter:brightness(0) saturate(100%) invert(13%) sepia(7%) saturate(159%) hue-rotate(0deg) brightness(95%) contrast(88%);height:24px;transition:filter .2s;width:24px}.dark-mode .icon-button .history-graph-icon{filter:brightness(0) invert(1)}.icon-button:hover .history-graph-icon{fill:var(--button-hover-text-color)}.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{animation:stardust .5s ease-out}.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 .arrow{color:#8ec5fc;margin-left:10px;transition:transform .3s ease}.sort-dropdown-button .arrow.up{transform:rotate(180deg)}.sort-dropdown-menu button{background:#8ec5fc33;color:#4a4a4a}.sort-dropdown-menu button:hover{background-color:#8ec5fc33}.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-color:#7066fd;border:none;border-radius:20px;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-color:#5a4fd0;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:var(--button-hover-background)}.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{align-items:center;background:#307ffd;border:none;border-radius:5px;box-shadow:none;color:#fff;display:flex;font-size:12px;font-weight:500;gap:3px;height:26px;min-width:0;padding:2px 8px;transition:background .2s}.share-btn-compact:hover{background:#6eadff}.share-wait-times-button{display:none!important}.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}.attraction-item:focus-within{outline:2px solid #4facfe;outline-offset:2px}.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)}.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;align-items:baseline;flex-direction:column;flex-wrap:wrap;gap:8px}.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-item{background-color:var(--card-background);border-radius:12px;cursor:pointer;margin:8px 0;padding:12px;transition:all .2s ease}.show-info{display:flex;justify-content:space-between;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;border-radius:12px;display:inline-flex;gap:4px;padding:3px 8px;white-space:nowrap}.show-time,.show-times span{background-color:#7066fd;color:#fff;font-size:.85rem}.show-times span{border-radius:15px;box-shadow:0 2px 5px #0000001a;padding:6px 10px;transition:background-color .3s ease}.show-times span:hover{background-color:#8ec5fce6}.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}.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)}.chart-wrapper{display:flex;flex:1 1 auto;flex-direction:column;height:100%;min-width:0;position:relative;width:100%}canvas#waitTimeChart{flex:1 1;height:100%!important;width:100%!important}@media (max-width:768px){.chart-container{flex-direction:column;height:auto}canvas#waitTimeChart{height:400px!important}#waitTimeChart,.chart-stats{width:100%}}.dark-mode .chart-stats{background:#1e1e1ee6;color:#fff}@media (max-width:768px){.chart-container{flex-direction:column;height:auto}.chart-wrapper{height:400px}.chart-stats{margin-top:15px;width:100%}}.chart-container{align-items:flex-start;display:flex;gap:20px;height:400px;width:100%}.chart-stats{align-self:flex-start;background:#ffffffe6;border-radius:8px;box-shadow:0 2px 4px #0000001a;flex-shrink:0;padding:15px;width:200px}@media (max-width:768px){.chart-container{flex-direction:column;height:auto}canvas#waitTimeChart{height:400px!important}.chart-stats{width:100%}}.stats-box{gap:15px}.stat-item,.stats-box{display:flex;flex-direction:column}.stat-item{gap:5px}.stat-item label{color:#666;font-size:.9em;font-weight:500}.stat-item span{font-size:1.2em;font-weight:700}.dark-mode .stat-item label{color:#ccc}.fa-spin{animation:spin .3s ease-in-out}#resetZoom{background-color:var(--button-background);border:1px solid var(--border-color);color:var(--text-color);transition:all .3s ease}#resetZoom:hover{background-color:var(--button-hover-background);color:var(--button-hover-text-color)}.date-selector-container{margin-bottom:16px;width:200px}.date-select{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' 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 8px center;background-repeat:no-repeat;background-size:16px;border:1px solid var(--border-color);border-radius:8px;color:#333;cursor:pointer;font-size:.95rem;padding:8px 12px;transition:all .2s ease;width:100%}.date-select:hover{background-color:#f5f5f5;border-color:var(--primary-color)}.date-select:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2);outline:none}.date-select option{background-color:#fff;color:#333}.dark-mode .date-select{border-color:#444}.dark-mode .date-select,.dark-mode .date-select option{background-color:#2a2a2a;color:#fff}.dark-mode .date-select:hover{background-color:#333;border-color:var(--primary-color)}@media (max-width:768px){.date-selector-container{width:100%}.date-select{font-size:.9rem;padding:6px 10px}}.value-change{animation:pulse .3s ease}.no-data{background:var(--background-color);border:1px dashed var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:1.1rem;margin:20px 0;padding:40px;text-align:center}.dark-mode .no-data{background:var(--dark-background);border-color:var(--dark-border-color)}.loading{color:var(--text-secondary);font-size:1.1rem;padding:40px}.error,.loading{text-align:center}.error{background:var(--error-background);border-radius:8px;color:var(--error-color);font-size:.9rem;margin:20px 0;padding:20px}.detailed-analysis{background:var(--background-color);border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-top:5px;padding:20px}.analysis-section{margin-bottom:20px}.analysis-section:last-child{margin-bottom:0}.analysis-section h3{align-items:center;color:var(--text-color);display:flex;font-size:1.2rem;gap:8px;margin:0 0 20px}.analysis-section .stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.analysis-section .stat-card{background:var(--card-background);border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:20px}.analysis-section .stat-card h4{color:var(--text-color);font-size:1.1rem;margin:0 0 15px}.analysis-section .stat-card ul{list-style:none;margin:0;padding:0}.analysis-section .stat-card li{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:.95rem;justify-content:space-between;padding:8px 0}.analysis-section .stat-card li:last-child{border-bottom:none}.trend{border-radius:4px;font-size:.9rem;margin-left:8px;padding:2px 6px}.trend.positive{background:var(--success-background);color:var(--success-color)}.trend.negative{background:var(--error-background);color:var(--error-color)}.dark-mode .detailed-analysis{background:var(--dark-background)}.dark-mode .analysis-section .stat-card{background:var(--dark-card-background)}.dark-mode .analysis-section .stat-card li{border-bottom-color:var(--dark-border-color)}@media (max-width:768px){.detailed-analysis{padding:15px}.analysis-section .stats-grid{grid-template-columns:1fr}.analysis-section .stat-card{padding:15px}.analysis-section h3{font-size:1.1rem}.analysis-section .stat-card h4{font-size:1rem}.analysis-section .stat-card li{font-size:.9rem}}.confidence-score,.reliability-score{color:var(--primary-color);font-size:.9rem;letter-spacing:1px;margin-left:8px}.confidence-score:hover,.reliability-score:hover{opacity:.8}.dark-mode .confidence-score,.dark-mode .reliability-score{color:var(--primary-color);opacity:.9}.confidence-high,.confidence-low,.confidence-medium{display:none}.logo-container{align-items:center;box-sizing:border-box;display:flex;justify-content:center;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}}.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%)}}.bottom-navigation{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid var(--border-color);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;padding:8px 16px;position:fixed;right:20px;transform:translateY(0);transition:transform .3s ease-in-out,opacity .3s ease;z-index:10000}.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}.nav-btn{align-items:center;background:#0000;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;transition:all .2s ease}.nav-btn:hover{background:#ffffff1a;transform:translateY(-2px)}.nav-btn.active{background:#85d2ff44;border:1px solid #a9a8ff70}.nav-btn.menu-btn.active{background:#a8dfff44;border:1px solid #a9a8ff70}.btn-icon{font-size:18px;margin-bottom:2px}.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-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}.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: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;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{width:44px}.toggle-slider{background-color:#fff3;border:1px solid var(--border-color);transition:.3s}.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}.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}.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{flex:1 1;gap:8px;justify-content:flex-end}.action-btn,.action-buttons{align-items:center;display:flex}.action-btn{background:#0000;border:none;border-radius:12px;color:var(--text-color);cursor:pointer;flex-direction:column;justify-content:center;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-switch{cursor:pointer;transition:background-color .3s}.toggle-slider,.toggle-switch{background-color:#ccc}.sound-toggle-button{background:#0000;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)}.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:10px;height:65px;left:7px;padding:6px 8px;right:7px}.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:85vh}.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}.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:200px}.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}.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.5rem;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:20px}.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{color:var(--text-color);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{background:none;border:none;color:#666;cursor:pointer;font-size:24px;padding:0;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:10px;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}.efteling-park{padding:20px}@media (max-width:768px){.restaurants-grid,.shows-grid{grid-template-columns:1fr}.efteling-loading{height:20vh}.efteling-line,.magic-sparkles{width:95%}}.efteling-loading{align-items:center;box-sizing:border-box;display:flex;height:30vh;justify-content:center;margin:auto;max-width:1600px;min-height:150px;padding:10px;position:relative;width:100%}.efteling-line{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg version='1.0' xmlns='http://www.w3.org/2000/svg' width='1800' height='1088' viewBox='0 0 1350 816'%3E%3Cpath d='M741.7 249.7c-.3.5-.8 4.4-1.1 8.8-1.3 15.2-7.2 54.6-11.2 74.5-6 29.5-10.1 46.1-14.6 59.5-.5 1.6-1.4 4.3-1.8 6-1 3.4-3.6 11-4.9 14-.5 1.1-1.7 4-2.7 6.5-3.2 7.9-11.1 20.4-15.6 24.7-13.9 13.5-32 3.8-44.1-23.7-6.3-14.4-12.8-39.6-14.2-55.2-.7-8-1.2-9.8-3.1-9.8-.8 0-1.4.1-1.4.2 0 .2-.7 6.4-1.5 13.8s-1.8 21.8-2.1 32c-1 34.5-6.7 64.2-13.6 71-2.8 2.9-3.1 2.9-5.8 1.5-1.6-.8-3.2-1.5-3.5-1.5-.3 0-1.4 2-2.5 4.5-1.5 3.6-2.4 4.5-4.4 4.5-3.6 0-10.8 6-13.3 11-1.9 3.9-2.2 6.2-2.2 17.7l-.1 13.2-2.9 1.5c-2.5 1.3-3.1 1.3-5 0-1.1-.8-2.6-3.5-3.2-5.9-2-7.9-7.1-9.8-14.7-5.4-6.3 3.6-6.7 2.6-5.3-12.8.6-7 1.6-17.1 2.2-22.3.5-5.2 1.3-14.2 1.6-19.9.6-9.6.8-10.7 3.5-13.6 3.5-4 3.5-4.8.1-7.5-3.6-2.8-5-6.6-7.9-21.5-.2-1.1-.8-2.7-1.4-3.5-1.3-2-2.5-.2-3.4 4.9-1.2 6.8-5.6 9.4-5.6 3.3 0-1.5-.5-3.4-1-4.2-1.5-2.4-4.2 1.1-4.7 6.1-.4 4.2-2.5 7.9-7.7 13.6-3.4 3.7-4.6 3.5-4.6-1 0-2.1 1-4.1 3.2-6.4l3.2-3.3-3.7-3.2c-4.6-4.1-10.7-15.8-10.7-20.7-.1-2-.7-4.7-1.4-6.1-1.4-2.4-1.4-2.4-2.6 2-1.4 5.2-5.3 10.8-8.4 12-1.7.7-2.6.3-4.3-1.8-1.3-1.5-2.3-3-2.3-3.3 0-.4-1.7-3.3-3.9-6.5-2.4-3.7-4.1-7.7-4.5-10.6-.8-5.4-1.7-6.3-4.6-4.8-1.5.8-2 2.1-2 5.4 0 3.7-1.1 5.9-7.7 15.9-8.3 12.6-11.1 14.7-18.7 14.7-7.4 0-15.6-4-15.6-7.6 0-.8-.7-3-1.6-5.1-3.3-7.8-4.2-9.9-5.9-14.3-.9-2.5-2.4-5.9-3.2-7.7-.9-1.9-1.3-4.2-.9-5.7.9-3.7-.3-7.6-2.4-7.6-2.8 0-4.3 2.6-3.6 6.2.6 3.5.1 5.8-3.4 14.8-3.9 10.2-5.1 13.5-6.1 16.6-1.7 5.7-5.1 9.5-10.4 11.6-7.6 3-11.5 5-11.5 6 0 .5 1.4 1.4 3 2 1.7.5 3.4 1.8 3.9 2.7.5.9 1.2 22.1 1.6 47.2.9 52.9 1.7 49.1-9.9 43.4-4-1.9-7.9-3.5-8.7-3.5-.8.1-3 1.4-4.9 3-1.9 1.7-3.7 2.7-4.1 2.2-.4-.4-.9-27.5-1.1-60.2l-.3-59.5 2.4-4.3c1.2-2.3 2.6-4.2 3-4.2.4 0 1.3-1.1 1.9-2.4.9-2.1.8-2.6-.7-3.1-1-.3-2.5-.3-3.4.1-2.3.9-5.7-1.4-5.7-3.9 0-1.2-1.2-5.4-2.6-9.2-1.4-3.9-2.8-7.9-3.1-9-1-3.2-5.3-9.5-6.9-10.2-3.3-1.3-8.3 6.8-12.4 20.3-3.6 11.5-3.4 11.2-8.1 11.6-5 .4-5.7 1.6-2.9 4.6 3.6 3.9 6 10.3 6 16.5 0 3.4-.4 5.7-1 5.5-.5-.1-2.2-2.8-3.7-5.8-4.8-9.5-.9-9-68.4-9-45.2 0-58.9.3-60.2 1.2-.9.7-2.9 3.8-4.4 6.8-3.6 7.2-5.9 7.4-5.5.5.3-5.8 2.4-11.7 5.8-16.3 3.1-4 2.3-5.6-2.2-4.8-2.7.6-3.6.3-4.8-1.6-.8-1.3-1.8-4.1-2.1-6.3-1.9-11.1-8.5-24.5-12.1-24.5-3.5 0-11 13.9-13 24-.3 1.9-1.3 4.8-2.1 6.3-1.2 2.4-1.8 2.7-4.7 2.1-4.6-.8-5.3.9-2.1 5 5.4 7.1 5.9 11.2 4.6 42.1-.6 15.4-1.4 42.7-1.7 60.8-.4 18-1 32.9-1.4 33.2-2.4 1.5-6.6-18.1-5.3-24.9.7-3.5-2.3-9.6-4.7-9.6-2.7 0-3.1 1.1-3.9 10.5-1.3 14.1-5 15.2-5.1 1.5-.1-12-2.3-24.6-4.9-27.4-1.2-1.3-2.7-4.1-3.2-6.2-1.8-6.5-6.9-11.8-13.3-13.8-3.1-1-5.9-2.2-6.2-2.8-.4-.6-1.2-5.3-1.8-10.5-.6-5.1-1.5-9.5-2.1-9.6-.6-.1-1.4 4.3-2 10.2l-1 10.5-5.2 2.4c-6.3 2.8-9.5 6.7-12.6 15.2-1.9 5.3-2.8 6.5-5.2 7.3-1.7.6-4.5 2.3-6.3 3.8-2.6 2.4-4.2 2.9-8.2 2.9-4.4 0-5.2-.3-7.6-3.5-1.4-1.9-3.4-3.5-4.3-3.5-.9 0-2.9 1.6-4.5 3.6l-2.9 3.6-2.4-3.1c-3-3.8-5.5-3.9-8.2-.5-2.1 2.6-2.1 3.3-2.1 78.9 0 62.8.2 76.5 1.4 77.4 1.5 1.3 1273.5 1.7 1274.7.4.4-.5 1.1-50.5 1.7-111.3 1.2-122.5 1.5-115.5-5.1-114.8-2.7.2-3.6 1-5.4 4.8-3.6 7.1-9.1 12.3-14.3 13.5-3.9 1-4.7 1.7-6.9 5.9-1.8 3.5-3.1 4.9-5.3 5.3-2.5.5-2.8 1-2.8 4.7-.1 2.2-.7 5.2-1.4 6.6-1.2 2.1-1.2 2.9 0 5.2 2.2 4.3 1.7 6.3-2.3 8.9-4.7 3-5.3 5.5-1.9 8.6 3.5 3.2 3.3 4.9-.8 6.8-2.6 1.3-3.8 2.7-4.8 5.8-1.3 4.3-6.3 8.3-8.4 6.9-.6-.4-9.3-11.6-19.2-25-19.5-26-20.7-28.5-15.8-31.7 1.4-.9 6.4-1.9 12.2-2.5 5.5-.5 11.5-1.4 13.4-1.9 1.9-.6 4.8-1.1 6.5-1.1 1.6 0 5-.6 7.5-1.4 2.5-.8 7.6-2.4 11.3-3.6 9-2.7 12.7-4.7 12.8-6.8 0-.9 0-6.1-.1-11.4-.1-6.9.3-10.4 1.3-12 .8-1.3 1.8-5.7 2.2-9.9l.7-7.7-4.6-2.2c-4.1-2.1-4.6-2.2-6.1-.6-2.4 2.3-3.5 2-4.6-1.4-1.3-3.5-2.2-3.7-5.7-.9l-2.7 2-1.6-2c-2-2.4-5.4-2.8-6.3-.6-.3.8-1.6 1.5-3 1.5-1.3 0-2.6-.7-3-1.5-.9-2.3-4.2-1.8-6 1.1-1.9 2.8-5.2 3-6.9.2-.8-1.2-.5-2.7 1.3-6.2 2.4-4.5 2.4-4.6.5-6-1.1-.8-4.4-2.7-7.2-4.2-5.3-2.6-5.3-2.6-5.3-7.5 0-4.3-.3-5-2.9-6.4-3.7-1.9-4.2-3.2-2.5-7.2 1.1-2.9 1.1-3.3-1-4.7-4.2-2.7-5.6-4.7-5.6-8.1 0-4.5-1.6-8.5-3.4-8.5-1 0-1.6 2-2.1 7-.6 6.2-1.1 7.5-3.9 10-2.7 2.6-2.9 3.2-1.8 5 2.1 3.3 1.4 5.5-2.5 8.1-3.3 2.1-3.8 3-4.1 6.6-.3 3.6-1 4.8-5.8 9.1-2.9 2.7-5.4 5.6-5.4 6.5 0 .8 1.1 2.9 2.5 4.5 3.4 4.1 3.2 5.5-1.5 8.6-5.5 3.6-12.1 3.7-14.4.1-2.4-3.6-4.9-3.1-7.4 1.4-3.2 5.6-5.9 6.2-7.5 1.6-.2-.6-1.9-.3-4 .7-2 1-4.2 1.5-4.9 1.3-.8-.3-2.8.7-4.6 2.2l-3.2 2.8 1.1 7.5c.6 4.1 1.7 8.6 2.5 10.2.9 1.8 1.4 6 1.4 12.3 0 11.4 1.3 13.5 8.3 13.5 2.3 0 6 .5 8.2 1.1 2.2.6 12.3 1.4 22.5 1.7l18.5.7.3 4.5c.3 4 1.9 6.6 15.2 24.5 8.2 11 15.9 21.3 17.2 23 1.4 1.6 3.9 5.1 5.7 7.7 3.2 4.4 3.2 4.8 1.8 7.5-.8 1.5-1.9 5-2.4 7.8-.9 5.7-3.6 7.4-5.2 3.2-.5-1.3-2.1-3.1-3.5-4-1.4-.9-4.4-3.6-6.6-5.8l-4.1-4.2-6.9.6c-3.8.3-7.8 1-8.8 1.6-2.3 1.2-6.2-1.1-6.2-3.8 0-3-4.2-6.1-8.3-6.1-2 0-3.9-.5-4.2-1-1-1.6-4.4-1.1-7.4 1.1-3.8 2.8-6.4 2.1-7.7-2-1.4-4.3-3.5-5.4-8.4-4.6-3.4.6-4.4.3-7.7-2.3-4.4-3.5-14.2-6.7-17.5-5.6-1.3.4-3.8 2.3-5.6 4.3-2.8 3.1-3.5 3.4-5.2 2.3-4.2-2.6-8.4-.4-9.2 4.7-.1 1.3-1.4 3.2-2.8 4.3-2.5 1.8-2.7 1.8-9.2-.6-3.6-1.4-7.4-2.2-8.5-2-1.2.3-3.5-.2-5.2-1.1-2.8-1.4-3.5-1.4-6.1-.2-2.6 1.3-3 1.3-4.5-.3-1.3-1.4-1.4-2.3-.6-3.9 1.9-3.5 1.3-8-1.5-10.7-2.7-2.8-5.2-2.9-13.9-.5-4.8 1.2-7.1.7-8.6-2.1-.9-1.8-.1-3 6.9-10.2 12.2-12.4 15.1-16.2 20.5-26.6 5.1-9.9 6.7-16.5 6.7-28.5 0-38.7-28.9-67.4-68.2-67.5-17.4 0-32 4.6-44.8 14.2-7.4 5.6-10.6 9.1-17.1 18.6-3.5 5.2-5.8 7.4-10.1 9.7-15 8-26 23.7-28.7 41.2-1.6 10.1-.2 19.8 4.2 29.1 3.3 6.9 11.3 16.3 17.5 20.6 4.4 3 5.8 5.4 4.2 7-.5.5-1 2.2-1 3.7 0 2.1-.7 2.9-2.9 3.7-1.6.6-4.6 2.6-6.8 4.4-3.9 3.5-10.8 6.8-14.3 6.8-1.1 0-3.4-1.3-5.3-2.9-3.3-3-4.1-4.8-8.2-19.4-.9-3.2-2.3-6.1-3.1-6.4-2.1-.8-4.1 1.3-4.8 4.9-.3 1.8-1.3 4.3-2.2 5.6l-1.6 2.4-2.6-2.5c-1.5-1.4-3.6-2.7-4.7-3.1-5.7-1.7-18.5-45.3-18.5-62.9 0-11.6-4.7-58.3-6.6-65-.9-3-2.1-1-2.8 4.5-3 23.7-9.3 47-17 62.7-8.4 17.2-17.3 25.1-28.2 25.1-7 0-10.3-1.9-17.7-10-5-5.6-11.9-17.9-16.2-29-.9-2.5-2.2-5.6-2.7-7-1.6-3.9-3.9-11.2-4.8-15-.4-1.9-1.3-4.9-1.8-6.5-1-2.8-2.2-7.3-5.6-21.3-2.4-9.8-6.8-31.7-9-44.7-6.4-38.4-7.6-46.4-7.6-52.5 0-8.5-2.5-15.4-4.3-12.3z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:90% auto;filter:invert(1);height:100%;margin:0 auto;max-width:1600px;position:absolute;width:100%}.restaurants-section,.shows-section{background:var(--card-background);border-radius:var(--border-radius-sm);box-shadow:var(--card-shadow);margin-top:30px;padding:20px}.restaurants-grid,.shows-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:15px}.restaurant-card,.show-card{background:var(--card-background);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:15px;transition:var(--transition-default)}.restaurant-card h3,.show-card h3{color:var(--text-color);margin:0 0 10px}.showtimes{display:flex;flex-direction:column;gap:8px}.showtime{align-items:center;color:var(--text-color);display:flex;font-size:.9em;gap:10px}.availability-info{border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:5px 0}.status{font-weight:500;margin-top:5px}.phantasialand-loading{box-sizing:border-box;height:30vh;margin:auto;max-width:1600px;min-height:150px;padding:10px}.magic-sparkles{height:100%;position:absolute;width:100%}.magic-sparkles:after,.magic-sparkles:before{animation:sparkle 1.5s ease-in-out infinite;color:gold;content:"✨";font-size:20px;position:absolute}.magic-sparkles:before{animation-delay:.5s;left:0}.magic-sparkles:after{animation-delay:0s;right:0}@keyframes sparkle{0%,to{opacity:1;transform:translateY(0) scale(1)}50%{opacity:.7;transform:translateY(-20px) scale(1.2)}}.single-rider-info{align-items:center;background:var(--card-background);border-radius:var(--border-radius-sm);display:flex;gap:8px;padding:4px 8px}.single-rider-info .wait-time{font-weight:700}.single-rider-info .status{border-radius:var(--border-radius-sm);padding:2px 6px}.single-rider-info .status.open{background-color:var(--wait-time-very-short);color:#fff}.single-rider-info .status.closed{background-color:var(--wait-time-closed);color:#fff}.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;display:flex;height:100vh;justify-content:center;left:0;opacity:0;pointer-events:all;position:fixed;right:0;top:0;transition:opacity .5s ease-in-out,visibility .5s ease-in-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;height:100px;position:relative;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)}to{transform:rotate(6deg)}}.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{min-height:100vh;opacity:0;position:relative;transition:opacity .5s ease-in-out}.shows-content.loaded{opacity:1}.park-content,.restaurants-content{min-height:100vh;opacity:0;position:relative;transition:opacity .5s ease-in-out}.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)}}.futuroscope-loading{align-items:center;display:flex;height:300px;justify-content:center;position:relative;width:300px}.futuroscope-logo{animation:lapin-shake .3s infinite;height:auto;position:relative;transform-origin:center;width:300px}.futuroscope-logo:after{animation:lapin-shadow .3s 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 .futuroscope-logo{filter:invert(0) brightness(100%)}@keyframes lapin-shake{0%{transform:translate(0) rotate(0deg)}10%{transform:translate(-5px,-5px) rotate(-5deg)}20%{transform:translate(5px) rotate(5deg)}30%{transform:translate(-5px,5px) rotate(-3deg)}40%{transform:translate(5px,5px) rotate(3deg)}50%{transform:translate(-5px,-5px) rotate(5deg)}60%{transform:translate(5px) rotate(-5deg)}70%{transform:translate(-5px,5px) rotate(3deg)}80%{transform:translate(5px,-5px) rotate(-3deg)}90%{transform:translate(-5px) rotate(5deg)}to{transform:translate(0) rotate(0deg)}}@keyframes lapin-shadow{0%,to{opacity:.3;transform:translateX(-50%) scale(1)}50%{opacity:.2;transform:translateX(-60%) scale(.8)}}.dark-mode .robot-body,.dark-mode .robot-head{background-color:#2c3e50;border-color:#1abc9c}.dark-mode .robot-eye{background-color:#ecf0f1}.dark-mode .robot-eye:after{background-color:#e74c3c}.dark-mode .robot-antenna,.dark-mode .robot-antenna:after,.dark-mode .robot-light{background-color:#1abc9c}.dark-mode .robot-mouth{background-color:#ecf0f1}.dark-mode .robot-neck{background-color:#7f8c8d}.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;display:flex;height:100%;justify-content:center;width:100%}.portaventura-loading .portaventura-logo{animation:pulse 1.5s ease-in-out infinite;height:auto;width:400px}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.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)}}.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}.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}.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;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(95vh - 140px);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{animation:spin 1s linear infinite;border-top:3px solid var(--border-color);border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);height:40px;margin-bottom:15px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.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{padding:0 15px 15px}.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}}.park-menu{position:relative;width:100%;z-index:1000}.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(25px);-webkit-backdrop-filter:blur(25px);background:#ffffff26;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}.menu-scroll-container{display:flex;flex:1 1;flex-direction:column;padding-bottom:2rem}.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-scroll-container{-webkit-overflow-scrolling:touch;height:100%;overflow-y:auto;padding-bottom:100px}.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.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:#ffffffe6;border-radius:12px;cursor:pointer;display:flex;justify-content:center;margin:0 auto;max-width:280px;opacity:0;padding:5px;transform:translateY(20px);will-change:transform}.dark-mode .park-logo-container,.park-logo-container{transition:all .3s ease,transform .3s ease,opacity .3s ease,background .3s ease}.dark-mode .park-logo-container{background:#918f8f73}@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(3){animation-delay:.2s}.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{background:var(--button-hover-background);transform:translateY(-5px)}.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-y:auto;padding-bottom:2rem}.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;background:hsla(0,0%,100%,.199);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{background-color:#d6d6d6;border-radius:24px;display:inline-block;height:24px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#7c7c7c;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.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)}.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;background:#ffffff1a;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:#fff3;transform:translateY(-2px)}.lite-link{background:linear-gradient(135deg,#6366f133,#7c3aed33);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,#ec489933,#db277733);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}}
/*# sourceMappingURL=main.9c70783b.css.map*/