@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500 800;font-display:swap;src:url(/fonts/jakarta-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--navy-900:#0b1f3a;--navy-800:#10294a;--navy-700:#163459;--navy-600:#1e4475;--sea-700:#0b5f76;--sea-600:#0e7490;--sea-500:#0891b2;--sea-400:#22b8d6;--aqua-300:#67e8f9;--aqua-200:#a5f3fc;--aqua-100:#e0fbff;--sand-200:#ebd9bc;--sand-100:#f5e9d7;--sand-50:#fbf6ee;--coral-600:#ea580c;--coral-500:#f97316;--coral-400:#fb923c;--coral-100:#ffedd5;--grey-50:#f7f9fb;--grey-100:#eef2f6;--grey-200:#dfe6ed;--grey-300:#c5d0db;--grey-500:#6b7c8e;--grey-700:#3b4a5a;--grey-900:#15202b;--ok:#15803d;--ok-soft:#dcfce7;--fair:#b45309;--fair-soft:#fef3c7;--poor:#b91c1c;--poor-soft:#fee2e2;--bg:#f6f9fc;--surface:#fff;--surface-2:#eef4f9;--surface-3:#e3ecf4;--fg:var(--navy-900);--fg-2:#4a5f75;--fg-3:#5b7085;--line:#dce5ee;--line-strong:#c5d3e0;--brand:var(--sea-600);--brand-strong:var(--sea-700);--brand-soft:#e3f6fa;--brand-fg:#fff;--accent:var(--coral-500);--accent-hover:var(--coral-400);--accent-soft:var(--coral-100);--accent-fg:#1a0b00;--hero-fg:#fff;--ring:0 0 0 3px #0891b259;--shadow-sm:0 1px 2px #0b1f3a0f, 0 1px 1px #0b1f3a0a;--shadow-md:0 2px 4px #0b1f3a0f, 0 10px 24px -8px #0b1f3a29;--shadow-lg:0 4px 10px #0b1f3a14, 0 24px 48px -16px #0b1f3a47;--shadow-float:0 6px 16px -4px #0b1f3a38, 0 1px 0 #fff9 inset;--glass:#ffffffd1;--glass-line:#ffffff8c;--font-display:"Plus Jakarta Sans", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--fs-xs:.75rem;--fs-sm:.875rem;--fs-base:1rem;--fs-lg:1.125rem;--fs-xl:1.25rem;--fs-2xl:clamp(1.5rem, 1.25rem + 1.1vw, 1.9rem);--fs-3xl:clamp(1.9rem, 1.4rem + 2vw, 2.6rem);--fs-display:clamp(2.5rem, 1.5rem + 4.6vw, 4.6rem);--lh-tight:1.1;--lh-snug:1.25;--lh-base:1.6;--track-tight:-.025em;--track-caps:.08em;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-7:32px;--s-8:40px;--s-9:48px;--s-10:64px;--s-11:80px;--s-12:112px;--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:26px;--r-pill:999px;--t-fast:.15s;--t-base:.22s;--t-slow:.4s;--ease:cubic-bezier(.2, .8, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--max:1180px;--gutter:16px;--header-h:64px;color-scheme:light}:root[data-theme=dark]{--bg:#081527;--surface:#0f2140;--surface-2:#142a4d;--surface-3:#1a3458;--fg:#eaf2fa;--fg-2:#a9bccf;--fg-3:#7d92a8;--line:#1f3a5e;--line-strong:#2a4a73;--brand:#4fd1e8;--brand-strong:#7fe1f2;--brand-soft:#4fd1e824;--brand-fg:#06202c;--accent:#fb923c;--accent-hover:#fda85c;--accent-soft:#fb923c29;--accent-fg:#1a0b00;--ok:#4ade80;--ok-soft:#4ade8026;--fair:#fbbf24;--fair-soft:#fbbf2429;--poor:#f87171;--poor-soft:#f8717129;--ring:0 0 0 3px #4fd1e866;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 2px 4px #0000004d, 0 12px 28px -8px #00000080;--shadow-lg:0 4px 10px #00000059, 0 28px 56px -16px #0009;--shadow-float:0 8px 20px -6px #0000008c, 0 1px 0 #ffffff0f inset;--glass:#0d1d36d6;--glass-line:#ffffff1a;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#081527;--surface:#0f2140;--surface-2:#142a4d;--surface-3:#1a3458;--fg:#eaf2fa;--fg-2:#a9bccf;--fg-3:#7d92a8;--line:#1f3a5e;--line-strong:#2a4a73;--brand:#4fd1e8;--brand-strong:#7fe1f2;--brand-soft:#4fd1e824;--brand-fg:#06202c;--accent:#fb923c;--accent-hover:#fda85c;--accent-soft:#fb923c29;--accent-fg:#1a0b00;--ok:#4ade80;--ok-soft:#4ade8026;--fair:#fbbf24;--fair-soft:#fbbf2429;--poor:#f87171;--poor-soft:#f8717129;--ring:0 0 0 3px #4fd1e866;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 2px 4px #0000004d, 0 12px 28px -8px #00000080;--shadow-lg:0 4px 10px #00000059, 0 28px 56px -16px #0009;--shadow-float:0 8px 20px -6px #0000008c, 0 1px 0 #ffffff0f inset;--glass:#0d1d36d6;--glass-line:#ffffff1a;color-scheme:dark}}@media (prefers-reduced-motion:reduce){:root{--t-fast:0s;--t-base:0s;--t-slow:0s}}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}a{color:var(--brand);text-underline-offset:.15em;text-decoration:none}a:hover{text-decoration:underline}img,svg,video,canvas{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:var(--lh-snug);letter-spacing:var(--track-tight);text-wrap:balance;margin:0 0 .5em}h1{font-size:var(--fs-3xl);font-weight:800;line-height:var(--lh-tight)}h2{font-size:var(--fs-2xl)}h3{font-size:var(--fs-xl)}h4{font-size:var(--fs-lg)}p{margin:0 0 1em}small{font-size:var(--fs-sm)}hr{border:0;border-top:1px solid var(--line);margin:var(--s-8) 0}:focus-visible{box-shadow:var(--ring);border-radius:var(--r-sm);outline:none}::selection{background:var(--aqua-200);color:var(--navy-900)}.wrap{max-width:var(--max);padding:0 var(--gutter);margin:0 auto}.wrap.narrow{max-width:760px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--fg-2)}.faint{color:var(--fg-3)}.eyebrow{font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--brand);margin:0 0 var(--s-3);font-weight:700}.lead{font-size:var(--fs-lg);color:var(--fg-2);text-wrap:pretty;max-width:62ch}.num{font-variant-numeric:tabular-nums}main{min-height:60vh}.section{padding:var(--s-10) 0}.section-head{justify-content:space-between;align-items:flex-end;gap:var(--s-4);margin-bottom:var(--s-6);flex-wrap:wrap;display:flex}.section-head h2{margin:0}.section-head p{margin:var(--s-1) 0 0;color:var(--fg-2)}@media (width>=900px){:root{--gutter:24px}.section{padding:var(--s-11) 0}}.site-header{z-index:40;background:var(--glass);-webkit-backdrop-filter:blur(14px)saturate(1.4);border-bottom:1px solid var(--line);transition:background var(--t-base) var(--ease);position:sticky;top:0}.site-header .wrap{align-items:center;gap:var(--s-4);min-height:var(--header-h);display:flex}.site-header.over-hero{--fg:#fff;--fg-2:#fffc;--brand-soft:#ffffff24;--brand:#fff;background:0 0;border-bottom-color:#0000;position:fixed;left:0;right:0}.site-header.over-hero.scrolled{background:var(--glass);border-bottom-color:var(--line);--fg:initial;--fg-2:initial;--brand:initial;--brand-soft:initial}.logo{font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg);align-items:center;gap:10px;font-size:1.2rem;font-weight:800;display:inline-flex}.logo:hover{text-decoration:none}.logo svg{width:30px;height:30px;box-shadow:var(--shadow-sm);border-radius:9px}.nav{gap:2px;margin-left:auto;display:none}.nav a{border-radius:var(--r-pill);color:var(--fg-2);font-weight:600;font-size:var(--fs-sm);transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);padding:8px 12px}.nav a:hover{background:var(--brand-soft);color:var(--fg);text-decoration:none}.nav a[aria-current=page]{background:var(--brand-soft);color:var(--brand)}.site-header.over-hero:not(.scrolled) .nav a[aria-current=page]{color:#fff}.header-actions{align-items:center;gap:var(--s-2);margin-left:auto;display:flex}.nav+.header-actions{margin-left:0}.icon-btn{border-radius:var(--r-pill);width:44px;height:44px;color:var(--fg-2);transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--brand-soft);color:var(--fg)}.icon-btn:active{transform:scale(.94)}.icon-btn svg{width:22px;height:22px}.theme-toggle .sun,.theme-toggle .moon{transition:opacity var(--t-base) var(--ease), transform var(--t-base) var(--ease);position:absolute}.theme-toggle{position:relative}.theme-toggle .moon{opacity:0;transform:rotate(-40deg)scale(.6)}[data-theme=dark] .theme-toggle .sun{opacity:0;transform:rotate(40deg)scale(.6)}[data-theme=dark] .theme-toggle .moon{opacity:1;transform:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle .sun{opacity:0;transform:rotate(40deg)scale(.6)}:root:not([data-theme=light]) .theme-toggle .moon{opacity:1;transform:none}}.menu-btn{display:inline-flex}.mobile-nav{inset:var(--header-h) 0 0;background:var(--bg);z-index:39;padding:var(--s-6) var(--gutter);gap:var(--s-2);flex-direction:column;display:none;position:fixed}.mobile-nav.open{display:flex}.mobile-nav a{font-family:var(--font-display);font-size:var(--fs-2xl);color:var(--fg);padding:var(--s-3) 0;border-bottom:1px solid var(--line);font-weight:700}.mobile-nav a[aria-current=page]{color:var(--brand)}body.nav-open{overflow:hidden}@media (width>=820px){.nav{display:flex}.menu-btn,.mobile-nav{display:none!important}}.seg{border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);padding:3px;display:inline-flex}.seg button{border-radius:var(--r-pill);min-width:38px;height:32px;color:var(--fg-2);font-family:var(--font-display);font-weight:700;font-size:var(--fs-xs);transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;border:0;padding:0 10px}.seg button[aria-pressed=true]{background:var(--brand);color:var(--brand-fg)}.site-header.over-hero:not(.scrolled) .seg{background:#ffffff1f;border-color:#ffffff40}.site-header.over-hero:not(.scrolled) .seg button{color:#fffc}.site-header.over-hero:not(.scrolled) .seg button[aria-pressed=true]{color:var(--navy-900);background:#fff}.btn{border-radius:var(--r-pill);background:var(--brand);min-height:44px;color:var(--brand-fg);font-family:var(--font-display);font-weight:700;font-size:var(--fs-sm);cursor:pointer;white-space:nowrap;transition:background var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), color var(--t-fast) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 20px;display:inline-flex}.btn:hover{background:var(--brand-strong);box-shadow:var(--shadow-md);text-decoration:none;transform:translateY(-1px)}.btn:active{box-shadow:none;transform:translateY(0)}.btn svg{width:18px;height:18px}.btn.primary{background:var(--accent);color:var(--accent-fg);box-shadow:0 6px 18px -6px #f9731699}.btn.primary:hover{background:var(--accent-hover)}.btn.ghost{color:var(--brand);border-color:var(--line-strong);background:0 0}.btn.ghost:hover{background:var(--brand-soft);box-shadow:none}.btn.light{color:#fff;backdrop-filter:blur(8px);background:#ffffff24;border-color:#ffffff4d}.btn.light:hover{box-shadow:none;background:#ffffff3d}.btn.small{min-height:36px;font-size:var(--fs-xs);padding:6px 14px}.btn.lg{min-height:52px;font-size:var(--fs-base);padding:12px 26px}.btn.block{width:100%}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;pointer-events:none}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--s-6);transition:transform var(--t-base) var(--ease), box-shadow var(--t-base) var(--ease), border-color var(--t-base) var(--ease)}a.card{color:inherit;display:block}a.card:hover{text-decoration:none}.card.lift:hover,a.card:hover{box-shadow:var(--shadow-md);border-color:var(--line-strong);transform:translateY(-3px)}.card.flat{box-shadow:none}.card.tight{padding:var(--s-4)}.grid{gap:var(--s-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));display:grid}.grid.three{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}@media (width>=960px){.grid.three{grid-template-columns:repeat(3,1fr)}}.badge{border-radius:var(--r-pill);font-family:var(--font-display);font-weight:700;font-size:var(--fs-xs);background:var(--ok-soft);color:var(--ok);white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;line-height:1.4;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.badge.fair{background:var(--fair-soft);color:var(--fair)}.badge.poor{background:var(--poor-soft);color:var(--poor)}.badge small{opacity:.8;font-weight:500}.chip{border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);min-height:40px;color:var(--fg);font-weight:600;font-size:var(--fs-sm);transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.chip:hover{background:var(--brand-soft);border-color:var(--brand);text-decoration:none;transform:translateY(-1px)}.chip small{color:var(--fg-3);font-weight:500}.chips{gap:var(--s-2);flex-wrap:wrap;display:flex}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags a{font-size:var(--fs-xs);border-radius:var(--r-pill);background:var(--brand-soft);color:var(--brand);padding:4px 10px;font-weight:600}.tags a:hover{background:var(--brand);color:var(--brand-fg);text-decoration:none}.kicker{border-radius:var(--r-pill);color:#fff;font-size:var(--fs-xs);backdrop-filter:blur(6px);background:#ffffff1f;border:1px solid #ffffff38;align-items:center;gap:8px;padding:6px 12px 6px 8px;font-weight:600;display:inline-flex}.kicker i{background:var(--aqua-300);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse;box-shadow:0 0 0 4px #67e8f94d}@keyframes pulse{0%,to{box-shadow:0 0 0 3px #67e8f94d}50%{box-shadow:0 0 0 7px #67e8f914}}.input{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);width:100%;min-height:48px;color:var(--fg);font-size:var(--fs-base);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);padding:10px 16px}.input::placeholder{color:var(--fg-3)}.input:focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}.search-box{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-pill);width:100%;max-width:620px;box-shadow:var(--shadow-lg);transition:box-shadow var(--t-base) var(--ease), border-color var(--t-base) var(--ease);align-items:center;gap:8px;padding:6px 6px 6px 18px;display:flex;position:relative}.search-box:focus-within{border-color:var(--brand);box-shadow:var(--shadow-lg), var(--ring)}.search-box>svg{width:22px;height:22px;color:var(--fg-3);flex:none}.search-box input{min-width:0;min-height:44px;color:var(--fg);font-size:var(--fs-lg);background:0 0;border:0;flex:1}.search-box input:focus{outline:none}.search-box input::placeholder{color:var(--fg-3)}.search-results{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);width:100%;max-width:620px;box-shadow:var(--shadow-lg);text-align:left;animation:rise var(--t-base) var(--ease-out);gap:2px;margin:8px 0 0;padding:6px;list-style:none;display:grid}.search-results:empty{display:none}.search-results li a,.search-results li.note{border-radius:var(--r-md);color:var(--fg);align-items:center;gap:12px;padding:10px 12px;display:flex}.search-results li a:hover,.search-results li a:focus-visible{background:var(--brand-soft);text-decoration:none}.search-results li a svg{width:20px;height:20px;color:var(--brand);flex:none}.search-results li a b{font-weight:600;display:block}.search-results li a small{color:var(--fg-2);display:block}.search-results li a .pill{font-size:var(--fs-xs);color:var(--ok);background:var(--ok-soft);border-radius:var(--r-pill);white-space:nowrap;margin-left:auto;padding:3px 9px;font-weight:700}.search-results li a .pill.near{color:var(--fair);background:var(--fair-soft)}.search-results li.note{color:var(--fg-2)}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.skeleton{background:var(--surface-2);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff59,#0000);animation:1.4s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}[data-theme=dark] .skeleton:after{background:linear-gradient(90deg,#0000,#ffffff14,#0000)}@keyframes shimmer{to{transform:translate(100%)}}.prose{max-width:70ch;font-size:1.0625rem;line-height:1.72}.prose>:first-child{margin-top:0}.prose h2{font-size:var(--fs-2xl);margin-top:2em}.prose h3{margin-top:1.6em}.prose p,.prose ul,.prose ol{margin-bottom:1.2em}.prose li{margin-bottom:.35em}.prose img{border-radius:var(--r-lg)}.prose a{text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--brand) 40%, transparent);text-decoration-thickness:1.5px}.prose a:hover{text-decoration-color:var(--brand)}.prose blockquote{border-left:3px solid var(--brand);color:var(--fg-2);margin:1.5em 0;padding:.4em 1.2em;font-style:italic}.prose table{border-collapse:collapse;width:100%;font-size:var(--fs-sm);margin:1.2em 0;display:block;overflow-x:auto}.prose td,.prose th{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.prose th{font-family:var(--font-display);color:var(--fg-2);font-weight:700;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em}.prose code{font-family:var(--font-mono);background:var(--surface-2);border-radius:6px;padding:.1em .4em;font-size:.9em}.prose .safety-note{margin-top:2em}.prose .safety-note em{padding:var(--s-4) var(--s-5);border-radius:var(--r-md);background:var(--accent-soft);color:var(--fg);font-style:normal;font-size:var(--fs-sm);border-left:3px solid var(--accent);display:block}.live-cta{padding:var(--s-6) var(--s-6) var(--s-6) var(--s-7);border-radius:var(--r-xl);background:linear-gradient(135deg, var(--navy-900), var(--sea-700));color:#fff;margin:2em 0;position:relative;overflow:hidden}.live-cta:before{content:"“";font-family:var(--font-display);color:#67e8f959;font-size:6rem;font-weight:800;line-height:1;position:absolute;top:-10px;left:14px}.live-cta h2{color:var(--aqua-300);font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:var(--track-caps);margin:0 0 .6em}.live-cta p{font-family:var(--font-display);font-size:var(--fs-xl);margin:0;font-weight:600;line-height:1.4}.live-cta a{color:#fff;text-decoration-color:var(--aqua-300)}.live-cta a:hover{color:var(--aqua-300)}.faq{border-top:1px solid var(--line);margin:1em 0 0}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-family:var(--font-display);font-weight:700;font-size:var(--fs-base);color:var(--fg);align-items:center;gap:12px;padding:16px 0;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";border-right:2px solid var(--brand);border-bottom:2px solid var(--brand);width:10px;height:10px;transition:transform var(--t-base) var(--ease);flex:none;margin-left:auto;transform:rotate(45deg)}.faq details[open] summary:after{transform:rotate(-135deg)}.faq details p{color:var(--fg-2);font-size:var(--fs-base);margin:0 0 16px}.faq summary:hover{color:var(--brand)}.breadcrumbs{font-size:var(--fs-sm);color:var(--fg-3);margin:var(--s-5) 0}.breadcrumbs ol{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs a{color:var(--fg-2)}.breadcrumbs li+li:before{content:"/";opacity:.5;margin-right:6px}.breadcrumbs [aria-current]{color:var(--fg);font-weight:600}@media (width<=640px){.breadcrumbs li:last-child{display:none}}.post-card{flex-direction:column;padding:0;display:flex;overflow:hidden}.post-card .cover{aspect-ratio:16/9;background:var(--navy-800);position:relative;overflow:hidden}.post-card .cover img{object-fit:cover;width:100%;height:100%;transition:transform var(--t-slow) var(--ease)}.post-card:hover .cover img{transform:scale(1.04)}.post-card .cover .region{position:absolute;top:12px;left:12px}.post-card .body{padding:var(--s-5);flex-direction:column;flex:1;gap:8px;display:flex}.post-card h3{font-size:var(--fs-lg);margin:0;line-height:1.3}.post-card h3 a{color:var(--fg)}.post-card h3 a:after{content:"";position:absolute;inset:0}.post-card{position:relative}.post-card .desc{color:var(--fg-2);font-size:var(--fs-sm);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.post-card .meta{font-size:var(--fs-xs);color:var(--fg-3);align-items:center;gap:8px;margin:auto 0 0;padding-top:8px;display:flex}.post-card .meta a{z-index:1;color:var(--fg-2);font-weight:600;position:relative}.map-card{padding:0;position:relative;overflow:hidden}.map-card .thumb{aspect-ratio:4/3;background:var(--navy-900) url(/water.svg) center/cover;position:relative;overflow:hidden}.map-card .thumb img{object-fit:cover;width:100%;height:100%;transition:transform var(--t-slow) var(--ease)}.map-card:hover .thumb img{transform:scale(1.03)}.map-card .thumb:after{content:"";background:linear-gradient(#0000 45%,#0b1f3a8c);position:absolute;inset:0}.map-card .thumb .badge{z-index:1;position:absolute;top:12px;left:12px}.map-card .thumb .new{z-index:1;background:var(--accent);color:#fff;position:absolute;top:12px;left:auto;right:12px}.map-card .thumb .new:before{display:none}.map-card .body{padding:var(--s-5)}.map-card h3{font-size:var(--fs-lg);margin:0 0 4px}.map-card h3 a{color:var(--fg)}.map-card h3 a:after{content:"";position:absolute;inset:0}.map-card .meta{color:var(--fg-2);font-size:var(--fs-sm);flex-wrap:wrap;gap:4px 12px;margin:0;display:flex}.map-card .meta b{color:var(--fg);font-weight:600}.ad-slot{margin:var(--s-6) 0;padding:var(--s-5);border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm)}.ad-slot .label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--fg-3);margin-bottom:6px;font-weight:600}.ad-slot b{font-family:var(--font-display)}.ad-slot .stay-icon{background:var(--sand-100);width:40px;height:40px;color:var(--navy-800);border-radius:12px;justify-content:center;align-items:center;margin-bottom:10px;display:inline-flex}.ad-slot .stay-icon svg{width:22px;height:22px}.pager{margin:var(--s-8) 0;justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.toc{top:calc(var(--header-h) + 24px);font-size:var(--fs-sm);position:sticky}.toc h2{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--fg-3);margin-bottom:12px}.toc ol{border-left:2px solid var(--line);margin:0;padding:0;list-style:none}.toc li a{color:var(--fg-2);transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);border-left:2px solid #0000;margin-left:-2px;padding:6px 14px;display:block}.toc li a:hover,.toc li a.active{color:var(--brand);border-left-color:var(--brand);text-decoration:none}.progress{z-index:45;pointer-events:none;background:0 0;width:100%;height:3px;position:fixed;top:0;left:0}.progress i{background:linear-gradient(90deg, var(--sea-500), var(--aqua-300));width:0;height:100%;transition:width 80ms linear;display:block}.notify{gap:var(--s-6);padding:var(--s-7);border-radius:var(--r-xl);background:linear-gradient(135deg, var(--navy-900) 0%, var(--sea-700) 100%);color:#fff;align-items:center;display:grid;position:relative;overflow:hidden}.notify:after{content:"";pointer-events:none;background:radial-gradient(circle,#67e8f959,#0000 70%);border-radius:50%;width:320px;height:320px;position:absolute;bottom:-80px;right:-60px}.notify h2{color:#fff;margin-bottom:6px}.notify p{color:#ffffffc7;margin:0}.notify form{z-index:1;flex-wrap:wrap;gap:8px;display:flex;position:relative}.notify .input{color:#fff;background:#ffffff1a;border-color:#ffffff40;flex:1;min-width:200px}.notify .input::placeholder{color:#fff9}.notify .input:focus{border-color:var(--aqua-300);box-shadow:0 0 0 3px #67e8f94d}.notify .done{color:var(--aqua-300);font-weight:600}@media (width>=820px){.notify{grid-template-columns:1.2fr 1fr}}.site-footer{border-top:1px solid var(--line);margin-top:var(--s-10);padding:var(--s-9) 0 var(--s-8);color:var(--fg-2);font-size:var(--fs-sm);background:var(--surface)}.site-footer .cols{gap:var(--s-7);grid-template-columns:1fr;display:grid}.site-footer h3{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--fg-3);margin-bottom:10px}.site-footer ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:var(--fg-2)}.site-footer a:hover{color:var(--brand)}.site-footer .brand p{max-width:36ch;margin:10px 0 0}.site-footer .disclaimer{margin-top:var(--s-7);padding:var(--s-4) var(--s-5);border-radius:var(--r-md);background:var(--surface-2);color:var(--fg-2);font-size:var(--fs-xs);align-items:flex-start;gap:10px;display:flex}.site-footer .disclaimer svg{width:18px;height:18px;color:var(--accent);flex:none;margin-top:1px}.site-footer .bottom{margin-top:var(--s-6);color:var(--fg-3);font-size:var(--fs-xs);flex-wrap:wrap;justify-content:space-between;gap:8px 20px;display:flex}@media (width>=720px){.site-footer .cols{grid-template-columns:1.6fr 1fr 1fr 1fr}}.callout{padding:var(--s-5) var(--s-6);border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);gap:14px;display:flex}.callout.warn{border-color:color-mix(in srgb, var(--accent) 40%, transparent);background:var(--accent-soft)}.callout svg{width:24px;height:24px;color:var(--accent);flex:none;margin-top:2px}.callout b{font-family:var(--font-display);margin-bottom:4px;display:block}.callout p{color:var(--fg-2);font-size:var(--fs-sm);margin:0}.map-box{aspect-ratio:16/10;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--navy-900) url(/water.svg) center/cover;width:100%;min-height:260px;box-shadow:var(--shadow-md);position:relative;overflow:hidden}.map-box.tall{aspect-ratio:4/3}.map-box .placeholder{color:#fff;font-weight:600;font-size:var(--fs-sm);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.map-box .maplibregl-map{position:absolute;inset:0}.map-embed{margin:var(--s-6) 0}.map-embed figcaption{font-size:var(--fs-sm);color:var(--fg-2);flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;display:flex}.steps{gap:var(--s-5);counter-reset:step;grid-template-columns:1fr;display:grid}.step{padding:var(--s-6);border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);position:relative}.step .n{font-family:var(--font-display);font-weight:800;font-size:var(--fs-3xl);color:var(--brand);opacity:.35;line-height:1}.step h3{font-size:var(--fs-lg);margin:8px 0 6px}.step p{color:var(--fg-2);font-size:var(--fs-sm);margin:0}@media (width>=820px){.steps{grid-template-columns:repeat(3,1fr)}}.props{gap:var(--s-5);grid-template-columns:1fr;display:grid}.prop{padding:var(--s-6);border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);transition:transform var(--t-base) var(--ease), box-shadow var(--t-base) var(--ease)}.prop:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.prop .ico{background:var(--brand-soft);width:52px;height:52px;color:var(--brand);margin-bottom:var(--s-4);border-radius:16px;place-items:center;display:grid}.prop .ico svg{width:28px;height:28px}.prop h3{font-size:var(--fs-lg);margin-bottom:6px}.prop p{color:var(--fg-2);font-size:var(--fs-sm);margin:0}@media (width>=820px){.props{grid-template-columns:repeat(3,1fr)}}.two{gap:var(--s-7);grid-template-columns:1fr;display:grid}@media (width>=960px){.two{grid-template-columns:minmax(0,1fr) 320px}}.reveal{opacity:0;transition:opacity var(--t-slow) var(--ease-out), transform var(--t-slow) var(--ease-out);transform:translateY(14px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}.account-link{border-radius:var(--r-pill);min-height:40px;font-weight:700;font-size:var(--fs-sm);color:var(--fg);border:1px solid var(--line);background:var(--surface);align-items:center;gap:6px;padding:4px 12px 4px 6px;display:inline-flex}.account-link:hover{background:var(--brand-soft);text-decoration:none}.account-link .avatar{background:var(--brand);width:28px;height:28px;color:var(--brand-fg);font-family:var(--font-display);font-size:var(--fs-xs);border-radius:50%;place-items:center;display:grid}.account-link:not(:has(.avatar)){padding-left:12px}.site-header.over-hero:not(.scrolled) .account-link{color:#fff;background:#ffffff1f;border-color:#ffffff40}.mobile-nav .account-link,.mobile-nav [data-account-link]{font-size:var(--fs-lg)}.pro-badge{border-radius:var(--r-pill);background:linear-gradient(135deg, var(--coral-500), #fbbf24);color:#1a0b00;font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;align-items:center;padding:2px 8px;font-size:11px;font-weight:800;line-height:1.4;display:inline-flex}.pro-badge.big{font-size:var(--fs-xs);padding:4px 12px}.mt-modes{flex-wrap:wrap;gap:6px;margin:6px 0 10px;display:flex}.mt-modes .chip{min-height:36px;font-size:var(--fs-xs);padding:4px 12px}.mt-modes .chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.mt-cells{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.mt-cell{font-size:var(--fs-xs);border-radius:var(--r-pill);background:var(--accent-soft);color:var(--fg);padding:3px 9px;font-weight:600}.mt-cell.ok{background:var(--ok-soft);color:var(--ok)}.mapthis-modal{z-index:60;backdrop-filter:blur(3px);background:#0b1f3a99;place-items:center;padding:12px;display:grid;position:fixed;inset:0}.mapthis-modal .box{background:var(--surface);border-radius:var(--r-xl);width:min(1100px,100%);height:min(720px,100%);box-shadow:var(--shadow-lg);grid-template-rows:1fr auto;grid-template-columns:1fr;display:grid;position:relative;overflow:hidden}.mapthis-modal .mmap{min-height:260px;position:relative}.mapthis-modal .mmap .maplibregl-map{position:absolute;inset:0}.mapthis-modal .planner{width:auto;max-height:46vh;box-shadow:none;border:0;border-top:1px solid var(--line);border-radius:0;animation:none;position:static}@media (width>=820px){.mapthis-modal .box{grid-template-rows:1fr;grid-template-columns:1fr 380px}.mapthis-modal .planner{border-top:0;border-left:1px solid var(--line);max-height:none}}.planner .pop-head{font-family:var(--font-display);justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.planner .pop-head b{align-items:center;gap:8px;display:inline-flex}.planner .x{width:36px;height:36px;color:var(--fg-2);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.planner .x:hover{background:var(--surface-2);color:var(--fg)}.planner .small{font-size:var(--fs-xs);margin:4px 0}.planner .pl-stats{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.planner .pl-stats div{background:var(--surface-2);border-radius:10px;flex-direction:column;padding:8px 10px;display:flex}.planner .pl-stats b{font-family:var(--font-display);font-size:var(--fs-lg);letter-spacing:-.01em}.planner .pl-stats span{font-size:var(--fs-xs);color:var(--fg-2)}.planner .pl-actions{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.planner .spinner{vertical-align:-2px;border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.mapthis-modal .planner{color:var(--fg);background:var(--surface);flex-direction:column;gap:6px;padding:14px 16px 16px;display:flex;overflow:auto}@media (width<=640px){.site-header .seg{display:none}.account-link{padding:4px 8px}.account-link .al,.account-link .pro-badge{display:none}.account-link:not(:has(.avatar)){white-space:nowrap;padding:4px 12px}}.go{flex-direction:column;gap:12px;display:flex}.go-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.go-place{flex-direction:column;min-width:0;display:flex}.go-place b{font-family:var(--font-display);font-size:var(--fs-base);line-height:1.25}.go-chips{scrollbar-width:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.go-chips.wrap{flex-wrap:wrap;overflow:visible}.go-chips .chip{min-height:34px;font-size:var(--fs-xs);flex:none;gap:5px;padding:4px 12px}.go-chips .chip svg{color:var(--brand);flex:none}.go-chips.skill .chip{background:0 0;min-height:30px;padding:2px 10px}.go-chips .chip[aria-checked=true]{background:var(--brand);border-color:var(--brand);color:var(--brand-fg)}.go-chips.skill .chip[aria-checked=true]{background:var(--navy-900);border-color:var(--navy-900);color:#fff}.go-now{border-radius:var(--r-lg);background:var(--surface-2);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.go-loading,.go-err{min-height:44px;font-size:var(--fs-sm);color:var(--fg-2);align-items:center;gap:10px;font-weight:600;display:flex}.go-err{color:var(--poor)}.go-verdict{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.go-verdict b{font-family:var(--font-display);font-size:var(--fs-lg);letter-spacing:-.01em;line-height:1.25}.go-pill{border-radius:var(--r-pill);font-family:var(--font-display);font-weight:800;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;background:var(--ok-soft);color:var(--ok);white-space:nowrap;align-items:center;padding:4px 11px;display:inline-flex}.go-verdict.caution .go-pill,.go-pill.caution{background:var(--fair-soft);color:var(--fair)}.go-verdict.nogo .go-pill,.go-pill.nogo{background:var(--poor-soft);color:var(--poor)}.go-reasons{font-size:var(--fs-sm);color:var(--fg-2);flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none;display:flex}.go-reasons li:before{content:"•";color:var(--fair);margin-right:6px}.go-strip{gap:5px;display:grid}.go-scale{color:var(--fg-3);grid-template-columns:1fr 1fr 1fr 1fr;margin-left:92px;font-size:10px;font-weight:600;display:grid}.go-day{grid-template-columns:86px 1fr;align-items:center;gap:6px;display:grid}.go-dl{flex-direction:column;min-width:0;line-height:1.15;display:flex}.go-dl b{font-family:var(--font-display);font-size:var(--fs-sm)}.go-dl small{color:var(--fg-3);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.go-cells{grid-template-columns:repeat(24,1fr);gap:2px;display:grid}.go-c{background:var(--surface-3);cursor:pointer;height:26px;transition:transform var(--t-fast) var(--ease);border:0;border-radius:4px;padding:0;display:block}.go-c.go{background:var(--ok)}.go-c.caution{background:#f59e0b}.go-c.nogo{background:var(--poor)}.go-c.night{opacity:.28}.go-c.empty{cursor:default;background:0 0}.go-c:hover{transform:scaleY(1.15)}.go-c.sel{outline:2px solid var(--navy-900);outline-offset:1px;transform:scaleY(1.2)}[data-theme=dark] .go-c.sel{outline-color:#fff}.go-hour{border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);animation:rise var(--t-base) var(--ease-out);flex-direction:column;gap:8px;padding:10px 12px;display:flex}.go-hour-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.go-hour-head b{font-family:var(--font-display)}.go-best h3,.go-tide h3{font-size:var(--fs-sm);justify-content:space-between;align-items:baseline;margin:0 0 6px;display:flex}.go-tide h3 small{color:var(--fg-3);font-weight:500;font-size:var(--fs-xs)}.go-best ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.go-best li{background:var(--ok-soft);font-size:var(--fs-sm);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-weight:600;display:flex}.go-best li small{color:var(--fg-2);white-space:nowrap;margin-left:auto;font-weight:500}.go-dot{background:var(--ok);border-radius:50%;flex:none;width:9px;height:9px}.go-svg{width:100%;height:auto;fill:var(--fg-2);font-size:10px;font-weight:600;display:block;overflow:visible}.go-curve{fill:none;stroke:var(--brand);stroke-width:2.2px;stroke-linejoin:round}.go-band{fill:var(--ok);opacity:.18}.go-need{stroke:var(--ok);stroke-width:1px;stroke-dasharray:3 3}.go-hl circle{fill:var(--surface);stroke:var(--brand);stroke-width:2px}.go-hl text{fill:var(--fg-2);font-size:10px}.go-pass{margin:6px 0 0;font-weight:600}.go-pass.ok{color:var(--ok)}.go-pass.no{color:var(--poor)}.go-lock{background:var(--accent-soft);color:var(--fg);border-radius:10px;margin:0;padding:8px 12px}.go-foot{margin:0}.go-badge{font-size:var(--fs-xs);gap:5px}.go-badge.caution{background:var(--fair-soft);color:var(--fair)}.go-badge.nogo{background:var(--poor-soft);color:var(--poor)}.go-badge.pending{background:var(--surface-2);color:var(--fg-3)}.sl-result{gap:var(--s-4);grid-template-columns:1fr;display:grid}.sl-stats{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.sl-stats div{background:var(--surface-2);border-radius:12px;flex-direction:column;min-height:66px;padding:10px 12px;display:flex}.sl-stats b{font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:-.01em;line-height:1.15}.sl-stats span{font-size:var(--fs-xs);color:var(--fg-2)}.sl-viewer{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--navy-900);flex-direction:column;display:flex;overflow:hidden}.sl-map{aspect-ratio:4/3;min-height:300px;position:relative}.sl-map .maplibregl-map{position:absolute;inset:0}.sl-bar{background:var(--surface);flex-direction:column;gap:8px;padding:10px 12px;display:flex}.sl-years{scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.sl-year{border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);min-height:30px;color:var(--fg);font-size:var(--fs-xs);font-weight:700;font-family:var(--font-display);flex:none;align-items:center;gap:5px;padding:2px 9px;display:inline-flex}.sl-year i{background:var(--c,var(--fg-3));border-radius:50%;width:10px;height:10px}.sl-year.all i{background:linear-gradient(90deg,#440154,#21918c,#fde725)}.sl-year[aria-pressed=true]{background:var(--navy-900);border-color:var(--navy-900);color:#fff}[data-theme=dark] .sl-year[aria-pressed=true]{color:var(--navy-900);background:#fff;border-color:#fff}.sl-slider input{width:100%;accent-color:var(--brand)}.sl-legend{font-size:var(--fs-xs);color:var(--fg-2);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sl-legend .chip{min-height:30px;font-size:var(--fs-xs);padding:2px 10px}.sl-legend .chip[aria-pressed=true]{background:var(--navy-900);border-color:var(--navy-900);color:#fff}[data-theme=dark] .sl-legend .chip[aria-pressed=true]{color:var(--navy-900);background:#fff;border-color:#fff}.sl-ramp{border:1px solid #0000001f;border-radius:5px;width:110px;height:10px;display:inline-flex;overflow:hidden}.sl-ramp i{flex:1}.sl-ramp-l{gap:8px;display:inline-flex}.sl-side{flex-direction:column;gap:12px;display:flex}.sl-side h3{font-size:var(--fs-sm);margin:0 0 6px}.sl-hot{gap:6px;margin:0;padding:0;list-style:none;display:grid}.sl-hot button{text-align:left;border:1px solid var(--line);background:var(--surface);width:100%;color:var(--fg);font-size:var(--fs-sm);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.sl-hot button:hover{border-color:var(--brand);background:var(--brand-soft)}.sl-hot .n{background:var(--poor-soft);width:26px;height:26px;color:var(--poor);font-family:var(--font-display);font-weight:800;font-size:var(--fs-xs);border-radius:50%;flex:none;place-items:center;display:grid}.sl-hot .n.up{background:var(--brand-soft);color:var(--brand)}.sl-hot small{color:var(--fg-3);font-family:var(--font-mono);font-size:11px;display:block}.sl-dl{flex-wrap:wrap;gap:6px;display:flex}.sl-pop b{font-family:var(--font-display);text-transform:capitalize}.sl-side p{margin:0}@media (width>=900px){.sl-side[style]{min-height:0!important}.sl-result{grid-template-columns:1fr 300px;grid-template-areas:"stats stats""map side"}.sl-stats{grid-area:stats;grid-template-columns:repeat(6,1fr)}.sl-viewer{grid-area:map}.sl-side{grid-area:side}.sl-map{aspect-ratio:16/10}}.sl-wait{color:#fff;font-weight:600;font-size:var(--fs-sm);background:var(--navy-900) url(/water.svg) center/cover;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}
