@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/02e13e0d82eef260-s.15yjf0kv73kdu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/08af009c22010d25-s.1qe301qr5t71u.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/1bdf5b4bf7e95158-s.p.0o-xvxac1r-3o.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:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}.bricolage_grotesque_ed6c0909-module__boCOoG__className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal;font-weight:700}.bricolage_grotesque_ed6c0909-module__boCOoG__variable{--font-bricolage:"Bricolage Grotesque", "Bricolage Grotesque Fallback"}
@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(../media/91bd2e40df15814e-s.19s5evoqhirey.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a63431c4ac64ea8b-s.386o_ri1vb0yv.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8b4ed0a90d903ab5-s.44dak0sams9f0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c47649aa31f9e140-s.p.3lxpqujs87tck.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:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../media/91bd2e40df15814e-s.19s5evoqhirey.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../media/a63431c4ac64ea8b-s.386o_ri1vb0yv.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../media/8b4ed0a90d903ab5-s.44dak0sams9f0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../media/c47649aa31f9e140-s.p.3lxpqujs87tck.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:Hanken Grotesk Fallback;src:local(Arial);ascent-override:99.07%;descent-override:30.02%;line-gap-override:0.0%;size-adjust:100.94%}.hanken_grotesk_6f41047c-module__Ky6UAW__className{font-family:Hanken Grotesk,Hanken Grotesk Fallback;font-style:normal}.hanken_grotesk_6f41047c-module__Ky6UAW__variable{--font-hanken:"Hanken Grotesk", "Hanken Grotesk Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.0rgnxg2b64rzs.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.40sczeszzbjw1.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.1i-sca43-qwng.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.0oace-s_gkfks.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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_6a49ad5e-module__fo1kJa__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_6a49ad5e-module__fo1kJa__variable{--font-plex-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--paper:#fbfbfa;--surface:#fff;--ink:#0f1e1c;--ink-2:#3c4b47;--ink-3:#6e7e79;--line:#e7ecea;--line-strong:#d6dedb;--brand:#0e7c7b;--brand-strong:#0a5e5d;--brand-ink:#0c3a39;--brand-tint:#e4f3f1;--brand-tint-2:#f2f8f7;--on-brand:#fff;--fresh:#3a9e5c;--fresh-tint:#e7f3eb;--resting:#c98a1e;--resting-tint:#f7eed9;--past:#c6423a;--past-tint:#f7e7e5;--track:#dde3e0;--font-display:"Bricolage Grotesque",sans-serif;--font-ui:"Hanken Grotesk",sans-serif;--font-mono:"IBM Plex Mono",monospace;--t-display:30px;--lh-display:1.02;--t-lead:22px;--lh-lead:1.08;--t-title:17px;--lh-title:1.2;--t-stat:21px;--t-body:15px;--lh-body:1.5;--t-small:13px;--lh-small:1.45;--t-eyebrow:11px;--t-caption:11px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--radius-sm:12px;--radius-md:16px;--radius-lg:22px;--radius-xl:26px;--radius-pill:999px;--elev-0:none;--elev-1:0 1px 2px #0c1e1c0d, 0 12px 28px -14px #0c1e1c33;--elev-2:0 2px 6px #0c1e1c14, 0 22px 44px -18px #0c1e1c47;--dur-fast:.12s;--dur:.2s;--dur-slow:.38s;--ease:cubic-bezier(.2,.7,.2,1);--focus:0 0 0 3px color-mix(in srgb, var(--brand) 35%, transparent)}[data-theme=vesper]{--brand:#9b2c5a;--brand-strong:#7e2149;--brand-ink:#3e1226;--brand-tint:#f6e7ee;--brand-tint-2:#fbf3f7;--on-brand:#fff}[data-theme=kestrel]{--brand:#8a6113;--brand-strong:#6e4d0f;--brand-ink:#3d2c08;--brand-tint:#f4edda;--brand-tint-2:#faf6ec;--on-brand:#fff}[data-theme=demo-roaster-two]{--brand:#9b2c5a;--brand-strong:#7e2149;--brand-ink:#3e1226;--brand-tint:#f6e7ee;--brand-tint-2:#fbf3f7;--on-brand:#fff}[data-theme=chance]{--paper:#000;--surface:#141414;--ink:#fff;--ink-2:#bfbfbf;--ink-3:#8c8c8c;--line:#2e2e2e;--line-strong:#454545;--track:#2e2e2e;--brand:#fff;--brand-strong:#fff;--brand-ink:#fff;--brand-tint:#333;--brand-tint-2:#262626;--on-brand:#000;--fresh:#4fbf75;--resting:#e0a33e;--past:#e0655c}[data-theme=fernwood]{--paper:#eef2e9;--surface:#fff;--ink:#1c2b21;--ink-2:#44584b;--ink-3:#6e8276;--line:#dce4dc;--line-strong:#c6d2c7;--track:#cfdacf;--brand:#2e6b45;--brand-strong:#245537;--brand-ink:#132a1c;--brand-tint:#dcebdf;--brand-tint-2:#e9f2ea;--on-brand:#fff;--past:#b23931}
:root{--tap-min:44px;--tap-primary:56px;--page-max:480px;--page-pad:var(--space-4);--font-display:var(--font-bricolage,"Bricolage Grotesque"), sans-serif;--font-ui:var(--font-hanken,"Hanken Grotesk"), sans-serif;--font-mono:var(--font-plex-mono,"IBM Plex Mono"), monospace}*{box-sizing:border-box}body{font-family:var(--font-ui);font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink);background:var(--paper);margin:0}[data-theme]{color:var(--ink);background:var(--paper)}button,a,input,select,[role=button]{min-height:var(--tap-min);min-width:var(--tap-min)}:focus-visible{box-shadow:var(--focus);outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
.screen{max-width:var(--page-max);background:var(--paper);min-height:100vh;margin:0 auto}.app{padding:var(--space-4) var(--space-5) var(--space-2);justify-content:space-between;align-items:center;display:flex}.app .nm{font-family:var(--font-display);font-weight:700;font-size:var(--t-title)}.lockup-img{width:auto;max-width:60vw;height:28px;display:block}.board-lockup{margin-block-end:var(--space-2)}.board-lockup .nm{font-family:var(--font-display);font-weight:700;font-size:var(--t-title)}.body{padding:var(--space-3) var(--page-pad) var(--space-7);gap:var(--space-4);flex-direction:column;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.body>:not([data-slot]),.body [data-slot]>*{animation:rise var(--dur-slow) var(--ease) both}.body [data-slot],.moment,.moment-section{display:contents}.body [data-slot] .moment-section>*{animation:rise var(--dur-slow) var(--ease) both}.body:has([data-slot=return]) [data-slot=first-scan]{display:none}.eyebrow{font-family:var(--font-mono);font-weight:500;font-size:var(--t-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--brand-strong);margin:0 0 var(--space-3)}.card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--elev-1);padding:var(--space-5)}.title{font-family:var(--font-display);font-weight:700;font-size:var(--t-title);line-height:var(--lh-title);margin:0}.btn{font-family:var(--font-ui);font-weight:600;font-size:var(--t-body);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);min-height:var(--tap-min);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);transition:background var(--dur) var(--ease), transform var(--dur-fast) var(--ease), box-shadow var(--dur) var(--ease);border:1.5px solid #0000;display:inline-flex}.btn:active{transform:scale(.98)}.btn-secondary{background:var(--surface);border-color:var(--brand);color:var(--brand-strong)}.hero{background:var(--brand-tint);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-5);position:relative;overflow:hidden}.hero .cup{opacity:.9;position:absolute;bottom:-8px;right:-4px}.hero .hero-mark{right:var(--space-3);mix-blend-mode:screen;width:150px;height:auto;position:absolute;top:50%;transform:translateY(-50%)}.hero .bn{font-family:var(--font-display);font-weight:700;font-size:var(--t-display);line-height:var(--lh-display);letter-spacing:-.02em;color:var(--brand-ink);max-width:calc(100% - 148px);margin:0;position:relative}.hero .hero-origin{font-family:var(--font-mono);font-size:var(--t-small);line-height:var(--lh-small);letter-spacing:.01em;color:var(--brand-ink);opacity:.75;margin:var(--space-2) 0 0;max-width:calc(100% - 148px);position:relative}.hero .hero-notes{font-size:var(--t-small);line-height:var(--lh-small);color:var(--brand-ink);opacity:.85;margin:var(--space-2) 0 0;max-width:calc(100% - 148px);position:relative}@media (max-width:400px){.hero .cup{width:112px;height:auto}.hero .bn,.hero .hero-notes{max-width:calc(100% - 112px)}}.picker .hint{color:var(--ink-3);font-size:var(--t-small);line-height:var(--lh-small);margin:var(--space-1) 0 var(--space-3)}.picker-rows{flex-direction:column;display:flex}.picker-row{justify-content:space-between;align-items:baseline;gap:var(--space-3);width:100%;min-height:var(--tap-primary);padding:var(--space-3) var(--space-1);border:0;border-block-end:1px solid var(--line);font-family:var(--font-ui);font-weight:600;font-size:var(--t-body);color:var(--ink);text-align:left;cursor:pointer;transition:background var(--dur) var(--ease);background:0 0;display:flex}.picker-rows .picker-row:last-child{border-block-end:0}.picker-hint{font-size:var(--t-caption);color:var(--ink-3);font-weight:400}.picker-label{align-items:center;gap:var(--space-2);display:inline-flex}.picker-row[data-selected]{background:var(--brand-tint);color:var(--brand-ink);border-radius:var(--radius-sm);border-block-end-color:#0000}.picker-row .picker-check{color:var(--brand);flex:none}.picker-row.picker-selected{border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--elev-1);padding-inline:var(--space-3)}.chip-change{color:var(--ink-3);text-decoration:underline}.trust-taste{color:var(--ink-3);font-size:var(--t-small);line-height:var(--lh-small);margin:var(--space-3) 0 0}.serving-row{align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);display:flex}.serving-label{font-size:var(--t-small);color:var(--ink-2);margin-inline-end:var(--space-1)}.serving-count{font-family:var(--font-mono);font-size:var(--t-small);color:var(--ink);text-align:center;min-width:5.5em}.undercard{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;margin-block-start:var(--space-3);display:flex}.undercard-tbsp{font-size:var(--t-caption);color:var(--ink-3);flex:none}.grind-entry{min-inline-size:0}.undercard .grind-entry[open]{flex-basis:100%}.grind-entry>summary{align-items:baseline;gap:var(--space-2);cursor:pointer;min-height:var(--tap-min);font-size:var(--t-caption);list-style:none;display:inline-flex}.grind-entry>summary::-webkit-details-marker{display:none}.grind-entry .ge-prompt{color:var(--brand-strong);text-underline-offset:2px;text-decoration:underline}.grind-entry .ge-saved{color:var(--ink);font-weight:600}.tile-chip{font-family:var(--font-mono);font-size:var(--t-caption);color:var(--brand-strong);background:var(--brand-tint);border-radius:var(--radius-pill);padding:2px var(--space-2);margin-block-start:var(--space-1);display:inline-block}.m-view,.d-block{gap:var(--space-4);flex-direction:column;display:flex}.d-block[hidden]{display:none}.statgrid{gap:var(--space-3);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);display:grid}.stat{background:var(--brand-tint-2);border-radius:var(--radius-sm);padding:var(--space-4) var(--space-2);text-align:center;flex-direction:column;justify-content:center;display:flex}.stat .v{font-family:var(--font-display);font-weight:700;font-size:var(--t-stat);color:var(--brand-ink);font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1}.stat .k{font-family:var(--font-mono);font-size:var(--t-caption);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-top:var(--space-1)}[data-superauto-card] .stat .v,.stat[data-tile=grind] .v{font-size:var(--t-title);line-height:var(--lh-title);white-space:normal;overflow-wrap:break-word}.stat[data-tile=lever] .v,.stat[data-tile=pair] .v{white-space:normal;overflow-wrap:break-word;line-height:var(--lh-title)}.dose-stat{padding-inline:0}.dose-row{justify-content:center;gap:var(--space-1);margin:var(--space-2) 0 0;display:flex}.dose-btn{min-width:var(--tap-min);min-height:var(--tap-min);font-family:var(--font-mono);font-size:var(--t-body);color:var(--brand-strong);background:var(--surface);border:1.5px solid var(--brand-tint);border-radius:var(--radius-sm);cursor:pointer;line-height:1}.specline{font-family:var(--font-mono);font-size:var(--t-small);color:var(--ink-3);margin-top:var(--space-3);text-align:center;font-variant-numeric:tabular-nums}.variant-pills{gap:var(--space-1);flex-wrap:wrap;margin-block-end:var(--space-3);display:flex}.variant-pill{min-height:var(--tap-min);padding-inline:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);font-family:var(--font-ui);font-size:var(--t-small);color:var(--ink-2);cursor:pointer;background:0 0}.variant-pill[data-active=true]{border-color:var(--brand-strong);color:var(--brand-strong);font-weight:600}.card-note{font-size:var(--t-small);color:var(--ink-3);margin-block-start:var(--space-2)}.ready-at{font-size:var(--t-small);color:var(--ink-2);font-variant-numeric:tabular-nums;margin:0}.other-question{margin-block:var(--space-3) var(--space-2)}.other-choices{gap:var(--space-2);margin-block-end:var(--space-2);display:flex}.other-no-setup{width:100%;display:block}.other-french-press{font-size:var(--t-small);color:var(--ink-2);margin:0}.other-writein label{font-size:var(--t-small);color:var(--ink-3);margin-block-end:var(--space-1);display:block}.ow-row{gap:var(--space-2);display:flex}.ow-row input{min-height:var(--tap-min);flex:1}.ow-done{font-size:var(--t-small);color:var(--ink-3);margin:0}.timer-row{align-items:center;gap:var(--space-3);margin-block-end:var(--space-2);display:flex}.timer-elapsed{font-family:var(--font-mono);font-size:var(--t-title);font-variant-numeric:tabular-nums}.timer-reset{min-height:var(--tap-min);padding-inline:var(--space-2);font-size:var(--t-small);color:var(--ink-3);cursor:pointer;background:0 0;border:0;text-decoration:underline}.milk-bridge{font-size:var(--t-small);color:var(--ink-3);margin-block:var(--space-2) 0}.milk-line{font-size:var(--t-body);color:var(--ink-2);margin:0}.dx-sip-first{font-size:var(--t-small);color:var(--ink-3);margin-block:0 var(--space-2)}.moka-setup{margin-block:var(--space-2)}.moka-fix{font-family:var(--font-display);font-size:var(--t-title);margin:0}.install-line{justify-content:center;align-items:center;gap:var(--space-2) var(--space-3);min-height:var(--tap-min);margin-top:var(--space-5);font-size:var(--t-small);color:var(--ink-3);text-align:center;flex-wrap:wrap;display:flex}.install-hint{margin:var(--space-1) 0 0;color:var(--ink-3);flex-basis:100%}.install-steps-wrap{flex-basis:100%}.install-steps{max-width:20rem;padding-left:var(--space-4);text-align:left;color:var(--ink-3);margin:0 auto}.install-steps li{margin-top:var(--space-1)}.install-share-glyph{vertical-align:-.18em;width:.9em;height:auto;margin-left:.2em}.dial-prompt{justify-content:center;align-items:baseline;gap:var(--space-2);width:100%;min-height:var(--tap-min);margin-top:var(--space-3);padding:var(--space-2) var(--space-3);cursor:pointer;font-family:var(--font-ui);font-size:var(--t-small);background:0 0;border:0;display:flex}.dial-form{justify-content:center}.dial-form input{font-family:var(--font-mono);font-size:var(--t-small);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);width:14ch}.gc{align-items:flex-start;gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.gc-stepper .btn-secondary{min-width:var(--tap-min);min-height:var(--tap-min);font-family:var(--font-mono);line-height:1}input.gc-val{font-family:var(--font-mono);font-size:var(--t-stat);font-variant-numeric:tabular-nums;text-align:center;border:1px solid var(--line-strong);border-radius:var(--radius-sm);min-width:4ch;max-width:12ch;padding:var(--space-1) var(--space-2)}.grind-stepper{justify-content:center}.grind-val{min-width:8ch;font-family:var(--font-mono);font-size:var(--t-body);text-align:center;color:var(--brand-ink)}.grind-stepper .btn-secondary:disabled{opacity:.4;cursor:default}.gc-caption{font-family:var(--font-mono);font-size:var(--t-eyebrow);letter-spacing:.02em;color:var(--ink-3);margin:0}.gc-caveat{margin:var(--space-1) 0 0;font-size:var(--t-small);color:var(--ink-3);display:block}.gc-steer{margin:var(--space-2) 0 0;font-size:var(--t-small);color:var(--ink-2)}.gc-macro{gap:var(--space-3)}.gc-axis{align-items:center;gap:var(--space-2);display:flex}.gc-axis-label{font-family:var(--font-mono);font-size:var(--t-small);color:var(--ink-2);min-width:4ch}.gc-macro select{font-family:var(--font-mono);font-size:var(--t-body);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2)}.gc-secondary{width:100%}.gc-secondary summary{cursor:pointer;font-size:var(--t-small);color:var(--brand-strong);padding:var(--space-1) 0}.gc-save{margin-top:var(--space-1)}.timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.timeline li{gap:var(--space-3);padding:var(--space-2) 0;border-block-end:1px solid var(--line);align-items:baseline;display:flex}.timeline li:last-child{border-block-end:0}.t-at{font-family:var(--font-mono);font-size:var(--t-small);color:var(--brand-strong);font-variant-numeric:tabular-nums;flex:0 0 3ch}.t-step{font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink-2)}.timeline li[data-active] .t-at{font-weight:600}.timeline li[data-active] .t-step{color:var(--brand-strong)}.history{padding:0}.history summary{min-height:var(--tap-min);padding:var(--space-3) var(--space-5);cursor:pointer;font-weight:600;font-size:var(--t-body);color:var(--ink-2);align-items:baseline;list-style:none;display:flex}.history summary::-webkit-details-marker{display:none}.history-rows{padding:0 var(--space-5) var(--space-4);flex-direction:column;margin:0;list-style:none;display:flex}.history-rows .h-row{gap:var(--space-3);padding:var(--space-2) 0;border-block-end:1px solid var(--line);font-size:var(--t-small);align-items:baseline;display:flex}.history-rows .h-row:last-child{border-block-end:0}.history-rows .h-date{font-family:var(--font-mono);color:var(--ink-3);font-variant-numeric:tabular-nums;flex:0 0 9ch}.history-rows .h-setting{font-family:var(--font-mono);color:var(--ink);font-variant-numeric:tabular-nums}.history-rows .h-taste{color:var(--ink-2)}.history-rows .h-advice{color:var(--ink-3)}.history-rows .h-bag{font-family:var(--font-mono);font-size:var(--t-caption);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.unlock{padding:0}.unlock summary{align-items:baseline;gap:var(--space-1) var(--space-2);min-height:var(--tap-min);padding:var(--space-3) var(--space-5);cursor:pointer;flex-wrap:wrap;list-style:none;display:flex}.unlock summary::-webkit-details-marker{display:none}.u-prompt{font-weight:600;font-size:var(--t-body);color:var(--brand-strong)}.u-payoff{font-size:var(--t-small);color:var(--ink-3)}.u-value{font-family:var(--font-mono);font-size:var(--t-small);color:var(--ink-2);margin-left:auto}.unlock summary .chip-change{margin-left:auto}.unlock-body{padding:0 var(--space-5) var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.u-row{gap:var(--space-2);align-items:center;display:flex}.u-label{gap:var(--space-2);font-size:var(--t-small);color:var(--ink-2);flex-direction:column;display:flex}.unlock input{font-family:var(--font-ui);font-size:var(--t-body);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);min-height:var(--tap-min);flex:1;min-width:0}.combo-list{max-height:calc(var(--tap-primary) * 5.5);border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;display:flex;overflow-y:auto}.combo-row{min-height:var(--tap-min);padding-inline:var(--space-3);font-size:var(--t-small);flex-shrink:0}.combo-list .picker-row:last-child{border-block-end:0}.preground-row{min-height:var(--tap-min);padding-inline:var(--space-3);font-size:var(--t-small);border:1px solid var(--line);border-radius:var(--radius-sm)}.preground-row[data-selected]{border-color:var(--brand)}.u-stepper{align-items:center;gap:var(--space-3);display:flex}.u-stepper .val{font-family:var(--font-display);font-weight:700;font-size:var(--t-stat);text-align:center;font-variant-numeric:tabular-nums;min-width:2ch}.u-result{font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink-2);margin:0}.dx-nudge-hint{font-size:var(--t-small);color:var(--brand-strong);margin:0}.dx-why summary{min-height:var(--tap-min);font-size:var(--t-small);color:var(--brand-strong);cursor:pointer;align-items:center;text-decoration:underline;list-style:none;display:inline-flex}.dx-why summary::-webkit-details-marker{display:none}.dx-why p{font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-2);margin:0 0 var(--space-2)}.dx-logged{font-family:var(--font-mono);font-size:var(--t-caption);color:var(--ink-3);margin:var(--space-2) 0 0}.dx-closure{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}.dx-saved,.dx-proj{font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink-2);margin:0}.seg{gap:var(--space-2);margin-top:var(--space-4);display:flex}.seg button{font-family:var(--font-ui);font-weight:600;font-size:var(--t-body);min-height:var(--tap-primary);padding:var(--space-2) var(--space-1);border-radius:var(--radius-sm);border:1.5px solid var(--brand-tint);color:var(--brand-strong);background:var(--surface);cursor:pointer;transition:all var(--dur) var(--ease);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;display:flex}.seg-gloss{font-family:var(--font-mono);font-size:var(--t-caption);text-align:center;opacity:.75;font-weight:400;line-height:1.2}.seg button[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.seg button:disabled{background:var(--surface);border-color:var(--line);color:var(--ink-3);cursor:default}.seg button:not(:disabled):active{background:var(--brand);border-color:var(--brand);color:var(--on-brand);transform:scale(.98)}.dx-setting{align-items:flex-start;gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.dx-setting-row{align-items:center;gap:var(--space-3);display:flex}.dx-shot{align-items:center;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--t-small);color:var(--ink-2);display:flex}.dx-shot-input{width:5ch;min-height:var(--tap-min);font-family:var(--font-mono);font-size:var(--t-body);text-align:center;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2)}.dx-shot-unit{font-family:var(--font-mono);color:var(--ink-3)}.dx-setting .dx-at{font-family:var(--font-mono);font-size:var(--t-small);color:var(--ink-2)}.dx-setting input{font-family:var(--font-mono);font-size:var(--t-body);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);width:9ch}.dx-edit{font-family:var(--font-ui);font-size:var(--t-small);color:var(--brand-strong);min-height:var(--tap-min);padding:0 var(--space-2);cursor:pointer;background:0 0;border:0;font-weight:600}.specline .dx-edit{margin-inline-start:var(--space-2)}.dx-line{font-family:var(--font-display);font-weight:700;font-size:var(--t-lead);line-height:var(--lh-lead);color:var(--brand-ink);margin:var(--space-4) 0 0}.dx-nudge{font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-3);margin:var(--space-2) 0 0}.timer-done{align-items:center;gap:var(--space-3);margin-block-start:var(--space-2);display:flex}.timer-done-line{font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-2);margin:0}.u-sub{font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-2);margin-block:var(--space-3) var(--space-1);display:block}.u-sub:first-child{margin-block-start:0}.dx-shot-ack{font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-2);margin:var(--space-2) 0 0}.dx-grinder-ask{margin-top:var(--space-3)}.dx-ask-line{font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-2);margin:0 0 var(--space-2)}.proj-line{font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink-2);margin:0 0 var(--space-3)}.proj-ics{width:100%}.reorder{background:var(--brand);color:var(--on-brand);border-radius:var(--radius-lg);padding:var(--space-5)}.reorder-quiet{background:0 0;border-radius:0;padding:0}.btn-inverted{background:var(--on-brand);color:var(--brand-strong)}.btn.block{width:100%;min-height:var(--tap-primary)}.reveal-code{font-family:var(--font-mono);font-weight:600;font-size:var(--t-title);color:var(--on-brand);overflow-wrap:anywhere;margin:0}.reveal-copy{width:100%;min-height:var(--tap-min);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.reveal-copy-hint{font-family:var(--font-ui);font-weight:400;font-size:var(--t-caption);line-height:var(--lh-small);color:var(--on-brand);opacity:.85;margin-top:2px;display:block}.reveal-note{font-size:var(--t-small);line-height:var(--lh-small);color:var(--on-brand);opacity:.85;margin:var(--space-2) 0 0}.reveal-shop{min-height:var(--tap-min);margin-top:var(--space-2);color:var(--on-brand);align-items:center;font-weight:600;text-decoration:underline;display:inline-flex}.returning-line{font-family:var(--font-mono);font-size:var(--t-small);color:var(--ink-2);margin:0}.returning-advice{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.newbag{align-self:flex-start}.newbag[data-newbag=open],.newbag[data-newbag=started]{align-self:stretch}.newbag-banner{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--elev-1);padding:var(--space-4) var(--space-5)}.newbag-prompt{font-family:var(--font-display);font-weight:700;font-size:var(--t-title);line-height:var(--lh-title);margin:0}.newbag-actions{gap:var(--space-2);margin-top:var(--space-3);display:flex}.newbag-passive{font-family:var(--font-ui);font-weight:600;font-size:var(--t-small);color:var(--brand-strong);min-height:var(--tap-min);text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.newbag-panel{gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.newbag-panel .u-prompt{margin:0}.newbag-panel input{font-family:var(--font-ui);font-size:var(--t-body);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);flex:1;min-width:0}.carryover-line{font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink-2);margin:0}.fresh-line{font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-2);margin:0}.fresh-line[data-verdict=resting]{color:var(--ink-3)}.stale-line{font-size:var(--t-body);line-height:var(--lh-body);color:var(--past);margin:0;font-weight:600}.foot{gap:var(--space-2);padding:var(--space-5) 0 var(--space-2);flex-direction:column;align-items:center;display:flex}.foot .switcher,.card .switcher{color:var(--brand-strong);font-size:var(--t-small);min-height:var(--tap-min);align-items:center;display:inline-flex}.foot .attribution{font-family:var(--font-mono);font-size:var(--t-caption);color:var(--ink-3);margin:0}.attribution .attribution-link{color:var(--ink-3);text-underline-offset:2px;text-decoration:underline}.home-landing{color:var(--ink-2);font-size:var(--t-body);line-height:var(--lh-body);margin:var(--space-4) 0 0}a.picker-row{text-decoration:none}.nf-body{color:var(--ink-2);font-size:var(--t-body);line-height:var(--lh-body);margin:0 0 var(--space-3)}.qr-card{align-items:center;gap:var(--space-3);text-align:center;flex-direction:column;display:flex}.qr-card .qr-img{border-radius:var(--radius-sm);width:240px;max-width:100%;height:auto}.qr-card .qr-reason{font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-2);max-width:32ch;margin:0}.qr-card .qr-title-link{color:inherit;text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px}.qr-board{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:640px){.qr-board{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.dev-variant{border-block-end:1px solid var(--line-strong);padding-block:var(--space-5)}.engine-row .engine-meta{font-family:var(--font-mono);font-size:var(--t-caption);color:var(--ink-3);margin:0 0 var(--space-2);overflow-wrap:anywhere}.dev-label{font-family:var(--font-mono);font-size:var(--t-caption);color:var(--ink-3);margin:0 0 var(--space-3)}.shop-block{align-items:stretch;gap:var(--space-1);flex-direction:column}.shop-block .shop-block-name{font-family:var(--font-display);font-weight:600;font-size:var(--t-title);color:var(--ink)}.shop-block .shop-block-taste{font-weight:400;font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink-2)}.shop-block .shop-block-drinks{font-family:var(--font-mono);font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-3)}.as-served{font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink-2);margin:0}.shop-close{font-family:var(--font-display);font-weight:600;font-size:var(--t-title);line-height:var(--lh-title);color:var(--ink);margin:0}.capture .capture-ask{font-family:var(--font-display);font-weight:600;font-size:var(--t-title);color:var(--ink);margin-block-end:var(--space-3);display:block}.capture-hint{font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-2);margin:calc(-1 * var(--space-2)) 0 var(--space-3)}.capture-row{gap:var(--space-2);display:flex}.capture-input{min-width:0;padding:var(--space-2) var(--space-3);font-family:var(--font-ui);font-size:var(--t-body);color:var(--ink);background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius-sm);flex:1}.capture-send{padding:var(--space-2) var(--space-4);font-family:var(--font-ui);font-weight:600;font-size:var(--t-body);color:var(--brand-ink);background:var(--brand);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur) var(--ease);border:0}.capture-send:disabled{opacity:.6;cursor:default}.capture-consent{align-items:flex-start;gap:var(--space-2);font-size:var(--t-small);line-height:var(--lh-small);color:var(--ink-2);margin-block-start:var(--space-3);display:flex}.capture-consent input{min-width:0;min-height:0;margin-block-start:2px}.capture-note{font-size:var(--t-caption);line-height:var(--lh-small);color:var(--ink-3);margin:var(--space-2) 0 0}.capture-sent,.capture-failed{font-size:var(--t-body);color:var(--ink);margin:0}.capture-failed{color:var(--ink-2);margin-block-start:var(--space-2)}
