@font-face{font-family:Schibsted Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/schibsted-grotesk-latin-400-normal-DPhJBilQ.woff2) format("woff2"),url(/assets/schibsted-grotesk-latin-400-normal-BkiRe4WW.woff) format("woff")}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/schibsted-grotesk-latin-500-normal-rf9C4Thp.woff2) format("woff2"),url(/assets/schibsted-grotesk-latin-500-normal-Ba39e-CX.woff) format("woff")}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/schibsted-grotesk-latin-600-normal-Czv9Obfv.woff2) format("woff2"),url(/assets/schibsted-grotesk-latin-600-normal-BieE9YjJ.woff) format("woff")}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/schibsted-grotesk-latin-700-normal-BkH0uJ1o.woff2) format("woff2"),url(/assets/schibsted-grotesk-latin-700-normal-Dz-okVa0.woff) format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/dm-mono-latin-300-normal-CNmLoeDX.woff2) format("woff2"),url(/assets/dm-mono-latin-300-normal-CT8u5j2n.woff) format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2) format("woff2"),url(/assets/dm-mono-latin-400-normal--0xN8mdc.woff) format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-mono-latin-500-normal-DRMDZjhP.woff2) format("woff2"),url(/assets/dm-mono-latin-500-normal-CN8Miw6E.woff) format("woff")}:root{color-scheme:light;--oat: #f0ece3;--oat-2: #e9e4d9;--card: #faf8f3;--ink: #25231f;--ink-soft: #615c52;--muted: #706a5d;--faint: #c6bfb1;--line: rgba(37, 35, 31, .1);--line-soft: rgba(37, 35, 31, .055);--accent: #d2774b;--accent-ink: #a45430;--accent-soft: #f0d2c2;--s-a: #5e9c93;--gold: #c49b57;--sh: 0 1px 2px rgba(37, 35, 31, .04), 0 10px 28px rgba(37, 35, 31, .05);--sh-lift: 0 2px 6px rgba(37, 35, 31, .06), 0 18px 44px rgba(37, 35, 31, .09);--r: 22px;--r-in: 14px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 20px;--s6: 24px;--font-ui: "Schibsted Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-data: "DM Mono", "SFMono-Regular", Consolas, monospace}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}body{background:var(--oat);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}::selection{background:var(--accent-soft);color:var(--ink)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--faint);border-radius:999px}.bathym-app{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;background:var(--oat);color:var(--ink)}.bathym-topbar{position:relative;z-index:110;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--s4);width:100%;height:60px;flex:0 0 60px;padding:0 var(--s6);background:var(--oat)}.bathym-topbar__brand,.bathym-topbar__actions{display:flex;align-items:center;gap:var(--s3);min-width:0}.bathym-topbar__actions{justify-content:flex-end;gap:clamp(var(--s3),2vw,var(--s6))}.bathym-brand{display:inline-flex;padding:0;border:0;background:transparent;color:var(--ink);font-family:var(--font-ui);font-size:17px;font-weight:700;letter-spacing:-.045em;text-decoration:none;cursor:pointer}.bathym-brand span{color:var(--accent-ink)}.bathym-search-pill{display:flex;align-items:center;gap:var(--s2);width:168px;height:36px;padding:0 var(--s3);border:1px solid var(--line-soft);border-radius:999px;background:var(--card);color:var(--muted);box-shadow:0 1px 2px #25231f08}.bathym-search-pill:focus-within{border-color:#b05a335c}.bathym-search-pill input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px}.bathym-search-pill input::placeholder{color:var(--muted)}.bathym-stage{display:flex;flex:1;min-height:0;width:100%;overflow:hidden}@media(max-width:840px){.bathym-topbar{padding:0 var(--s3)}.bathym-search-pill{width:min(36vw,150px)}}@media(max-width:420px){.bathym-search-pill{width:min(58vw,210px)}}.bathym-height-settings{position:relative;flex-shrink:0}.bathym-height-settings__trigger{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--line-soft);border-radius:999px;background:var(--card);color:var(--ink-soft);cursor:pointer}.bathym-height-settings__trigger span{font:11px var(--font-data)}.bathym-height-settings__trigger:hover,.bathym-height-settings__trigger[aria-expanded=true]{border-color:var(--line);background:var(--oat-2)}.bathym-height-settings__popover{position:absolute;right:0;top:calc(100% + var(--s3));width:min(280px,calc(100vw - 24px));max-height:calc(100dvh - 90px);overflow-y:auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-lift);padding:var(--s5)}.bathym-height-settings__popover h2{margin:0 0 var(--s3);font-size:16px;font-weight:500;color:var(--ink);letter-spacing:-.03em}.bathym-height-settings__options{display:grid;gap:var(--s2)}.bathym-height-settings__options button{display:flex;align-items:center;justify-content:space-between;text-align:left;width:100%;min-height:44px;padding:var(--s3);border:1px solid var(--line-soft);border-radius:var(--r-in);background:transparent;color:var(--ink-soft);cursor:pointer;font-size:12px}.bathym-height-settings__options button[aria-pressed=true]{background:var(--oat);border-color:var(--accent-ink);color:var(--accent-ink)}.bathym-height-settings__estimate{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line-soft)}.bathym-height-settings__estimate>button{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);width:100%;min-height:44px;padding:0;border:0;background:transparent;color:var(--ink);text-align:left;font:12px var(--font-ui);cursor:pointer}.bathym-height-settings__estimate i{position:relative;width:32px;height:19px;flex-shrink:0;border:1px solid var(--line);border-radius:999px;background:var(--oat-2)}.bathym-height-settings__estimate i:after{content:"";position:absolute;top:3px;left:3px;width:11px;height:11px;border-radius:50%;background:var(--muted)}.bathym-height-settings__estimate [aria-checked=true] i{background:var(--accent);border-color:var(--accent)}.bathym-height-settings__estimate [aria-checked=true] i:after{left:16px;background:var(--card)}.bathym-height-settings__trigger:focus-visible,.bathym-height-settings__popover button:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.tide-app{position:relative;min-height:0;isolation:isolate;background:var(--oat-2);color:var(--ink);font:13px var(--font-ui)}.tide-map{position:absolute;inset:0}.tide-finder{position:relative;width:350px;max-width:100%;min-width:0}.tide-search{display:flex;align-items:center;gap:var(--s2);width:100%}.tide-search input{border:0;background:transparent;outline:0;min-width:0;flex:1;color:inherit}.tide-app button,.tide-app select,.tide-app input{font:inherit;color:inherit}.tide-app button{cursor:pointer}.tide-app button:hover{background:var(--oat-2)}.tide-icon{border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;padding:6px;border-radius:var(--r-in);cursor:pointer;color:var(--ink-soft)}.tide-results{position:absolute;top:calc(100% + var(--s3));right:0;width:100%;max-height:min(460px,70dvh);overflow:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--card);box-shadow:var(--sh-lift)}.tide-results>button{display:flex;align-items:center;justify-content:space-between;text-align:left;width:100%;gap:var(--s3);border:0;border-bottom:1px solid var(--line-soft);background:transparent;padding:var(--s4);font-size:12px;cursor:pointer}.tide-results>button:hover{background:var(--oat)}.tide-results small{display:block;color:var(--muted);font:9px var(--font-data);margin-top:var(--s1)}.tide-results>button>span:last-child{font:8px var(--font-data);white-space:nowrap}.tide-results>p{padding:var(--s3);color:var(--ink-soft);font-size:12px}.tide-detail{position:absolute;right:var(--s4);top:var(--s4);bottom:var(--s4);width:440px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);display:flex;flex-direction:column;overflow:hidden;z-index:2}.tide-detail>:first-child{flex-shrink:0}.tide-detail-body{padding:var(--s4) var(--s5);overflow:auto;overscroll-behavior:contain;min-height:0}.tide-caption{color:var(--muted);font-size:10px;line-height:1.65}.tide-detail section{border-top:1px solid var(--line-soft);padding:var(--s5) 0}.tide-detail h2{font:10px var(--font-data);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 var(--s4);display:flex;align-items:center;gap:var(--s2)}.tide-detail h3{font:10px var(--font-data);margin:var(--s5) 0 var(--s3)}.tide-detail h3 small{font-weight:400;color:var(--muted)}.tide-section-title{flex-wrap:wrap;display:flex;justify-content:space-between;align-items:baseline;gap:var(--s2)}.tide-chart{height:220px;width:100%;font-variant-numeric:tabular-nums}@media(max-width:800px){.tide-detail{left:var(--s2);right:var(--s2);top:30%;bottom:var(--s2);width:auto}.tide-detail-header{padding:var(--s4) var(--s5)}.tide-detail h1{font-size:23px}.tide-detail-body{padding:var(--s3) var(--s5)}.tide-app.has-selection .tide-map-controls{right:var(--s3);bottom:auto;top:var(--s3)}}@media(max-width:420px){.tide-finder{width:52vw}.tide-results{width:min(340px,calc(100vw - 24px))}}.tide-now-button{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 13px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);font-size:12px;font-weight:600;cursor:pointer}.tide-now-button:hover{background:var(--oat)}.tide-now-button i{width:6px;height:6px;border-radius:50%;background:var(--muted)}.tide-now-button[aria-pressed=true]{border-color:var(--accent-ink);background:var(--oat)}.tide-now-button[aria-pressed=true] i{background:#d3443e;box-shadow:0 0 0 3px #d3443e1a}.tide-now-button:focus-visible,.tide-event-button:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.tide-topnav-tools{width:min(430px,100%);min-width:0;display:flex;align-items:center;gap:var(--s2)}.tide-topnav-tools .tide-finder{flex:1;width:auto;min-width:0}.tide-admin-link{flex:none;color:var(--ink-soft);font-size:12px;font-weight:500;text-decoration:none;padding:8px 6px;border-radius:6px}.tide-admin-link:hover{color:var(--ink);background:var(--oat-2)}.tide-admin-link:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.tide-loading-section{min-height:330px;display:grid;place-items:center;color:var(--muted)}.tide-loading-section.is-compact{min-height:48px}.tide-spinner{width:20px;height:20px;border:1.5px solid color-mix(in srgb,currentColor 16%,transparent);border-top-color:currentColor;border-radius:50%;animation:tide-spin .8s linear infinite}@keyframes tide-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.tide-spinner{animation:none;border-top-color:currentColor;border-right-color:currentColor}}.tide-detail .tide-waterlevel-section{padding-top:var(--s2);border-top:0}.tide-chart-interactive{position:relative;height:240px}.tide-chart-scrubber{position:absolute;inset:0 12px 36px 40px;cursor:crosshair;touch-action:pan-y;user-select:none;-webkit-user-select:none;border-radius:2px}.tide-chart-hint{color:var(--muted);font-size:9px;margin:var(--s2) 0 var(--s3)}.tide-keyboard-help{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.tide-selected-readout{--series-color: var(--ink);padding:var(--s1) 0 var(--s2)}.tide-selected-readout.is-observed{--series-color: var(--accent)}.tide-readout-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--s2) var(--s4)}.tide-selected-time{color:var(--ink);font:500 16px var(--font-data);font-variant-numeric:tabular-nums;white-space:nowrap}.tide-primary-label{display:flex;align-items:center;gap:var(--s2);color:var(--series-color);font-size:11px}.tide-primary-label i{width:16px;border-top:2px solid currentColor}.tide-selected-readout.is-estimated .tide-primary-label i{border-top-style:dotted}.tide-primary-value{display:block;margin:var(--s2) 0;color:var(--series-color);font-size:36px;font-weight:300;line-height:1;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.tide-primary-value small{color:var(--muted);font:12px var(--font-data);letter-spacing:0}.tide-selected-readout.is-unavailable .tide-primary-value{color:var(--muted)}.tide-baseline-value{display:flex;align-items:center;gap:var(--s3)}.tide-baseline-value>span{display:inline-flex;align-items:center;gap:var(--s2);color:var(--s-a);font-size:10px}.tide-baseline-value i{width:16px;border-top:2px dashed currentColor}.tide-baseline-value strong{font-weight:400;font-size:15px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.tide-baseline-value small{font:9px var(--font-data);color:var(--muted)}.tide-chart-canvas{position:relative;z-index:1;pointer-events:none}.tide-chart-overlay{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:visible;pointer-events:none}.tide-event-marker .tide-event-button{display:flex;align-items:flex-start;justify-content:center;width:44px;height:32px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--ink-soft);font-size:9px;white-space:nowrap;cursor:pointer;pointer-events:auto}.tide-event-marker .tide-event-button.is-low{align-items:flex-end}.tide-event-button span{display:inline-flex;align-items:center;height:18px;padding:0 4px;border-radius:4px;background:color-mix(in srgb,var(--card) 60%,transparent)}.tide-event-marker .tide-event-button:hover{background:transparent}.tide-event-button:hover span,.tide-event-button:focus-visible span{background:color-mix(in srgb,var(--card) 85%,transparent);color:var(--ink)}.tide-event-button[aria-pressed=true] span{background:color-mix(in srgb,var(--card) 75%,transparent);color:var(--ink);font-weight:600}.tide-selected-readout.is-predicted{--series-color: var(--s-a)}.tide-selected-readout.is-predicted .tide-primary-label i{border-top-style:dashed}.tide-selected-readout.is-predicted .tide-primary-value{color:var(--ink)}.tide-value-line{display:flex;align-items:baseline;gap:var(--s3)}.tide-direction{color:var(--muted);font-size:11px;white-space:nowrap}.tide-direction>span{font-size:13px}.tide-station-tooltip{pointer-events:none}.tide-station-tooltip .maplibregl-popup-content{background:var(--card);color:var(--ink);border:1px solid var(--line-soft);border-radius:8px;padding:10px 12px;box-shadow:0 6px 20px #25231f1f}.tide-station-tooltip strong{display:block;font:500 12px/1.4 var(--font-ui)}.tide-station-tooltip small{display:block;margin-top:4px;color:var(--muted);font:9px/1.4 var(--font-data)}.tide-station-tooltip.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:var(--card)}.tide-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.tide-studio.bathym-stage{display:block;overflow:auto;background:var(--card);overscroll-behavior-y:contain;scrollbar-gutter:stable}.tide-workspace{--station-selector-width: clamp(260px, 26vw, 340px);position:relative;width:100%;max-width:1680px;margin:0 auto;padding:calc(var(--s6) + var(--s2)) clamp(var(--s5),4vw,64px) var(--s6)}.tide-studio .tide-studio-detail{position:static;width:100%;display:block;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}.tide-studio .tide-detail-body{padding:0;overflow:visible}.tide-studio .tide-waterlevel-section{border:0;padding:0}.tide-studio .tide-selected-readout{display:flex;flex-direction:column;gap:var(--s2);min-height:0;padding:0;margin-bottom:var(--s4)}.tide-studio .tide-value-line{align-items:baseline;gap:var(--s6)}.tide-studio .tide-primary-value{margin:0;color:var(--ink);font:300 clamp(68px,7.5vw,112px)/1.05 var(--font-data);letter-spacing:-.055em;font-variant-numeric:tabular-nums lining-nums}.tide-studio .tide-primary-value small{font:400 22px var(--font-data);letter-spacing:0;margin-left:var(--s2);color:var(--ink-soft)}.tide-studio .tide-direction{display:inline-flex;align-items:baseline;gap:var(--s1);color:var(--ink-soft);font:400 14px var(--font-ui)}.tide-studio .tide-direction>span{color:var(--accent-ink)}.tide-studio .tide-readout-summary{display:flex;align-items:flex-start;flex-wrap:wrap;gap:var(--s1) var(--s4);min-height:24px;color:var(--ink-soft)}.tide-studio .tide-baseline-value{display:block;min-width:0;line-height:20px}.tide-studio .tide-baseline-value>span{display:inline;font-size:12px;color:var(--ink-soft)}.tide-studio .tide-baseline-value .tide-difference{color:var(--ink);font-family:var(--font-data);font-weight:500}.tide-studio .tide-baseline-value strong{font:500 13px/1 var(--font-data)}.tide-studio .tide-baseline-value .tide-difference{line-height:1}.tide-studio .tide-range-toolbar{display:flex;align-items:center;gap:var(--s3);min-height:40px;padding-left:calc(var(--station-selector-width) + var(--s3));margin-bottom:var(--s6)}.tide-studio .tide-range-toolbar .tide-now-button{height:40px}.tide-range-switch{display:inline-flex;align-items:stretch;height:40px;padding:var(--s1);gap:0;border:1px solid var(--line-soft);border-radius:999px;background:var(--oat)}.tide-range-switch button{min-width:42px;min-height:0;border:0;border-radius:999px;background:transparent;color:var(--ink-soft);font:500 12px var(--font-data);cursor:pointer}.tide-range-switch button[aria-pressed=true]{color:var(--ink);background:var(--card);box-shadow:0 1px 5px #1e231e17}.tide-range-switch button:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.tide-studio .tide-chart-interactive{container-type:inline-size;height:clamp(330px,47dvh,600px)}.tide-chart-legend{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--s5);margin:0 var(--s3) var(--s3) 40px;color:var(--ink-soft);font-size:11px}.tide-chart-legend>span{display:inline-flex;align-items:center;gap:var(--s2);white-space:nowrap}.tide-chart-legend svg{flex-shrink:0;color:var(--accent)}.tide-chart-legend .is-predicted svg{color:var(--s-a)}.tide-chart-legend .is-estimated svg{color:var(--ink)}.tide-studio .tide-chart-scrubber:focus-visible{outline:2px solid var(--accent-ink);outline-offset:5px}.tide-studio .tide-event-marker circle{transition:r .14s ease,fill .14s ease}.tide-studio .tide-event-button{font-size:11px}.tide-studio .tide-event-button span{padding:0 var(--s1);background:transparent;border-radius:0;font-variant-numeric:tabular-nums;transition:color .12s ease,opacity .12s ease}.tide-studio .tide-event-marker[data-label-visible=false] .tide-event-button span{opacity:0}.tide-studio .tide-event-marker[data-label-visible=false]>line{opacity:0}.tide-studio .tide-event-marker .tide-event-button:hover span,.tide-studio .tide-event-marker .tide-event-button:focus-visible span{opacity:1;background:var(--card);color:var(--ink)}.tide-studio .tide-event-marker:has(button:hover)>line,.tide-studio .tide-event-marker:has(button:focus-visible)>line{opacity:1}.tide-studio .tide-event-marker:has(button:hover) circle,.tide-studio .tide-event-marker:has(button:focus-visible) circle{r:5px}.tide-timeline-scroll{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding-bottom:var(--s1)}.tide-timeline-scroll:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.tide-chart-topline{position:relative;height:calc(var(--s6) + var(--s3));margin-left:40px;margin-right:var(--s3);border-top:1px solid var(--line-soft)}.tide-chart-day{position:absolute;top:0;padding-left:0;color:var(--ink-soft);font:12px/var(--s4) var(--font-data);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tide-chart-day strong{font-weight:500}.tide-chart-day.is-selected{color:var(--ink)}.tide-studio .tide-chart-time{position:absolute;top:var(--s4);margin-left:var(--s2);font:400 12px/var(--s4) var(--font-data);color:var(--ink-soft);white-space:nowrap}.tide-studio .tide-chart-time[data-live=true]{color:var(--ink);font-weight:500}.tide-topline-cursor{position:absolute;top:var(--s4);bottom:0;border-left:1px solid var(--ink-soft)}.tide-chart-solar{position:absolute;left:40px;right:var(--s3);bottom:38px;height:20px;pointer-events:none;z-index:2}.tide-chart-solar>span{position:absolute;bottom:0;transform:translate(-50%);display:flex;align-items:center;gap:var(--s1);color:var(--ink-soft);font:9px var(--font-data);white-space:nowrap}.tide-chart-solar svg{flex-shrink:0}.tide-station-card{position:absolute;left:clamp(var(--s5),4vw,64px);top:calc(var(--s6) + var(--s2));width:var(--station-selector-width);height:40px;text-align:left;z-index:4}.tide-station-select{position:relative;z-index:2;width:100%;height:40px;display:flex;align-items:center;justify-content:space-between;gap:var(--s2);padding:0 var(--s3) 0 calc(40px + var(--s3));border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.tide-station-select-copy{min-width:0}.tide-station-select strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 12px/1.3 var(--font-ui)}.tide-station-select small{display:block;margin-top:1px;color:var(--ink-soft);font:10px/1.25 var(--font-data);letter-spacing:0}.tide-station-select>svg{flex-shrink:0;color:var(--ink-soft)}.tide-app .tide-station-card .tide-station-select:hover{border-color:var(--accent-ink);background:transparent}.tide-station-select:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.tide-station-select[hidden]{display:none}.tide-station-select[aria-expanded=true]>svg{transform:rotate(180deg)}.tide-station-thumbnail{position:absolute;left:var(--s1);top:calc(50% - 16px);width:40px;height:32px;border-radius:6px;overflow:hidden}.tide-station-select[aria-expanded=true]>.tide-station-thumbnail{transform:none}.tide-station-card:not(.is-expanded) .tide-mini-map{display:none}.tide-studio:has(.tide-station-card.is-expanded){overflow:hidden;z-index:150}.tide-chooser-backdrop{position:fixed;inset:0;z-index:190;width:100%;border:0;border-radius:0;background:transparent;cursor:default}.tide-app .tide-chooser-backdrop:hover{background:transparent}.tide-station-card.is-expanded{top:calc(var(--s6) + var(--s2) + 40px + var(--s2));width:min(800px,calc(100% - (clamp(var(--s5),4vw,64px)*2)));height:min(680px,calc(100dvh - 160px));padding:var(--s4);border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:0 24px 100px #1e231e33;z-index:200;display:grid;grid-template-columns:280px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:var(--s3);transform-origin:top left;animation:tide-chooser-unfold .18s ease-out}.tide-station-card.is-expanded .tide-station-select{position:absolute;left:0;bottom:calc(100% + var(--s2));width:var(--station-selector-width);background:var(--card);border-color:var(--accent-ink)}.tide-chooser-heading{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:var(--s4)}.tide-chooser-heading h2{margin:0;font:500 20px var(--font-ui);letter-spacing:-.04em}.tide-chooser-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}.tide-station-card.is-expanded .tide-mini-map{grid-column:2;grid-row:2}.tide-mini-map{position:relative;height:100%;min-height:0;width:100%;overflow:hidden;border-radius:16px;border:1px solid var(--line);background:var(--oat);isolation:isolate}.tide-mini-map .tide-map{inset:0}.tide-mini-map .tide-loading-section{position:absolute;inset:0;pointer-events:none}.tide-mini-map .maplibregl-ctrl-attrib{font-size:8px}.tide-station-card.is-expanded .tide-chooser-list{grid-column:1;grid-row:2}.tide-chooser-list{overflow:auto;overscroll-behavior:contain;display:grid;grid-template-rows:repeat(10,minmax(42px,1fr));gap:var(--s1);padding:0}.tide-chooser-list button{display:flex;align-items:center;gap:var(--s2);min-height:42px;width:100%;padding:var(--s1) var(--s2);text-align:left;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink);transition:background .12s ease,border-color .12s ease}.tide-chooser-list button>span:nth-child(2){min-width:0;flex:1}.tide-chooser-list strong{display:block;font:500 12px/1.25 var(--font-ui)}.tide-chooser-list small{display:block;margin-top:var(--s1);color:var(--ink-soft);font:10px/1.2 var(--font-data)}.tide-chooser-list button[aria-pressed=true]{background:var(--oat);border-color:color-mix(in srgb,var(--accent-ink) 35%,var(--line))}.tide-chooser-list button.is-highlighted{background:color-mix(in srgb,var(--accent) 9%,var(--card));border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.tide-chooser-list button.is-highlighted strong,.tide-chooser-list button.is-highlighted .tide-list-triangle{color:var(--accent-ink)}.tide-list-triangle{color:var(--accent);font-size:11px}.tide-list-selected{margin-left:auto;color:var(--accent-ink);flex-shrink:0}.tide-chooser-list button:focus-visible,.tide-chooser-close:focus-visible{outline:2px solid var(--accent-ink);outline-offset:-2px}.tide-chart-footer{display:flex;align-items:center;flex-wrap:nowrap;gap:var(--s3);width:100%;min-height:36px;padding:var(--s2) 0;color:var(--ink-soft);font:11px/20px var(--font-ui);white-space:nowrap;overflow-x:auto;scrollbar-width:thin}.tide-chart-footer>:not(.tide-sr-only){flex-shrink:0}.tide-chart-footer>:not(:first-child):not(.tide-sr-only):before{content:"·";color:var(--line);margin-right:var(--s3)}.tide-chart-footer a{color:var(--ink-soft);text-decoration:none}.tide-chart-footer .is-delayed{color:var(--accent-ink)}.tide-chart-footer a:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.tide-chart-hint.tide-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:0;border:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.tide-studio .tide-station-select,.tide-studio .tide-now-button,.tide-studio .tide-range-switch button,.tide-topnav-tools .bathym-search-pill,.tide-topnav-tools .bathym-height-settings__trigger,.tide-topnav-tools .tide-admin-link{transition:border-color .14s ease,background-color .14s ease,color .14s ease}.tide-topnav-tools .bathym-search-pill input::placeholder{color:var(--ink-soft)}.tide-topnav-tools .bathym-search-pill:focus-within{border-color:var(--accent-ink)}.tide-topnav-tools .bathym-height-settings__trigger:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.tide-studio .tide-now-button{gap:var(--s2);padding-inline:var(--s3)}.tide-studio .tide-range-switch button:hover:not([aria-pressed=true]){background:var(--card);color:var(--ink)}@container (max-width: 600px){.tide-chart-interactive[data-days="3"] .tide-chart-solar{height:calc(var(--s4) * 2)}.tide-chart-interactive[data-days="3"] .tide-chart-solar>span[data-sunrise=true]{bottom:var(--s4)}}@media(max-width:900px){.tide-studio .tide-value-line{gap:var(--s3)}.tide-studio .tide-direction{font-size:12px}}@media(max-width:700px){.tide-studio .tide-readout-summary{min-height:44px;align-content:start}.tide-workspace{padding:var(--s5) var(--s4) var(--s6)}.tide-station-card:not(.is-expanded){left:var(--s4);top:var(--s5);width:calc(100% - var(--s4) * 2 - var(--s3) - 72px)}.tide-studio .tide-range-toolbar{padding-left:0;display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:var(--s3)}.tide-studio .tide-range-toolbar>.tide-now-button{grid-column:2;grid-row:1}.tide-studio .tide-range-switch{grid-column:1 / -1;grid-row:2;justify-self:start}.tide-range-switch button{min-width:39px}.tide-station-select{padding-right:var(--s2)}.tide-station-select strong{font-size:11px}.tide-station-card.is-expanded{position:fixed;inset:var(--s3);width:auto;height:auto;border-radius:16px;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) minmax(90px,.25fr)}.tide-station-card.is-expanded .tide-station-select{display:none}.tide-station-card.is-expanded .tide-mini-map{grid-column:1;grid-row:3}.tide-chart-day{font-size:10px}.tide-studio .tide-chart-time{font-size:11px}}@media(max-width:600px){.tide-studio .tide-primary-value{font-size:clamp(45px,12vw,68px)}.tide-studio .tide-primary-value small{font-size:16px}.tide-studio .tide-value-line{flex-wrap:wrap;gap:var(--s1) var(--s3)}.tide-studio .tide-baseline-value>span{font-size:11px}.tide-chart-legend{justify-content:flex-start;gap:var(--s3);margin:0 0 var(--s3);font-size:10px}.tide-studio .tide-chart-interactive{height:350px}.tide-mini-map{border-radius:12px}}.tide-studio .tide-chart-explorer{animation:tide-studio-arrive .2s ease-out}@keyframes tide-studio-arrive{0%{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes tide-chooser-unfold{0%{opacity:0;transform:translateY(-5px) scale(.96)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.tide-studio *,.tide-studio *:before,.tide-studio *:after,.tide-topnav-tools *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.tide-mini-map .tide-map-status{position:absolute;left:var(--s3);bottom:var(--s3);right:var(--s3);margin:0;padding:var(--s2) var(--s3);background:var(--card);border-radius:var(--r-in)}.tide-mini-map .tide-map.maplibregl-map{position:absolute;inset:0}.tide-about-app{background:var(--card)}.tide-about-page{flex:1;min-height:0;width:100%;overflow-y:auto;scrollbar-gutter:stable}.tide-about-page article{max-width:720px;margin:0 auto;padding:52px 24px 56px;color:var(--ink-soft);font:14px/1.75 var(--font-ui)}.tide-about-page h1{margin:0 0 var(--s4);max-width:590px;font:500 clamp(30px,4vw,42px)/1.15 var(--font-ui);letter-spacing:-.05em;color:var(--ink)}.tide-about-page section{margin-top:32px;padding-top:24px;border-top:1px solid var(--line-soft)}.tide-about-page h2{margin:0 0 16px;color:var(--ink);font:500 19px var(--font-ui);letter-spacing:-.025em}.tide-about-page h3{margin:0 0 4px;color:var(--ink);font-size:13px;font-weight:500}.tide-about-page p{margin:0 0 14px}.tide-about-series{margin:0}.tide-about-series>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:12px 0}.tide-about-series dt{display:flex;align-items:baseline;gap:8px;color:var(--ink);font-size:12px;font-weight:500}.tide-about-series dd{margin:0;font-size:13px}.tide-about-series i{display:inline-block;width:18px;flex-shrink:0;border-top:2px solid var(--accent)}.tide-about-series .is-predicted{border-top-style:dashed;border-color:var(--s-a)}.tide-about-series .is-estimated{border-top-style:dotted;border-color:var(--ink)}.tide-about-method{margin-bottom:18px}.tide-about-page details{color:var(--muted);font-size:12px}.tide-about-page summary{cursor:pointer;padding:8px 0;color:var(--ink-soft)}.tide-about-page details p{margin-top:12px}.tide-about-experimental{margin-top:28px;padding:16px 18px;border-left:2px solid var(--accent);background:var(--oat);font-size:12px}.tide-about-experimental p{margin:6px 0 0}.tide-about-page a,.tide-about-back{color:var(--accent-ink);text-decoration-thickness:1px;text-underline-offset:3px}.tide-about-back{font:12px var(--font-ui)}.tide-about-sources{margin:0 0 32px;padding:0;list-style:none}.tide-about-sources li{padding:9px 0}.tide-about-sources a{font-size:13px}.tide-about-sources span{display:block;margin-top:2px;font-size:12px;color:var(--muted)}.tide-about-page a:focus-visible,.tide-about-back:focus-visible,.tide-about-page summary:focus-visible{outline:2px solid var(--accent-ink);outline-offset:4px}@media(max-width:500px){.tide-about-page article{padding:32px 20px 40px}.tide-about-series>div{grid-template-columns:1fr;gap:4px}}.tide-accuracy-scroll{overflow-x:auto;margin:16px 0 12px}.tide-accuracy{width:100%;border-collapse:collapse;font:12px/1.5 var(--font-ui);color:var(--ink-soft);font-variant-numeric:tabular-nums}.tide-accuracy caption{font-variant-numeric:normal;caption-side:top;text-align:left;padding-bottom:10px;color:var(--muted);font-size:12px}.tide-accuracy th,.tide-accuracy td{padding:8px 10px 8px 0;text-align:right;white-space:nowrap;border-bottom:1px solid var(--line-soft)}.tide-accuracy th:nth-child(-n+2),.tide-accuracy td:nth-child(-n+2){text-align:left}.tide-accuracy thead th{color:var(--muted);font:9px var(--font-data);letter-spacing:.08em;text-transform:uppercase}.tide-accuracy tbody th{color:var(--ink);font-weight:500}.tide-accuracy td{font-family:var(--font-data)}.tide-accuracy td:nth-child(2){font-family:var(--font-ui)}.tide-accuracy td.is-better{color:var(--ink);font-weight:500}.tide-accuracy-note,.tide-accuracy-empty{font-size:12px;color:var(--muted)}
