body{overscroll-behavior-y:contain}#tides{max-width:640px;padding:8px calc(var(--sar) + 12px) calc(var(--sab) + 32px) calc(var(--sal) + 12px);margin:0 auto}.station-head{padding:10px 2px 2px}.station-head .name{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.station-head .name button.title{text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:24px;font-weight:700;line-height:1.2}.station-head .name button.title:after{content:" ▾";color:var(--muted);font-size:16px}.station-head .context{color:var(--muted);margin:4px 0 10px;font-size:13.5px}.locrow{scrollbar-width:none;gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.locrow::-webkit-scrollbar{display:none}.locrow .loc{border:1px solid var(--line);background:var(--card);min-height:40px;color:var(--fg);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;padding:6px 12px;font-size:13.5px;display:inline-flex}.locrow .loc[aria-pressed=true]{background:var(--accent);color:var(--on-accent);border-color:#0000}.locrow .loc:disabled{opacity:.7;cursor:default}.locrow .loc.fav[aria-pressed=true]{background:var(--accent-2)}.now{grid-template-columns:1fr auto;align-items:start;gap:8px 14px;display:grid}.now .hero{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:46px;font-weight:700;line-height:1}.now .hero small{color:var(--muted);letter-spacing:0;margin-left:4px;font-size:18px;font-weight:500}.now .trend{align-items:center;gap:6px;margin-top:6px;font-size:15px;display:flex}.now .trend .arrow{font-size:20px;line-height:1}.now .trend.rising .arrow{color:var(--flood)}.now .trend.falling .arrow{color:var(--ebb)}.now .nexts{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px;display:grid}.now .next{border:1px solid var(--line);border-radius:10px;padding:8px 10px}.now .next .k{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px}.now .next .v{font-variant-numeric:tabular-nums;font-size:18px;font-weight:600}.now .next .w{color:var(--muted);font-size:13px}.now .foot{grid-column:1/-1}.now .obs{grid-column:1/-1;font-size:13.5px}.chart-card .head{align-items:center;gap:8px;display:flex}.chart-card .head h2{flex:1;margin:0}.chart-card .pager,.fishing .pager{align-items:center;gap:4px;display:inline-flex}.chart-card .pager button,.fishing .pager button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;width:36px;height:36px;font-size:18px}.chart-card .daylabel,.fishing .daylabel{text-align:center;min-width:110px;font-size:14px;font-weight:600}.tide-chart{touch-action:pan-y;width:100%;height:190px;display:block}.tide-chart .curve{fill:none;stroke:var(--accent);stroke-width:2.4px;stroke-linejoin:round}.tide-chart .curve.est{stroke-dasharray:5 4;opacity:.9}.tide-chart .area{fill:url(#tidefill)}.tide-chart .s0{stop-color:var(--accent);stop-opacity:.35}.tide-chart .s1{stop-color:var(--accent);stop-opacity:.02}.tide-chart .night{fill:var(--night)}.tide-chart .grid{stroke:var(--line);stroke-width:1px}.tide-chart .axis{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.tide-chart .ext{fill:var(--fg);font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:600}.tide-chart .ext.sub{fill:var(--muted);font-weight:500}.tide-chart .dot{fill:var(--card-solid);stroke:var(--accent);stroke-width:2px}.tide-chart .now-line{stroke:var(--now);stroke-width:1.5px;stroke-dasharray:3 3}.tide-chart .now-dot{fill:var(--now);stroke:var(--card-solid);stroke-width:2px}.tide-chart .scrub-line{stroke:var(--fg);stroke-width:1px;opacity:.6}.tide-chart .scrub-dot{fill:var(--fg)}.chart-card .readout{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;min-height:20px;font-size:13px;display:flex}.chart-card .legend{color:var(--muted);gap:14px;margin-top:6px;font-size:12px;display:flex}.chart-card .legend i{border-top:2px solid var(--accent);vertical-align:middle;width:18px;margin-right:5px;display:inline-block}.chart-card .legend i.est{border-top-style:dashed}.chart-card .legend i.night{background:var(--night);border:0;border-radius:2px;width:12px;height:10px}.week{padding-bottom:6px}.week .strip{scroll-snap-type:x mandatory;scrollbar-width:none;gap:8px;padding:2px 2px 8px;display:flex;overflow-x:auto}.week .strip::-webkit-scrollbar{display:none}.week .day{scroll-snap-align:start;border:1px solid var(--line);color:var(--fg);text-align:left;cursor:pointer;background:0 0;border-radius:12px;flex:0 0 148px;padding:10px}.week .day[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.week .day .d{justify-content:space-between;align-items:center;font-size:14px;font-weight:700;display:flex}.week .day .sun{color:var(--muted);font-variant-numeric:tabular-nums;margin:2px 0 6px;font-size:11.5px}.week .day .hl{font-variant-numeric:tabular-nums;font-size:12.5px;line-height:1.5}.week .day .hl b{font-weight:600}.week .day .hl .lo{color:var(--muted)}.week .day .bar{background:var(--line);border-radius:3px;height:5px;margin-top:8px;position:relative;overflow:hidden}.week .day .bar i{width:var(--w);background:var(--accent);border-radius:3px;position:absolute;inset:0}.currents .big{grid-template-columns:1fr 1fr;gap:8px;margin:6px 0;display:grid}.currents .big div{border:1px solid var(--line);border-radius:10px;padding:8px 10px}.currents .big .k{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px}.currents .big .v{font-variant-numeric:tabular-nums;font-size:18px;font-weight:600}.currents .big .w{color:var(--muted);font-size:13px}.currents .state{margin:4px 0;font-size:15px}.cur-timeline{width:100%;height:64px;display:block}.cur-timeline .zero{stroke:var(--line)}.cur-timeline .flood{fill:var(--flood)}.cur-timeline .ebb{fill:var(--ebb)}.cur-timeline .slack{stroke:var(--slack);stroke-width:1.5px}.cur-timeline .now-line{stroke:var(--now);stroke-width:1.5px;stroke-dasharray:3 3}.cur-timeline .axis{fill:var(--muted);font-size:10.5px}.cur-timeline .lbl{fill:var(--fg);font-size:10.5px;font-weight:600}.wx .head,.marine .head,.sunmoon .head{align-items:center;gap:8px;display:flex}.wx .head h2,.marine .head h2,.sunmoon .head h2{flex:1;margin:0}.wx .strip{scrollbar-width:none;gap:2px;padding:4px 0 6px;display:flex;overflow-x:auto}.wx .strip::-webkit-scrollbar{display:none}.wx .hour{text-align:center;font-variant-numeric:tabular-nums;color:var(--muted);border-radius:10px;flex:0 0 56px;padding:6px 2px;font-size:12px}.wx .hour.now{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--fg)}.wx .hour .t{font-weight:600}.wx .hour .arrow{transform:rotate(var(--rot));color:var(--c);margin:4px 0 2px;font-size:20px;line-height:1.1;display:block}.wx .hour .kn{color:var(--fg);font-size:15px;font-weight:700}.wx .hour .g{font-size:11px}.wx .hour .wmo{margin-top:2px;font-size:16px}.wx .hour .temp{font-size:11.5px}.wx .hour .pop{color:var(--accent);font-size:11px}.wx .bands{color:var(--muted);flex-wrap:wrap;gap:10px;margin-top:6px;font-size:11.5px;display:flex}.wx .bands i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:4px;display:inline-block}.wx .waves .hour .kn{color:var(--accent)}.marine .warn{margin:6px 0}.marine .fc{margin:8px 0}.marine .fc .loc{font-size:14px;font-weight:600}.marine .fc .period{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:4px 0 2px;font-size:12.5px}.marine .fc p{margin:2px 0;font-size:14.5px}.marine .ext{margin-top:8px}.marine .ext p{margin:2px 0;font-size:13.5px}.marine .ext b{font-weight:600}.sunmoon .grid{font-variant-numeric:tabular-nums;grid-template-columns:1fr 1fr;gap:6px 14px;font-size:14px;display:grid}.sunmoon .grid span:nth-child(odd){color:var(--muted)}.sunmoon .moon{align-items:center;gap:14px;margin-top:10px;display:flex}.sunmoon .moon .glyph{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:50%;flex:none;width:64px;height:64px}.sunmoon .moon .glyph.wobble{animation:.5s wobble}@keyframes wobble{0%{transform:rotate(0)}25%{transform:rotate(-10deg)scale(1.06)}60%{transform:rotate(8deg)}to{transform:rotate(0)}}.sunmoon .moon .txt b{font-size:15px;display:block}.sunmoon .moon .txt span,.empty{color:var(--muted);font-size:13.5px}footer#foot{color:var(--muted);padding:12px 4px 0;font-size:12px;line-height:1.5}footer#foot a{color:var(--muted)}@media (prefers-reduced-motion:reduce){.sunmoon .moon .glyph.wobble{animation:none}}.notice.chs{border:1px solid var(--line);color:var(--fg);background:var(--card);border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:12.5px;line-height:1.45}.sunmoon .learn-link{margin-top:12px;display:inline-flex}.legend .learn{margin-left:auto;font-size:12px}.support-card{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--line));background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:12px;margin-bottom:12px;padding:10px 12px}.support-card p{margin:0 0 6px}footer#foot .support-card a.btn{color:var(--on-accent);font-size:14px;text-decoration:none}footer#foot .support-card a.btn.secondary{color:var(--fg)}footer#foot .support-card{color:var(--fg);font-size:13.5px}.wx .warn{flex-wrap:wrap;gap:6px;margin:6px 0 2px;display:flex}.water .water-now{align-items:center;gap:10px;margin:4px 0 6px;display:flex}.water .water-now b{font-size:30px;line-height:1}.water p{margin:4px 0}.lowtides .lowlist{margin:6px 0;padding:0;list-style:none}.lowtides .lowlist li{border-bottom:1px solid var(--line);flex-wrap:wrap;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:6px 0;display:grid}.lowtides .lowlist li:last-child{border-bottom:0}.lowtides .lowlist .tm{color:var(--muted)}.lowtides .lowlist b.minus{color:var(--accent)}.lowtides .lowlist .chip{grid-column:1/-1;justify-self:start}.tide-chart .bite.major{fill:#f9a82538}.tide-chart .bite.minor{fill:#f9a8251c}.tide-chart .bite-l{font-size:11px}.fishing .bites{margin:6px 0;padding:0;list-style:none}.fishing .bites li{padding:3px 0}.fishing .hours{grid-template-columns:repeat(24,1fr);gap:2px;margin:8px 0 2px;display:grid}.fishing .hours button{cursor:pointer;background:color-mix(in srgb, var(--fg) 8%, transparent);border:0;border-radius:3px;height:26px;padding:0}.fishing .hours button.fair{background:#f9a82573}.fishing .hours button.good{background:#43a047b3}.fishing .hours button.now{outline:2px solid var(--accent);outline-offset:1px}.fishing .hourlab{color:var(--muted);justify-content:space-between;font-size:11px;display:flex}.fishing .spells{margin:8px 0;padding:0;list-style:none}.fishing .spells li{border-bottom:1px solid var(--line);padding:4px 0}.fishing .spells li:last-child{border-bottom:0}.fishing .row.limit{align-items:center;gap:6px;font-size:13px}.fishing select{font:inherit;border:1px solid var(--line);color:var(--fg);background:0 0;border-radius:6px;padding:2px 6px}.page-tides .topnav .brand{flex:none}.topnav .viewtabs{flex:1;justify-content:center;gap:0;display:flex}.viewtabs button{font:inherit;border:1px solid var(--line);background:var(--card);min-height:40px;color:var(--muted);cursor:pointer;align-items:center;gap:6px;padding:8px 16px;font-size:15px;font-weight:600;display:inline-flex}.viewtabs button:first-child{border-right-width:0;border-radius:999px 0 0 999px}.viewtabs button:last-child{border-radius:0 999px 999px 0}.viewtabs button[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}#tides.fishview #week,#tides.fishview #lowtides{display:none}.card.currents,.card.wx{scroll-margin-top:84px}.fishing .hours button.sel{outline:2px solid var(--fg);outline-offset:1px}.fishing .fkey{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:6px;font-size:12px;display:flex}.fishing .fkey i{vertical-align:-1px;background:color-mix(in srgb, var(--fg) 8%, transparent);border-radius:2px;width:12px;height:10px;margin-right:4px;display:inline-block}.fishing .fkey i.fair{background:#f9a82573}.fishing .fkey i.good{background:#43a047b3}.fishing .fkey .hint{margin-left:auto;font-style:italic}.fishing .hoursel{background:color-mix(in srgb, var(--fg) 5%, transparent);border-radius:8px;margin:8px 0 0;padding:6px 10px;font-size:14px}.chart-card .legend i.bite{background:#f9a8254d;border:0;border-radius:2px;width:12px;height:10px}.chart-card .legend{flex-wrap:wrap}.card.fishing{scroll-margin-top:84px}.fishing .head{justify-content:space-between;align-items:center;gap:8px;display:flex}.fishing .tidefree{margin:4px 0 8px}.fishing .fishalert,.fishing .catchlog{margin-top:10px}.fishing .mycatches summary{cursor:pointer;padding:4px 0}.fishing .pats{gap:3px;margin:4px 0 8px;padding:0;list-style:none;display:grid}.fishing .catches{margin:6px 0;padding:0;list-style:none}.fishing .catches li{border-bottom:1px solid var(--line);grid-template-columns:44px 1fr auto;align-items:start;gap:10px;padding:6px 0;display:grid}.fishing .catches li:last-child{border-bottom:0}.fishing .catches .thumb{object-fit:cover;background:color-mix(in srgb, var(--fg) 8%, transparent);border-radius:8px;place-items:center;width:44px;height:44px;font-size:22px;display:grid}.fishing .catches .del{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px 6px;font-size:16px}.fishing .catchbtns{flex-wrap:wrap;gap:8px;margin:6px 0}.catchform{gap:10px;display:grid}.catchform label{color:var(--muted);gap:4px;font-size:13px;display:grid}.catchform label.check{color:var(--fg);align-items:center;gap:8px;font-size:15px;display:flex}.catchform input:not([type=checkbox]),.catchform select{font:inherit;border:1px solid var(--line);color:var(--fg);background:0 0;border-radius:8px;padding:8px 10px;font-size:16px}.catchform .row{gap:10px;display:flex}.catchform .grow{flex:1}.alertform{gap:10px;display:grid}.alertform .arow{justify-content:space-between;align-items:center;gap:10px;display:flex}.alertform label.check{align-items:center;gap:8px;font-size:15px;display:flex}.alertform select{font:inherit;border:1px solid var(--line);color:var(--fg);background:0 0;border-radius:8px;padding:6px 8px;font-size:15px}.alertform .others{margin:0;padding:0;list-style:none}.alertform .others li{justify-content:space-between;align-items:center;padding:4px 0;font-size:14px;display:flex}.alertform .del{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:16px}.now .notice.modelled{border:1px solid color-mix(in srgb, var(--accent-2) 60%, transparent);background:color-mix(in srgb, var(--accent-2) 8%, transparent);color:var(--fg);border-radius:10px;grid-column:1/-1;margin:6px 0 0;padding:8px 10px}
