.modal-overlay[data-v-f5d445ca]{z-index:1000;background:#0f172a73;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal[data-v-f5d445ca]{background:#fff;border-radius:20px;width:100%;max-width:420px;padding:28px 20px 20px;position:relative;box-shadow:0 20px 40px #0000002e}.modal-close[data-v-f5d445ca]{cursor:pointer;color:#0f172a;background:0 0;border:none;font-size:18px;position:absolute;top:12px;right:12px}.modal-state[data-v-f5d445ca]{text-align:center}.state-icon[data-v-f5d445ca]{border-radius:999px;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 14px;font-size:24px;font-weight:700;display:flex}.state-icon.info[data-v-f5d445ca],.state-icon.success[data-v-f5d445ca]{color:#166534;background:#dcfce7}.state-icon.error[data-v-f5d445ca]{color:#b91c1c;background:#fee2e2}.spinner[data-v-f5d445ca]{border:3px solid #e5e7eb;border-top-color:#111827;animation:.8s linear infinite spin-f5d445ca}.modal-title[data-v-f5d445ca]{color:#0f172a;margin:0 0 10px;font-size:22px;font-weight:700;line-height:1.2}.modal-title-error[data-v-f5d445ca]{color:#b91c1c}.modal-description[data-v-f5d445ca]{color:#475569;margin:0 0 22px;font-size:15px;line-height:1.5}.modal-actions[data-v-f5d445ca]{flex-direction:column;gap:10px;display:flex}.modal-button[data-v-f5d445ca]{color:#fff;background:#0f172a;border:none;font-size:16px;font-weight:700}.modal-button[data-v-f5d445ca],.modal-button-secondary[data-v-f5d445ca]{cursor:pointer;border-radius:12px;width:100%;padding:14px}.modal-button-secondary[data-v-f5d445ca]{color:#0f172a;background:#fff;border:1px solid #cbd5e1;font-size:15px;font-weight:600}@keyframes spin-f5d445ca{to{transform:rotate(1turn)}}.dot-green[data-v-2c8b9548]{background:#15803d}.dot-green-light[data-v-2c8b9548]{background:#4ade80}.dot-yellow[data-v-2c8b9548]{background:#fde047}.dot-orange[data-v-2c8b9548]{background:#fb923c}.dot-red[data-v-2c8b9548]{background:#dc2626}.dot-gray[data-v-2c8b9548]{background:#9ca3af}.hide-scrollbar[data-v-2898d3a3]::-webkit-scrollbar{display:none}.hide-scrollbar[data-v-2898d3a3]{scrollbar-width:none}.fiability-dot[data-v-2898d3a3]{border-radius:9999px;width:7px;height:7px;position:absolute;top:4px;right:4px}.dot-green[data-v-2898d3a3]{background:#16a34a}.dot-green-light[data-v-2898d3a3]{background:#65a30d}.dot-yellow[data-v-2898d3a3]{background:#eab308}.dot-orange[data-v-2898d3a3]{background:#f59e0b}.dot-red[data-v-2898d3a3]{background:#dc2626}.dot-gray[data-v-2898d3a3]{background:#9ca3af}.swell-arrow-head[data-v-2898d3a3]{fill:#3498db;stroke:#fff;stroke-width:1.5px;filter:drop-shadow(0 0 4px #3498db99)}.wind-arrow-head[data-v-2898d3a3]{fill:#22c55e;stroke:#fff;stroke-width:1.5px;filter:drop-shadow(0 0 4px #22c55e99)}.tide-arrow[data-v-2898d3a3]{fill:#16a34a;stroke:#fff;stroke-width:2px;filter:drop-shadow(0 0 6px #16a34acc)}.day-separator[data-v-2898d3a3]{writing-mode:vertical-rl;letter-spacing:.08em;text-transform:uppercase;color:#111827bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffc;border-radius:999px;padding:6px 4px;font-size:.65rem;font-weight:700;transform:rotate(180deg);box-shadow:0 1px 3px #00000014}.hide-scrollbar[data-v-ce4cb652]::-webkit-scrollbar{display:none}.hide-scrollbar[data-v-ce4cb652]{scrollbar-width:none}.hide-scrollbar[data-v-d17061e6]::-webkit-scrollbar{display:none}.hide-scrollbar[data-v-d17061e6]{scrollbar-width:none}.separator-gradient[data-v-d17061e6]{background:#d3d3d3;border-radius:999px;width:3px;height:100%}.bottom-spacer[data-v-d17061e6]{height:calc(100px + env(safe-area-inset-bottom,0px));flex:none}.mode-toggle[data-v-74dc49aa]{gap:8px;margin-bottom:12px;margin-left:auto;font-weight:600}.mode-switch[data-v-74dc49aa],.mode-toggle[data-v-74dc49aa]{align-items:center;display:inline-flex}.mode-switch[data-v-74dc49aa]{background:#f1f5f9;border-radius:9999px;padding:4px;box-shadow:inset 0 0 0 1px #e2e8f0}.mode-chip[data-v-74dc49aa]{color:#64748b;border-radius:9999px;padding:6px 14px;font-size:15px;font-weight:700;transition:all .15s}.mode-chip.active[data-v-74dc49aa]{color:#0f172a;background:#fff;box-shadow:0 1px 3px #0000001f}.sgp-track[data-v-6b81d29f]{background:#00000014;border-radius:999px;width:100%;position:relative;overflow:hidden}.sgp-gradient[data-v-6b81d29f]{border-radius:inherit;background:var(--v0bcd97a6);-webkit-mask-image:linear-gradient(90deg,#000 0 var(--p),transparent var(--p));-webkit-mask-image:linear-gradient(90deg,#000 0 var(--p),transparent var(--p));mask-image:linear-gradient(90deg,#000 0 var(--p),transparent var(--p));will-change:-webkit-mask-image,mask-image;transition:-webkit-mask-position .24s,mask-position .24s;position:absolute;inset:0}.mymap{background-size:cover;height:200px;display:flex}.surf-spot{gap:0;display:grid}.tabs{border-bottom:1px solid #00000014;gap:.5rem;margin-top:1rem;display:flex}.tab{appearance:none;opacity:.7;background:0 0;border:none;padding:.75rem 1rem;font-weight:600}.tab.active{color:var(--brand);opacity:1;border-bottom:2px solid var(--brand);margin-bottom:-1px}.cond{grid-template-columns:32px 1fr;align-items:center;gap:.75rem}.bars,.cond,.icon{display:grid}.icon{width:32px;height:32px;color:var(--brand);place-items:center}.label,.meter-title{text-transform:uppercase;letter-spacing:.06em;opacity:.7;font-size:.75rem}.value{font-weight:600}.meter-card{background:#fff;border:1px solid #009fe3;border-radius:1rem;padding:1rem}.meter-title{margin-bottom:.25rem}.meter-head{margin-bottom:.75rem;font-size:1.125rem;font-weight:700}.meter-foot{opacity:.8;margin-top:.5rem;font-size:.875rem}.progress{background:#0000000f;border-radius:999px;width:100%;height:10px;overflow:hidden}.progress__bar{background:var(--brand);height:100%}.bars{grid-auto-rows:8px;gap:.75rem;margin-bottom:.5rem}.bar{background:var(--brand);border-radius:999px;height:8px}.ticks{opacity:.7;justify-content:space-between;margin-top:.25rem;font-size:.75rem;display:flex}.header-actions{flex:none;align-items:center;gap:8px;display:flex}.spot-panel-close{cursor:pointer;color:#666;background:0 0;border:none;padding:5px;font-size:24px;line-height:1}.spot-panel-close:hover,h2{color:#333}.spot-panel{z-index:1200;background:#fff;transition:transform .3s;position:absolute;overflow-y:auto;box-shadow:2px 0 5px #0000001a}@media (width>=768px){.spot-panel{width:50%;height:100%;top:0;left:-50%}.panel-open{transform:translate(100%)}}@media (width<=767px){.spot-panel{width:100%;height:100%;bottom:0;left:0;right:0;transform:translateY(100%)}.panel-open{transform:translateY(0)}}.spot-panel-content{z-index:10000;padding:20px;position:relative}h2{margin:0 0 20px;font-size:1.5em}.spot-description{color:#666;font-size:1.1em;line-height:1.6}.forecast-radar{margin-bottom:1rem}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.fiability-dot[data-v-79deda3d]{vertical-align:middle;border-radius:9999px;width:8px;height:8px;margin-inline:2px;display:inline-block}.dot-green[data-v-79deda3d]{background:#16a34a}.dot-green-light[data-v-79deda3d]{background:#65a30d}.dot-yellow[data-v-79deda3d]{background:#eab308}.dot-orange[data-v-79deda3d]{background:#f59e0b}.dot-red[data-v-79deda3d]{background:#dc2626}.dot-gray[data-v-79deda3d]{background:#9ca3af}.close-button{cursor:pointer;color:#666;background:0 0;border:none;padding:5px;font-size:24px;position:absolute;top:10px;right:10px}.close-button:hover{color:#333}.map-container,.map-root{width:100%;height:100%;min-height:0;position:relative}.map-container{z-index:0;overflow:hidden}.leaflet-map{z-index:0;position:absolute;inset:0}.leaflet-map :deep(.leaflet-container){z-index:0;width:100%;height:100%}.leaflet-map :deep(.leaflet-control-attribution){margin-bottom:calc(64px + env(safe-area-inset-bottom))}.map-overlays{z-index:1500;pointer-events:none;position:fixed;inset:0}.map-overlays>*{pointer-events:auto}.overlay{z-index:1000;background-color:#0003;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay-content{color:#fff;text-align:center;font-size:28px;font-weight:700}.leaflet-bar{background:#fff;border:2px solid #0003;border-radius:4px}.spot-marker{cursor:pointer}.marker-lock-container{filter:drop-shadow(0 1px 3px #0009)}.stars{font-size:16px;line-height:1;display:inline-block;position:relative}.stars:before{content:"★★★★★";color:#e5e7eb}.stars:after{content:"★★★★★";color:#fbbf24;width:var(--percent);white-space:nowrap;position:absolute;top:0;left:0;overflow:hidden}@keyframes movePoint{0%{transform:translate(calc(var(--dx) * -8px),calc(var(--dy) * -8px));opacity:0}20%{opacity:1}80%{opacity:1}to{transform:translate(calc(var(--dx) * 8px),calc(var(--dy) * 8px));opacity:0}}.wind-dot{width:2px;height:2px;animation:movePoint var(--duration) infinite;box-shadow:0 0 2px 1px #66666680,calc(var(--dx) * -1px) calc(var(--dy) * -1px) 3px 1px #6666,calc(var(--dx) * -2px) calc(var(--dy) * -2px) 4px 1px #6666664d;background:#666;border-radius:50%;position:absolute;top:11px;left:11px}.hidden-dot{display:none}.clickable-cell{cursor:pointer;pointer-events:all!important}.hs-toast-top{top:calc(12px + env(safe-area-inset-top));z-index:1000;color:#fff;letter-spacing:.2px;-webkit-backdrop-filter:blur(8px);pointer-events:none;background:#0f172ad9;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:700;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #00000059}.hs-toast-top__spinner{border:2px solid #ffffff40;border-top-color:#fffffff2;border-radius:999px;flex:none;width:16px;height:16px;animation:.9s linear infinite hs-spin}.hs-toast-top__text{white-space:nowrap}@keyframes hs-spin{to{transform:rotate(1turn)}}.map-shell[data-v-3e6cfb45]{width:100%;height:100%;min-height:100%;position:relative;overflow:hidden}@supports (height:100dvh){.map-shell[data-v-3e6cfb45]{height:100dvh}}.map[data-v-3e6cfb45]{width:100%;height:100%;min-height:0}.map[data-v-3e6cfb45],.map-fallback[data-v-3e6cfb45]{position:absolute;inset:0}.map-fallback[data-v-3e6cfb45]{color:#6b7280;justify-content:center;align-items:center;font-size:.875rem;display:flex}.legend-shell[data-v-ed6f63c4]{width:min(100% - 16px,920px);left:50%;bottom:calc(8px + env(safe-area-inset-bottom));z-index:900;position:fixed;transform:translate(-50%)}.legend-shell[data-v-ed6f63c4]:after,.legend-shell[data-v-ed6f63c4]:before{content:"";z-index:2;pointer-events:none;opacity:0;width:28px;transition:opacity .15s;position:absolute;top:1px;bottom:1px}.legend-shell[data-v-ed6f63c4]:before{background:linear-gradient(90deg,#0f172af5,#0f172a00);border-radius:13px 0 0 13px;left:1px}.legend-shell[data-v-ed6f63c4]:after{background:linear-gradient(270deg,#0f172af5,#0f172a00);border-radius:0 13px 13px 0;right:1px}.legend-shell--more-left[data-v-ed6f63c4]:before,.legend-shell--more-right[data-v-ed6f63c4]:after{opacity:1}.legend-bottom[data-v-ed6f63c4]{color:#fff;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x;-webkit-backdrop-filter:blur(10px);pointer-events:auto;background:#0f172a94;border:1px solid #ffffff14;border-radius:14px;width:100%;padding:6px;scroll-padding-inline:14px;display:flex;overflow-x:auto}.legend-track[data-v-ed6f63c4]{flex:none;justify-content:flex-start;gap:6px;width:max-content;min-width:max-content;margin-inline:auto;display:flex}.day-pill[data-v-ed6f63c4]{text-transform:uppercase;white-space:nowrap;scroll-snap-align:center;border-radius:9px;flex:none;min-height:34px;padding:7px 12px;font-size:11px;font-weight:700;transition:background-color .15s,color .15s,box-shadow .15s}.day-pill--active[data-v-ed6f63c4]{color:#374151;background:#fff;box-shadow:0 2px 8px #0f172a2e}.day-pill--idle[data-v-ed6f63c4]{color:#ffffffe0;background:#1e293bd1}@media (width<=640px){.legend-shell[data-v-ed6f63c4]{width:calc(100% - 12px);bottom:calc(6px + env(safe-area-inset-bottom))}.legend-bottom[data-v-ed6f63c4]{border-radius:12px;padding:5px}.legend-track[data-v-ed6f63c4]{gap:5px}.day-pill[data-v-ed6f63c4]{min-height:32px;padding:6px 10px;font-size:10px}}.hide-scrollbar[data-v-ed6f63c4]{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar[data-v-ed6f63c4]::-webkit-scrollbar{display:none}.map-badge[data-v-1f16e318]{z-index:2000;pointer-events:none;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000e0;border:1px solid #ffffff38;gap:10px;max-width:calc(min(92vw,540px));padding:12px 16px;font-weight:600;animation:.26s ease-out badgePop-1f16e318,1.2s ease-out badgeGlow-1f16e318;position:absolute;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #00000073,0 0 0 1px #ffffff0f}.map-badge[data-v-1f16e318],.map-badge__icon[data-v-1f16e318]{border-radius:999px;align-items:center;font-size:14px;display:inline-flex}.map-badge__icon[data-v-1f16e318]{background:#ffffff29;justify-content:center;width:26px;height:26px}.map-badge__text[data-v-1f16e318]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.badge-enter-active[data-v-1f16e318],.badge-leave-active[data-v-1f16e318]{transition:opacity .18s,transform .18s}.badge-enter-from[data-v-1f16e318],.badge-leave-to[data-v-1f16e318]{opacity:0;transform:translate(-50%)translateY(8px)scale(.98)}@keyframes badgePop-1f16e318{0%{opacity:0;transform:translate(-50%)translateY(8px)scale(.96)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes badgeGlow-1f16e318{0%{box-shadow:0 10px 28px #00000073,0 0 #fff0}35%{box-shadow:0 10px 28px #00000073,0 0 0 6px #ffffff24}to{box-shadow:0 10px 28px #00000073,0 0 #fff0}}@supports (padding:env(safe-area-inset-bottom)){.map-badge[data-v-1f16e318]{bottom:calc(28px + env(safe-area-inset-bottom))}}
