@font-face{font-family:Gabarito;src:url(/fonts/Gabarito-VF.woff2)format("woff2");font-weight:600 900;font-display:swap}@font-face{font-family:Nunito Sans;src:url(/fonts/NunitoSans-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Nunito Sans;src:url(/fonts/NunitoSans-SemiBold.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Nunito Sans;src:url(/fonts/NunitoSans-Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Nunito Sans;src:url(/fonts/NunitoSans-ExtraBold.woff2)format("woff2");font-weight:800;font-display:swap}
:root{--font:"Gabarito", "Avenir Next", system-ui, sans-serif;--body:"Nunito Sans", "Avenir Next", system-ui, sans-serif;--hull-label-size:10px;--meta-size:13px;--label-size:14px;--ctl-size:15px;--body-size:16px;--btn-size:17px;--row-size:18px;--num-size:26px;--title-size:38px;--hero-size:48px;--weight-text:600;--weight-strong:700;--weight-heavy:800;--track-tight:-.02em;--track-snug:-.01em;--track-wide:.01em;--lh-tight:1;--lh-row:1.15;--lh-body:1.35;--ink:#1c2233;--ink2:#525b6e;--ink3:#6a7181;--ground:#fbf5ea;--paper:#fff;--on-hue:#fff;--grocery-on:var(--ink);--kitchen-on:var(--ink);--budget-on:var(--on-hue);--prophet-on:var(--on-hue);--neutral-on:var(--on-hue);--grocery:#139c64;--grocery-deep:#0f7d50;--grocery-soft:#d3f3e3;--grocery-mid:#8fdcb8;--kitchen:#e8931f;--kitchen-deep:#c4770f;--kitchen-soft:#ffe8c4;--kitchen-mid:#f8c977;--budget:#4462f0;--budget-deep:#3149c9;--budget-soft:#dee3ff;--budget-mid:#a9b6ff;--prophet:#7a4d74;--prophet-deep:#5d3858;--prophet-soft:#efdff0;--prophet-mid:#cfa4cb;--neutral:#2b3650;--neutral-deep:#1c2438;--neutral-soft:#e2e6f0;--neutral-mid:#a7b2cc;--ok:#118757;--ok-deep:#0f7d50;--ok-soft:#d3f3e3;--warn:#af6405;--warn-deep:#9a5605;--warn-soft:#ffe8c4;--bad:#de352b;--bad-deep:#b8332b;--bad-soft:#ffe0dc;--sun:#ffcf5c;--coral:#ff7a66;--mute:#e9e6df;--mute-line:#eeebe4;--mute-soft:#f0ede6;--rule:#ece8df;--hull-ink:#b9c0cf;--veil-light:#fff3;--veil-dark:#00000012;--grocery-veil:var(--veil-light);--kitchen-veil:var(--veil-light);--budget-veil:var(--veil-dark);--prophet-veil:var(--veil-dark);--neutral-veil:var(--veil-dark);--kicker-bg:var(--veil-light);--stat-bg:var(--veil-light);--water-track:#ffffff47;--water-stroke:#0000001f;--art-fill:#ffffff38;--htab-ring:#ffffff2e;--press-shade:#00000029;--r:20px;--r-card:18px;--r-tab:14px;--r-pill:12px;--r-water:7px;--r-hull-top:16px;--r-hull-bottom:38px;--r-deck-wide:28px;--lift:0 10px 24px -14px #1c223347;--hull-lift:0 12px 26px -14px #1c223399;--wave:26px;--wave-wide:28px;--wave-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 26' preserveAspectRatio='none'><path d='M0 14C20 0 40 0 60 14S100 28 120 14V26H0Z'/></svg>");--pad:16px;--deck-pad:20px;--deck-pad-t:14px;--deck-pad-b:46px;--note-lift:30px;--gap:12px;--gap-sm:8px;--gap-row:14px;--folder-gap:18px;--rule-w:2px;--strip-h:3px;--tap-min:44px;--row:64px;--row-pad:10px;--buoy:34px;--buoy-ring:3px;--tab-h:40px;--kicker-h:28px;--pill-h:30px;--chip-h:44px;--btn-h:50px;--btn-sm-h:44px;--field-h:54px;--act:48px;--disc:40px;--water-h:14px;--icon:20px;--icon-lg:22px;--icon-stroke:2.2;--hull-h:72px;--htab:56px;--hull-pad-b:24px;--entry-bottom:118px;--wide:700px;--wide-max:1240px;--wide-col:380px;--wide-gap:24px;--wide-pad:40px;--desktop:900px;--topbar-h:76px;--topbar-gap:24px;--topbar-nav-gap:6px;--topbar-item-gap:10px;--topbar-sw:10px;--topbar-mark:24px;--lip:5px;--lip-sm:4px;--lip-buoy:3px;--sheet-edge:5px;--halo:4px;--htab-lift:6px;--hairline:1px;--strike:2.5px;--title-gap:10px;--stats-gap:20px;--art-gutter:104px;--lede-max:520px;--kicker-pad-h:12px;--kicker-dot:8px;--tile-pad-v:14px;--tile-pad-h:16px;--tile-gap:4px;--note-pad:12px;--note-pad-l:14px;--note-pad-tall:28px;--tab-pad-l:14px;--tab-meta-max:170px;--sheet-head-pad-b:8px;--btn-pad-h:22px;--btn-sm-pad-h:16px;--pill-pad-h:11px;--pill-gap:6px;--qty-pad-v:6px;--qty-pad-h:10px;--entry-gap:10px;--hull-pad-t:8px;--hull-pad-h:14px;--bar-pad-h:10px;--htab-gap:1px;--strip-r:3px;--nav-gap:12px;--nav-top:22px;--water-tile-w:40px;--water-tile-h:14px;--water-stroke-w:2px;--deck-wide-pad-t:22px;--deck-wide-pad-b:54px;--content-pad-b:215px;--tick-stroke:3.2;--unit-size:20px;--dur-1:.12s;--dur-2:.22s;--dur-3:.42s;--ease:cubic-bezier(.2, .8, .3, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-tide:cubic-bezier(.45, .05, .25, 1);--font-display:var(--font);--font-ui:var(--body);--font-mono:"SF Mono", ui-monospace, "JetBrains Mono", "IBM Plex Mono", Menlo, monospace;--h1-size:31px;--h1-weight:500;--h1-tracking:-.02em;--num-weight:500;--label-tracking:.2em;--label-weight:650;--card-pad:13px;--radius:13px;--blur:16px;--shadow-k:1;--art-opacity:.16;--card-tint:255 255 255;--border-tint:255 255 255;--card-alpha:.6;--border-alpha:.88;--ink-2:var(--ink2);--grad-1:#cadae3;--grad-2:#d7dfdd;--grad-3:#efe9dc;--grad-4:#f2d9c0;--strip-bg:#15181c;--strip-ink:#c4c9c4;--strip-strong:#fff;--fill-grocery:#4f6f52;--fill-kitchen:#8f5a18;--fill-budget:#3f5468;--fill-prophet:#6a4560;--fill-bad:#9b3b2e;--scrim:#f6f8f7eb;--veil:#14181b57;--shadow:0 1px 2px rgb(30 45 55/calc(.05 * var(--shadow-k))), 0 14px 30px -22px rgb(25 40 50/calc(.55 * var(--shadow-k)))}
[data-module]{--tab:var(--hue);--sw:var(--hue);--kicker-bg:var(--hue-veil);--stat-bg:var(--hue-veil)}[data-module=grocery]{--hue:var(--grocery);--hue-deep:var(--grocery-deep);--soft:var(--grocery-soft);--mid:var(--grocery-mid);--hue-ink:var(--grocery-on);--hue-veil:var(--grocery-veil)}[data-module=kitchen]{--hue:var(--kitchen);--hue-deep:var(--kitchen-deep);--soft:var(--kitchen-soft);--mid:var(--kitchen-mid);--hue-ink:var(--kitchen-on);--hue-veil:var(--kitchen-veil)}[data-module=budget]{--hue:var(--budget);--hue-deep:var(--budget-deep);--soft:var(--budget-soft);--mid:var(--budget-mid);--hue-ink:var(--budget-on);--hue-veil:var(--budget-veil)}[data-module=prophet]{--hue:var(--prophet);--hue-deep:var(--prophet-deep);--soft:var(--prophet-soft);--mid:var(--prophet-mid);--hue-ink:var(--prophet-on);--hue-veil:var(--prophet-veil)}[data-module=neutral]{--hue:var(--neutral);--hue-deep:var(--neutral-deep);--soft:var(--neutral-soft);--mid:var(--neutral-mid);--hue-ink:var(--neutral-on);--hue-veil:var(--neutral-veil);--tab:var(--ink);--sw:var(--neutral-mid)}.hb-focus:focus-visible{box-shadow:var(--hb-lip,0 0 0 0 transparent), 0 0 0 3px var(--on-hue), 0 0 0 6px var(--ink);outline:none}.hb-row.hb-focus:focus-visible{box-shadow:inset 0 0 0 3px var(--ink)}.hb-num{font-family:var(--font);font-weight:var(--weight-heavy);letter-spacing:var(--track-tight);line-height:var(--lh-tight);font-variant-numeric:tabular-nums}.hb-mono{font-weight:var(--weight-heavy);font-variant-numeric:tabular-nums}.hb-ico{width:var(--icon);height:var(--icon);stroke:currentColor;fill:none;stroke-width:var(--icon-stroke);stroke-linecap:round;stroke-linejoin:round;flex:none}.hb-deck{padding:var(--deck-pad-t) var(--deck-pad) var(--deck-pad-b);background:var(--hue);color:var(--hue-ink);font-family:var(--body);flex-shrink:0;position:relative;overflow:hidden}.hb-deck:after{content:"";height:var(--wave);background:var(--ground);-webkit-mask:var(--wave-mask) repeat-x;-webkit-mask:var(--wave-mask) repeat-x;mask:var(--wave-mask) repeat-x;-webkit-mask-size:auto var(--wave);-webkit-mask-size:auto var(--wave);mask-size:auto var(--wave);position:absolute;bottom:-1px;left:0;right:0}.hb-deck-top{min-height:var(--tab-h);justify-content:space-between;align-items:center;gap:var(--gap);display:flex}.hb-deck-back{min-height:var(--tap-min);margin-left:calc(var(--gap-sm) * -1);padding:0 var(--gap-sm);border-radius:var(--r-tab);color:var(--hue-ink);font-family:var(--body);font-size:var(--ctl-size);font-weight:var(--weight-heavy);align-items:center;gap:2px;text-decoration:none;display:inline-flex}.hb-kicker{height:var(--kicker-h);align-items:center;gap:var(--gap-sm);width:max-content;padding:0 var(--gap);border-radius:var(--r-tab);background:var(--kicker-bg);color:var(--hue-ink);font-family:var(--font);font-size:var(--meta-size);font-weight:var(--weight-strong);letter-spacing:var(--track-wide);display:inline-flex}.hb-kicker:before{content:"";width:var(--gap-sm);height:var(--gap-sm);background:var(--hue-ink);border-radius:50%;flex:none}.hb-deck-title{margin:var(--title-gap) 0 0;font-family:var(--font);font-size:var(--title-size);font-weight:var(--weight-heavy);letter-spacing:var(--track-tight);line-height:var(--lh-tight)}.hb-deck-title--lg{font-size:var(--hero-size)}.hb-deck-lede{margin:var(--gap-sm) 0 0;max-width:60ch;font-size:var(--body-size);font-weight:var(--weight-text);line-height:var(--lh-body)}.hb-deck:has(.hb-deck-art) .hb-deck-lede{padding-right:var(--art-gutter)}.hb-deck-act{width:var(--act);height:var(--act);background:var(--paper);color:var(--hue);cursor:pointer;--hb-lip:inset 0 calc(-1 * var(--lip-sm)) 0 var(--soft);box-shadow:var(--hb-lip);border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.hb-deck-art{top:calc(var(--deck-pad-b) + var(--deck-pad));z-index:0;stroke:var(--on-hue);fill:var(--art-fill);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;position:absolute;right:10px}.hb-stats{z-index:1;gap:var(--gap);margin-top:var(--deck-pad);grid-template-columns:repeat(var(--hb-stat-cols,2), minmax(0, 1fr));display:grid;position:relative}.hb-stat{gap:var(--tile-gap);padding:var(--deck-pad-t) var(--pad);border-radius:var(--r-card);background:var(--stat-bg);flex-direction:column;display:flex;position:relative;overflow:hidden}.hb-stat-lbl,.hb-stat-big,.hb-stat-sub,.hb-tile-lbl,.hb-tile-big,.hb-meter-name{display:block}.hb-stat-lbl{font-family:var(--font);font-size:var(--label-size);font-weight:var(--weight-strong)}.hb-stat-big{font-size:var(--hero-size)}.hb-stat-big small{font-size:var(--unit-size);font-weight:var(--weight-strong);margin-left:4px}.hb-stat-sub{font-size:var(--meta-size);font-weight:var(--weight-text)}.hb-stat--solid{background:var(--paper);color:var(--ink)}.hb-stat--solid .hb-stat-sub{color:var(--ink2)}.hb-waterline{height:var(--wave);background:var(--ground);-webkit-mask:var(--wave-mask) repeat-x;-webkit-mask:var(--wave-mask) repeat-x;mask:var(--wave-mask) repeat-x;-webkit-mask-size:auto var(--wave);-webkit-mask-size:auto var(--wave);mask-size:auto var(--wave);margin-bottom:-1px;display:block}.hb-water{height:var(--water-h);margin-top:var(--gap-sm);border-radius:var(--r-water);background:var(--water-track);position:relative;overflow:hidden}.hb-water>i{border-radius:var(--r-water);background:var(--hue-ink);height:100%;transition:width var(--dur-2) var(--ease);display:block}.hb-water:after{content:"";background:var(--water-stroke);-webkit-mask:var(--hb-ripple) repeat-x;-webkit-mask:var(--hb-ripple) repeat-x;mask:var(--hb-ripple) repeat-x;--hb-ripple:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='40' height='14' viewBox='0 0 40 14'><path d='M0 8c5-4 10-4 15 0s10 4 15 0 8-2 10 0' fill='none' stroke='black' stroke-width='2'/></svg>");pointer-events:none;position:absolute;inset:0}.hb-water--paper{background:var(--mute-soft)}.hb-water--paper:after{content:none}.hb-note{z-index:2;align-items:center;gap:var(--gap);margin:calc(var(--note-lift) * -1) var(--pad) 0;padding:var(--note-pad) var(--note-pad) var(--note-pad) var(--note-pad-l);border-radius:var(--r-card);background:var(--paper);box-shadow:var(--lift);color:var(--ink);display:flex;position:relative}.hb-note--flow{margin-top:var(--deck-pad)}.hb-note--block{align-items:center;gap:var(--row-pad);padding:var(--r-deck-wide) var(--deck-pad);text-align:center;flex-direction:column}.hb-note-disc{width:var(--disc);height:var(--disc);background:var(--soft);color:var(--hue);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.hb-note-disc--warn{background:var(--warn-soft);color:var(--warn-deep)}.hb-note-disc--bad{background:var(--bad-soft);color:var(--bad-deep)}.hb-note p{font-size:var(--label-size);font-weight:var(--weight-text);line-height:var(--lh-body);flex:1;margin:0}.hb-note--block p{font-size:var(--ctl-size);color:var(--ink2);flex:none}.hb-note-title{font-family:var(--font);font-size:var(--num-size);font-weight:var(--weight-heavy);letter-spacing:var(--track-tight)}.hb-note--warn{box-shadow:inset 0 0 0 var(--rule-w) var(--warn), var(--lift)}.hb-note--bad{box-shadow:inset 0 0 0 var(--rule-w) var(--bad), var(--lift)}.hb-folder{margin-top:var(--folder-gap);position:relative}.hb-folder-head{justify-content:space-between;align-items:flex-end;gap:var(--row-pad);display:flex}.hb-tab{top:var(--hairline);height:var(--tab-h);align-items:center;gap:var(--gap-sm);padding:0 var(--pad) 0 var(--tab-pad-l);border-radius:var(--r-tab) var(--r-tab) 0 0;background:var(--soft);color:var(--hue-deep);font-family:var(--font);font-size:var(--row-size);font-weight:var(--weight-heavy);letter-spacing:var(--track-snug);white-space:nowrap;display:inline-flex;position:relative}.hb-tab-meta{max-width:var(--tab-meta-max);color:var(--hue-deep);font-family:var(--body);font-size:var(--meta-size);font-weight:var(--weight-strong);text-overflow:ellipsis;overflow:hidden}.hb-tab--neutral{background:var(--mute);color:var(--ink2)}.hb-tab--neutral .hb-tab-meta{color:var(--ink2)}.hb-sheet{border-radius:0 var(--r) var(--r) var(--r);background:var(--paper);color:var(--ink);box-shadow:0 var(--sheet-edge) 0 var(--soft), var(--lift);overflow:hidden}.hb-sheet--neutral{box-shadow:0 var(--sheet-edge) 0 var(--mute), var(--lift)}.hb-sheet-h{justify-content:space-between;align-items:center;gap:var(--gap);padding:var(--deck-pad-t) var(--pad) var(--sheet-head-pad-b);font-family:var(--font);font-weight:var(--weight-strong);display:flex}.hb-sheet-body{padding:var(--deck-pad-t) var(--pad)}.hb-row{width:100%;min-height:var(--row);align-items:center;gap:var(--gap-row);padding:var(--row-pad) var(--pad);border:0;border-top:var(--rule-w) solid var(--soft);background:var(--paper);color:inherit;font:inherit;text-align:left;transition:background var(--dur-1) var(--ease);border-radius:0;text-decoration:none;display:flex}.hb-sheet--neutral .hb-row{border-top-color:var(--mute-line)}.hb-row:first-child{border-top:0}button.hb-row,a.hb-row{cursor:pointer}button.hb-row:hover,a.hb-row:hover{background:var(--soft)}.hb-row-body{flex-direction:column;flex:1;min-width:0;display:flex}.hb-row-t,.hb-row-m{display:block}.hb-row-t{font-family:var(--font);font-size:var(--row-size);font-weight:var(--weight-strong);line-height:var(--lh-row)}.hb-row-m{color:var(--ink2);font-size:var(--meta-size);font-weight:var(--weight-text);line-height:var(--lh-body);margin-top:2px}.hb-q{padding:var(--qty-pad-v) var(--qty-pad-h);border-radius:var(--r-pill);background:var(--soft);color:var(--hue-deep);font-family:var(--font);font-size:var(--ctl-size);font-weight:var(--weight-heavy);white-space:nowrap;margin-left:auto}.hb-row--done .hb-row-t{color:var(--ink3);text-decoration:line-through;-webkit-text-decoration-color:var(--hue);text-decoration-color:var(--hue);text-decoration-thickness:var(--strike)}.hb-row--done .hb-q{background:var(--mute-soft);color:var(--ink2)}.hb-buoy{width:var(--buoy);height:var(--buoy);border:var(--buoy-ring) solid var(--mid);background:var(--paper);box-shadow:inset 0 calc(var(--buoy-ring) * -1) 0 var(--soft);transition:background var(--dur-1) var(--ease), border-color var(--dur-1) var(--ease);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.hb-buoy--on{border-color:var(--hue);background:var(--hue);box-shadow:0 0 0 var(--halo) var(--soft)}.hb-buoy svg{width:var(--icon);height:var(--icon);stroke:var(--hue-ink);fill:none;stroke-width:var(--tick-stroke);stroke-linecap:round;stroke-linejoin:round}.hb-row--split{padding-right:var(--gap-sm);gap:var(--gap-sm);flex-wrap:wrap}.hb-rowform{display:contents}.hb-rowmain{min-width:0;min-height:var(--tap-min);align-items:center;gap:var(--gap-row);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;flex:60%;padding:0;display:flex}.hb-rowact{width:var(--tap-min);height:var(--tap-min);color:var(--ink2);cursor:pointer;transition:background var(--dur-1) var(--ease);background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.hb-rowact:hover{background:var(--mute-soft);color:var(--ink)}.hb-rowmain.hb-focus:focus-visible,.hb-rowact.hb-focus:focus-visible{box-shadow:inset 0 0 0 3px var(--ink)}.hb-rowedit{width:100%;min-height:var(--row);align-items:center;gap:var(--gap-sm);padding:var(--row-pad) var(--pad);border-top:var(--rule-w) solid var(--soft);background:var(--paper);flex-wrap:wrap;display:flex}.hb-pill{height:var(--pill-h);align-items:center;gap:var(--pill-gap);padding:0 var(--pill-pad-h);border-radius:calc(var(--pill-h) / 2);background:var(--soft);color:var(--hue-deep);font-family:var(--body);font-size:var(--meta-size);font-weight:var(--weight-heavy);white-space:nowrap;display:inline-flex}.hb-pill--warn{background:var(--warn-soft);color:var(--warn-deep)}.hb-pill--bad{background:var(--bad-soft);color:var(--bad-deep)}.hb-pill--grey{background:var(--mute-soft);color:var(--ink2)}.hb-pill--ok{background:var(--ok-soft);color:var(--ok-deep)}.hb-btn{height:var(--btn-h);justify-content:center;align-items:center;gap:var(--gap-sm);padding:0 var(--btn-pad-h);border-radius:calc(var(--btn-h) / 2);cursor:pointer;font-family:var(--font);font-size:var(--btn-size);font-weight:var(--weight-heavy);white-space:nowrap;--hb-lip:inset 0 calc(-1 * var(--lip)) 0 var(--press-shade);box-shadow:var(--hb-lip);transition:translate var(--dur-1) var(--ease);border:0;text-decoration:none;display:inline-flex}.hb-btn--fill{background:var(--hue);color:var(--hue-ink)}.hb-btn--ghost{background:var(--paper);color:var(--hue-deep);--hb-lip:inset 0 calc(-1 * var(--lip)) 0 var(--soft)}.hb-btn--bad{background:var(--bad);color:var(--on-hue);--hb-lip:inset 0 calc(-1 * var(--lip)) 0 var(--bad-deep)}.hb-btn--sm{height:var(--btn-sm-h);padding:0 var(--pad);border-radius:calc(var(--btn-sm-h) / 2);font-size:var(--ctl-size)}.hb-btn--round{width:var(--btn-h);border-radius:50%;padding:0}.hb-btn--sm.hb-btn--round{width:var(--btn-sm-h)}.hb-btn:not(:disabled):active{translate:0 var(--hairline)}.hb-btn:disabled{background:var(--mute-soft);color:var(--ink2);cursor:not-allowed;--hb-lip:0 0 0 0 transparent}.hb-chips{gap:var(--gap-sm);scrollbar-width:none;border:0;min-width:0;margin:0;padding:0 0 6px;display:flex;overflow-x:auto}.hb-chip{height:var(--chip-h);padding:0 var(--btn-sm-pad-h);border-radius:calc(var(--chip-h) / 2);background:var(--paper);color:var(--ink2);cursor:pointer;font-family:var(--font);font-size:var(--ctl-size);font-weight:var(--weight-heavy);white-space:nowrap;--hb-lip:inset 0 calc(-1 * var(--lip-sm)) 0 var(--rule);box-shadow:var(--hb-lip);transition:translate var(--dur-1) var(--ease);border:0;flex:none;align-items:center;text-decoration:none;display:inline-flex}.hb-chip--on{background:var(--hue);color:var(--hue-ink);--hb-lip:inset 0 calc(-1 * var(--lip-sm)) 0 var(--press-shade)}.hb-chip:not(:disabled):active{translate:0 var(--hairline)}.hb-chip:disabled{background:var(--mute-soft);color:var(--ink2);cursor:not-allowed;--hb-lip:0 0 0 0 transparent}.hb-entry{align-items:center;gap:var(--entry-gap);display:flex}.hb-entry-field{min-width:0;height:var(--field-h);padding:0 var(--deck-pad);border-radius:calc(var(--field-h) / 2);background:var(--paper);color:var(--ink);font-family:var(--body);font-size:var(--body-size);font-weight:var(--weight-strong);--hb-lip:inset 0 calc(-1 * var(--lip)) 0 var(--soft), var(--lift);box-shadow:var(--hb-lip);border:0;flex:1}.hb-entry-field::placeholder{color:var(--ink2);opacity:1}.hb-entry .hb-btn--round{width:var(--field-h);height:var(--field-h)}.hb-rowedit .hb-entry{flex:1;min-width:0}.hb-rowedit .hb-entry-field{height:var(--tap-min);padding:0 var(--pad);font-size:var(--body-size)}.hb-entrywrap{right:var(--pad);bottom:var(--entry-bottom);left:var(--pad);z-index:3;position:absolute}.hb-sheet-body>p{color:var(--ink2);font-family:var(--body);font-size:var(--body-size);font-weight:var(--weight-text);line-height:var(--lh-body);margin:0}.hb-sheet-body>p+p{margin-top:var(--gap)}.hb-sheet-body strong{color:var(--ink);font-weight:var(--weight-heavy)}.hb-acts{align-items:center;gap:var(--gap-sm);margin-top:var(--gap);flex-wrap:wrap;display:flex}.hb-select{height:var(--tap-min);min-width:0;padding:0 var(--pad);border-radius:calc(var(--tap-min) / 2);background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--ctl-size);font-weight:var(--weight-heavy);cursor:pointer;--hb-lip:inset 0 calc(-1 * var(--lip)) 0 var(--soft);box-shadow:var(--hb-lip);border:0}.hb-echo{gap:var(--gap-sm);margin-bottom:var(--gap-sm);flex-wrap:wrap;display:flex}.hb-hull--desk{display:none}.hb-hull{z-index:4;padding:var(--hull-pad-t) var(--hull-pad-h) var(--hull-pad-b);background:linear-gradient(180deg, color-mix(in srgb, var(--ground) 0%, transparent), color-mix(in srgb, var(--ground) 95%, transparent) 40%);position:absolute;bottom:0;left:0;right:0}.hb-hull-bar{height:var(--hull-h);padding:0 var(--bar-pad-h);border-radius:var(--r-hull-top) var(--r-hull-top) var(--r-hull-bottom) var(--r-hull-bottom);background:var(--ink);box-shadow:var(--hull-lift);justify-content:space-around;align-items:center;display:flex;position:relative}.hb-hull-bar:before{content:"";top:0;right:var(--hull-pad-h);left:var(--hull-pad-h);height:var(--strip-h);border-radius:0 0 var(--strip-r) var(--strip-r);background:var(--hue);position:absolute}.hb-htab{width:var(--htab);height:var(--htab);justify-content:center;align-items:center;gap:var(--htab-gap);color:var(--hull-ink);transition:translate var(--dur-2) var(--ease-out);border-radius:50%;flex-direction:column;text-decoration:none;display:flex}.hb-htab .hb-ico{width:var(--icon-lg);height:var(--icon-lg);stroke-width:2px}.hb-htab span{font-family:var(--font);font-size:var(--hull-label-size);font-weight:var(--weight-strong)}.hb-htab--on{background:var(--paper);color:var(--tab);box-shadow:0 0 0 var(--halo) var(--htab-ring);translate:0 calc(-1 * var(--htab-lift))}.hb-brand,.hb-who{display:none}.hb-brand{align-items:center;gap:var(--topbar-item-gap);color:var(--ink);font-family:var(--font);font-size:var(--num-size);font-weight:var(--weight-heavy);letter-spacing:var(--track-tight);text-decoration:none}.hb-brand .hb-ico{width:var(--topbar-mark);height:var(--topbar-mark)}.hb-who{align-items:center;gap:var(--topbar-item-gap);color:var(--ink);font-family:var(--body);font-size:var(--body-size);font-weight:var(--weight-heavy);text-decoration:none}.hb-av{width:var(--disc);height:var(--disc);background:var(--coral);color:var(--on-hue);font-family:var(--font);font-size:var(--ctl-size);font-weight:var(--weight-heavy);box-shadow:inset 0 calc(-1 * var(--lip-sm)) 0 var(--press-shade);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.hb-meter{gap:var(--gap-sm);padding:var(--deck-pad-t) var(--pad);border-top:var(--rule-w) solid var(--soft);flex-direction:column;display:flex}.hb-meter-top{justify-content:space-between;align-items:baseline;gap:var(--gap);display:flex}.hb-meter-name{font-family:var(--font);font-size:var(--row-size);font-weight:var(--weight-strong)}.hb-meter-foot{color:var(--ink2);font-size:var(--meta-size);font-weight:var(--weight-strong);justify-content:space-between;display:flex}.hb-meter-foot .hb-mono{font-weight:var(--weight-heavy);font-variant-numeric:tabular-nums}.hb-fill--ok{background:var(--ok)}.hb-fill--warn{background:var(--warn)}.hb-fill--bad{background:var(--bad)}.hb-nav4{gap:var(--nav-gap);margin-top:var(--nav-top);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hb-tile{gap:var(--tile-gap);padding:var(--tile-pad-v) var(--tile-pad-h);border-radius:var(--r-card);background:var(--paper);color:var(--ink);box-shadow:0 var(--sheet-edge) 0 var(--soft), var(--lift);flex-direction:column;text-decoration:none;display:flex}.hb-tile-lbl{color:var(--ink2);font-family:var(--font);font-size:var(--label-size);font-weight:var(--weight-strong)}.hb-tile-lbl--sub{font-weight:var(--weight-text)}.hb-tile-big{color:var(--hue-deep);font-size:var(--num-size)}.hb-screen{background:var(--ground);height:100dvh;font-family:var(--body);color:var(--ink);flex-direction:column;display:flex;position:relative;overflow:hidden}.hb-content{padding:0 var(--pad) var(--content-pad-b);flex-direction:column;flex:1;gap:2px;display:flex}.hb-screen:has(.hb-entrywrap .hb-note--flow) .hb-content{padding-bottom:calc(var(--content-pad-b) + 128px)}.hb-stack{flex-direction:column;display:flex}.hb-cols{margin-top:var(--gap-sm);gap:var(--wide-gap);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.hb-main{overscroll-behavior-y:contain;flex-direction:column;flex:1;width:100%;min-height:0;display:flex;overflow-y:auto}.hb-skel{width:var(--hb-skel-w,100%);height:var(--water-h);border-radius:var(--r-water);background:var(--soft);flex:none}.hb-skel--disc{width:var(--buoy);height:var(--buoy);border-radius:50%}.hb-skel--tall{height:var(--act);border-radius:var(--r-pill)}.hb-skel--tab{height:var(--tab-h);border-radius:var(--r)}.hb-skel-lines{gap:var(--gap-sm);flex-direction:column;flex:1;min-width:0;display:flex}@media (min-width:700px){.hb-screen{--wide-gutter:calc(max(0px, 100% - var(--wide-max)) / 2 + var(--wide-pad))}.hb-main{width:100%;padding-block:var(--r-deck-wide) calc(var(--wide-pad) + var(--pad));padding-inline:var(--wide-gutter)}.hb-main .hb-deck{border-radius:var(--r-deck-wide);padding:var(--deck-wide-pad-t) var(--r-deck-wide) var(--deck-wide-pad-b)}.hb-main .hb-deck:after{height:var(--wave-wide)}.hb-main .hb-deck .hb-deck-lede{padding-right:0}.hb-main .hb-deck-art{top:84px;right:36px}.hb-main .hb-note{margin-inline:var(--deck-pad)}.hb-cols{grid-template-columns:minmax(0, 1fr) minmax(0, min(var(--wide-col), 38%))}.hb-content{padding-bottom:var(--wide-pad)}.hb-content--entry{padding-bottom:var(--content-pad-b)}}@media (min-width:900px){.hb-screen>.hb-hull--phone{display:none}.hb-screen>.hb-hull--desk{height:var(--topbar-h);align-items:center;gap:var(--topbar-gap);padding:0 var(--wide-pad);background:var(--paper);box-shadow:0 var(--hairline) 0 var(--rule);flex:none;display:flex;position:static}.hb-screen>.hb-hull--desk .hb-brand,.hb-screen>.hb-hull--desk .hb-who{display:flex}.hb-screen>.hb-hull--desk .hb-hull-nav{flex:1;display:flex}.hb-screen>.hb-hull--desk .hb-hull-bar{justify-content:flex-start;gap:var(--topbar-nav-gap);height:auto;box-shadow:none;background:0 0;border-radius:0;flex:1;padding:0}.hb-screen>.hb-hull--desk .hb-hull-bar:before{content:none}.hb-screen>.hb-hull--desk .hb-htab{width:auto;height:var(--tap-min);gap:var(--gap-sm);padding:0 var(--btn-sm-pad-h);border-radius:calc(var(--tap-min) / 2);color:var(--ink2);flex-direction:row;translate:none}.hb-screen>.hb-hull--desk .hb-htab:before{content:"";width:var(--topbar-sw);height:var(--topbar-sw);background:var(--sw);border-radius:50%;flex:none}.hb-screen>.hb-hull--desk .hb-htab .hb-ico{display:none}.hb-screen>.hb-hull--desk .hb-htab span{font-size:var(--ctl-size);font-weight:var(--weight-heavy)}.hb-screen>.hb-hull--desk .hb-htab--on{background:var(--tab);color:var(--hue-ink);box-shadow:inset 0 calc(-1 * var(--lip-sm)) 0 var(--press-shade)}.hb-screen>.hb-hull--desk .hb-htab--on:before{background:var(--hue-ink)}.hb-screen>.hb-entrywrap{right:var(--wide-gutter);bottom:var(--wide-pad);left:var(--wide-gutter)}.hb-content--entry{padding-bottom:calc(var(--wide-pad) + var(--field-h) + var(--gap))}}@media (max-width:899px){.kitchen-content{padding-bottom:calc(var(--content-pad-b) + 100px)}}@media (prefers-reduced-motion:reduce){.hb-water>i,.hb-row,.hb-buoy,.hb-btn,.hb-chip,.hb-rowact,.hb-htab{transition:none}}
:root{--site-gutter:clamp(16px, 4.5vw, var(--wide-pad));--site-max:var(--wide-max);--site-display:clamp(50px, 7.6vw, 122px);--site-section:clamp(40px, 6vw, 92px);--site-band-title:clamp(34px, 4.4vw, 68px);--site-lede:clamp(18px, 1.55vw, 23px);--site-black:900;--intro:1.05s;--site-body:clamp(16px, 1.1vw, 17px);--site-label:clamp(11px, .9vw, 13px);--site-space:clamp(72px, 10vw, 136px);--site-space-sm:clamp(40px, 5vw, 64px);--site-route:var(--ink3);--site-ink-on-dark:var(--ground);--site-ink-on-dark-2:color-mix(in srgb, var(--ground) 78%, var(--ink));--site-bar-h:76px;--site-wave-tile:calc(var(--wave) * 120 / 26) var(--wave)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:24px;overflow-x:clip}body{background:var(--ground);color:var(--ink);font-family:var(--body);font-size:var(--site-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-weight:400;line-height:1.55;overflow-x:clip}img,svg{max-width:100%;display:block}img{height:auto}a{color:inherit}h1,h2,h3,p{margin:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:20;border-radius:var(--r-pill);background:var(--ink);color:var(--paper);font-family:var(--font);font-weight:var(--weight-heavy);padding:10px 16px;text-decoration:none;position:absolute;top:12px;left:12px;transform:translateY(-160%)}.skip:focus-visible{transform:none}.s-wrap{width:100%;max-width:calc(var(--site-max) + 2 * var(--site-gutter));padding-inline:var(--site-gutter);margin-inline:auto}.kicker{align-items:center;gap:var(--gap-sm);color:var(--ink2);font-family:var(--font);font-size:clamp(12px,1vw,15px);font-weight:var(--site-black);letter-spacing:.12em;text-transform:uppercase;margin-bottom:22px;display:inline-flex}.kicker--on-ink{color:var(--site-ink-on-dark-2)}.display{font-family:var(--font);font-size:var(--site-display);font-weight:var(--site-black);letter-spacing:-.05em;line-height:.86}.display .line{margin-bottom:-.14em;padding:.02em .04em .16em 0;display:block;overflow:clip}.display .line-in{display:inline-block}.section{max-width:14ch;font-family:var(--font);font-size:var(--site-section);font-weight:var(--site-black);letter-spacing:-.045em;text-wrap:balance;line-height:.92}.lede{max-width:34em;color:var(--ink2);font-size:var(--site-lede);text-wrap:pretty;margin-top:20px;line-height:1.5}.top{justify-content:space-between;align-items:center;gap:var(--gap);padding-block:18px;display:flex}.top-brand{min-height:var(--tap-min);border-radius:var(--r-pill);color:var(--ink);align-items:center;display:inline-flex}.top-wm{width:auto;height:34px}.top-nav{align-items:center;gap:6px;display:flex}.top-link{min-height:var(--tap-min);border-radius:var(--r-pill);color:var(--ink2);font-family:var(--font);font-size:var(--label-size);font-weight:var(--weight-strong);align-items:center;padding:0 12px;text-decoration:none;display:inline-flex}.top-link:hover{color:var(--ink)}.top-cta{background:var(--ink);color:var(--paper);display:none}.hero{padding-top:clamp(16px,4vw,48px);padding-bottom:var(--site-space-sm);position:relative}.hero-grid{z-index:1;gap:28px;display:grid;position:relative}.hero-copy{z-index:2;flex-direction:column;align-items:flex-start;display:flex;position:relative}.hero-acts{flex-wrap:wrap;align-items:center;gap:10px 20px;margin-top:32px;display:flex}.hero-cta{height:64px;font-size:20px;font-weight:var(--site-black);transition:translate var(--dur-1) var(--ease), scale var(--dur-2) var(--ease-out);border-radius:32px;padding:0 34px}.hero-cta:hover{scale:1.04}.hero-more{min-height:var(--tap-min);border-radius:var(--r-pill);color:var(--ink);font-family:var(--font);font-weight:var(--weight-strong);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.hero-more .hb-ico{transition:translate var(--dur-2) var(--ease)}.hero-more:hover .hb-ico{translate:4px}.hero-note{max-width:32em;color:var(--ink2);font-size:var(--meta-size);margin-top:22px;font-weight:600}.hero-note a{color:var(--ink);font-weight:var(--weight-heavy);text-underline-offset:3px;border-radius:4px}.hero-art{position:relative}.hero-vignette{width:min(100%,440px);margin-inline:auto}.chart{margin:0;display:none}.chart-map{aspect-ratio:1;width:100%;position:relative}.chart-art{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.chart-routes{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.chart-routes path{fill:none;stroke:var(--site-route);stroke-width:3px;stroke-linecap:round;stroke-dasharray:2 11;opacity:.7;transition:stroke var(--dur-3) var(--ease-out), opacity var(--dur-3) var(--ease-out)}.chart-routes path.is-sailed{stroke:var(--ink);opacity:1}.chart-berths{margin:0;padding:0;list-style:none}.chart-berths li{z-index:2;position:absolute;translate:-50% -50%}.chart-berth{background:var(--hue);height:48px;color:var(--hue-ink);cursor:pointer;font-family:var(--font);font-size:16px;font-weight:var(--site-black);letter-spacing:.08em;text-transform:uppercase;--hb-lip:inset 0 calc(-1 * var(--lip)) 0 var(--press-shade);box-shadow:var(--hb-lip), var(--lift);transition:translate var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);border:0;border-radius:24px;align-items:center;padding:0 22px;display:inline-flex}.chart-berth:hover{box-shadow:var(--hb-lip), var(--hull-lift);translate:0 -4px}.chart-berth:active{translate:0 1px}.chart-berth[aria-pressed=true]{box-shadow:var(--hb-lip), 0 0 0 5px var(--ground), 0 0 0 8px var(--hue)}.chart-boat{z-index:2;pointer-events:none;width:0;height:0;position:absolute}.chart-boat-mark{width:42px;max-width:none;height:auto;color:var(--ink);filter:drop-shadow(0 0 0 var(--ground)) drop-shadow(0 3px 0 var(--ground));position:absolute;bottom:-4px;left:-21px}.chart-cargo{border-radius:var(--r-pill);background:var(--paper);color:var(--ink);font-family:var(--font);font-size:14px;font-weight:var(--weight-heavy);white-space:nowrap;box-shadow:var(--lift);padding:5px 12px;position:absolute;bottom:50px;left:50%;translate:-50%}.chart-cap{color:var(--ink2);font-size:var(--meta-size);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:6px;font-weight:600;display:flex}.chart-cap>span{max-width:44ch}.chart-replay{min-height:var(--tap-min);border-radius:var(--r-pill);color:var(--ink);cursor:pointer;font-family:var(--font);font-size:var(--label-size);font-weight:var(--weight-heavy);background:0 0;border:0;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.chart-replay:hover:not(:disabled){background:var(--mute-soft)}.chart-replay:disabled{color:var(--ink2);cursor:default}.channel-sec{padding-bottom:var(--site-space-sm);justify-content:center;display:flex}.channel{timeline-scope:--channel;view-timeline:--channel block;width:288px;position:relative}.channel-route{position:absolute;inset:0}.channel-route path{fill:none;stroke:var(--ink);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:2 9}.channel-berths{margin:0;padding:0;list-style:none}.channel-berths li{flex-direction:column;align-items:center;gap:8px;width:240px;display:flex;position:absolute;left:50%;translate:-50% -38px}.channel-disc{background:var(--hue);width:88px;height:76px;color:var(--hue-ink);font-family:var(--font);font-size:13px;font-weight:var(--weight-heavy);letter-spacing:.08em;text-transform:uppercase;box-shadow:inset 0 calc(-1 * var(--lip)) 0 var(--press-shade);border-radius:44px 44px 22px 22px;place-items:center;display:grid}.channel-cap{border-radius:var(--r-pill);background:var(--ground);color:var(--ink);text-align:center;padding:4px 12px;font-size:15px;font-weight:700}.channel-boat{z-index:2;width:34px;max-width:none;color:var(--ink);offset-rotate:0deg;offset-distance:4%;filter:drop-shadow(0 2px 0 var(--ground));position:absolute;top:0;left:0}.how-head{padding-top:calc(var(--wave) + var(--site-space-sm));padding-bottom:calc(var(--site-space) + var(--wave));background:var(--hue);color:var(--hue-ink);position:relative}.how-head .kicker,.how-head .lede{color:var(--hue-ink)}.how-head:before,.how-head:after{content:"";height:var(--wave);-webkit-mask:var(--wave-mask) repeat-x;-webkit-mask:var(--wave-mask) repeat-x;mask:var(--wave-mask) repeat-x;-webkit-mask-size:var(--site-wave-tile);-webkit-mask-size:var(--site-wave-tile);mask-size:var(--site-wave-tile);position:absolute;left:0;right:0}.how-head:before{background:var(--ground);top:-1px;rotate:180deg}.how-head:after{background:var(--kitchen);bottom:-1px}.bands{margin:0;padding:0;list-style:none}.band{padding-block:clamp(56px, 8vw, 104px) calc(clamp(56px, 8vw, 104px) + var(--wave));background:var(--hue);color:var(--hue-ink);position:relative}.band:after{content:"";height:var(--wave);background:var(--next,var(--ground));-webkit-mask:var(--wave-mask) repeat-x;-webkit-mask:var(--wave-mask) repeat-x;mask:var(--wave-mask) repeat-x;-webkit-mask-size:var(--site-wave-tile);-webkit-mask-size:var(--site-wave-tile);mask-size:var(--site-wave-tile);position:absolute;bottom:-1px;left:0;right:0}.band-in{align-items:center;gap:36px;display:grid}.band-kicker{border-radius:var(--r-tab);background:var(--hue-veil);font-family:var(--font);font-size:var(--label-size);font-weight:var(--weight-heavy);letter-spacing:.02em;align-items:center;gap:10px;padding:6px 14px 6px 6px;display:inline-flex}.band-step{background:var(--hue-ink);min-width:30px;height:26px;color:var(--hue);border-radius:9px;place-items:center;font-size:13px;display:inline-grid}.band-title{max-width:13ch;font-family:var(--font);font-size:var(--site-band-title);font-weight:var(--site-black);letter-spacing:-.04em;text-wrap:balance;margin-top:22px;line-height:.95}.band-body{max-width:34em;font-size:var(--site-lede);margin-top:16px;line-height:1.5}.band-handoff{font-family:var(--font);font-size:16px;font-weight:var(--weight-heavy);align-items:center;gap:14px;margin-top:28px;display:flex}.band-route{border-top:2px dashed;flex:none;width:72px;height:2px;position:relative}.band-route-boat{background:var(--hue-ink);width:24px;height:24px;color:var(--hue);border-radius:50%;place-items:center;display:grid;position:absolute;top:-12px;left:0}.band-route-boat .hb-ico{stroke-width:2.6px;width:16px;height:16px}.s-preview{width:100%;max-width:440px;margin:0 auto}.s-preview-label{font-family:var(--font);font-size:12px;font-weight:var(--weight-heavy);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.s-preview-card{border-radius:var(--r-deck-wide);background:var(--ground);color:var(--ink);box-shadow:var(--hull-lift);flex-direction:column;gap:16px;padding:20px 18px 22px;display:flex}.s-preview-h{font-family:var(--font);font-size:22px;font-weight:var(--weight-heavy);letter-spacing:var(--track-tight)}.s-sheet{margin:0;padding:0;list-style:none}.s-preview-foot{border-radius:var(--r-card);background:var(--hue);color:var(--hue-ink);font-family:var(--font);font-weight:var(--weight-heavy);flex-direction:column;gap:2px;padding:12px 16px 14px;display:flex}.s-preview-foot-row{justify-content:space-between;display:flex}.s-preview-act{pointer-events:none;align-self:flex-end}.aboard{padding-top:var(--site-space)}.aboard-grid{gap:16px;margin:40px 0 0;padding:0;list-style:none;display:grid}.aboard-card{border-radius:var(--r-card);background:var(--paper);box-shadow:0 var(--sheet-edge) 0 var(--mute), var(--lift);padding:24px 22px 26px}.aboard-ico{background:var(--ink);width:48px;height:48px;color:var(--paper);box-shadow:inset 0 -4px 0 var(--neutral);border-radius:50%;place-items:center;display:grid}.aboard-ico .hb-ico{width:24px;height:24px}.aboard-t{font-family:var(--font);font-size:22px;font-weight:var(--weight-heavy);letter-spacing:var(--track-tight);margin-top:18px}.aboard-b{color:var(--ink2);margin-top:8px}.log{padding-top:var(--site-space)}.log-list{border-top:2px solid var(--ink);margin:40px 0 0;padding:0;list-style:none;display:grid}.log-entry{border-bottom:1px dashed var(--ink3);grid-template-columns:1fr;gap:6px;padding:22px 0 24px;display:grid}.log-time{color:var(--ink2);font-size:15px}.log-place{font-family:var(--font);font-size:24px;font-weight:var(--weight-heavy);letter-spacing:var(--track-tight)}.log-body{max-width:36em;color:var(--ink2)}.keel{margin-top:var(--site-space);position:relative}.keel-boat{z-index:1;top:calc(var(--wave) / 2);right:max(var(--site-gutter), calc((100% - var(--site-max)) / 2));width:clamp(84px,11vw,140px);max-width:none;color:var(--ink);pointer-events:none;position:absolute;translate:0 -65%}.keel-boat .fin{fill:var(--neutral-mid)}.keel-above{padding-bottom:48px}.keel-below{padding:calc(var(--wave) + clamp(56px, 7vw, 104px)) 0 var(--site-space-sm);background:var(--neutral-soft);position:relative}.keel-below:before{content:"";height:var(--wave);background:var(--ground);-webkit-mask:var(--wave-mask) repeat-x;-webkit-mask:var(--wave-mask) repeat-x;mask:var(--wave-mask) repeat-x;-webkit-mask-size:var(--site-wave-tile);-webkit-mask-size:var(--site-wave-tile);mask-size:var(--site-wave-tile);position:absolute;top:-1px;left:0;right:0;rotate:180deg}.keel-grid{gap:28px 40px;margin:0 auto;list-style:none;display:grid}.keel-item{border-top:3px solid var(--neutral);padding-top:18px}.keel-t{font-family:var(--font);font-size:21px;font-weight:var(--weight-heavy);letter-spacing:var(--track-tight)}.keel-b{color:var(--ink2);margin-top:8px}.faq{padding-block:var(--site-space);gap:20px;display:grid}.faq-kicker{margin:0}.faq-list{border-top:2px solid var(--ink)}.faq-item{border-bottom:1px dashed var(--ink3)}.faq-q{cursor:pointer;min-height:64px;font-family:var(--font);font-size:20px;font-weight:var(--weight-heavy);letter-spacing:var(--track-tight);border-radius:6px;justify-content:space-between;align-items:center;gap:16px;padding:12px 4px;list-style:none;display:flex}.faq-q::-webkit-details-marker{display:none}.faq-q:after{content:"";border:3px solid var(--neutral-mid);background:var(--paper);width:26px;height:26px;transition:background var(--dur-1) var(--ease), border-color var(--dur-1) var(--ease);border-radius:50%;flex:none}.faq-item[open] .faq-q:after{border-color:var(--ink);background:var(--ink);box-shadow:inset 0 0 0 5px var(--paper)}.faq-a{max-width:40em;color:var(--ink2);padding:0 4px 22px}.light{padding:calc(var(--wave) + var(--site-space-sm)) 0 var(--site-space);background:var(--ink);color:var(--site-ink-on-dark);position:relative}.light:before{content:"";height:var(--wave);background:var(--ground);-webkit-mask:var(--wave-mask) repeat-x;-webkit-mask:var(--wave-mask) repeat-x;mask:var(--wave-mask) repeat-x;-webkit-mask-size:var(--site-wave-tile);-webkit-mask-size:var(--site-wave-tile);mask-size:var(--site-wave-tile);position:absolute;top:-1px;left:0;right:0;rotate:180deg}.light-in{gap:8px;display:grid}.light-art img{width:min(78%,360px);margin:0 auto -8px}.light .lede{color:var(--site-ink-on-dark-2)}.wl-card{border-radius:var(--r-deck-wide);background:var(--ground);color:var(--ink);box-shadow:var(--hull-lift);flex-direction:column;gap:20px;margin-top:32px;padding:26px 22px 22px;display:flex}.wl-field{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.wl-label{font-family:var(--font);font-size:16px;font-weight:var(--weight-heavy);padding:0}.wl-opt{color:var(--ink2);font-weight:var(--weight-strong)}.wl-input{height:var(--field-h);border-radius:calc(var(--field-h) / 2);background:var(--paper);color:var(--ink);font-family:var(--body);--hb-lip:inset 0 calc(-1 * var(--lip)) 0 var(--mute), inset 0 0 0 2px var(--ink3);box-shadow:var(--hb-lip);border:0;padding:0 20px;font-size:17px;font-weight:600}.wl-input[aria-invalid=true]{--hb-lip:inset 0 calc(-1 * var(--lip)) 0 var(--bad-soft), inset 0 0 0 2px var(--bad)}.wl-hint{color:var(--ink2);font-size:var(--meta-size);font-weight:600}.wl-err{color:var(--bad-deep);font-size:15px;font-weight:700}.wl-chips{flex-wrap:wrap;gap:10px;display:flex}.wl-chip{cursor:pointer;position:relative}.wl-chip-input,.wl-consent-input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.wl-chip-face{background:var(--paper);height:48px;font-family:var(--font);font-weight:var(--weight-heavy);box-shadow:inset 0 calc(-1 * var(--lip)) 0 var(--mute), inset 0 0 0 2px var(--ink3);transition:background var(--dur-1) var(--ease);border-radius:24px;align-items:center;gap:10px;padding:0 18px 0 10px;display:inline-flex}.wl-chip-tick,.wl-consent-box{border:3px solid var(--ink3);background:var(--paper);color:#0000;width:28px;height:28px;transition:background var(--dur-1) var(--ease), border-color var(--dur-1) var(--ease);border-radius:50%;flex:none;place-items:center;display:grid}.wl-chip-tick .hb-ico,.wl-consent-box .hb-ico{stroke-width:3px;width:16px;height:16px}.wl-chip-input:checked+.wl-chip-face{background:var(--grocery-soft)}.wl-chip-input:checked+.wl-chip-face .wl-chip-tick,.wl-consent-input:checked+.wl-consent-box{border-color:var(--grocery);background:var(--grocery);color:var(--grocery-on)}.wl-chip-input:focus-visible+.wl-chip-face,.wl-consent-input:focus-visible+.wl-consent-box{outline:3px solid var(--ink);outline-offset:3px}.wl-consent{cursor:pointer;align-items:flex-start;gap:12px;font-weight:700;line-height:1.4;display:flex;position:relative}.wl-consent-input{width:28px;height:28px}.wl-consent-input[aria-invalid=true]+.wl-consent-box{border-color:var(--bad)}.wl-trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.wl-banner{border-radius:var(--r-card);background:var(--warn-soft);color:var(--warn-deep);padding:12px 16px;font-weight:700}.wl-submit{border-radius:29px;width:100%;height:58px;font-size:18px}.wl-fine{text-align:center;font-size:var(--meta-size);font-weight:700}.wl-fine a{min-height:var(--tap-min);color:var(--ink2);text-underline-offset:3px;align-items:center;display:inline-flex}.wl-done{align-items:flex-start}.wl-done-buoy{width:52px;height:52px}.wl-done-title{font-family:var(--font);font-size:30px;font-weight:var(--weight-heavy);letter-spacing:var(--track-tight);outline:none}.wl-done-body{color:var(--ink2)}.wl-link{min-height:var(--tap-min);font-family:var(--font);font-weight:var(--weight-heavy);text-underline-offset:3px;align-items:center;gap:6px;display:inline-flex}.foot{padding:8px 0 calc(40px + var(--site-bar-h));background:var(--ink);color:var(--site-ink-on-dark-2)}.foot-in{border-top:1px dashed color-mix(in srgb, var(--ground) 30%, var(--ink));gap:18px;padding-top:36px;display:grid}.foot-wm{width:auto;height:30px;color:var(--site-ink-on-dark)}.foot-line{font-family:var(--font);font-weight:var(--weight-strong)}.foot-nav{gap:8px;margin-left:-10px;display:flex}.foot-nav a{min-height:var(--tap-min);border-radius:var(--r-pill);color:var(--site-ink-on-dark);text-underline-offset:3px;align-items:center;padding:0 10px;font-weight:700;display:inline-flex}.foot-fine{font-size:var(--meta-size)}.mbar{z-index:10;padding:0 12px calc(10px + env(safe-area-inset-bottom));pointer-events:none;transition:translate var(--dur-3) var(--ease-tide);position:fixed;bottom:0;left:0;right:0;translate:0 calc(100% + 12px)}.mbar[data-show=true]{translate:0}.mbar-hull{border-radius:var(--r-hull-top) var(--r-hull-top) var(--r-hull-bottom) var(--r-hull-bottom);background:var(--ink);box-shadow:var(--hull-lift);pointer-events:auto;padding:10px}.mbar-btn{border-radius:27px;width:100%;height:54px;font-size:18px}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.rise{animation:linear both site-rise;animation-timeline:view();animation-range:entry entry 55%}.band-route-boat{animation:linear both site-sail;animation-timeline:view();animation-range:entry 60% cover 60%}.channel-boat{animation:linear both site-channel;animation-timeline:--channel;animation-range:cover 20% cover 80%}.s-buoy.hb-buoy--on{animation:linear both site-buoy;animation-timeline:view();animation-range:entry 70% cover 45%}}}@keyframes site-rise{0%{opacity:0;translate:0 14px}}@keyframes site-sail{0%{left:0}to{left:calc(100% - 24px)}}@keyframes site-channel{0%{offset-distance:4%}to{offset-distance:96%}}@keyframes site-buoy{0%{background:var(--paper);border-color:var(--mid)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.band-route-boat{left:calc(100% - 24px)}}@media (min-width:640px){.top-cta{display:inline-flex}.aboard-grid,.keel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.log-entry{grid-template-columns:9rem 14rem 1fr;align-items:baseline;gap:24px}.wl-card{padding:32px 30px 26px}}@media (min-width:960px){.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:24px}.hero-copy .display{margin-right:-14%}.hero-copy .lede{max-width:26em}.hero-vignette,.channel-sec,.mbar{display:none}.chart{display:block}.band-in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px}.band:nth-child(2n) .band-copy{order:2}.aboard-grid,.keel-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.faq{grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:start}.light-in{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:64px}.light-art img{width:100%;max-width:460px}.foot{padding-bottom:40px}.foot-in{grid-template-columns:auto 1fr auto;align-items:center}.foot-fine{grid-column:1/-1}}.prose{max-width:calc(44rem + 2 * var(--site-gutter));padding-top:clamp(24px,6vw,64px);padding-bottom:var(--site-space)}.prose-sec{margin-top:44px}.prose-h{font-family:var(--font);font-size:24px;font-weight:var(--weight-heavy);letter-spacing:var(--track-tight)}.prose-p{color:var(--ink2);margin-top:12px}.prose-updated{font-size:var(--meta-size);margin-top:44px}.prose-back{font-family:var(--font);font-weight:var(--weight-heavy);margin-top:20px}@media print{.wash{display:none}.reveal,.rise-card,.rise,.band-route-boat,.s-buoy,.channel-boat{animation:none}.mbar{display:none}}
:root{--site-spring:linear(0, .3 10%, .72 22%, .97 36%, 1.03 48%, 1 66%, 1)}@property --ink-reach{syntax:"<percentage>";inherits:false;initial-value:160%}:root{--wash-angle:-28deg;--wash-edge:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 120' preserveAspectRatio='none'><path d='M12 0C26 20 26 40 12 60S-2 100 12 120H0V0Z'/></svg>")}.wash{z-index:100;pointer-events:none;visibility:hidden;position:fixed;inset:0;overflow:hidden}.wash-layer{background:var(--hue);width:140vmax;height:320vmax;transform:translate(-50%, -50%) rotate(var(--wash-angle)) translateX(-101%);position:absolute;top:50%;left:50%}.wash-layer:before,.wash-layer:after{content:"";background:var(--hue);width:5vmax;-webkit-mask:var(--wash-edge) repeat-y;-webkit-mask:var(--wash-edge) repeat-y;mask:var(--wash-edge) repeat-y;position:absolute;top:0;bottom:0;-webkit-mask-size:5vmax 22vmax;mask-size:5vmax 22vmax}.wash-layer:after{left:calc(100% - 1px)}.wash-layer:before{right:calc(100% - 1px);transform:scaleX(-1)}.wash-layer[data-module=neutral],.wash-layer[data-module=neutral]:before,.wash-layer[data-module=neutral]:after{background:var(--ink)}.wash-mark{width:clamp(72px,9vw,120px);color:var(--paper);opacity:0;position:absolute;top:50%;left:50%;translate:-50% -50%}.wash-mark svg{width:100%;height:auto}html[data-washed] .wash{display:none}@media (prefers-reduced-motion:no-preference){:root{--intro:1.3s}html[data-washed]{--intro:.1s}.wash{visibility:visible;animation:0s linear 2s forwards site-wash-gone}.wash-layer{animation:site-wipe-in .6s var(--ease-tide) both,  site-wipe-out .62s var(--ease-tide) forwards;animation-delay:calc(var(--i) * 85ms), calc(.98s + (4 - var(--i)) * 85ms)}.wash-mark{animation:site-mark-in .45s var(--ease-out) .72s both, site-mark-out .3s var(--ease-tide) 1s forwards}}@media (prefers-reduced-motion:reduce){.wash{display:none}}@keyframes site-wipe-in{0%{transform:translate(-50%, -50%) rotate(var(--wash-angle)) translateX(-101%)}to{transform:translate(-50%, -50%) rotate(var(--wash-angle)) translateX(0)}}@keyframes site-wipe-out{0%{transform:translate(-50%, -50%) rotate(var(--wash-angle)) translateX(0)}to{transform:translate(-50%, -50%) rotate(var(--wash-angle)) translateX(104%)}}@keyframes site-mark-in{0%{opacity:0;rotate:-14deg;scale:.5}to{opacity:1;rotate:none;scale:1}}@keyframes site-mark-out{to{opacity:0;translate:10% -80%;scale:.8}}@keyframes site-wash-gone{to{visibility:hidden}}@media (prefers-reduced-motion:no-preference){.display .line-in{animation:site-line-rise 1.05s var(--ease-out) both;animation-delay:calc(var(--intro) + var(--d) * 95ms)}.hero-in{animation:site-fade-up .9s var(--ease-out) both;animation-delay:calc(var(--intro) + var(--d) * 90ms)}.chart-art{-webkit-mask-image:radial-gradient(circle at 48% 55%, var(--ink) calc(var(--ink-reach) - 22%), transparent var(--ink-reach));-webkit-mask-image:radial-gradient(circle at 48% 55%, var(--ink) calc(var(--ink-reach) - 22%), transparent var(--ink-reach));mask-image:radial-gradient(circle at 48% 55%, var(--ink) calc(var(--ink-reach) - 22%), transparent var(--ink-reach));animation:site-ink-in 2s var(--ease-out) both;animation-delay:calc(var(--intro) + .1s)}.chart-berths li{animation:site-berth-in .9s var(--site-spring) both;animation-delay:calc(var(--intro) + .75s + var(--i) * .12s)}.chart-routes{animation:site-fade .8s var(--ease-out) both;animation-delay:calc(var(--intro) + 1.2s)}.chart-boat{animation:site-fade .6s var(--ease-out) both;animation-delay:calc(var(--intro) + 1.3s)}.chart-hint{animation:site-fade-up .7s var(--ease-out) both;animation-delay:calc(var(--intro) + 1.5s)}}@keyframes site-line-rise{0%{translate:0 108%;rotate:4deg}to{translate:0;rotate:none}}@keyframes site-fade-up{0%{opacity:0;translate:0 18px}}@keyframes site-fade{0%{opacity:0}}@keyframes site-ink-in{0%{--ink-reach:0%}to{--ink-reach:160%}}@keyframes site-berth-in{0%{opacity:0;translate:-50% 10%;scale:.3}to{opacity:1;translate:-50% -50%;scale:1}}.chart-map{perspective:1600px}.chart-plate{transform-style:preserve-3d;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .7s var(--ease-out);position:absolute;inset:0}.chart-berths li{transform:translateZ(36px)}.chart-boat{transform:translateZ(64px)}.chart-boat-mark{rotate:var(--heel,0deg);transform-origin:50% 90%;transition:rotate .25s var(--ease)}.chart-cargo{animation:site-cargo-pop .5s var(--ease-out) both}@keyframes site-cargo-pop{0%{opacity:0;translate:-50% 8px;scale:.7}to{opacity:1;translate:-50%;scale:1}}.chart-wake{border:2px solid var(--ink3);opacity:0;border-radius:50%;width:52px;height:14px;position:absolute;top:-8px;left:-26px}.chart-routes path.is-free{stroke:var(--ink);opacity:1}@media (prefers-reduced-motion:no-preference){.chart-map[data-moving=false] .chart-boat-mark{animation:3.4s ease-in-out infinite site-bob}.chart-map[data-moving=true] .chart-wake{animation:site-wake .9s var(--ease-out) infinite}.chart-map[data-moving=true] .chart-routes path.is-free{animation:.8s linear infinite site-march}}@keyframes site-bob{0%,to{translate:0;rotate:-3deg}50%{translate:0 -3px;rotate:3deg}}@keyframes site-wake{0%{opacity:.7;scale:.4}to{opacity:0;scale:1.6}}@keyframes site-march{to{stroke-dashoffset:-26px}}.chart-cap{justify-content:flex-start}.chart-hint{border-radius:var(--r-pill);background:var(--paper);color:var(--ink);font-family:var(--font);font-size:15px;font-weight:var(--weight-heavy);box-shadow:var(--lift);align-items:center;gap:10px;padding:8px 16px 8px 12px;display:inline-flex}.chart-hint .hb-ico{width:16px;height:16px}.chart-hint-dot{background:var(--grocery);border-radius:50%;width:10px;height:10px}@media (prefers-reduced-motion:no-preference){.chart-hint-dot{animation:site-ping 1.8s var(--ease-out) infinite}}@keyframes site-ping{0%{box-shadow:0 0 0 0 var(--grocery-mid)}to{box-shadow:0 0 0 10px #0000}}.tide{display:none}@supports (animation-timeline:view()){@media (min-width:960px) and (min-height:700px) and (prefers-reduced-motion:no-preference){.hero-stage{view-timeline:--stage block;height:210vh}.hero{align-items:center;height:100vh;padding-block:0;display:flex;position:sticky;top:0;overflow:clip}.hero-grid{animation:linear both site-stage-sink;animation-timeline:--stage;animation-range:contain contain 85%}.hero-copy{animation:linear both site-stage-copy;animation-timeline:--stage;animation-range:contain contain 42%}.tide{z-index:3;background:var(--hue);height:100%;animation:linear both site-stage-tide;animation-timeline:--stage;animation-range:contain 14% contain 58%;display:block;position:absolute;bottom:0;left:0;right:0;translate:0 104%}.tide:before{content:"";background:var(--hue);height:4vw;-webkit-mask:var(--wave-mask) repeat-x;-webkit-mask:var(--wave-mask) repeat-x;mask:var(--wave-mask) repeat-x;animation:linear both site-stage-crest;animation-timeline:--stage;animation-range:contain 14% contain 58%;position:absolute;bottom:calc(100% - 1px);left:-12vw;right:-12vw;-webkit-mask-size:18.5vw 4vw;mask-size:18.5vw 4vw}.how-head:before{display:none}.how{z-index:5;margin-top:-70vh;position:relative}.how-head{padding-top:var(--site-space-sm)}}}@keyframes site-stage-copy{to{opacity:0;filter:blur(6px);translate:0 -12vh}}@keyframes site-stage-sink{to{translate:0 -6vh}}@keyframes site-stage-tide{0%{translate:0 104%}to{translate:0}}@keyframes site-stage-crest{0%{-webkit-mask-position:0 100%;mask-position:0 100%}to{-webkit-mask-position:-55.5vw 100%;mask-position:-55.5vw 100%}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.reveal{animation:linear both site-reveal;animation-timeline:view();animation-range:entry 5% cover 32%}.band-copy .rise{animation-range:entry 5% cover 32%}.rise-card{animation:linear both site-rise-card;animation-timeline:view();animation-range:entry cover 38%}.aboard-card.rise{animation-range:entry calc(var(--i) * 7%) cover calc(28% + var(--i) * 5%)}.band{view-timeline:--band block}.band:after{animation:linear both site-wave-drift;animation-timeline:--band}.log-list{border-top-color:#0000;position:relative}.log-list:before{content:"";background:var(--ink);transform-origin:0;width:100%;height:2px;animation:linear both site-draw-x;animation-timeline:view();animation-range:entry 10% cover 40%;position:absolute;top:-2px;left:0}.keel-boat .fin{transform-box:fill-box;transform-origin:50% 0;animation:linear both site-fin;animation-timeline:view();animation-range:entry 60% cover 55%}}}@keyframes site-reveal{0%{clip-path:inset(0 0 100%);translate:0 .3em}to{clip-path:inset(-10% -5% -25%);translate:0}}@keyframes site-rise-card{0%{opacity:0;translate:0 80px;rotate:-3deg;scale:.94}}@keyframes site-wave-drift{0%{-webkit-mask-position:0 0;mask-position:0 0}to{-webkit-mask-position:-360px 0;mask-position:-360px 0}}@keyframes site-draw-x{0%{scale:0 1}}@keyframes site-fin{0%{scale:1 0}}@media (prefers-reduced-motion:no-preference){.keel-boat{animation:5s ease-in-out infinite site-ride}}@keyframes site-ride{0%,to{translate:0 -65%;rotate:-2.5deg}50%{translate:0 -62%;rotate:2.5deg}}.aboard-card{transition:translate var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out)}.aboard-card:hover{box-shadow:0 var(--sheet-edge) 0 var(--mute), var(--hull-lift);translate:0 -6px}@media (prefers-reduced-motion:no-preference){.aboard-card[data-icon=mic]:hover .aboard-ico{animation:site-ping-ink 1.1s var(--ease-out) infinite}.aboard-card[data-icon=camera]:hover .aboard-ico{animation:site-flash .5s var(--ease-out)}.aboard-card[data-icon=home]:hover .aboard-ico{animation:site-hop .6s var(--ease-out)}.aboard-card[data-icon=users]:hover .aboard-ico{animation:site-nudge .6s var(--ease-out)}}@keyframes site-ping-ink{0%{box-shadow:inset 0 -4px 0 var(--neutral), 0 0 0 0 var(--neutral-mid)}to{box-shadow:inset 0 -4px 0 var(--neutral), 0 0 0 14px transparent}}@keyframes site-flash{30%{background:var(--paper);color:var(--ink)}}@keyframes site-hop{40%{translate:0 -8px}}@keyframes site-nudge{30%{rotate:-12deg}60%{rotate:8deg}}.s-preview-card{position:relative}.demo-try{border-radius:var(--r-pill);background:var(--hue-ink);color:var(--hue);letter-spacing:.06em;align-items:center;gap:6px;margin-left:10px;padding:3px 10px 3px 8px;display:inline-flex}.demo-try-dot{background:currentColor;border-radius:50%;width:7px;height:7px}@media (prefers-reduced-motion:no-preference){.demo-try-dot{animation:1.6s ease-in-out infinite site-blink}}@keyframes site-blink{50%{opacity:.25}}.demo-li{display:block}.demo-li+.demo-li .demo-row,.hb-row+.demo-li .demo-row,.demo-li+.hb-row{border-top:var(--rule-w) solid var(--soft)}.demo-row{cursor:pointer;width:100%}.demo-buoy svg{opacity:0;transition:opacity var(--dur-1) var(--ease)}.demo-buoy.hb-buoy--on svg{opacity:1}@media (hover:hover){button.demo-row:hover{background:var(--soft)}button.demo-row:hover .demo-buoy:not(.hb-buoy--on){border-color:var(--hue)}button.demo-row:hover .demo-buoy:not(.hb-buoy--on) svg{opacity:.55;stroke:var(--hue-deep)}}.demo-kitchen-row{flex-wrap:wrap;gap:8px 12px}.demo-kitchen-row .hb-row-body{flex:9rem}.demo-kitchen-acts{align-items:center;gap:8px;margin-left:auto;display:flex}.demo-kitchen-acts .hb-btn--ghost{--hb-lip:inset 0 calc(-1 * var(--lip-sm)) 0 var(--soft), inset 0 0 0 2px var(--mid)}.demo-kitchen-row[data-status=out] .hb-row-t{color:var(--ink2)}.demo-out{flex:none}.demo-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.demo-hint{color:var(--ink2);font-size:var(--meta-size);flex:14rem;font-weight:600}.demo-reset{min-height:var(--tap-min);border-radius:var(--r-pill);color:var(--ink);cursor:pointer;font-family:var(--font);font-size:var(--label-size);font-weight:var(--weight-heavy);background:0 0;border:0;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.demo-reset:hover{background:var(--mute-soft)}.demo-reset .hb-ico{width:16px;height:16px}.demo-empty-note{border:2px dashed var(--mid);border-radius:var(--r-card);color:var(--ink2);font-size:var(--meta-size);padding:14px 16px;font-weight:600}.demo-receipt{position:relative}.demo-balance{background:var(--mute-soft)}.demo-receipt[data-settled=true] .demo-balance{background:var(--ok-soft)}.demo-stamp{z-index:2;border:3px solid var(--ok-deep);color:var(--ok-deep);font-family:var(--font);font-size:22px;font-weight:var(--site-black);letter-spacing:.14em;text-transform:uppercase;background:color-mix(in srgb, var(--paper) 70%, transparent);pointer-events:none;border-radius:10px;padding:6px 14px;position:absolute;top:58%;left:56%;translate:-50% -50%;rotate:-10deg}.demo-split-acts{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.demo-split-acts .hb-btn{gap:6px}.demo-split-acts .hb-ico{width:16px;height:16px}.demo-budget-row .hb-row-body{gap:2px}.demo-budget-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.demo-budget-row[data-bumped=true]{background:var(--soft)}.demo-bump{color:var(--hue-deep);font-weight:700}.demo-meter{margin-top:8px}.demo-meter>i[data-tone=ok]{background:var(--ok)}.demo-meter>i[data-tone=warn]{background:var(--warn)}.demo-meter>i[data-tone=bad]{background:var(--bad)}.demo-worth-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.demo-range{border-radius:var(--r-pill);background:var(--mute-soft);padding:3px;display:inline-flex}.demo-range-btn{border-radius:var(--r-pill);min-width:44px;min-height:36px;color:var(--ink2);cursor:pointer;font-family:var(--font);font-size:var(--label-size);font-weight:var(--weight-heavy);transition:background var(--dur-1) var(--ease);background:0 0;border:0;padding:0 12px}.demo-range-btn[aria-pressed=true]{background:var(--paper);color:var(--ink);box-shadow:var(--lift)}.demo-worth-num{margin-top:-6px;font-size:clamp(34px,4vw,44px)}.demo-worth-change{align-self:flex-start}.demo-spark{width:100%;height:84px;display:block;overflow:visible}.demo-spark-area{fill:var(--soft)}.demo-spark-line{fill:none;stroke:var(--hue);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.band-in>*,.demo-carousel,.demo-carousel>section{min-width:0}.demo-tabs{border-radius:var(--r-pill);background:var(--hue-veil);scrollbar-width:none;gap:6px;margin-bottom:12px;padding:4px;display:flex;overflow-x:auto}.demo-tab{min-height:var(--tap-min);border-radius:var(--r-pill);color:var(--hue-ink);cursor:pointer;font-family:var(--font);font-size:var(--label-size);font-weight:var(--weight-heavy);white-space:nowrap;transition:background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);background:0 0;border:0;flex:1 0 auto;padding:0 14px}.demo-tab[aria-selected=true]{background:var(--paper);color:var(--hue-deep);box-shadow:var(--lift)}.demo-track{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:100%;grid-auto-flow:column;align-items:start;gap:16px;margin:-4px -4px -24px;padding:4px 4px 28px;display:grid;overflow-x:auto}.demo-track::-webkit-scrollbar{display:none}.demo-tabs::-webkit-scrollbar{display:none}.demo-slide{scroll-snap-align:start;transition:opacity var(--dur-3) var(--ease-out)}.demo-slide[inert]{opacity:.5}.demo-nav{justify-content:center;align-items:center;gap:14px;margin-top:14px;display:flex}.demo-nav-btn{width:var(--tap-min);height:var(--tap-min);background:var(--hue-ink);color:var(--hue);cursor:pointer;transition:scale var(--dur-1) var(--ease);border:0;border-radius:50%;place-items:center;display:grid}.demo-nav-btn:active{scale:.94}.demo-dots{gap:8px;display:inline-flex}.demo-dot{background:var(--hue-ink);opacity:.4;width:8px;height:8px;transition:width var(--dur-2) var(--ease-out), opacity var(--dur-2) var(--ease-out);border-radius:4px}.demo-dot[data-on=true]{opacity:1;width:24px}.demo-toast{z-index:3;border-radius:var(--r-pill);background:var(--ink);max-width:calc(100% - 28px);color:var(--paper);font-family:var(--font);font-size:14px;font-weight:var(--weight-heavy);opacity:0;pointer-events:none;transition:opacity var(--dur-2) var(--ease-out), translate var(--dur-2) var(--ease-out);align-items:center;gap:6px;padding:8px 14px 8px 10px;display:inline-flex;position:absolute;bottom:-18px;right:14px;translate:0 8px}.demo-toast[data-show=true]{opacity:1;translate:0}.demo-toast .hb-ico{width:16px;height:16px}.demo-alldone{font-family:var(--font);font-weight:var(--site-black);text-align:center;opacity:0;transition:opacity var(--dur-3) var(--ease-out);margin:0}.demo-alldone[data-show=true]{opacity:1}@media (prefers-reduced-motion:no-preference){.demo-arrive{animation:site-arrive .7s var(--ease-out) both}.demo-arrive .demo-row{animation:site-glow 1.6s var(--ease-out) .2s backwards}.demo-pill,.demo-row .hb-buoy--on{animation:site-pop .45s var(--ease-out) both}.demo-stamp{animation:site-stamp .4s var(--ease-out) both}.demo-spark-line{stroke-dasharray:1000;animation:site-draw-line 1.1s var(--ease-out) both}}@keyframes site-stamp{0%{opacity:0;rotate:-18deg;scale:1.8}}@keyframes site-draw-line{0%{stroke-dashoffset:1000px}}@keyframes site-arrive{0%{opacity:0;translate:0 -24px;scale:.96}}@keyframes site-glow{0%{background:var(--mid)}to{background:var(--paper)}}@keyframes site-pop{0%{scale:.6}to{scale:1}}.light-art{position:relative}.light-beam{z-index:0;background:radial-gradient(closest-side, color-mix(in srgb, var(--sun) 55%, transparent), transparent);width:160%;height:34%;-webkit-mask:linear-gradient(90deg, transparent 0 4%, var(--ink) 30% 70%, transparent 96%);-webkit-mask:linear-gradient(90deg, transparent 0 4%, var(--ink) 30% 70%, transparent 96%);mask:linear-gradient(90deg, transparent 0 4%, var(--ink) 30% 70%, transparent 96%);clip-path:polygon(0 0,50% 46%,50% 54%,0 100%,100% 100%,50% 54%,50% 46%,100% 0);opacity:.55;pointer-events:none;position:absolute;top:17%;left:50%;translate:-50% -50%}.light-art img{z-index:1;position:relative}@media (prefers-reduced-motion:no-preference){.light-beam{animation:6s ease-in-out infinite site-sweep}}@keyframes site-sweep{0%,to{opacity:.55;scale:1}25%{opacity:.15;scale:.08 1}50%{opacity:.55;scale:-1 1}75%{opacity:.15;scale:-.08 1}}

