:root{color:#f8fafc;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#020617;font-family:IBM Plex Sans,Segoe UI,sans-serif;font-weight:400;line-height:1.5}.map-app{--ui-panel-border:#cbba9133;--ui-panel-background:#141210d6;--ui-panel-background-strong:#1c1915e6;--ui-panel-shadow:0 20px 44px #0705046b;--ui-toolbar-background:#141210c7;--ui-toolbar-shadow:0 16px 36px #07050457;--ui-card-background:#f9f1dd0d;--ui-card-background-soft:#f9f1dd08;--ui-card-background-active:#aa915d24;--ui-card-background-active-strong:#aa915d2e;--ui-card-border-subtle:#cbba9129;--ui-card-border-active:#dccb9c38;--ui-card-border-hover:#dccb9c5c;--ui-text-primary:#f4efe4;--ui-text-secondary:#d8ccb3;--ui-text-muted:#b7aa8d;--ui-accent:#dfc685;--ui-accent-soft:#dfc6856b;--ui-positive:#cdbb75;--ui-positive-shadow:0 0 10px #cdbb759e;--ui-popup-background:#1a1714f5;--ui-popup-tip:#1a1714f5;--ui-popup-shadow:0 20px 48px #0705047a;--ui-dialog-background:#1a1714f5;--ui-dialog-button-background:#1a1714e6;--ui-dialog-button-background-hover:#28231ef5;--ui-surface-background:#1f1c1880}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body,body.has-image-dialog,body.has-info-dialog{overflow:hidden}button,input{font:inherit}button{cursor:pointer}a{color:#7dd3fc}.map-app{width:100%;height:var(--app-viewport-height,100dvh);min-height:var(--app-viewport-height,100dvh);background:radial-gradient(circle at 0 0,#0ea5e92e,#0000 24%),radial-gradient(circle at 100% 100%,#f43f5e1a,#0000 28%),#020617;position:relative}.map,.map-app>.map{width:100%;height:100%;position:absolute;inset:0}.topbar{z-index:4;pointer-events:none;position:absolute;top:1rem;right:1rem}.toolbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto;background:#0f172ab3;border:1px solid #94a3b829;border-radius:.9rem;align-items:stretch;gap:.45rem;width:fit-content;max-width:calc(100vw - 2rem);padding:.42rem;display:flex;box-shadow:0 16px 36px #02061759}.utility-menu{flex-direction:row;align-items:center}.status-chip,.toolbar-chip{color:#f8fafc;background:#ffffff0a;border:1px solid #94a3b81f;border-radius:.7rem;align-items:center;gap:.45rem;min-height:2.5rem;padding:.45rem .65rem;font-size:.88rem;display:inline-flex}.toolbar-chip{transition:transform .12s,border-color .12s,background .12s}.toolbar-chip:hover{border-color:#7dd3fc66;transform:translateY(-1px)}.toolbar-icon-button{justify-content:center;min-width:2.5rem;padding:.5rem}.toolbar-icon{width:1.05rem;height:1.05rem;display:block}.language-switcher{z-index:1;position:relative}.language-toggle{justify-content:center;min-width:2.5rem;padding:.5rem}.language-code,.language-option span:last-child{white-space:nowrap}.language-toggle .flag{width:1.1rem;height:.8rem}.language-caret{color:#94a3b8;font-size:.7rem}.language-menu{z-index:5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0f172aeb;border:1px solid #94a3b829;border-radius:.75rem;gap:.3rem;min-width:10.5rem;padding:.4rem;display:grid;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 18px 36px #02061761}.language-menu[hidden]{display:none}.language-option{color:#f8fafc;text-align:left;background:#ffffff0a;border:1px solid #94a3b81f;border-radius:.6rem;align-items:center;gap:.55rem;width:100%;min-height:2rem;padding:.45rem .6rem;transition:border-color .12s,background .12s,transform .12s;display:inline-flex}.language-option:hover,.language-option:focus-visible,.language-option.is-active{background:#aa915d29;border-color:#dfc68552}.language-option:hover,.language-option:focus-visible{transform:translateY(-1px)}.flag{pointer-events:none;border:1px solid #0f172a4d;border-radius:.16rem;flex:none;width:1rem;height:.72rem;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #f8fafc14}.flag-es{background:linear-gradient(#aa151b 0 25%,#f1bf00 25% 75%,#aa151b 75% 100%)}.flag-gl{background:linear-gradient(145deg,#0000 0 34%,#2e64d0 34% 47%,#0000 47% 100%),#fff}.flag-en{background:linear-gradient(90deg,#0000 0 38%,#c8102e 38% 62%,#0000 62% 100%),linear-gradient(#0000 0 34%,#c8102e 34% 66%,#0000 66% 100%),linear-gradient(90deg,#0000 0 28%,#fff 28% 72%,#0000 72% 100%),linear-gradient(#0000 0 24%,#fff 24% 76%,#0000 76% 100%),#012169}.status-dot,.layer-dot{background:#4ade80;border-radius:999px;flex:none;width:.62rem;height:.62rem;box-shadow:0 0 12px #4ade80b3}.chip-label,.section-label{letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;font-size:.68rem}.overlay-panel{z-index:3;pointer-events:none;position:absolute;bottom:1rem;left:1rem}.panel-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);pointer-events:auto;background:#0f172ac7;border:1px solid #94a3b829;border-radius:.9rem;flex-direction:column;width:min(13.8rem,100vw - 2rem);max-height:min(72vh,100dvh - 2rem);padding:.55rem;display:flex;box-shadow:0 20px 44px #02061766}.panel-section{scrollbar-width:thin;flex:auto;min-height:0;padding-right:.1rem;overflow-y:auto}.panel-header{justify-content:space-between;align-items:center;gap:.5rem;padding:.15rem .25rem .45rem;display:flex}.panel-header-actions{flex:none;align-items:center;gap:.35rem;display:inline-flex}.panel-header strong{font-size:.92rem;font-weight:600;display:block}.panel-toggle-button{color:#cbd5e1;background:#ffffff0a;border:1px solid #94a3b829;border-radius:.5rem;place-items:center;width:1.9rem;height:1.9rem;padding:0;font-size:.95rem;line-height:1;transition:border-color .14s,background .14s,color .14s,transform .14s;display:grid}.panel-toggle-button:hover,.panel-toggle-button:focus-visible{color:#f8fafc;background:#0ea5e914;border-color:#7dd3fc59;transform:translateY(-1px)}.panel-close-button{font-size:1.2rem}.panel-close-button[hidden]{display:none}.panel-card.is-collapsed{padding-bottom:.35rem}.panel-card.is-collapsed .panel-header{padding-bottom:0}.panel-section+.panel-section{margin-top:.55rem}.section-label{margin:0 0 .55rem .2rem;display:inline-block}.layer-list{gap:.45rem;display:grid}.layer-group{background:#ffffff06;border:1px solid #94a3b81f;border-radius:.58rem;gap:.25rem;padding:.35rem;display:grid}.layer-group-header{justify-content:space-between;align-items:center;gap:.4rem;display:flex}.layer-group-title{color:#94a3b8;letter-spacing:.12em;text-transform:uppercase;padding:0 .2rem;font-size:.66rem;font-weight:700;line-height:1}.layer-group-toggle{color:#cbd5e1;background:#ffffff0a;border:1px solid #94a3b81f;border-radius:.45rem;place-items:center;width:1.55rem;height:1.55rem;padding:0;line-height:1;transition:border-color .14s,background .14s,color .14s,transform .14s;display:grid}.layer-group-toggle:hover,.layer-group-toggle:focus-visible{color:#f8fafc;background:#aa915d1f;border-color:#dfc68552;transform:translateY(-1px)}.layer-group-items{gap:.2rem;display:grid}.layer-group-items[hidden]{display:none}.layer-toggle-wrap{gap:.28rem;display:grid;position:relative}.layer-row,.layer-toggle{color:#f8fafc;background:#ffffff06;border:1px solid #0000;border-radius:.45rem;justify-content:space-between;align-items:center;gap:.65rem;width:100%;padding:.45rem .55rem;display:flex}.layer-row+.layer-toggle,.layer-toggle+.layer-toggle{margin-top:0}.layer-row.is-static{cursor:default}.layer-toggle{cursor:pointer;transition:border-color .14s,background .14s,transform .14s}.layer-toggle:hover{border-color:#94a3b81f}.layer-toggle.is-active{background:#0ea5e912;border-color:#7dd3fc29}.toggle-copy{min-width:0;display:grid}.layer-title{font-size:.86rem;font-weight:600;line-height:1.15;display:block}.layer-meta{color:#94a3b8;font-size:.85rem}.toggle-control{flex:none;align-items:center;display:inline-flex;position:relative}.toggle-control input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.toggle-dot{width:.58rem;height:.58rem;box-shadow:none;background:#64748bbf;border-radius:999px;transition:background .14s,box-shadow .14s,transform .14s}.toggle-control input:checked+.toggle-dot{background:#4ade80;box-shadow:0 0 10px #4ade80b8}.forecast-period-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0f172ae0;border:1px solid #94a3b829;border-radius:.65rem;gap:.24rem;width:100%;max-height:none;margin-top:.1rem;padding:.42rem;display:grid;position:static;box-shadow:0 18px 42px #0206175c}.forecast-mode-panel{margin-top:0}.forecast-period-title{color:#94a3b8;letter-spacing:.12em;text-transform:uppercase;padding:.08rem .22rem .18rem;font-size:.64rem;font-weight:700;line-height:1}.forecast-period-button{color:#cbd5e1;text-align:left;background:#ffffff06;border:1px solid #0000;border-radius:.43rem;width:100%;padding:.36rem .48rem;font-size:.78rem;line-height:1.05;transition:border-color .14s,background .14s,color .14s}.forecast-period-button:hover,.forecast-period-button.is-active{color:#f8fafc;background:#0ea5e91a;border-color:#7dd3fc2e}.layer-empty{color:#94a3b8;background:#ffffff08;border:1px dashed #94a3b838;border-radius:1rem;padding:1rem}.layer-empty.is-error{color:#fecaca;background:#7f1d1d33;border-color:#f8717159}.loading-screen{z-index:10;color:#e5e7eb;background:#020617;place-items:center;transition:opacity .36s,visibility .36s,background .2s;display:grid;position:absolute;inset:0}.loading-screen.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.loading-screen.is-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#02061757}.loading-content{color:#cbd5e1;background:#141210e0;border:1px solid #cbba912e;border-radius:.95rem;justify-items:center;gap:.85rem;padding:1rem 1.1rem;font-size:.92rem;display:grid;box-shadow:0 20px 40px #07050461}.loading-spinner{border:2px solid #94a3b847;border-top-color:#f8fafc;border-radius:50%;width:2rem;height:2rem;animation:.82s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}.maplibregl-ctrl-top-right{top:1.2rem;right:1.2rem}.maplibregl-ctrl-group{border:1px solid #94a3b829;overflow:hidden;box-shadow:0 24px 60px #02061766}.maplibregl-ctrl-group button{background:#f8fafcf2}.maplibregl-ctrl button .maplibregl-ctrl-icon{opacity:.95}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right{display:none}.maplibregl-ctrl-attrib{color:#cbd5e1;background:#0f172ab8!important}.map-app .maplibregl-popup-content{color:#f8fafc;background:#0f172af5;border-radius:1rem;max-width:calc(100vw - 2rem);box-shadow:0 20px 48px #02061775}.popup-card h3{margin:.2rem 0 .35rem;font-size:1rem}.popup-card p{color:#cbd5e1;margin:0 0 .65rem}.camera-popup{width:min(20rem,100vw - 3rem);max-width:100%}.camera-preview{aspect-ratio:16/9;background:#0f172a8c;border:1px solid #94a3b829;border-radius:.75rem;width:100%;display:block;overflow:hidden}a.camera-preview{cursor:zoom-in}.camera-preview img{object-fit:cover;width:100%;max-width:100%;height:100%;transition:transform .16s;display:block}.camera-preview:hover img{transform:scale(1.02)}.camera-preview.is-empty{color:#94a3b8;place-items:center;font-size:.9rem;display:grid}.image-dialog{z-index:30;opacity:0;pointer-events:none;visibility:hidden;place-items:center;padding:1.2rem;transition:opacity .16s,visibility .16s;display:grid;position:fixed;inset:0}.image-dialog.is-open{opacity:1;pointer-events:auto;visibility:visible}.image-dialog-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#020617d6;position:absolute;inset:0}.image-dialog-panel{z-index:1;background:#0f172af5;border:1px solid #94a3b833;border-radius:.9rem;gap:.8rem;width:min(68rem,100%);max-height:calc(100vh - 2.4rem);margin:0;padding:.75rem;display:grid;position:relative;box-shadow:0 28px 80px #0000008f}.image-dialog-panel img{object-fit:contain;background:#020617;border-radius:.55rem;width:100%;max-height:calc(100vh - 8rem);display:block}.image-dialog-panel figcaption{color:#cbd5e1;padding:0 2.5rem .1rem .1rem;font-size:.92rem;line-height:1.35}.image-dialog-close{z-index:2;color:#f8fafc;background:#0f172ae0;border:1px solid #94a3b847;border-radius:999px;place-items:center;width:2.2rem;height:2.2rem;font-size:1.5rem;line-height:1;transition:background .14s,border-color .14s,transform .14s;display:grid;position:absolute;top:.95rem;right:.95rem}.image-dialog-close:hover,.image-dialog-close:focus-visible{background:#1e293bf5;border-color:#f8fafc80;transform:scale(1.03)}.info-dialog{z-index:29;opacity:0;pointer-events:none;visibility:hidden;place-items:center;padding:1.2rem;transition:opacity .16s,visibility .16s;display:grid;position:fixed;inset:0}.info-dialog.is-open{opacity:1;pointer-events:auto;visibility:visible}.info-dialog-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#020617b8;position:absolute;inset:0}.info-dialog-panel{z-index:1;background:#0f172af5;border:1px solid #94a3b833;border-radius:.9rem;gap:.9rem;width:min(28rem,100%);max-height:calc(100vh - 2.4rem);padding:1rem 1rem 1.05rem;display:grid;position:relative;overflow-y:auto;box-shadow:0 28px 80px #0000008f}.info-dialog-panel h2{color:#f8fafc;margin:0;padding-right:2.5rem;font-size:1rem;line-height:1.2}.info-dialog-close{z-index:2;color:#f8fafc;background:#0f172ae0;border:1px solid #94a3b847;border-radius:999px;place-items:center;width:2.2rem;height:2.2rem;padding:0;font-size:1.5rem;line-height:1;transition:background .14s,border-color .14s,transform .14s;display:grid;position:absolute;top:.95rem;right:.95rem}.info-dialog-close:hover,.info-dialog-close:focus-visible{background:#1e293bf5;border-color:#f8fafc80;transform:scale(1.03)}.info-card{gap:.75rem;display:grid}.info-lead{color:#f8fafc;margin:0;font-size:.96rem;font-weight:700;line-height:1.3}.info-list{color:#f8fafc;gap:.42rem;margin:0;padding-left:1.1rem;font-size:.92rem;line-height:1.35;display:grid}.info-link{color:var(--ui-accent);text-decoration:none}.info-link:hover,.info-link:focus-visible{text-decoration:underline}.mobile-sheet{z-index:28;opacity:0;pointer-events:none;visibility:hidden;justify-content:center;align-items:flex-end;transition:opacity .16s,visibility .16s;display:flex;position:fixed;inset:0}.mobile-sheet.is-open{opacity:1;pointer-events:auto;visibility:visible}.mobile-sheet-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0206177a;position:absolute;inset:0}.mobile-sheet-panel{z-index:1;width:min(100%,30rem);min-height:0;max-height:min(72dvh,100dvh - 1.2rem);padding:.75rem .8rem calc(.8rem + env(safe-area-inset-bottom));border:1px solid var(--ui-panel-border);background:var(--ui-popup-background);border-bottom:0;border-radius:1rem 1rem 0 0;grid-template-rows:auto auto minmax(0,1fr);gap:.7rem;display:grid;position:relative;overflow:hidden;box-shadow:0 -16px 40px #07050457}.mobile-sheet-handle{background:#d8ccb357;border-radius:999px;width:2.8rem;height:.26rem;margin:0 auto}.mobile-sheet-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.mobile-sheet-header strong{min-width:0;color:var(--ui-text-primary);font-size:.95rem;line-height:1.2}.mobile-sheet-close{border:1px solid var(--ui-card-border-subtle);background:var(--ui-card-background);width:2rem;height:2rem;color:var(--ui-text-primary);border-radius:999px;place-items:center;padding:0;font-size:1.35rem;line-height:1;transition:background .14s,border-color .14s,transform .14s;display:grid}.mobile-sheet-close:hover,.mobile-sheet-close:focus-visible{border-color:var(--ui-card-border-hover);background:var(--ui-card-background-active);transform:scale(1.03)}.mobile-sheet-content{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:thin;min-height:0;max-height:100%;padding-right:.1rem;display:block;overflow-y:auto}.mobile-sheet-content .popup-card,.mobile-sheet-content .tide-popup{width:100%}.mobile-sheet[data-variant=image] .mobile-sheet-content{padding-right:0}.sheet-image-card{width:100%;margin:0}.sheet-image-card img{object-fit:contain;background:#020617;border-radius:.72rem;width:100%;max-height:min(68dvh,100dvh - 9rem);display:block}.tide-popup{width:min(36rem,100vw - 3rem)}.tide-popup-grid{grid-template-columns:minmax(10rem,.95fr) minmax(16rem,1.35fr);align-items:stretch;gap:1rem;display:grid}.tide-table-wrap{min-width:0}.popup-table{border-collapse:collapse;width:100%;font-size:.9rem}.popup-table th,.popup-table td{text-align:left;border-bottom:1px solid #94a3b824;padding:.32rem 0}.popup-table th{color:#94a3b8;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem}.popup-table tbody tr:last-child td{border-bottom:0}.popup-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.popup-metric-cell{background:#ffffff0a;border:1px solid #94a3b829;border-radius:.72rem;gap:.18rem;min-width:0;padding:.6rem .7rem;display:grid}.popup-metric-label{color:#94a3b8;text-transform:uppercase;font-size:.68rem;font-weight:700;line-height:1.1}.popup-metric-value{color:#f8fafc;overflow-wrap:anywhere;min-width:0;font-size:.9rem;font-weight:700;line-height:1.2}.popup-price-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:0 0 .7rem;display:grid}.popup-price-card{background:#ffffff0d;border:1px solid #94a3b829;border-radius:.78rem;gap:.18rem;min-width:0;padding:.75rem .8rem;display:grid}.popup-price-label{color:#94a3b8;text-transform:uppercase;font-size:.68rem;font-weight:700;line-height:1.1}.popup-price-value{color:#f8fafc;overflow-wrap:anywhere;min-width:0;font-size:1.02rem;font-weight:700;line-height:1.2}.popup-split-card{background:#ffffff0a;border:1px solid #94a3b829;border-radius:.78rem;gap:.55rem;margin:0 0 .7rem;padding:.7rem .78rem;display:grid}.popup-split-bar{background:#94a3b824;border-radius:999px;width:100%;height:.72rem;display:flex;overflow:hidden}.popup-split-segment{height:100%}.popup-split-segment.is-men,.popup-split-dot.is-men{background:#60a5fa}.popup-split-segment.is-women,.popup-split-dot.is-women{background:#f472b6}.popup-split-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.popup-split-item{align-items:center;gap:.5rem;min-width:0;display:flex}.popup-split-dot{border-radius:999px;flex:none;width:.58rem;height:.58rem}.popup-split-copy{min-width:0;display:grid}.popup-split-label{color:#94a3b8;text-transform:uppercase;font-size:.68rem;font-weight:700;line-height:1.1}.popup-split-value{color:#f8fafc;font-size:.9rem;font-weight:700;line-height:1.2}.popup-gauge-card{background:#ffffff0a;border:1px solid #94a3b829;border-radius:.82rem;place-items:center;margin:0 0 .75rem;padding:.7rem .78rem;display:grid}.popup-gauge{width:7rem;height:7rem;position:relative}.popup-gauge svg{width:100%;height:100%;display:block;transform:rotate(-90deg)}.popup-gauge-track,.popup-gauge-fill{fill:none;stroke-width:7px}.popup-gauge-track{stroke:#94a3b829}.popup-gauge-fill{stroke:#60a5fa;stroke-linecap:round}.popup-gauge-center{text-align:center;align-content:center;place-items:center;gap:.16rem;display:grid;position:absolute;inset:0}.popup-gauge-label{color:#94a3b8;text-transform:uppercase;font-size:.64rem;font-weight:700;line-height:1}.popup-gauge-value{color:#f8fafc;font-size:1.08rem;font-weight:700;line-height:1}.tide-chart-wrap{background:#0f172a70;border:1px solid #94a3b824;border-radius:.75rem;min-width:0;overflow:hidden}.tide-chart{width:100%;height:auto;display:block}.tide-chart-grid{stroke:#94a3b82e;stroke-width:1px}.tide-chart-axis,.tide-chart-time{fill:#94a3b8;font-size:.68rem}.tide-chart-area{fill:url(#tide-area-gradient)}.tide-chart-line{fill:none;stroke:#3b82f6;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px}.tide-chart-now-line{stroke:#ef4444;stroke-dasharray:5 5;stroke-linecap:round;stroke-width:1.5px}.tide-chart-now-dot{fill:#ef4444;stroke:#fee2e2;stroke-width:2px}.tide-chart-now-label{fill:#fca5a5;font-size:.68rem;font-weight:700}.tide-chart-marker{fill:#101827;stroke:#e5edff;stroke-width:2.5px}.tide-chart-marker.is-low{fill:#06b6d4}.tide-chart-marker.is-high{fill:#3b82f6}.tide-chart-label{font-size:.74rem;font-weight:700}.tide-chart-label.is-low{fill:#22d3ee}.tide-chart-label.is-high{fill:#60a5fa}.tide-chart-empty{color:#94a3b8;place-items:center;min-height:8rem;font-size:.9rem;display:grid}.popup-kicker{color:#7dd3fc;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;display:inline-block}.toolbar,.panel-card,.forecast-period-panel,.image-dialog-panel,.info-dialog-panel,.language-menu{border-color:var(--ui-panel-border)}.toolbar,.language-menu{background:var(--ui-toolbar-background);box-shadow:var(--ui-toolbar-shadow)}.status-chip,.toolbar-chip,.panel-toggle-button,.layer-empty,.popup-metric-cell,.popup-price-card,.popup-split-card,.popup-gauge-card,.forecast-period-button,.camera-preview,.image-dialog-close,.language-option{border-color:var(--ui-card-border-subtle)}.status-chip,.toolbar-chip,.panel-toggle-button,.popup-metric-cell,.popup-price-card,.popup-split-card,.popup-gauge-card,.layer-empty,.language-option{background:var(--ui-card-background)}.layer-group,.layer-toggle,.forecast-period-button{background:var(--ui-card-background-soft)}.status-chip,.toolbar-chip,.panel-header strong,.layer-row,.layer-toggle,.popup-metric-value,.map-app .maplibregl-popup-content,.image-dialog-close,.language-option{color:var(--ui-text-primary)}.chip-label,.section-label,.layer-group-title,.layer-meta,.forecast-period-title,.popup-metric-label,.popup-price-label,.popup-split-label,.popup-gauge-label,.popup-card p,.image-dialog-panel figcaption,.tide-chart-axis,.tide-chart-time,.tide-chart-empty,.maplibregl-ctrl-attrib,.language-caret{color:var(--ui-text-secondary)}.chip-label,.section-label,.layer-group-title,.popup-metric-label,.popup-price-label,.popup-split-label,.popup-gauge-label{color:var(--ui-text-muted)}.toolbar-chip:hover,.panel-toggle-button:hover,.panel-toggle-button:focus-visible,.language-option:hover,.language-option:focus-visible{border-color:var(--ui-card-border-hover)}.layer-toggle.is-active,.forecast-period-button:hover,.forecast-period-button.is-active,.language-option.is-active{border-color:var(--ui-card-border-active);background:var(--ui-card-background-active-strong)}.layer-toggle.is-active,.panel-toggle-button:hover,.panel-toggle-button:focus-visible{background:var(--ui-card-background-active)}.toggle-control input:checked+.toggle-dot,.status-dot,.layer-dot{background:var(--ui-positive);box-shadow:var(--ui-positive-shadow)}.panel-card,.forecast-period-panel{background:var(--ui-panel-background);box-shadow:var(--ui-panel-shadow)}.forecast-period-panel{background:var(--ui-panel-background-strong)}.maplibregl-ctrl-attrib{background:var(--ui-toolbar-background)!important}.map-app .maplibregl-popup-content{background:var(--ui-popup-background);box-shadow:var(--ui-popup-shadow)}.map-app .maplibregl-popup-close-button{color:var(--ui-text-primary)}.map-app .maplibregl-popup-close-button:hover{background:var(--ui-card-background)}.map-app .maplibregl-popup-anchor-top .maplibregl-popup-tip,.map-app .maplibregl-popup-anchor-top-left .maplibregl-popup-tip,.map-app .maplibregl-popup-anchor-top-right .maplibregl-popup-tip{border-bottom-color:var(--ui-popup-tip)}.map-app .maplibregl-popup-anchor-bottom .maplibregl-popup-tip,.map-app .maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip,.map-app .maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{border-top-color:var(--ui-popup-tip)}.map-app .maplibregl-popup-anchor-left .maplibregl-popup-tip{border-right-color:var(--ui-popup-tip)}.map-app .maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:var(--ui-popup-tip)}.popup-kicker{color:var(--ui-accent)}.camera-preview,.tide-chart-wrap{background:var(--ui-surface-background)}.image-dialog-panel,.info-dialog-panel{background:var(--ui-dialog-background)}.image-dialog-close,.info-dialog-close{background:var(--ui-dialog-button-background)}.image-dialog-close:hover,.image-dialog-close:focus-visible,.info-dialog-close:hover,.info-dialog-close:focus-visible{background:var(--ui-dialog-button-background-hover);border-color:var(--ui-accent-soft)}@media (width<=760px){.topbar{top:.85rem;right:.85rem}.toolbar{max-width:calc(100vw - 1.7rem)}.overlay-panel{right:auto}.panel-card{flex-direction:column;width:min(13.8rem,100vw - 2.4rem);max-height:min(66vh,100dvh - 2.4rem);display:flex}.panel-header{flex:none}.panel-section{scrollbar-width:thin;flex:auto;padding-right:.1rem;overflow-y:auto}.forecast-period-panel{width:100%;position:static}.map-app .maplibregl-popup-content{max-width:calc(100vw - 2.4rem)}.tide-popup-grid,.popup-metric-grid{grid-template-columns:1fr}.mobile-sheet-panel{width:100%}}
