.webcam-container{margin:0;padding:0;align-self:flex-start}.webcam-aspect-container,.webcam-container{max-height:calc(100vh - 180px);overflow:hidden;width:calc((100vh - 180px) * 16 / 9);max-width:100%;background-color:#000}.webcam-aspect-container{position:relative;aspect-ratio:16/9}.webcam-aspect-container iframe,.webcam-aspect-container>div{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;-o-object-fit:contain!important;object-fit:contain!important;-o-object-position:left center!important;object-position:left center!important}@media (max-height:600px){.webcam-aspect-container,.webcam-container{max-height:calc(100vh - 120px)}}iframe[src*="/api/video-proxy"],iframe[src*="youtube.com"]{transform-origin:left center!important}.blackout-overlay,.webcam-blackout,iframe[src*="/api/video-proxy"],iframe[src*="youtube.com"]{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important}.blackout-overlay,.webcam-blackout{z-index:50!important}.webcam-related-section{position:relative!important;z-index:-1!important;isolation:isolate}.webcam-container{z-index:10!important;position:relative}.about-webcam-outside{position:relative;z-index:1;background:transparent!important}.webcam-card-container{position:relative!important;width:100%!important;height:100%!important;overflow:hidden!important}.youtube-container,.youtube-iframe,video{padding:0!important;margin:0!important;width:100%!important;height:100%!important;background-color:#000!important}iframe[src*="/api/video-proxy"],iframe[src*="youtube.com"]{min-width:100%!important;min-height:100%!important;background-color:#000!important}.webcam-content-area{font-size:.95rem!important;line-height:1.75!important;color:#374151!important}.webcam-content-area h2,.webcam-content-area h3,.webcam-content-area h4{font-weight:600!important;color:#111827!important;margin-top:1.5rem!important;margin-bottom:.75rem!important}.webcam-content-area h2{font-size:1.25rem!important;line-height:1.5!important}.webcam-content-area h3{font-size:1.125rem!important;line-height:1.5!important}.webcam-content-area h4{font-size:1rem!important;line-height:1.5!important}.webcam-content-area p{margin-bottom:1rem!important;margin-top:.75rem!important;font-size:.95rem!important;line-height:1.75!important;color:#374151!important}.webcam-content-area ol,.webcam-content-area ul{margin:1rem 0;padding-left:1.5rem}.webcam-content-area li{margin-bottom:.5rem}.webcam-content-area a{color:#2563eb!important;text-decoration:none!important;transition:color .2s ease;font-weight:500}.webcam-content-area a:hover{color:#1d4ed8!important;text-decoration:underline!important}.webcam-content-area .mt-4.p-4.bg-gray-50{background-color:#f9fafb!important;padding:1rem!important;border-radius:.5rem!important;margin:1.25rem 0!important;border:1px solid #e5e7eb!important}.webcam-content-area .mt-4.p-4.bg-emerald-50{background-color:#ecfdf5!important;padding:1rem!important;border-radius:.5rem!important;margin:1.25rem 0!important;border:1px solid #a7f3d0!important}.webcam-content-area .inline-flex,.webcam-content-area button{margin:.75rem 0}.webcam-content-area table{width:100%;margin:1rem 0;border-collapse:collapse}.webcam-content-area td,.webcam-content-area th{padding:.5rem;text-align:left;border-bottom:1px solid #e5e7eb}.webcam-content-area+div{margin-top:1.5rem}.webcam-grid{display:grid;gap:1rem;padding:1rem}.webcam-content-area .mt-4.webcam-grid.bg-gray-50{background-color:#f9fafb;padding:1rem;border-radius:.5rem;margin:1.25rem 0;border:1px solid #e5e7eb}.webcam-content-area .mt-4.webcam-grid.bg-emerald-50{background-color:#ecfdf5;padding:1rem;border-radius:.5rem;margin:1.25rem 0;border:1px solid #a7f3d0}@media (min-width:1024px){.grid.webcam-grid,.webcam-grid.gap-4{gap:1rem}}@media (min-width:1920px){.webcam-grid{max-width:100%}}.webcam-grid{grid-template-columns:repeat(1,1fr)}@media (min-width:640px){.webcam-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.webcam-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.webcam-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width:1280px){.webcam-grid{grid-template-columns:repeat(5,1fr)}}@media (min-width:1920px){.webcam-grid{grid-template-columns:repeat(6,1fr);gap:1.5rem}}@media (min-width:2560px){.webcam-grid{grid-template-columns:repeat(6,1fr);max-width:2400px;margin:0 auto;gap:2rem}}.webcam-tile{position:relative;overflow:hidden;border-radius:.5rem;--tw-shadow:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;aspect-ratio:16/9}.webcam-tile,.webcam-tile:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.webcam-tile:hover{--tw-shadow:0 20px 25px -5px rgb(0 0 0/0.1),0 8px 10px -6px rgb(0 0 0/0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.webcam-tile .live-badge{position:absolute;top:.5rem;left:.5rem;z-index:10}.webcam-tile .live-badge-inner{display:inline-flex;align-items:center;gap:.375rem;border-radius:.25rem;--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1));padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:600;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.webcam-content-area .webcam-tile .live-badge-inner{margin:.75rem 0}.webcam-tile .viewer-badge{position:absolute;top:.5rem;right:.5rem;z-index:10}.webcam-tile .viewer-badge-inner{display:inline-flex;align-items:center;gap:.25rem;border-radius:.25rem;background-color:rgb(17 24 39/.8);padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.webcam-content-area .webcam-tile .viewer-badge-inner{margin:.75rem 0}.webcam-tile .title-overlay{position:absolute;bottom:0;left:0;right:0;z-index:10;background:linear-gradient(0deg,rgba(0,0,0,.95) 0,rgba(0,0,0,.7) 40%,rgba(0,0,0,.3) 70%,transparent);padding:3rem 1rem .75rem}.webcam-tile .title-text{font-weight:700;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));text-shadow:0 2px 4px rgba(0,0,0,.8);font-size:clamp(.875rem,1.5vw,1rem);line-height:1.2}.webcam-tile .location-text{margin-top:.25rem;color:rgb(255 255 255/.95);text-shadow:0 1px 3px rgba(0,0,0,.7);font-size:clamp(.75rem,1.2vw,.875rem)}.webcam-tile img{height:100%;width:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease}.webcam-tile:hover img{transform:none}.webcam-tile-skeleton{position:relative;overflow:hidden;border-radius:.5rem;--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1));aspect-ratio:16/9}.skeleton-shimmer{animation:shimmer 2s ease-out infinite;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1) 50%,transparent)}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}.live-pulse{animation:pulse-dot 2s ease-in-out infinite}.weather-badge{left:.5rem}.time-badge,.weather-badge{position:absolute;bottom:3rem;z-index:10}.time-badge{right:.5rem}.badge-inner{display:inline-flex;align-items:center;gap:.25rem;border-radius:.25rem;background-color:rgb(17 24 39/.8);padding:.25rem .5rem;font-size:.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.webcam-content-area .badge-inner{margin:.75rem 0}@media (max-width:640px){.webcam-grid{gap:.5rem;padding:.5rem}.webcam-tile .title-text{font-size:.75rem;line-height:1rem}.webcam-tile .location-text,.webcam-tile .time-badge,.webcam-tile .viewer-badge,.webcam-tile .weather-badge{display:none}}@media (prefers-color-scheme:dark){.webcam-tile{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.webcam-tile-skeleton{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}}.webcam-grid{will-change:contents}.webcam-grid,.webcam-tile{contain:layout style paint}.webcam-tile{will-change:transform}@media (prefers-reduced-motion:reduce){.webcam-tile,.webcam-tile img{transition:none!important;animation:none!important}.live-pulse,.skeleton-shimmer{animation:none!important}}@media (min-width:1024px){main{max-width:100%!important}.px-4{padding-left:1rem!important;padding-right:1rem!important}.desktop-video-ad-combo{max-width:100%!important;margin-left:0!important;margin-right:0!important}.grid.gap-4{gap:1rem!important}.lg\:mt-32{margin-top:2rem!important}.lg\:mt-6{margin-top:1.5rem!important}.about-webcam-outside{max-width:100%!important;margin-left:auto!important;margin-right:auto!important}.related-webcams-section{padding:1.25rem!important;background:#ffffff!important;border:1px solid #e5e7eb!important;border-radius:.5rem!important;margin-top:1.5rem!important;margin-bottom:1rem!important;max-width:100%!important;overflow:hidden!important;box-shadow:0 1px 2px 0 rgba(0,0,0,.03)!important}.related-webcams-heading{font-size:.9375rem!important;font-weight:600!important;color:#374151!important;margin-bottom:.75rem!important;text-transform:none!important;letter-spacing:-.01em!important;padding-bottom:.25rem!important;display:block!important;border-bottom:1px solid #e5e7eb!important}.related-webcams-list{list-style:none!important;padding:0!important;margin:0!important;display:flex!important;flex-wrap:wrap!important;gap:.5rem!important;justify-content:flex-start!important}.related-webcam-link,.related-webcams-list{max-width:100%!important;overflow:hidden!important}.related-webcam-link{color:#2563eb!important;text-decoration:none!important;font-size:.8125rem!important;padding:.375rem .625rem!important;background-color:#f9fafb!important;border:1px solid #e5e7eb!important;border-radius:.25rem!important;display:inline-block!important;transition:all .15s ease!important;white-space:nowrap!important;text-overflow:ellipsis!important;line-height:1.2!important}.related-webcam-link:hover{border-color:#3b82f6!important;background-color:#eff6ff!important;color:#1d4ed8!important;transform:translateX(2px)!important}.next-nearby-button-container{margin-top:1.5rem!important;padding-top:1.5rem!important;border-top:1px solid #e5e7eb!important}.next-nearby-button{display:inline-flex!important;align-items:center!important;gap:.5rem!important;padding:.625rem 1rem!important;background-color:#ffffff!important;color:#374151!important;font-size:.875rem!important;font-weight:500!important;text-decoration:none!important;border:1px solid #d1d5db!important;border-radius:.25rem!important;transition:all .15s ease!important}.next-nearby-button:hover{background-color:#f9fafb!important;border-color:#9ca3af!important;color:#111827!important}}.webcam-content-area .button,.webcam-content-area [role=button],.webcam-content-area button{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:.75rem 1.5rem!important;background-color:#3b82f6!important;color:white!important;border-radius:.375rem!important;font-weight:500!important;transition:all .2s ease!important;cursor:pointer!important;border:none!important}.webcam-content-area .button:hover,.webcam-content-area [role=button]:hover,.webcam-content-area button:hover{background-color:#2563eb!important;transform:translateY(-1px)!important}@media (max-width:1023px){.related-webcams-section{padding:1rem 0!important;border-top:1px solid #e5e7eb!important;margin-top:1.5rem!important}.related-webcams-heading{font-size:.875rem!important;font-weight:600!important;color:#374151!important;margin-bottom:.75rem!important;text-transform:uppercase!important;letter-spacing:.05em!important}.related-webcams-list{list-style:none!important;padding:0!important;margin:0!important;display:flex!important;flex-wrap:wrap!important;gap:.5rem!important}.related-webcam-link{color:#2563eb!important;text-decoration:none!important;font-size:.875rem!important;padding:.375rem .75rem!important;border:1px solid #e5e7eb!important;border-radius:.375rem!important;display:inline-block!important;transition:border-color .2s,background-color .2s!important}.related-webcam-link:active,.related-webcam-link:hover{border-color:#2563eb!important;background-color:#eff6ff!important}.next-nearby-button-container{margin-top:1.5rem!important;padding-top:1rem!important;border-top:1px solid #e5e7eb!important}.next-nearby-button{display:inline-block!important;padding:.5rem .875rem!important;background-color:#ffffff!important;color:#4b5563!important;font-size:.875rem!important;font-weight:500!important;text-decoration:none!important;border:1px solid #e5e7eb!important;border-radius:.25rem!important;transition:all .15s!important}.next-nearby-button:active,.next-nearby-button:hover{background-color:#f9fafb!important;border-color:#9ca3af!important;color:#111827!important}}@media (min-width:1920px){.ultra-wide-content-wrapper{max-width:1800px!important;margin-left:auto!important;margin-right:auto!important;width:100%!important}.webcam-page-container{padding-left:2rem!important;padding-right:2rem!important}.desktop-video-ad-wrapper,.webcam-page-container{max-width:1800px!important;margin:0 auto!important}.desktop-video-ad-wrapper{display:flex!important;flex-direction:column!important;align-items:center!important}.desktop-video-ad-combo>div:first-child,.webcam-container{max-width:1200px!important;width:100%!important;margin:0 auto!important}.about-webcam-outside{margin:0!important}.about-webcam-inner,.about-webcam-outside{max-width:100%!important;padding:0!important;background:transparent!important;border:none!important;box-shadow:none!important}.about-webcam-inner{border-radius:0!important}.about-webcam-inner>div,.about-webcam-outside .lg\:bg-gray-50{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;border-radius:0!important}.webcam-content-area{max-width:100%!important;margin:0!important;padding:0!important}.related-webcams-container,.webcam-hero-section>div,.webcam-navigation-wrapper{max-width:1800px!important;margin:0 auto!important}main>div>div{max-width:1800px!important;margin-left:auto!important;margin-right:auto!important}.related-webcams-section{max-width:100%!important;margin:1.5rem 0!important}.related-webcams-heading{font-size:1rem!important;font-weight:600!important;color:#374151!important;margin-bottom:1rem!important;padding-bottom:.5rem!important;border-bottom:1px solid #e5e7eb!important}.related-webcams-list{display:flex!important;flex-wrap:wrap!important;gap:.5rem .75rem!important;max-width:100%!important;justify-content:flex-start!important;align-items:center!important;list-style:none!important;padding:0!important;margin:0!important}.related-webcams-list li{flex:0 0 auto!important;margin:0!important}.related-webcam-link{display:inline-block!important;padding:.375rem .875rem!important;background:#f9fafb!important;border:1px solid #e5e7eb!important;border-radius:.25rem!important;color:#2563eb!important;text-decoration:none!important;font-size:.8125rem!important;transition:all .15s!important;white-space:nowrap!important}.related-webcam-link:hover{background:#eff6ff!important;border-color:#3b82f6!important;transform:translateY(-1px)!important;box-shadow:0 1px 3px rgba(0,0,0,.05)!important}}@media (min-width:2560px){.about-webcam-outside,.desktop-video-ad-wrapper,.related-webcams-container,.ultra-wide-content-wrapper,.webcam-hero-section>div,.webcam-navigation-wrapper,.webcam-page-container,main>div>div{max-width:2000px!important}.about-webcam-outside,.webcam-page-container{padding-left:3rem!important;padding-right:3rem!important}.webcam-content-area{max-width:1600px!important}details#seo-guide,details.border.border-blue-200,details.max-w-4xl{max-width:2000px!important}}@media (min-width:3840px){.about-webcam-outside,.desktop-video-ad-wrapper,.related-webcams-container,.ultra-wide-content-wrapper,.webcam-hero-section>div,.webcam-navigation-wrapper,.webcam-page-container,main>div>div{max-width:2400px!important}.about-webcam-outside,.webcam-page-container{padding-left:4rem!important;padding-right:4rem!important}.about-webcam-inner,.about-webcam-outside,.webcam-content-area{max-width:100%!important;background:transparent!important;border:none!important;box-shadow:none!important}.webcam-content-area section{max-width:100%!important;margin:0!important;width:100%!important}details#seo-guide{max-width:1800px!important;width:100%!important;margin:1rem auto 3rem!important;padding:1.5rem!important;box-sizing:border-box!important}details#seo-guide.px-6{padding:1.5rem 0!important}details.max-w-4xl{max-width:1800px!important}.webcam-content-area .mt-2.rounded-md,.webcam-content-area section.mt-2,section[aria-label="About this webcam"] .rounded-md{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}.webcam-content-area ol,.webcam-content-area p,.webcam-content-area ul{line-height:1.75!important}.desktop-video-ad-combo{margin:0 auto!important;max-width:1200px!important}.related-webcam-link{padding:.5rem 1rem!important;font-size:.875rem!important}.related-webcams-list{gap:.75rem 1rem!important}details#seo-guide,details.border.border-blue-200,details.max-w-4xl{max-width:2400px!important}}@media (min-width:5120px){.about-webcam-outside,.desktop-video-ad-wrapper,.related-webcams-container,.ultra-wide-content-wrapper,.webcam-hero-section>div,.webcam-navigation-wrapper,.webcam-page-container,main>div>div{max-width:2800px!important}.about-webcam-outside,.webcam-page-container{padding-left:5rem!important;padding-right:5rem!important}.webcam-content-area{max-width:2000px!important;margin:0 auto!important}details#seo-guide,details.border.border-blue-200,details.max-w-4xl{max-width:2800px!important}}@media (min-width:1920px){.desktop-video-ad-combo{padding:0!important}.grid{max-width:100%!important}.fixed.bottom-8.right-8{right:calc(50% - 900px)!important}details#seo-guide,details.border-blue-200.bg-blue-50{padding-left:1.5rem!important;padding-right:1.5rem!important}details#seo-guide,details.border.border-blue-200{max-width:none!important;width:100%!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}.ultra-wide-content-wrapper+details#seo-guide,.webcam-navigation-wrapper+details#seo-guide{padding-left:0!important;padding-right:0!important}}@media (min-width:2560px){.fixed.bottom-8.right-8{right:calc(50% - 1000px)!important}}@media (min-width:3840px){.fixed.bottom-8.right-8{right:calc(50% - 1200px)!important}}*{transition-property:background-color,border-color,color,fill,stroke,box-shadow,transform!important;transition-duration:.15s!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}:hover:not(.webcam-card-container):not(.webcam-card-container *){opacity:1!important}.webcam-card-container,.webcam-card-container *,.webcam-card-container:hover,.webcam-card-container:hover *{opacity:1!important;visibility:visible!important;display:inherit!important}.webcam-card-container:hover .responsive-video-overlay,.webcam-card-container:hover [data-webcam-type=beachcam] .responsive-video-overlay,[data-webcam-type=beachcam]:hover .responsive-video-overlay{display:block!important;opacity:1!important;visibility:visible!important;z-index:2147483647!important}.webcam-card-container{position:relative;background-color:transparent!important;border-radius:12px!important;overflow:hidden;transition:none!important;cursor:pointer}.webcam-card-container .relative,.webcam-card-container .youtube-container,.webcam-card-container [data-webcam-type],.webcam-card-container iframe,.webcam-card-container img,.webcam-card-container video,.webcam-card-container>div{opacity:1!important;visibility:visible!important;display:block!important}.webcam-card-container:hover .relative,.webcam-card-container:hover .youtube-container,.webcam-card-container:hover [data-webcam-type],.webcam-card-container:hover iframe,.webcam-card-container:hover img,.webcam-card-container:hover video,.webcam-card-container:hover>div{opacity:1!important;visibility:visible!important;display:block!important;transform:none!important;filter:none!important}.webcam-card-container .play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);opacity:0;transition:opacity .2s ease!important;pointer-events:none}.webcam-card-container:hover .play-overlay{opacity:1!important}.webcam-card-container .title-overlay{position:absolute;bottom:0;left:0;right:0;padding:1rem;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent);transform:translateY(100%);transition:transform .2s ease,opacity .2s ease!important}.webcam-card-container:hover .title-overlay{transform:translateY(0)!important;opacity:1!important}.webcam-card-container .webcam-tile,.webcam-card-container .webcam-tile:hover{transform:none!important;overflow:visible!important;contain:none!important;will-change:auto!important}@media (hover:hover) and (pointer:fine){.webcam-card-container .play-overlay{transition:opacity .2s ease!important}.webcam-card-container .title-overlay{transition:transform .2s ease,opacity .2s ease!important}}.webcam-card-container,a[href*="/webcam/"]{pointer-events:auto!important}.video-tile-container:hover .iframe-container,.video-tile-container:hover .video-tile,.video-tile-container:hover iframe{transform:none!important;scale:1!important;box-shadow:none!important;background-color:transparent!important;opacity:1!important;filter:none!important;transition:none!important;animation:none!important}.video-tile-container:hover .video-tile{border:1px solid transparent!important}.video-tile-container:hover .video-tile-title{opacity:0!important;transition:opacity .1s ease-out!important}@media (max-width:768px){.video-tile-container:hover .iframe-container,.video-tile-container:hover .video-tile,.video-tile-container:hover iframe{pointer-events:none!important}}.desktop-video-ad-combo,.iframe-container,.menu-toggle-bar,.mobile-horizontal-menu,.mobile-related-webcam-item,.mobile-theater-mode,.mobile-video-container,.related-webcams,.seamless-mobile-container,.theater-bottom-menu,.theater-video-container,.theater-video-container-fixed,.video-container,.video-wrapper,.webcam-card-container,.webcam-container,.webcam-expander-mobile,.webcam-grid,.webcam-item,.youtube-container,[data-custom-webcam-container=true],[data-webcam-type=beachcam],[data-webcam-type=youtube]{transition:none!important;animation:none!important;-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-webkit-animation:none!important;-moz-animation:none!important;-o-animation:none!important;will-change:auto!important;-webkit-will-change:auto!important;transform:none!important;-webkit-transform:none!important;-moz-transform:none!important;-o-transform:none!important;backface-visibility:visible!important;-webkit-backface-visibility:visible!important;perspective:none!important;-webkit-perspective:none!important;contain:none!important;isolation:auto!important}.desktop-video-ad-combo:hover,.iframe-container:hover,.menu-toggle-bar:hover,.mobile-horizontal-menu:hover,.mobile-related-webcam-item:hover,.mobile-theater-mode:hover,.mobile-video-container:hover,.related-webcams:hover,.seamless-mobile-container:hover,.theater-bottom-menu:hover,.theater-video-container-fixed:hover,.theater-video-container:hover,.video-container:hover,.video-wrapper:hover,.webcam-card-container:hover,.webcam-container:hover,.webcam-expander-mobile:hover,.webcam-grid:hover,.webcam-item:hover,.youtube-container:hover,[data-custom-webcam-container=true]:hover,[data-webcam-type=beachcam]:hover,[data-webcam-type=youtube]:hover{transition:none!important;animation:none!important;box-shadow:none!important;background-color:inherit!important;border-color:inherit!important;opacity:1!important;filter:none!important;will-change:auto!important}.desktop-video-ad-combo *,.iframe-container *,.menu-toggle-bar *,.mobile-horizontal-menu *,.mobile-related-webcam-item *,.mobile-theater-mode *,.mobile-video-container *,.related-webcams *,.seamless-mobile-container *,.theater-bottom-menu *,.theater-video-container *,.theater-video-container-fixed *,.video-container *,.video-wrapper *,.webcam-card-container *,.webcam-container *,.webcam-expander-mobile *,.webcam-grid *,.webcam-item *,.youtube-container *,[data-custom-webcam-container=true] *,[data-webcam-type=beachcam] *,[data-webcam-type=youtube] *{transition:none!important;animation:none!important;transform:none!important;will-change:auto!important}.desktop-video-ad-combo :hover,.iframe-container :hover,.menu-toggle-bar :hover,.mobile-horizontal-menu :hover,.mobile-related-webcam-item :hover,.mobile-theater-mode :hover,.mobile-video-container :hover,.related-webcams :hover,.seamless-mobile-container :hover,.theater-bottom-menu :hover,.theater-video-container :hover,.theater-video-container-fixed :hover,.video-container :hover,.video-wrapper :hover,.webcam-card-container :hover,.webcam-container :hover,.webcam-expander-mobile :hover,.webcam-grid :hover,.webcam-item :hover,.youtube-container :hover,[data-custom-webcam-container=true] :hover,[data-webcam-type=beachcam] :hover,[data-webcam-type=youtube] :hover{transition:none!important;animation:none!important;box-shadow:none!important;background-color:inherit!important;border-color:inherit!important;opacity:1!important;filter:none!important}.aspect-video[data-webcam-type=beachcam]:hover .blackout-rectangle-indicator,.webcam-card-container:hover [data-webcam-type=beachcam] .blackout-rectangle-indicator,.webcam-card-container:hover [data-webcam-type=beachcam] .video-blackout-container .blackout-rectangle-indicator,.webcam-card-container[data-webcam-type=beachcam]:hover .blackout-rectangle-indicator,.webcam-card-container[data-webcam-type=beachcam]:hover .video-blackout-container .blackout-rectangle-indicator,.webcam-tile[data-webcam-type=beachcam]:hover .blackout-rectangle-indicator,[data-webcam-type=beachcam]:hover .blackout-rectangle-indicator,[data-webcam-type=beachcam]:hover .video-blackout-container .blackout-rectangle-indicator{opacity:1!important;visibility:visible!important;display:flex!important;z-index:2147483647!important;position:absolute!important;top:24px!important;left:61px!important;width:730px!important;height:20px!important;background-color:rgba(0,0,0,1)!important;pointer-events:none!important;transform:none!important;filter:none!important}.aspect-video[data-webcam-type=beachcam]:hover .video-rectangle-overlay,.webcam-card-container:hover [data-webcam-type=beachcam] .video-rectangle-overlay,.webcam-card-container[data-webcam-type=beachcam]:hover .video-rectangle-overlay,.webcam-container[data-webcam-type=beachcam]:hover .video-rectangle-overlay,.webcam-tile[data-webcam-type=beachcam]:hover .video-rectangle-overlay,[data-custom-webcam-container=true][data-webcam-type=beachcam]:hover .video-rectangle-overlay,[data-webcam-type=beachcam]:hover .video-rectangle-overlay{opacity:1!important;visibility:visible!important;display:block!important;z-index:2147483647!important;position:absolute!important;pointer-events:none!important;transform:none!important;filter:none!important}.aspect-video[data-webcam-type=beachcam]:hover .rectangle-overlay,.aspect-video[data-webcam-type=beachcam]:hover .responsive-video-overlay,.responsive-video-overlay,.webcam-card-container:hover .responsive-video-overlay,.webcam-card-container:hover [data-webcam-type=beachcam] .rectangle-overlay,.webcam-card-container:hover [data-webcam-type=beachcam] .responsive-video-overlay,.webcam-card-container:hover [data-webcam-type=beachcam] .video-rectangle-overlay .rectangle-overlay,.webcam-card-container[data-webcam-type=beachcam]:hover .rectangle-overlay,.webcam-card-container[data-webcam-type=beachcam]:hover .responsive-video-overlay,.webcam-card-container[data-webcam-type=beachcam]:hover .video-rectangle-overlay .rectangle-overlay,.webcam-container[data-webcam-type=beachcam]:hover .rectangle-overlay,.webcam-container[data-webcam-type=beachcam]:hover .responsive-video-overlay,.webcam-container[data-webcam-type=beachcam]:hover .video-rectangle-overlay .rectangle-overlay,.webcam-tile[data-webcam-type=beachcam]:hover .rectangle-overlay,.webcam-tile[data-webcam-type=beachcam]:hover .responsive-video-overlay,[data-custom-webcam-container=true][data-webcam-type=beachcam]:hover .rectangle-overlay,[data-custom-webcam-container=true][data-webcam-type=beachcam]:hover .responsive-video-overlay,[data-custom-webcam-container=true][data-webcam-type=beachcam]:hover .video-rectangle-overlay .rectangle-overlay,[data-webcam-type=beachcam] .responsive-video-overlay,[data-webcam-type=beachcam]:hover .rectangle-overlay,[data-webcam-type=beachcam]:hover .responsive-video-overlay,[data-webcam-type=beachcam]:hover .video-rectangle-overlay .rectangle-overlay{opacity:1!important;visibility:visible!important;display:block!important;z-index:2147483647!important;position:absolute!important;pointer-events:none!important;transform:none!important;filter:none!important;background-color:rgba(0,0,0,1)!important}iframe,iframe[src*="/api/video-proxy"],iframe[src*="youtube.com"],iframe[src*=beachcam]{transition:none!important;animation:none!important;transform:none!important;will-change:auto!important;backface-visibility:visible!important;perspective:none!important}iframe:hover,iframe[src*="/api/video-proxy"]:hover,iframe[src*="youtube.com"]:hover,iframe[src*=beachcam]:hover{transition:none!important;animation:none!important;box-shadow:none!important;filter:none!important}@media (max-width:768px){.mobile-horizontal-menu,.mobile-horizontal-menu *,.mobile-theater-mode,.mobile-theater-mode *,.seamless-mobile-container,.seamless-mobile-container *,.theater-video-container,.theater-video-container *{transition:none!important;animation:none!important;transform:none!important;will-change:auto!important;-webkit-tap-highlight-color:transparent!important}.mobile-horizontal-menu :hover,.mobile-horizontal-menu:hover,.mobile-theater-mode :hover,.mobile-theater-mode:hover,.seamless-mobile-container :hover,.seamless-mobile-container:hover,.theater-video-container :hover,.theater-video-container:hover{transition:none!important;animation:none!important;transform:none!important;scale:1!important;box-shadow:none!important;background-color:inherit!important;border-color:inherit!important;opacity:1!important}}@media (min-width:769px){.desktop-video-ad-combo,.desktop-video-ad-combo *,.webcam-card-container,.webcam-card-container *,.webcam-container,.webcam-container *{transition:none!important;animation:none!important;transform:none!important;will-change:auto!important}.desktop-video-ad-combo :hover,.desktop-video-ad-combo:hover,.webcam-card-container :hover,.webcam-card-container:hover,.webcam-container :hover,.webcam-container:hover{transition:none!important;animation:none!important;transform:none!important;scale:1!important;box-shadow:none!important;background-color:inherit!important;border-color:inherit!important;opacity:1!important}}video,video:hover{transition:none!important;animation:none!important;transform:none!important;will-change:auto!important;backface-visibility:visible!important;perspective:none!important}*{animation-duration:0s!important;animation-delay:0s!important;transition-duration:0s!important;transition-delay:0s!important}a{position:relative;color:inherit;text-decoration:none;transition:color .15s ease!important}a:not(.btn):not([class*=card]):hover{color:#1f2937!important;opacity:1!important}.content a:not(.btn),article a:not(.btn),p a:not(.btn){background-image:linear-gradient(90deg,currentColor 0,currentColor);background-size:0 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .15s ease!important}.content a:not(.btn):hover,article a:not(.btn):hover,p a:not(.btn):hover{background-size:100% 1px;opacity:1!important}.sidebar-menu a,.webcam-item a,nav li a{position:relative;padding:.5rem .75rem;border-radius:6px;transition:background-color .15s ease,color .15s ease!important}.sidebar-menu a:hover,.webcam-item a:hover,nav li a:hover{background-color:transparent!important;color:inherit!important;opacity:1!important;transform:none!important}.sidebar-menu button:hover,.sidebar-menu button:not(:disabled):hover{background-color:transparent!important}.webcam-item a.active,.webcam-item a[aria-current=page]{background-color:#eff6ff!important;color:#2563eb!important;font-weight:500!important}.webcam-item{transition:background-color .15s ease!important}.webcam-item:hover{background-color:transparent!important}.webcam-item:hover .live,.webcam-item:hover .total{opacity:1!important;color:inherit!important}.btn,button{position:relative;font-weight:500;transition:all .15s ease!important;transform:translateZ(0)}.btn:not(:disabled):hover,button:not(:disabled):hover{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)!important;transform:translateY(-1px)!important;opacity:1!important}.btn-secondary:not(:disabled):hover,button.secondary:not(:disabled):hover{background-color:#f3f4f6!important;transform:none!important;opacity:1!important}.btn-ghost:not(:disabled):hover,button.ghost:not(:disabled):hover{background-color:rgba(0,0,0,.05)!important;transform:none!important;opacity:1!important}.category-card{position:relative;overflow:hidden;border-radius:8px;transition:transform .2s ease,box-shadow .2s ease!important}.category-card:hover{transform:translateY(-4px)!important;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)!important;opacity:1!important}.category-card img{transition:transform .4s ease!important}.category-card:hover img{transform:scale(1.05)!important;opacity:1!important}input:not([type=checkbox]):not([type=radio]),select,textarea{border:1px solid #e5e7eb;transition:border-color .15s ease,box-shadow .15s ease!important}input:not([type=checkbox]):not([type=radio]):hover,select:hover,textarea:hover{border-color:#9ca3af!important;opacity:1!important}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:#3b82f6!important;box-shadow:0 0 0 3px rgba(59,130,246,.1)!important;outline:none!important;opacity:1!important}input[type=checkbox],input[type=radio]{transition:transform .15s ease!important}input[type=checkbox]:hover,input[type=radio]:hover{transform:scale(1.1)!important;opacity:1!important}.dropdown-item{padding:.5rem 1rem;transition:background-color .15s ease!important}.dropdown-item:hover{background-color:#f3f4f6!important;opacity:1!important}footer a{color:#6b7280;transition:color .15s ease!important}footer a:hover{color:#111827!important;opacity:1!important}.lift-on-hover{transition:transform .2s ease,box-shadow .2s ease!important}.lift-on-hover:hover{transform:translateY(-2px)!important;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)!important;opacity:1!important}.glow-on-hover{transition:box-shadow .2s ease!important}.glow-on-hover:hover{box-shadow:0 0 20px rgba(59,130,246,.3)!important;opacity:1!important}.scale-on-hover{transition:transform .15s ease!important}.scale-on-hover:hover{transform:scale(1.1)!important;opacity:1!important}.disabled,[aria-disabled=true],[disabled]{cursor:not-allowed!important;opacity:.5!important}.disabled:hover,[aria-disabled=true]:hover,[disabled]:hover{transform:none!important;box-shadow:none!important}:focus-visible{outline:2px solid #3b82f6!important;outline-offset:2px!important;opacity:1!important}:focus:not(:focus-visible){outline:none!important}@media (hover:none) and (pointer:coarse){:hover{transform:none!important}.btn:active,.card:active,a:active,button:active{transform:scale(.98)!important;opacity:1!important}}.main-content,.main-content:hover,article,article:hover,body,body:hover,main,main:hover,section,section:hover{background-color:#f9fafb!important;opacity:1!important;transform:none!important}.video-container,.video-container:hover,.youtube-container,.youtube-container:hover,[data-webcam-type],[data-webcam-type]:hover,iframe{opacity:1!important;visibility:visible!important}.related-webcams a{transition:transform .2s ease,box-shadow .2s ease!important}.related-webcams a:hover{transform:translateY(-2px)!important;box-shadow:0 10px 15px -3px rgba(0,0,0,.1)!important;opacity:1!important}.breadcrumb a:hover{color:#2563eb!important;opacity:1!important}.overlay-gradient-bottom{background:linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,.5),rgba(0,0,0,0))}.overlay-chip{display:inline-block;background-color:rgba(0,0,0,.6);backdrop-filter:blur(6px);padding:.5rem .75rem;border-radius:.375rem;color:#fff!important}.overlay-title{color:#fff!important;text-shadow:2px 2px 6px rgba(0,0,0,.9),0 0 8px rgba(0,0,0,.8)}.overlay-subtitle{color:#fff!important;text-shadow:1px 1px 4px rgba(0,0,0,.9),0 0 6px rgba(0,0,0,.7)}body.antialiased.seamless-mobile-ready.force-visibility-active.has-sidebar-menu,body.antialiased.seamless-mobile-ready.force-visibility-active.user-active.has-sidebar-menu,body.force-visibility-active,body.has-sidebar-menu,body.seamless-mobile-ready,body.user-active{margin:0!important;padding:0!important;box-sizing:border-box!important;overflow-x:hidden;position:relative}body.has-sidebar-menu{overflow-x:hidden}body.force-visibility-active,body.user-active{position:relative}iframe[src*="/api/video-proxy"],iframe[src*="youtube.com"]{min-height:200px;min-width:100%;aspect-ratio:16/9;display:block;contain:style paint;visibility:visible;opacity:1;background-color:#000;box-sizing:border-box}iframe[src*="/api/video-proxy"]:not([width]):not([height]),iframe[src*="youtube.com"]:not([width]):not([height]){width:100%;height:auto;aspect-ratio:16/9}#app-root>div>div.flex.flex-col.lg\\:flex-row>main.flex-grow,main.flex-grow{position:relative;will-change:auto}#app-root>div>div.flex.flex-col.lg\\:flex-row>main.flex-grow>div.bg-white,div.bg-white,main.flex-grow>div.bg-white{position:relative;box-sizing:border-box}.flex.items-center.justify-between>.flex.items-center.gap-2,div.flex.items-center.justify-between>div.flex.items-center.gap-2{min-height:44px;position:relative;align-items:center;justify-content:space-between;box-sizing:border-box;flex-shrink:0}body.has-sidebar-menu .main-content,body.has-sidebar-menu main{position:relative}body.force-visibility-active iframe{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important}body,body.antialiased,body.antialiased.seamless-mobile-ready.force-visibility-active.has-sidebar-menu,body.antialiased.seamless-mobile-ready.force-visibility-active.user-active.has-sidebar-menu,body.force-visibility-active,body.has-sidebar-menu,body.seamless-mobile-ready,body.user-active{overflow-y:visible!important;overflow-x:hidden!important}html{overflow-y:auto;overflow-x:hidden}@media (max-width:768px){body.seamless-mobile-ready{position:relative;overflow-x:hidden}.seamless-mobile-container{min-height:70vh;contain:style paint}.fixed.bottom-0.z-50{position:fixed!important;bottom:0!important;left:0!important;right:0!important;z-index:50!important;display:block!important;visibility:visible!important}}a,h1,h2,h3,h4,h5,h6,p,span{min-height:1.2em;line-height:1.5}img{max-width:100%;height:auto;display:block;aspect-ratio:attr(width) /attr(height)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .3s ease-in}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}