@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/poppins-400-BwTUGeWf.woff2)format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/poppins-500-CWICHMj6.woff2)format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/poppins-600-DJVo7c07.woff2)format("woff2")}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/assets/open-sans-latin-BEhAMRCF.woff2)format("woff2")}:root{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#131313;--surface-low:#1b1b1b;--surface:#1f1f1f;--surface-2:#2a2a2a;--surface-3:#353535;--line:#474747;--text:#e2e2e2;--text-strong:#fff;--text-dim:#c6c6c6;--text-faint:#919191;--accent:#fff;--on-accent:#1b1b1b;--accent-text:#e2e2e2;--accent-c:#d4d4d4;--on-accent-c:#000;--heat:#ff9226;--heat-text:#ff9226;--ready:#4cd6a0;--ready-text:#4cd6a0;--ready-soft:#4cd6a029;--cool:#8ccdff;--cool-text:#8ccdff;--warn:#f0b45c;--warn-soft:#f0b45c24;--danger:#ffb4ab;--on-danger:#690005;--danger-text:#ffb4ab;--danger-soft:#ffb4ab24;--track:#2a2a2a;--tab-bg:#1b1b1b;--tab-inactive:#848484;--scrim:#0009;--focus:#fff;--shadow-sheet:0 -12px 40px #00000080;--shadow-float:0 8px 24px #00000059;--sheet-bg:#1b1b1b;--selection:#ffffff40;--display-bg:#000;--display-track:#232326;--display-text:#f2f2f4;--display-dim:#8e8e94;--brew:#f0b45c;--brew-dark:#6e3e18;--brew-light:color-mix(in srgb, var(--brew) 50%, #f2f2f4);--brew-marker:color-mix(in srgb, var(--brew) 60%, #f2f2f4);--brew-half:color-mix(in srgb, var(--brew) 50%, #000);--water:#38aaff;--water-fill:color-mix(in srgb, var(--water) 65%, #000);--water-marker:color-mix(in srgb, var(--water) 60%, #f2f2f4);--water-dim:color-mix(in srgb, var(--water) 45%, #000);--cool-half:color-mix(in srgb, var(--cool) 50%, #000);--weight:#ece2d0;--tick-minor:#4e4e52;--tick-major:#d2d2d6;--font-display:"Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body:"Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;--font-label:"Open Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--fs-xs:.75rem;--fs-sm:.875rem;--fs-md:1rem;--fs-input:1rem;--fs-lg:1rem;--fs-xl:1.25rem;--fs-title:1.5rem;--fs-2xl:1.5rem;--fs-temp:3.5rem;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-none:1;--lh-tight:1.25;--lh-ui:1.2;--lh-snug:1.35;--lh-text:1.45;--tracking-label:.08em;--tracking-state:.08em;--tracking-button:0;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.25rem;--sp-6:1.5rem;--sp-8:2rem;--sp-10:2.5rem;--gap-section:var(--sp-4);--card-pad:var(--sp-4);--gap-card:var(--sp-3);--gap-tight:var(--sp-1);--check-indent:calc(1.375rem + var(--sp-3));--r-sm:.75rem;--r-md:1rem;--r-lg:1.5rem;--r-sheet:1.75rem;--r-pill:999px;--r-bar:3px;--bar-h:.5rem;--tap:2.75rem;--btn-h:2.75rem;--spring-spatial:linear(0, .044 3.906%, .154 8.125%, .301 12.656%, .456 17.5%, .602 22.656%, .726 28.125%, .823 33.906%, .894 40%, .942 46.406%, .971 53.125%, .988 60.156%, .997 67.5%, 1 75.156%, 1.001 83.125%, 1.001 91.406%, 1);--spring-effects:linear(0, .051 3.906%, .173 8.125%, .325 12.656%, .479 17.5%, .618 22.656%, .731 28.125%, .819 33.906%, .883 40%, .927 46.406%, .956 53.125%, .974 60.156%, .986 67.5%, .992 75.156%, .996 83.125%, .998 91.406%, 1);--dur-spatial:.32s;--dur-fast-spatial:.225s;--dur-effects:.23s;--dur-fast-effects:.15s;--ease:cubic-bezier(.2, 0, 0, 1);--ease-emphasized:linear(0, .003 2%, .013 4%, .03 6%, .056 8%, .093 10%, .146 12%, .222 14%, .4 16.67%, .52 18%, .636 20%, .706 22%, .773 25%, .84 30%, .883 35%, .912 40%, .951 50%, .973 60%, .987 70%, .995 80%, .999 90%, 1);--dur-fast:.15s;--dur:.25s;--dur-nav:.45s;--dur-calm:.7s;--dur-live:1s;--dur-frame:.15s;--content-max:32rem;--tabbar-h:4.5rem;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--gutter-left:max(1rem, env(safe-area-inset-left,0px));--gutter-right:max(1rem, env(safe-area-inset-right,0px))}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-body);font-size:var(--fs-md);line-height:var(--lh-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;margin:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:var(--fw-semibold);line-height:var(--lh-tight);text-wrap:balance}p{text-wrap:pretty}b,strong{font-weight:var(--fw-semibold)}small{font-size:var(--fs-sm)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed}ol,ul{margin:0;padding:0;list-style:none}svg{display:block}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}::selection{background:var(--selection)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.num{font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.label{font-family:var(--font-label);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-dim)}.title-xl{font-size:var(--fs-2xl)}.title-lg{font-size:var(--fs-title)}.text-dim{color:var(--text-dim)}.hint{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim)}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none}.icon-sm{width:1.0625rem;height:1.0625rem}.icon-md{width:1.25rem;height:1.25rem}.icon-lg{width:1.5rem;height:1.5rem}.icon-xl{stroke-width:2.2px;width:2.75rem;height:2.75rem}.google-logo{stroke:none}.btn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--btn-h);padding:0 var(--sp-5);border-radius:var(--r-pill);font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-medium);letter-spacing:var(--tracking-button);line-height:var(--lh-ui);text-align:center;transition:transform var(--dur-fast-spatial) var(--spring-spatial), opacity var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);border:0;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.icon-btn,.stepper-btn,button.pick,.play{transition:transform var(--dur-fast-spatial) var(--spring-spatial)}.btn:disabled{opacity:.42}.btn[aria-busy=true]:disabled{opacity:1;cursor:progress}.btn-sm{min-height:var(--tap);padding:0 var(--sp-4);font-size:var(--fs-md)}.btn-block{width:100%;display:flex}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:disabled{background:var(--surface-2);color:var(--text-faint);opacity:1}.btn-primary[aria-busy=true]:disabled{background:var(--accent);color:var(--on-accent)}.btn-primary[aria-busy=true] .spinner{border-color:color-mix(in srgb, var(--on-accent) 25%, transparent);border-top-color:var(--on-accent)}.btn-secondary{background:var(--surface-2);color:var(--text)}.btn-ghost{color:var(--accent-text);min-height:var(--tap);background:0 0}.btn-danger{color:var(--danger-text);min-height:var(--tap);background:0 0}.btn-danger.btn-block{background:var(--danger-soft)}.btn-row{gap:var(--sp-2);flex-wrap:wrap;display:flex}.btn-row>.btn{flex:auto}.icon-btn{width:var(--tap);height:var(--tap);background:var(--surface-2);color:var(--text);border:0;border-radius:50%;flex:none;place-items:center;display:inline-grid}.icon-btn:active{transform:scale(.95)}.link-btn{align-items:center;gap:var(--sp-2);min-height:var(--tap);color:var(--accent-text);font-family:var(--font-display);font-size:var(--fs-md);font-weight:var(--fw-medium);background:0 0;border:0;padding:0;display:inline-flex;position:relative}.link-btn:after{content:"";inset:0 min(0px, calc((100% - var(--tap)) / 2));position:absolute}.link-btn:disabled{color:var(--text-faint)}.link-btn.dim{color:var(--text-dim);font-weight:var(--fw-medium)}.disclosure{justify-content:space-between;align-items:center;gap:var(--sp-3);width:100%;min-height:var(--tap);border:0;border-top:1px solid var(--line);color:var(--text-dim);font-size:var(--fs-sm);font-weight:var(--fw-medium);text-align:left;background:0 0;padding:0;display:flex}.disclosure .icon,.list-chevron{color:var(--text-faint);transition:transform var(--dur) var(--ease)}.list-check{color:var(--text-strong);flex:none}.disclosure[aria-expanded=true] .icon,[aria-expanded=true]>.list-chevron{transform:rotate(180deg)}.disclosure[aria-expanded=true]{color:var(--text)}.card>.disclosure:last-child{margin-bottom:calc(-1 * var(--sp-2))}.field,.code{gap:var(--sp-2);flex-direction:column;display:flex}.field-label{font-family:var(--font-label);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-dim)}.field-input{width:100%;min-height:3.125rem;padding:0 var(--sp-4);border-radius:var(--r-md);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);color:var(--text);font-size:var(--fs-input);transition:box-shadow var(--dur-fast) var(--ease);border:0}.field-input::placeholder{color:var(--text-faint)}.field-input:focus{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.field-input[aria-invalid=true]{box-shadow:inset 0 0 0 2px var(--danger)}.field-input:disabled{color:var(--text-dim);-webkit-text-fill-color:var(--text-dim);opacity:1}.field-input::-webkit-date-and-time-value{text-align:left}.select{position:relative}.select .field-input{appearance:none;padding-right:var(--sp-10);text-overflow:ellipsis}.select-icon{top:50%;right:var(--sp-4);color:var(--text-dim);pointer-events:none;position:absolute;transform:translateY(-50%)}.card .field-label{font-family:var(--font-body);font-size:var(--fs-md);font-weight:var(--fw-medium);letter-spacing:0;text-transform:none;color:var(--text)}.field-hint{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim)}.field-error{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--danger-text)}.code-box{position:relative}.code-cells{align-items:center;gap:var(--sp-2);display:flex}.code-long .code-cells{gap:.3125rem}.code-cell{border-radius:var(--sp-3);background:var(--surface);height:3.375rem;box-shadow:inset 0 0 0 1px var(--line);font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;color:var(--text);flex:1;place-items:center;display:grid;position:relative}.code-long .code-cell{border-radius:.625rem;height:3rem}.code-cell.is-active{box-shadow:inset 0 0 0 2px var(--accent)}.code-sep{color:var(--text-faint);flex:none}.code-input{color:#0000;caret-color:#0000;width:100%;height:100%;font-size:var(--fs-input);letter-spacing:1em;opacity:.01;background:0 0;border:0;padding:0;position:absolute;inset:0}.code-input:focus{outline:none}.code-input::selection{background:0 0}.caret{background:var(--accent);width:2px;height:1.5rem;animation:1.1s step-end infinite blink;position:absolute}@keyframes blink{50%{opacity:0}}.check{gap:var(--sp-3);min-height:var(--tap);padding:var(--sp-2) 0;cursor:pointer;align-items:flex-start;display:flex}.check-input{opacity:0;width:1px;height:1px;position:absolute}.check-box{width:1.375rem;height:1.375rem;box-shadow:inset 0 0 0 2px var(--surface-3);background:var(--surface);transition:background-color var(--dur-fast) var(--ease);border-radius:.4375rem;flex:none;margin-top:.0625rem}.check-input:checked+.check-box{background:var(--accent);box-shadow:none}.check-input:checked+.check-box:after{content:"";border:solid var(--on-accent);border-width:0 2px 2px 0;width:.375rem;height:.6875rem;margin:.25rem auto 0;display:block;transform:rotate(45deg)}.check-input:focus-visible+.check-box{outline:2px solid var(--focus);outline-offset:2px}.check-label{font-size:var(--fs-md);font-weight:var(--fw-medium)}.check:has(.check-input:disabled){cursor:not-allowed}.check-input:disabled+.check-box{opacity:.45}.check-input:disabled:checked+.check-box{background:var(--surface-3);opacity:1}.check-input:disabled:checked+.check-box:after{border-color:var(--text-dim)}.check-input:disabled~.check-label{color:var(--text-dim)}.card{gap:var(--gap-card);background:var(--surface);border-radius:var(--r-lg);padding:var(--card-pad);flex-direction:column;display:flex}.card-outline{box-shadow:inset 0 0 0 1px var(--line)}.card-head{justify-content:space-between;align-items:center;gap:var(--sp-2);min-height:2rem;display:flex}.card-title{min-width:0;font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text)}.card-head>.link-btn,.card-head-actions>.link-btn,.link-caps{font-family:var(--font-label);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--accent-text)}.card-head>.link-btn{margin-block:calc((2rem - var(--tap)) / 2);white-space:nowrap;flex:none;gap:.125rem}.dot{background:var(--text-faint);border-radius:50%;flex:none;width:.5rem;height:.5rem;display:inline-block}.dot-ok{background:var(--ready)}.dot-heat{background:var(--heat)}.dot-warn{background:var(--warn)}.dot-danger{background:var(--danger)}.dot-cool{background:var(--cool)}.chip{border-radius:var(--r-pill);background:var(--surface-2);min-height:1.75rem;color:var(--text);font-family:var(--font-label);font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:var(--lh-ui);align-items:center;gap:.375rem;padding:.25rem .75rem;display:inline-flex}.chip-ok{background:var(--ready-soft);color:var(--ready-text)}.chip-warn{background:var(--warn-soft)}.chip-danger{background:var(--danger-soft);color:var(--danger-text)}.conn{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);align-items:center;gap:.375rem;display:inline-flex}.banner{align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--surface-2);font-family:var(--font-label);font-size:var(--fs-sm);line-height:var(--lh-text);display:flex}.banner .icon{margin-top:.0625rem}.banner-warn{background:var(--warn-soft)}.banner-warn .icon{color:var(--warn)}.banner-danger{background:var(--danger-soft);color:var(--danger-text)}.spinner{border:2px solid var(--track);border-top-color:var(--accent);border-radius:50%;flex:none;animation:.9s linear infinite spin;display:inline-block}.spinner-sm{width:1rem;height:1rem}.spinner-md{border-width:3px;width:1.5rem;height:1.5rem}@keyframes spin{to{transform:rotate(360deg)}}.topbar{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);display:flex}.topbar-text{flex-direction:column;gap:.1875rem;min-width:0;display:flex}.topbar-title{font-size:var(--fs-title);overflow-wrap:anywhere}.topbar-sub{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim)}.topbar.has-back{z-index:15;margin:calc(-1 * (var(--sp-5) + var(--safe-top))) calc(-1 * var(--gutter-right)) calc(-1 * var(--sp-2)) calc(-1 * var(--gutter-left));padding:calc(var(--sp-5) + var(--safe-top)) var(--gutter-right) var(--sp-2) var(--gutter-left);background:var(--bg);transition:box-shadow var(--dur-fast) var(--ease);justify-content:flex-start;align-items:center;position:sticky;top:0}.topbar.has-back.is-lifted{box-shadow:0 1px 0 var(--line)}.topbar.has-back>.topbar-text{flex:1}.topbar-back{background:0 0;margin-inline-start:calc(var(--sp-2) * -1)}.topbar-right{align-items:center;gap:var(--sp-2);flex:none;display:flex}.avatar{width:var(--tap);height:var(--tap);background:var(--surface-2);color:var(--text);font-family:var(--font-display);font-size:var(--fs-md);font-weight:var(--fw-semibold);border:0;border-radius:50%;flex:none;place-items:center;display:grid}.collapse{opacity:0;transition:grid-template-rows var(--dur-spatial) var(--spring-spatial), opacity var(--dur-fast-effects) var(--spring-effects);grid-template-rows:0fr;display:grid}.collapse[data-open]{opacity:1;grid-template-rows:1fr}.collapse-inner{min-height:0;overflow:hidden}.card:not(.rows-card)>.collapse{margin-top:calc(-1 * var(--gap-card))}.card:not(.rows-card)>.collapse>.collapse-inner>:first-child{margin-top:var(--gap-card)}.sheet{max-width:none;max-height:none;color:var(--text);background:0 0;border:0;margin:0;padding:0;overflow:visible}.sheet::backdrop{background:var(--scrim);opacity:0}.sheet[data-in]::backdrop{opacity:1;animation:fade-in var(--dur-effects) var(--spring-effects)}.sheet[data-closing]::backdrop{animation:fade-out var(--dur-fast-effects) var(--spring-effects) forwards}.sheet-body{gap:var(--sp-4);background:var(--bg);flex-direction:column;display:flex}.sheet-body:focus{outline:none}.sheet-head{grid-template-columns:var(--tap) 1fr var(--tap);align-items:center;gap:var(--sp-2);min-height:var(--tap);display:grid}.sheet-head-spacer{width:var(--tap)}.sheet-title{font-size:var(--fs-xl);text-align:center}.sheet-head>:last-child:not(.sheet-head-spacer){justify-self:end}.sheet-grab{width:2rem;height:.25rem;margin-bottom:calc(-1 * var(--sp-2));border-radius:var(--r-pill);background:var(--text-faint);align-self:center}.sheet-sheet{width:100%;max-height:calc(100dvh - var(--safe-top) - 1.5rem);inset:auto 0 0}.sheet-sheet .sheet-body{background:var(--sheet-bg);max-width:var(--content-max);max-height:calc(100dvh - var(--safe-top) - 1.5rem);padding:var(--sp-2) var(--gutter-right) calc(var(--sp-6) + var(--safe-bottom)) var(--gutter-left);border-radius:var(--r-sheet) var(--r-sheet) 0 0;box-shadow:var(--shadow-sheet);margin:0 auto;overflow-y:auto}.sheet-sheet .sheet-grab,.sheet-sheet .sheet-head{touch-action:none}.sheet-full{width:100%;height:100%;inset:0}.sheet-full .sheet-body{min-height:100%;max-width:var(--content-max);padding:calc(var(--sp-3) + var(--safe-top)) var(--gutter-right) calc(var(--sp-6) + var(--safe-bottom)) var(--gutter-left);margin:0 auto}.sheet-full::backdrop{background:var(--bg)}.sheet-alert{width:100%;inset:auto 0 0}.sheet-alert .sheet-body{background:var(--sheet-bg);max-width:var(--content-max);padding:var(--sp-4) var(--gutter-right) calc(var(--sp-5) + var(--safe-bottom)) var(--gutter-left);border-radius:var(--r-sheet) var(--r-sheet) 0 0;box-shadow:var(--shadow-sheet);margin:0 auto}.sheet-alert .sheet-head{min-height:0;display:block}.sheet-alert .sheet-head-spacer{display:none}.sheet-alert .sheet-title{font-size:var(--fs-title);text-align:left}.sheet-sheet:not([data-in]) .sheet-body,.sheet-alert:not([data-in]) .sheet-body{transform:translateY(100%)}.sheet-full:not([data-in]) .sheet-body{opacity:0}.sheet-sheet[data-in] .sheet-body,.sheet-alert[data-in] .sheet-body{animation:sheet-in var(--dur-spatial) var(--spring-spatial)}.sheet-full[data-in] .sheet-body{animation:fade-in var(--dur-effects) var(--spring-effects)}.sheet-sheet[data-closing] .sheet-body,.sheet-alert[data-closing] .sheet-body{animation:sheet-out var(--dur-fast-effects) var(--spring-effects) forwards}.sheet-full[data-closing] .sheet-body{animation:fade-out var(--dur-fast-effects) var(--spring-effects) forwards}.sheet-exit{z-index:60;pointer-events:none;position:fixed}.sheet-exit-scrim{z-index:59;background:var(--scrim);pointer-events:none;animation:fade-out var(--dur-fast-effects) var(--spring-effects) forwards;position:fixed;inset:0}@keyframes sheet-in{0%{transform:translateY(100%)}}@keyframes sheet-out{to{transform:translateY(100%)}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.sheet-actions{gap:var(--sp-2);flex-direction:column;display:flex}:root[data-nav] :is(.tab-screen,.screen.machine)>:not(.live-bar){animation:nav-fade-in .38s cubic-bezier(.05, .7, .1, 1) both, var(--nav-in,none) var(--dur-nav) var(--ease-emphasized) both}:root[data-nav=tab] :is(.tab-screen,.screen.machine)>:not(.live-bar){animation:nav-fade-in var(--dur-fast-effects) var(--ease) both}:root[data-nav=forward]{--nav-in:nav-in-right}:root[data-nav=back]{--nav-in:nav-in-left}@keyframes nav-fade-in{0%{opacity:0}}@keyframes nav-in-right{0%{transform:translate(30px)}}@keyframes nav-in-left{0%{transform:translate(-30px)}}.screen.machine[data-swap] :is(.gauge-state,.gauge-sub),.screen.machine[data-swap]>.quick,.screen.machine[data-swap]>.quick~:not(dialog),.screen.machine[data-swap]>.live-shot,.screen.machine[data-swap]>.live-shot~:not(dialog){animation:.38s cubic-bezier(.05,.7,.1,1) both nav-fade-in}.tabbar{z-index:10;padding:var(--sp-2) var(--gutter-right) calc(var(--sp-2) + var(--safe-bottom)) var(--gutter-left);background:var(--tab-bg);position:fixed;inset:auto 0 0}.tabbar-list{max-width:var(--content-max);grid-auto-columns:1fr;grid-auto-flow:column;margin:0 auto;display:grid}.tab{justify-content:center;align-items:center;gap:var(--sp-1);width:100%;min-height:3.5rem;color:var(--tab-inactive);font-size:var(--fs-xs);font-weight:var(--fw-medium);background:0 0;border:0;flex-direction:column;padding:0;display:flex}.tab[aria-current=page]{color:var(--text-strong);font-weight:var(--fw-semibold)}@property --dial-a{syntax:"<angle>";inherits:false;initial-value:0deg}@property --dial-b{syntax:"<angle>";inherits:false;initial-value:0deg}@property --dial-p{syntax:"<number>";inherits:false;initial-value:0}.dial{aspect-ratio:1;--dial-ring:radial-gradient(closest-side, transparent 77.5%, #000 77.7%, #000 88.5%, transparent 88.7%);width:100%;position:relative}.dial-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.dial-track{fill:none;stroke:var(--track)}.dial-full{fill:none;stroke:var(--water-dim)}.dial-tick{fill:none;stroke:var(--tick-minor);stroke-width:2px;stroke-linecap:round}.dial-tick.is-major{stroke:var(--tick-major);stroke-width:3px}.dial-fill,.dial-over,.dial-shimmer{pointer-events:none;-webkit-mask:var(--dial-ring);-webkit-mask:var(--dial-ring);mask:var(--dial-ring);transition:--dial-a var(--dur-frame) linear, --dial-b var(--dur-frame) linear;border-radius:50%;position:absolute;inset:0}.dial-brew .dial-fill{background:conic-gradient(var(--brew-dark) 0deg, var(--brew) var(--dial-a), transparent var(--dial-a))}.dial-water .dial-fill{background:conic-gradient(var(--water-fill) 0deg var(--dial-a), transparent var(--dial-a))}.dial-over{background:conic-gradient(var(--dial-over) 0deg var(--dial-b), transparent var(--dial-b))}.dial-over.is-heat{--dial-over:var(--heat)}.dial-over.is-light{--dial-over:var(--brew-light)}.dial-shimmer{background:conic-gradient(transparent 0deg, transparent max(0deg, calc(-32deg + (var(--dial-a) + 32deg) * var(--dial-p))), #ffffff6b clamp(0deg, calc(-16deg + (var(--dial-a) + 32deg) * var(--dial-p)), var(--dial-a)), transparent min(var(--dial-a), calc((var(--dial-a) + 32deg) * var(--dial-p))), transparent 360deg);animation:1.6s linear infinite dial-shimmer}@keyframes dial-shimmer{0%{--dial-p:0}to{--dial-p:1}}@media (prefers-reduced-motion:reduce){.dial-shimmer{display:none}}.dial-part{fill:none;stroke-dasharray:1 1;transition:stroke-dashoffset var(--dur-frame) linear, opacity var(--dur-fast) var(--ease), stroke var(--dur) var(--ease)}.dial-water .dial-part{stroke:var(--water-fill)}.dial-brew .dial-part{stroke:var(--brew)}.dial-brew .dial-part.is-current{stroke:var(--brew-half)}.dial-cool .dial-part{stroke:var(--cool)}.dial-cool .dial-part.is-current{stroke:var(--cool-half)}.dial-marker-turn{transform-origin:130px 130px;transition:transform var(--dur-frame) linear}.dial-marker-cut{fill:var(--bg)}.dial-marker{fill:var(--brew-marker)}.dial-water .dial-marker{fill:var(--water-marker)}.dial-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.125rem;display:flex;position:absolute;inset:14%}.dial-label{font-family:var(--font-label);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-state);text-transform:uppercase;align-items:center;gap:.25rem;display:inline-flex}.dial-check{width:1rem;height:1rem}.dial-value{position:relative}.dial-side{flex-direction:column;align-items:flex-start;display:inline-flex}.dial-sup{font-family:var(--font-label);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:var(--lh-none);color:var(--brew);margin:.25rem 0 0 .1875rem}.dial-sup.is-small{vertical-align:super;margin-top:0}.dial-side .dial-sup+.gauge-unit{margin-top:.125rem}.dial-second{font-family:var(--font-label);font-size:var(--fs-lg);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.dial-row{font-family:var(--font-label);font-size:var(--fs-sm);line-height:var(--lh-text)}.dial-icon{width:3.25rem;height:3.25rem;color:var(--water)}.tone-brew{color:var(--brew)}.tone-water{color:var(--water)}.tone-cool{color:var(--cool-text)}.tone-ready{color:var(--ready-text)}.tone-heat{color:var(--heat-text)}.tone-dim{color:var(--text-dim)}.tone-text{color:var(--text)}.tone-weight{color:var(--weight)}@property --iris{syntax:"<number>";inherits:true;initial-value:1}.iris{position:relative}.iris-scene{clip-path:circle(calc(var(--iris) * 50%) at 50% 50%)}.iris-rim{width:calc(var(--iris) * 100%);aspect-ratio:1;border:2.5px solid var(--brew);box-shadow:0 0 0 9px color-mix(in srgb, var(--brew-dark) 80%, transparent);pointer-events:none;border-radius:50%;position:absolute;top:50%;left:50%;translate:-50% -50%}.iris-dot{aspect-ratio:1;background:var(--brew-light);width:.625rem;box-shadow:0 0 0 .375rem color-mix(in srgb, var(--brew-dark) 75%, transparent);opacity:0;pointer-events:none;border-radius:50%;position:absolute;top:50%;left:50%;translate:-50% -50%}.iris.is-closing{animation:.8s both iris-close}.iris.is-closing .iris-rim{animation:.8s both iris-close-rim}.iris.is-closing .iris-dot{animation:.8s both iris-close-dot}@keyframes iris-close{0%{--iris:1.01;animation-timing-function:cubic-bezier(.65,0,.35,1)}70%{--iris:.1}70.1%,to{--iris:0}}@keyframes iris-close-rim{0%{opacity:0}20%,69.9%{opacity:1}70%,to{opacity:0}}@keyframes iris-close-dot{0%,69.9%{opacity:0}70%,72%{opacity:1;animation-timing-function:cubic-bezier(.65,0,.35,1)}to{opacity:0}}.iris.is-revealing{animation:.9s cubic-bezier(.33,1,.68,1) both iris-reveal}.iris.is-revealing .iris-rim{animation:.9s both iris-reveal-rim}@keyframes iris-reveal{0%{--iris:0}to{--iris:1.1}}@keyframes iris-reveal-rim{0%,60%{opacity:1}to{opacity:0}}.gauge-ripple circle{fill:none;stroke:var(--ready);vector-effect:non-scaling-stroke;transform-box:fill-box;transform-origin:50%;opacity:0;animation:.9s cubic-bezier(.33,1,.68,1) forwards gauge-ripple}.gauge-ripple circle+circle{animation-delay:.45s}@keyframes gauge-ripple{0%{stroke-width:2.8px;opacity:.9;transform:scale(1)}to{stroke-width:1.1px;opacity:0;transform:scale(2.4)}}@property --g-a{syntax:"<angle>";inherits:false;initial-value:0deg}@property --g-b{syntax:"<angle>";inherits:false;initial-value:0deg}.gauge{aspect-ratio:1;--g-dark:color-mix(in srgb, var(--tone) 35%, var(--bg));--g-light:color-mix(in srgb, var(--tone) 90%, var(--bg));--g-over:color-mix(in srgb, var(--cool) 70%, var(--bg));width:100%;max-width:100%;position:relative}.gauge-svg{width:100%;height:100%;overflow:visible}.gauge-marker-layer{position:absolute;inset:0}.gauge-cool{--g-dark:color-mix(in srgb, var(--heat) 35%, var(--bg));--g-light:color-mix(in srgb, var(--heat) 90%, var(--bg))}.gauge-ready{--g-over:color-mix(in srgb, var(--ready) 70%, var(--bg))}.gauge-fill,.gauge-over{pointer-events:none;transition:--g-a var(--dur-live) linear, --g-b var(--dur-live) linear, opacity var(--dur-fast) var(--ease);border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(closest-side,#0000 77.5%,#000 77.7% 88.5%,#0000 88.7%);mask:radial-gradient(closest-side,#0000 77.5%,#000 77.7% 88.5%,#0000 88.7%)}.is-follow-frame .gauge-fill,.is-follow-frame .gauge-over{transition-duration:var(--dur-frame), var(--dur-frame), var(--dur-fast)}.gauge-fill{background:conic-gradient(from -135deg, var(--g-dark) 0deg, var(--g-light) var(--g-a), transparent var(--g-a))}.gauge-over{background:conic-gradient(var(--g-over) 0deg var(--g-b), transparent var(--g-b))}.gauge-fill.is-off,.gauge-over.is-off{opacity:0}.gauge-cap{fill:var(--g-dark)}.gauge-tick.is-minor{stroke:var(--tick-minor);stroke-width:1.8px}.gauge-bar{fill:none;stroke:var(--track);stroke-width:6px;stroke-linecap:round}.gauge-bar.is-value{stroke:var(--heat);transition:stroke-dasharray var(--dur-live) linear, opacity var(--dur-fast) var(--ease)}.gauge-symbol{fill:none;stroke:var(--text-dim);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.gauge-symbol.is-connected{stroke:var(--ready)}.gauge-symbol.is-off{stroke:var(--text-faint)}.is-warmup .gauge-marker{fill:color-mix(in srgb, var(--heat) 65%, var(--text))}.gauge-track{fill:none;stroke:var(--track);stroke-linecap:round}.gauge{--tone:var(--text-faint)}.gauge-heat{--tone:var(--heat)}.gauge-ready{--tone:var(--ready)}.gauge-cool{--tone:var(--cool)}.gauge-value{fill:none;stroke:var(--tone);stroke-linecap:round}.gauge-value.is-dash{stroke-dasharray:1 1;transition:stroke-dashoffset var(--dur-live) linear, opacity var(--dur-fast) var(--ease), stroke var(--dur) var(--ease)}.gauge-marker-turn{transform-origin:130px 130px;transition:transform var(--dur-live) linear, opacity var(--dur-fast) var(--ease)}.is-follow-frame .gauge-value.is-dash,.is-follow-frame .gauge-marker-turn{transition-duration:var(--dur-frame), var(--dur-fast), var(--dur)}.gauge-heat .gauge-value,.gauge-ready .gauge-value,.gauge-cool .gauge-value{filter:drop-shadow(0 0 4px color-mix(in srgb, var(--tone) 18%, transparent))}.gauge-marker{fill:var(--tone);transition:fill var(--dur) var(--ease)}.gauge-marker-cut{fill:var(--bg)}.gauge-tick{stroke:var(--text-dim);stroke-width:2.5px;stroke-linecap:round}.gauge-idle .gauge-tick{stroke:var(--text-faint)}.gauge-idle .gauge-temp{color:var(--text-dim)}.gauge-top{font-family:var(--font-label);font-size:var(--fs-xs);color:var(--text-dim);position:absolute;top:0;left:50%;transform:translate(-50%)}.gauge-spin{transform-origin:130px 130px;animation:1.4s linear infinite spin}.gauge-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;display:flex;position:absolute;inset:14%}.gauge-state{font-family:var(--font-label);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-state);text-transform:uppercase;color:var(--text-dim)}.gauge-heat .gauge-state{color:var(--heat)}.gauge-ready .gauge-state{color:var(--ready-text)}.gauge-cool .gauge-state{color:var(--cool-text)}.gauge-temp{font-family:var(--font-label);font-size:var(--fs-temp);font-weight:var(--fw-bold);line-height:var(--lh-none);letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap;align-items:flex-start;display:inline-flex}.gauge-unit{font-size:var(--fs-md);font-weight:var(--fw-medium);line-height:var(--lh-none);color:var(--text-dim);margin:.375rem 0 0 .1875rem}.gauge-sub{min-height:calc(var(--fs-sm) * var(--lh-text));font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}.gauge-value,.gauge-marker,.gauge-temp,.gauge-state{transition:opacity var(--dur-calm) var(--ease), filter var(--dur-calm) var(--ease), color var(--dur-calm) var(--ease)}.gauge.is-stale .gauge-value,.gauge.is-stale .gauge-marker{opacity:.4;filter:none}.gauge.is-stale .gauge-temp,.gauge.is-stale .gauge-state,.gauge-icon{color:var(--text-dim)}.gauge-ready .gauge-icon{color:var(--ready-text)}.stepper{align-items:center;gap:var(--sp-2);display:flex}.stepper-btn{width:var(--tap);height:var(--tap);background:var(--surface-2);color:var(--text);border:0;border-radius:50%;place-items:center;display:grid}.stepper-btn:active:not(:disabled){transform:scale(.94)}.stepper-btn:disabled{opacity:.4}.stepper-value{text-align:center;min-width:4.5rem;font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;white-space:nowrap;transition:color var(--dur) var(--ease)}.stepper-value.provisional{color:var(--text-dim)}.stepper-type{color:inherit;min-height:var(--tap);border-radius:var(--r-sm,.5rem);cursor:text;background:0 0;border:0;padding:0}.stepper-input{width:5.25rem;min-height:var(--tap);border-radius:var(--r-sm,.5rem);background:var(--surface-2);color:var(--text);text-align:center;font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;border:0}.curve{width:100%;height:3.5rem;display:block}.curve-grid{stroke:var(--line);stroke-width:1px;vector-effect:non-scaling-stroke}.curve-area{fill:var(--text);fill-opacity:.1}.curve-weight{fill:none;stroke:var(--text);stroke-width:2.2px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.curve-flow{fill:none;stroke:var(--cool);stroke-width:1.5px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.curve-ref{fill:none;stroke:var(--text-faint);stroke-width:1.5px;stroke-dasharray:5 3;vector-effect:non-scaling-stroke}.curve-temp{fill:none;stroke:var(--heat);stroke-width:1.2px;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.curve-cmp{fill:none;stroke-width:1.8px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.curve-cmp-0{stroke:var(--text);stroke-width:2.2px}.curve-cmp-1{stroke:var(--cool);stroke-dasharray:6 3}.curve-cmp-2{stroke:var(--text-dim);stroke-dasharray:1 3.5}.chart{gap:var(--sp-2);flex-direction:column;margin:0;display:flex}.chart svg{width:100%;height:auto;display:block;overflow:visible}.chart-label{fill:var(--text-dim);font-family:var(--font-label);font-variant-numeric:tabular-nums;font-size:13px}.live-shot .chart-label{font-size:11px}.chart-flow-label{fill:var(--cool-text)}.chart-temp-label{fill:var(--heat-text)}.chart-grid{stroke:var(--line);stroke-width:1px}.chart-axis{stroke:var(--text-faint);stroke-width:1px}.chart-pi-burst{fill:var(--cool);fill-opacity:.12}.chart-pi-pause{fill:var(--cool);fill-opacity:.06}.chart-stop{stroke:var(--text-dim);stroke-width:1px;stroke-dasharray:4 4}.chart-target{stroke:var(--text-dim);stroke-opacity:.8;stroke-width:1px;stroke-dasharray:2 3}.chart-target-label{fill:var(--accent-text);font-weight:var(--fw-semibold)}.chart-area{fill:var(--text);fill-opacity:.08}.chart-weight,.chart-flow,.chart-temp,.chart-other{fill:none;stroke-linejoin:round;stroke-linecap:round}.chart-weight{stroke:var(--text);stroke-width:2.5px}.chart-flow{stroke:var(--cool);stroke-width:2px}.chart-temp{stroke:var(--heat);stroke-width:2px;stroke-dasharray:5 4}.chart-other{stroke:var(--text);stroke-opacity:.4;stroke-width:1.5px;stroke-dasharray:5 4}.chart-other-flow{stroke:var(--cool)}.chart-other-temp{stroke:var(--heat)}.lanes{gap:var(--sp-2);flex-direction:column;min-width:0;margin:0;display:flex}.lanes-head{justify-content:space-between;align-items:baseline;gap:0 var(--sp-3);min-height:1.5rem;padding:0 var(--sp-1);flex-wrap:wrap;display:flex}.lanes-title{font-size:var(--fs-md);font-weight:var(--fw-medium)}.lanes-head>.title-info{flex:none}.lanes-values{font-size:var(--fs-sm);color:var(--text-dim);text-align:right;margin-left:auto}.lanes-plot{width:100%;min-width:0}.lanes-plot svg{display:block;overflow:visible}.lanes-plot svg.is-readable{cursor:crosshair;touch-action:pan-y}.lanes-plot svg:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:var(--r-sm)}.lanes text{font-family:var(--font-label);font-variant-numeric:tabular-nums;font-size:12px}.lane-legend{font-weight:var(--fw-semibold)}.lane-legend-line,.lane-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.lane-legend-line{stroke-width:2.5px}.lane-legend-line.is-dashed,.lane-line.is-dashed{stroke-linecap:butt;stroke-dasharray:6 3}.lane-legend-line.is-dotted,.lane-line.is-dotted{stroke-dasharray:2 3}.lane-line.is-faint{stroke-opacity:.45;stroke-dasharray:4 3}.lane-area{fill:var(--text);fill-opacity:.08}.lane-line.tone-text,.lane-legend-line.tone-text{stroke:var(--text)}.lane-line.tone-cool,.lane-legend-line.tone-cool{stroke:var(--cool)}.lane-line.tone-heat,.lane-legend-line.tone-heat{stroke:var(--heat)}.lane-line.tone-dim,.lane-legend-line.tone-dim{stroke:var(--text-dim)}.lane-dot.tone-text,.lane-cursor-dot.tone-text{fill:var(--text)}.lane-dot.tone-cool,.lane-cursor-dot.tone-cool{fill:var(--cool)}.lane-dot.tone-heat,.lane-cursor-dot.tone-heat{fill:var(--heat)}.lane-legend.tone-text,.lane-val.tone-text{fill:var(--text)}.lane-legend.tone-cool,.lane-val.tone-cool{fill:var(--cool-text)}.lane-legend.tone-heat,.lane-val.tone-heat{fill:var(--heat-text)}.lane-legend.tone-dim,.lane-val.tone-dim{fill:var(--text-dim)}.lanes .lane-val{font-family:var(--font-display);font-size:13px;font-weight:var(--fw-semibold)}.lanes .lane-val.is-weak{font-family:var(--font-label);font-size:12px;font-weight:var(--fw-regular);fill:var(--text-dim)}.lane-axis{stroke:var(--line);stroke-width:1px}.lane-tick,.lane-rule-label,.lane-mark-label,.lane-span-label{fill:var(--text-dim)}.lane-span{fill:var(--surface-2)}.lane-band{fill:var(--accent);fill-opacity:.16}.lane-band-label{fill:var(--accent-text)}.lane-rule{stroke:var(--text-dim);stroke-width:1px;stroke-dasharray:2 4}.lane-mark{stroke:var(--text-dim);stroke-width:1px;stroke-dasharray:3 3}.lane-bar{fill:var(--text-faint)}.lane-bar.is-off{fill:var(--danger)}.lane-bar.is-last{fill:var(--text)}.lane-cursor line{stroke:var(--text);stroke-width:1.5px}.lane-cursor-dot{stroke:var(--surface);stroke-width:2px}.lane-slot{fill:#0000;cursor:pointer}.lane-slot:focus-visible{fill:var(--selection);outline:none}.brand-mark{width:1.5rem;height:1.5rem}.brand-mark-track,.brand-mark-value{fill:none;stroke-width:2.6px;stroke-linecap:round}.brand-mark-track{stroke:var(--track)}.brand-mark-value{stroke:var(--heat)}.brand-mark-dot{fill:var(--text)}.machine-art .art-line{fill:none;stroke:var(--text);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.machine-art .art-body{fill:var(--surface);stroke:var(--text);stroke-width:2.2px;stroke-linejoin:round}.machine-art .art-display{fill:var(--display-bg);stroke:var(--text);stroke-width:2.2px}.machine-art .art-display-track,.machine-art .art-display-value{fill:none;stroke-width:3.2px;stroke-linecap:round}.machine-art .art-display-track{stroke:var(--display-track)}.machine-art .art-display-value{stroke:var(--heat)}.display-hint .dh-bg{fill:var(--display-bg)}.display-hint .dh-track{fill:none;stroke:var(--display-track);stroke-width:9px;stroke-linecap:round}.display-hint .dh-label{font-family:var(--font-label);font-size:17px;font-weight:var(--fw-semibold);letter-spacing:var(--tracking-state);fill:var(--heat);text-anchor:middle}.display-hint .dh-qr-bg{fill:var(--display-text)}.display-hint .dh-qr{fill:var(--display-bg)}.display-hint .dh-holes{fill:var(--display-text)}.display-hint .dh-code{font-family:var(--font-label);font-size:25px;font-weight:var(--fw-bold);letter-spacing:.02em;fill:var(--display-text);text-anchor:middle}.segmented{border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--line);background:0 0;gap:.125rem;padding:.1875rem;display:flex}.segment{min-width:0;min-height:calc(var(--tap) - .375rem);padding:0 var(--sp-1);border-radius:var(--r-pill);color:var(--text-dim);font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:var(--lh-ui);transition:transform var(--dur-fast-spatial) var(--spring-spatial), background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:0;flex:auto;position:relative}.segment:after{content:"";position:absolute;inset:-.1875rem 0}.segment-label{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.segment[aria-pressed=true]{background:var(--surface-3);color:var(--text-strong);font-weight:var(--fw-semibold)}.segment:active:not(:disabled){transform:scale(.97)}.segment:disabled{opacity:.5}.segment[aria-pressed=true]:disabled{background:var(--surface-3);color:var(--text-dim);opacity:1}.nav-list{flex-direction:column;display:flex}.nav-item+.nav-item{border-top:1px solid var(--line)}.nav-row{align-items:center;gap:var(--sp-3);width:100%;min-height:3.5rem;padding:var(--sp-2) 0;color:inherit;text-align:left;background:0 0;border:0;display:flex}.nav-row>.row-text{flex:1}.nav-row>.nav-icon{color:var(--text);flex:none}.nav-row:active{opacity:.7}.fact-row{gap:var(--sp-3);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;margin:0;display:grid}.fact-row.is-rows{row-gap:var(--sp-4);grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row}.fact{flex-direction:column;gap:.125rem;min-width:0;display:flex}.fact dt{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);overflow-wrap:anywhere}.fact dd{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-medium);line-height:var(--lh-tight);white-space:nowrap;margin:0}.bar{width:100%;height:var(--bar-h);border-radius:var(--r-pill);background:var(--track);color:var(--text-dim);appearance:none;border:0;display:block;overflow:hidden}.bar::-webkit-progress-bar{background:var(--track);border-radius:var(--r-pill)}.bar::-webkit-progress-value{background:var(--text-dim);border-radius:var(--r-pill);transition:width var(--dur) var(--ease)}.bar::-moz-progress-bar{background:var(--text-dim);border-radius:var(--r-pill)}.bar-due::-webkit-progress-value{background:var(--heat)}.bar-due::-moz-progress-bar{background:var(--heat)}.title-info{align-items:center;gap:.125rem;min-width:0;display:inline-flex;position:relative}.info-wrap{display:inline-flex}.info{width:var(--tap);height:var(--tap);color:var(--text-faint);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;margin:-.75rem -.75rem -.75rem -.375rem;padding:0;display:grid}.info svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;width:1.125rem;height:1.125rem}.info .info-dot{stroke-width:2.6px}.info.is-open{color:var(--text)}.info-pop{left:0;top:calc(100% + var(--sp-2));z-index:15;width:max-content;max-width:min(17.5rem,100vw - 3rem);padding:.625rem var(--sp-3);border-radius:var(--r-sm);background:var(--surface-3);color:var(--text);font-family:var(--font-label);font-size:var(--fs-sm);font-weight:var(--fw-regular);line-height:var(--lh-text);letter-spacing:0;text-transform:none;text-align:left;white-space:normal;box-shadow:var(--shadow-float);cursor:pointer;position:absolute}.info-pop:not([hidden]){transform-origin:var(--sp-3) 0;animation:fade-in var(--dur-effects) var(--spring-effects), pop-grow var(--dur-fast-spatial) var(--spring-spatial)}.info-pop[hidden]{display:none}@keyframes pop-grow{0%{transform:scale(.8)}}.note-line{align-items:flex-start;gap:var(--sp-2);font-size:var(--fs-sm);line-height:var(--lh-text);color:var(--text);margin:0;display:flex}.note-line>.icon{color:var(--text-dim);margin-top:.0625rem}.note-line.is-ok>.icon{color:var(--ready-text)}.note-line.is-split{padding-top:var(--sp-3);border-top:1px solid var(--line)}.pick{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);text-align:left;border:0;display:flex}button.pick:active{transform:scale(.99)}.pick-text{flex-direction:column;flex:1;min-width:0;display:flex}.pick-eyebrow{font-size:var(--fs-xs);letter-spacing:.1em;color:var(--text-faint)}.pick-title{font-size:var(--fs-md);font-weight:var(--fw-medium);line-height:var(--lh-tight);overflow-wrap:anywhere;margin-top:.125rem}.pick-action{flex:none;align-items:center;gap:.125rem;display:inline-flex}.rate{justify-content:space-between;align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.rate-label{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);flex:none}.segmented.is-compact{flex:none}.segmented.is-compact .segment{padding:0 var(--sp-2);flex:none}.row-danger{align-items:center;gap:var(--sp-3);border:0;border-top:1px solid var(--line);width:100%;min-height:3.5rem;color:var(--danger-text);font-weight:var(--fw-medium);text-align:left;background:0 0;padding:0;display:flex}.row-danger:disabled{color:var(--text-faint)}.icon-fill{fill:currentColor}.toggle{justify-content:space-between;align-items:center;gap:var(--sp-3);min-height:var(--tap);cursor:pointer;display:flex}.toggle>.row-text{flex:1}.toggle-input{opacity:0;width:1px;height:1px;position:absolute}.toggle-track{border:2px solid var(--text-faint);border-radius:var(--r-pill);background:var(--surface-3);width:3.25rem;height:2rem;transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);flex:none;position:relative}.toggle-track:after{content:"";background:var(--text-faint);width:1.5rem;height:1.5rem;transition:transform var(--dur-fast-spatial) var(--spring-spatial), background-color var(--dur-fast) var(--ease);border-radius:50%;position:absolute;top:.125rem;left:.125rem;transform:scale(.6667)}.toggle:active .toggle-track:after{transform:scale(1.1667)}.toggle-input:checked+.toggle-track{border-color:var(--accent);background:var(--accent)}.toggle-input:checked+.toggle-track:after{background:var(--on-accent);transform:translate(1.25rem)}.toggle:active .toggle-input:checked+.toggle-track:after{transform:translate(1.25rem)scale(1.1667)}.toggle-input:focus-visible+.toggle-track{outline:2px solid var(--focus);outline-offset:2px}.toggle:has(.toggle-input:disabled){cursor:not-allowed}.toggle-input:disabled+.toggle-track{opacity:.45}.toggle:has(.toggle-input:disabled):active .toggle-track:after{transform:scale(.6667)}.toggle:has(.toggle-input:disabled):active .toggle-input:checked+.toggle-track:after{transform:translate(1.25rem)}.toggle-input:disabled~.row-text{color:var(--text-dim)}.toggle:has(.toggle-input:disabled) .row-label{color:var(--text-dim)}.play{width:var(--tap);height:var(--tap);background:var(--surface-2);color:var(--text);border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.play .icon{width:1.25rem;height:1.25rem}.play .icon path{fill:currentColor}.play:active:not(:disabled){transform:scale(.95)}.play:disabled{opacity:.42}.play[aria-busy=true]:disabled{opacity:1;cursor:progress}.app{min-height:100dvh}.screen{gap:var(--gap-section);width:100%;max-width:var(--content-max);padding:calc(var(--sp-5) + var(--safe-top)) var(--gutter-right) calc(var(--sp-8) + var(--safe-bottom)) var(--gutter-left);flex-direction:column;margin:0 auto;display:flex}.has-tabbar .screen{padding-bottom:calc(var(--tabbar-h) + var(--sp-8) + var(--safe-bottom))}.stack{gap:var(--gap-card);flex-direction:column;display:flex}.row-between{justify-content:space-between;align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.divider{align-items:center;gap:var(--sp-3);font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.splash,.screen-loading{justify-content:center;align-items:center;gap:var(--sp-3);flex-direction:column;min-height:60dvh;display:flex}.splash{min-height:100dvh}.splash-mark{width:3.5rem;height:3.5rem;animation:fade-in .6s var(--ease)}.netbar{z-index:20;justify-content:center;align-items:center;gap:var(--sp-2);padding:calc(var(--sp-2) + var(--safe-top)) var(--gutter-right) var(--sp-2) var(--gutter-left);background:var(--surface-2);font-family:var(--font-label);font-size:var(--fs-sm);font-weight:var(--fw-semibold);margin:0;display:flex;position:sticky;top:0}.netbar-cloud_unreachable,.netbar-device_offline{background:var(--danger-soft);color:var(--danger-text)}.netbar+.screen{padding-top:var(--sp-3)}.login{gap:var(--sp-5)}.login-top{min-height:var(--tap);margin-bottom:calc(-1 * var(--sp-4));justify-content:flex-end;display:flex}.login-hero{align-self:center;width:min(10rem,46vw)}.login-mark{width:1.75rem;height:1.75rem}.login-word{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-semibold);letter-spacing:.05em}.login-intro{gap:var(--sp-2);flex-direction:column;display:flex}.login-passkey{color:var(--text-dim);font-family:var(--font-label);font-size:var(--fs-sm);font-weight:var(--fw-medium);letter-spacing:0;align-self:center}.login-code{gap:var(--sp-5);padding-top:var(--sp-4)}.first-run-art{width:min(9.5rem,44vw);margin-top:var(--sp-2);align-self:center}.first-run-plus{color:var(--heat)}.first-run-text{gap:var(--sp-2);text-align:center;flex-direction:column;display:flex}.first-run-steps{gap:var(--sp-3);margin-top:var(--sp-2);flex-direction:column;display:flex}.steps{gap:var(--sp-3);flex-direction:column;display:flex}.steps li{align-items:center;gap:var(--sp-3);font-size:var(--fs-md);color:var(--text);display:flex}.step-num{background:var(--surface-2);width:1.75rem;height:1.75rem;color:var(--text);font-family:var(--font-display);font-weight:var(--fw-semibold);border-radius:50%;flex:none;place-items:center;display:grid}.pair-screen{gap:var(--sp-4);flex-direction:column;flex:1;display:flex}.pair-center{text-align:center;padding-bottom:var(--sp-8);justify-content:center;align-items:center}.pair-step{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);font-variant-numeric:tabular-nums}.pair-display{align-self:center;width:8.5rem}.pair-lead{text-align:center;color:var(--text-dim)}.pair-actions{gap:var(--sp-2);flex-direction:column;width:100%;margin-top:auto;display:flex}.pair-scan-help{gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface);font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);align-items:flex-start;display:flex}.pair-scan-help .icon{color:var(--text)}.pair-found{align-items:center;gap:var(--sp-2);text-align:center;flex-direction:column;display:flex}.pair-found .machine-art{width:7.5rem}.pair-question{font-weight:var(--fw-medium);text-align:center}.pair-ring{width:min(11rem,52vw)}.checklist{gap:var(--sp-3);text-align:left;flex-direction:column;display:flex}.checklist li{align-items:center;gap:var(--sp-3);color:var(--text-dim);display:flex}.checklist li.is-done{color:var(--text-dim)}.checklist li.is-done .icon{color:var(--ready-text)}.checklist li.is-now{color:var(--text);font-weight:var(--fw-medium)}.machine-switch{gap:var(--sp-2);padding-bottom:var(--sp-1);display:flex;overflow-x:auto}.machine-switch-item{min-height:2.25rem;padding:0 var(--sp-4);box-shadow:inset 0 0 0 1px var(--line);color:var(--text);font-size:var(--fs-sm);font-weight:var(--fw-medium);background:0 0;border:0;border-radius:.625rem;flex:none;position:relative}.machine-switch-item[aria-pressed=true]{background:var(--accent-c);box-shadow:none;color:var(--on-accent-c)}.machine-gauge-block{align-items:center;gap:var(--sp-2);flex-direction:column;display:flex}.machine-gauge{align-self:center;width:min(16.25rem,72vw)}.heat-line{margin-top:calc(-1 * var(--sp-6));font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);text-align:center;text-wrap:balance}.heat-line b{color:var(--text);font-weight:var(--fw-semibold)}.gauge-temp.is-empty{color:var(--text-faint)}.machine-gauge-block+.quick{margin-top:calc(var(--sp-1) - var(--gap-section))}.quick{gap:var(--sp-3);grid-template-columns:1fr 1fr;display:grid}.quick .btn{padding:0 var(--sp-3)}.quick-results{justify-content:center;gap:var(--sp-1) var(--sp-4);margin-top:calc(var(--gap-tight) - var(--gap-section));font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);flex-wrap:wrap;display:flex}.quick-result.is-empty{display:none}.quick-results.is-empty,.recipe-result:empty{height:0;overflow:hidden}.quick-results.is-empty{margin-top:calc(-1 * var(--gap-section))}.recipe-chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.recipe-setpoint{padding-top:var(--gap-card);border-top:1px solid var(--line)}.recipe-result{margin-top:calc(var(--gap-tight) - var(--gap-card));font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);text-align:right}.recipe-result:empty{margin-top:calc(-1 * var(--gap-card))}.account-id{align-items:center;gap:var(--sp-3);display:flex}.avatar-lg{background:var(--accent-c);width:3.5rem;height:3.5rem;color:var(--on-accent-c);font-size:1.375rem}.account-id-text{flex-direction:column;min-width:0;display:flex}.account-mail{font-weight:var(--fw-medium);overflow-wrap:anywhere}.account-row{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-3) 0;border-block:1px solid var(--line);display:flex}.devices{flex-direction:column;display:flex}.devices li{column-gap:var(--sp-2);border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;padding:.875rem 0;display:grid}.devices li:first-child{border-top:0}.device-name{font-weight:var(--fw-medium);overflow-wrap:anywhere}.devices li .hint{grid-column:1}.devices li .link-btn{grid-area:1/2/span 2;align-self:center}.devices-card{padding-block:var(--sp-3)}.row{justify-content:space-between;align-items:center;gap:var(--sp-3);min-height:var(--tap);display:flex}.row-stack{flex-direction:column;align-items:stretch}.row-check{flex-direction:column;align-items:stretch;gap:0}.row-check>.hint,.row-check+.hint{padding-left:var(--check-indent)}.row-check>.hint{margin-top:-.625rem}.row-check+.hint{margin-top:calc(var(--gap-tight) - var(--gap-card))}.row-check:not(:has(>.hint))+.hint{margin-top:calc(-.625rem - var(--gap-card))}.row:not(.row-check)+.hint{margin-top:calc(var(--gap-tight) - var(--gap-card))}.row-text{flex-direction:column;gap:.125rem;min-width:0;display:flex}.row-label{font-weight:var(--fw-medium);overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.row-value{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;flex:none}.row-control{align-items:center;gap:var(--sp-2);flex:none;display:flex}.row-stack .row-control{flex-wrap:wrap}.row-stack .row-control>.field,.row-stack .row-control>.segmented{flex:100%;min-width:0}.choice{gap:var(--sp-2);flex-wrap:wrap;display:flex}.choice-item{position:relative}.choice-item:after,.machine-switch-item:after{content:"";position:absolute;inset:-.25rem 0}.choice-item{min-height:2.25rem;padding:0 var(--sp-3);font-size:var(--fs-sm);box-shadow:inset 0 0 0 1px var(--line);color:var(--text);font-weight:var(--fw-medium);background:0 0;border:0;border-radius:.625rem}.choice-item[aria-pressed=true]{background:var(--accent-c);box-shadow:none;color:var(--on-accent-c)}.choice-item:disabled{opacity:.5}.choice-item[aria-pressed=true]:disabled{background:var(--surface-3);color:var(--text);opacity:1}.list{flex-direction:column;display:flex}.list-row,.list-block{border-top:1px solid var(--line)}.list-row:first-child,.list-block:first-child{border-top:0}.list-row{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;display:flex}.list-block{gap:var(--gap-card);padding:var(--sp-2) 0;flex-direction:column;display:flex}.list-block:has(>[aria-expanded=true]){padding-bottom:var(--sp-3)}.list-head,.shot-line{align-items:center;gap:var(--sp-3);width:100%;min-height:var(--tap);color:inherit;text-align:left;background:0 0;border:0;padding:0;display:flex}.list-head>.row-text{flex:1}.row-link{min-height:var(--tap);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;padding:0}.list-value{text-align:right;margin-left:auto}.list-head>.row-label+.list-value{flex:1}.row-chip{vertical-align:.0625rem;margin-inline-start:var(--sp-2)}.card-head-actions{align-items:center;gap:var(--sp-4);margin-block:calc((1.5rem - var(--tap)) / 2);display:inline-flex}.list-when{white-space:nowrap;flex:none;align-self:flex-start;padding-top:.125rem}.list-chevron{flex:none;width:1.125rem;height:1.125rem}.shot-line{align-items:center;column-gap:var(--sp-3);grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"main taste chev""sub taste chev";align-content:center;row-gap:.125rem;display:grid}.shot-main{align-items:baseline;gap:var(--sp-3);white-space:nowrap;grid-area:main;min-width:0;display:flex}.shot-main>b{font-size:var(--fs-xl);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.shot-main>.shot-t{min-width:3rem}.shot-main>.shot-w{min-width:4.25rem}.shot-main>small{font-family:var(--font-label);font-size:var(--fs-sm)}.shot-sub{grid-area:sub;min-width:0}.shot-taste{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);grid-area:taste}.shot-taste.is-good{color:var(--ready-text)}.shot-line>.list-chevron{grid-area:chev}.list-block:has(>.shot-row){padding:0}.shot-row{align-items:center;column-gap:var(--sp-3);width:100%;min-height:3.25rem;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:2.75rem 3rem minmax(0,1fr) auto auto;padding:0;display:grid}.shot-wcell{align-items:baseline;column-gap:var(--sp-2);flex-wrap:wrap;min-width:0;display:flex}.shot-row.is-choosing .shot-off{display:none}.shot-clock{font-size:var(--fs-sm);color:var(--text-dim)}.shot-row>b,.shot-wcell>b{font-size:var(--fs-xl);font-weight:var(--fw-medium);line-height:var(--lh-tight);white-space:nowrap}.shot-off{font-size:var(--fs-sm);color:var(--danger-text);white-space:nowrap}.shot-row>.shot-taste{grid-area:auto}.shot-row>.list-chevron{color:var(--text-dim)}.shot-bars{gap:var(--sp-2);margin-top:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid var(--line);flex-direction:column;display:flex}.sched-head{gap:.375rem}.sched-time{font-size:var(--fs-2xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.toggle.is-bare{min-height:var(--tap)}.preset-tag{margin-bottom:.125rem;display:block}.recipe-changed{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:0 var(--sp-2);font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);display:flex}.stop-box{align-items:center;gap:var(--sp-3);padding:var(--sp-3) .875rem;border-radius:var(--r-md);background:var(--surface-2);display:flex}.stop-box>.icon{color:var(--text-dim)}.stop-box-label{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);flex:1}.stop-box-value{font-size:var(--fs-2xl);font-weight:var(--fw-semibold)}.value-chip{box-sizing:border-box;min-width:4.5rem;min-height:var(--tap);padding:0 var(--sp-3);background:var(--surface-2);color:var(--text);font-family:var(--font-display);font-size:var(--fs-xl);text-align:center;border:0;border-radius:.625rem;flex:none}input.value-chip{width:auto}.value-chip:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.rows-card{gap:0}.rows-card>*+*{border-top:1px solid var(--line)}.rows-card>.card-head{padding-bottom:var(--sp-1)}.rows-card>.card-head+*,.rows-card>.pi-hint{border-top:0}.rows-card>.row,.rows-card>.row-toggle,.rows-card>.collapse>.collapse-inner>.row,.rows-card>.collapse>.collapse-inner>.row-toggle{min-height:3.5rem}.rows-card>.pi-hint{margin-top:calc(-1 * var(--sp-2))}.shot-arrows{gap:var(--sp-2);display:inline-flex}.shot-arrows .icon-btn{background:var(--surface-2)}.shot-arrows .icon-btn:disabled{opacity:.38}.shot-curve{padding:var(--sp-4) var(--sp-3) var(--sp-3)}.phase{flex-direction:column;gap:.375rem;display:flex}.phase-head{justify-content:space-between;align-items:baseline;display:flex}.phase-value{font-weight:var(--fw-medium)}.phase .bar::-webkit-progress-value{background:var(--text-dim)}.phase .bar::-moz-progress-bar{background:var(--text-dim)}.fact-grid{gap:var(--sp-3) var(--sp-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.fact-grid .fact dt{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim)}.fact-grid .fact dd{font-size:var(--fs-xl);font-weight:var(--fw-medium);line-height:var(--lh-tight);margin:0}.page-actions .danger-link{color:var(--danger-text);align-self:center}.figures{align-items:baseline;gap:var(--sp-1) var(--sp-4);line-height:var(--lh-snug);grid-template-columns:max-content minmax(0,1fr);margin:0;display:grid}.figure{display:contents}.figure dt{color:var(--text-dim);font-family:var(--font-label);font-size:var(--fs-sm)}.figure dd{font-variant-numeric:tabular-nums;margin:0}.figure-note{color:var(--text-dim);font-family:var(--font-label);font-size:var(--fs-sm);margin-inline-start:var(--sp-2)}.figure-group>dt,.figure-group>dd{margin-top:var(--sp-2)}.shot-figures{align-items:baseline;gap:var(--sp-1) var(--sp-4);font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-medium);flex-wrap:wrap;display:flex}.shot-figures b{font-weight:var(--fw-medium)}.shot-figure{align-items:baseline;gap:var(--sp-1);white-space:nowrap;display:inline-flex}.shot-figure>small{font-family:var(--font-label);font-size:var(--fs-sm)}.dev{color:var(--text-dim)}.dev.is-off{color:var(--danger-text)}.dev.is-ok{color:var(--ready-text)}.pills{justify-content:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.note-row{align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);flex-wrap:wrap;display:flex}.note-row:has(.banner-warn){background:var(--warn-soft)}.note-row>.banner{background:0 0;flex:12rem;padding:0}.note-row>.btn{flex:none;margin-left:auto}.restart-bar{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-md);background:var(--warn-soft);font-family:var(--font-label);font-size:var(--fs-sm);font-weight:var(--fw-semibold);display:flex}.toast{left:50%;bottom:calc(var(--tabbar-h) + var(--sp-3) + var(--safe-bottom));z-index:30;align-items:center;gap:var(--sp-2);width:max-content;max-width:min(28rem,100% - 2rem);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-md);background:var(--surface-3);color:var(--text);font-family:var(--font-label);font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:var(--lh-snug);box-shadow:var(--shadow-sheet);animation:toast-in var(--dur-fast-effects) var(--spring-effects);margin:0;display:flex;position:fixed;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)scale(.8)}}.toast-error{padding-right:var(--sp-1);background:var(--sheet-bg);box-shadow:inset 0 0 0 1px var(--danger), var(--shadow-sheet)}.toast-error>.icon{color:var(--danger-text)}.toast-close{width:var(--tap);height:var(--tap);margin-block:calc(-1 * var(--sp-2));color:var(--text-dim);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.toast.is-empty{display:none}.care-bar{gap:var(--sp-1);flex-direction:column;display:flex}.hint.is-due{color:var(--text);font-weight:var(--fw-semibold)}.history-day>.label,.day-label{font-size:var(--fs-sm);letter-spacing:0;text-transform:none}.history{width:100%;height:6rem;display:block}.bars{aspect-ratio:300/70;width:100%;height:auto;display:block}.history-chart{padding-right:2.25rem;position:relative}.history-grid{stroke:var(--line);stroke-width:1px;vector-effect:non-scaling-stroke}.history-axis{width:2rem;font-family:var(--font-label);font-size:var(--fs-xs);color:var(--text-dim);margin:0;padding:0;list-style:none;position:absolute;inset:0 0 0 auto}.history-axis li{position:absolute;right:0;transform:translateY(-50%)}.history-temp,.history-target,.history-power{fill:none;vector-effect:non-scaling-stroke}.history-temp{stroke:var(--heat);stroke-width:2px}.history-target{stroke:var(--text-faint);stroke-width:1.2px;stroke-dasharray:4 3}.history-power{stroke:var(--cool);stroke-width:1px;stroke-opacity:.6}.bars-time{fill:var(--text-faint)}.bars-weight{fill:var(--text-dim)}.legend{gap:var(--sp-1) var(--sp-4);font-family:var(--font-label);font-size:var(--fs-xs);color:var(--text-dim);flex-wrap:wrap;display:flex}.legend span:before{content:"";vertical-align:middle;border-radius:var(--r-pill);background:var(--text-faint);width:.75rem;height:.1875rem;margin-right:.375rem;display:inline-block}.legend .legend-temp:before{background:var(--heat)}.legend .legend-weight:before{background:var(--text)}.legend .legend-power:before,.legend .legend-flow:before{background:var(--cool)}.legend .chart-temp-key:before,.chart .legend .legend-temp:before{background:repeating-linear-gradient(90deg, var(--heat) 0 .25rem, transparent .25rem .4375rem)}.chart .legend .legend-weight:before{background:var(--text)}.legend .legend-stop:before{background:repeating-linear-gradient(90deg, var(--text-dim) 0 .1875rem, transparent .1875rem .375rem)}.legend .legend-target:before{background:repeating-linear-gradient(90deg, var(--text-dim) 0 .125rem, transparent .125rem .3125rem)}.legend .legend-pi:before{background:var(--cool);opacity:.3;border-radius:.125rem;height:.625rem}.legend .legend-other:before{background:repeating-linear-gradient(90deg, var(--text) 0 .25rem, transparent .25rem .4375rem);opacity:.6}.legend .cmp-key-0:before{background:var(--text)}.legend .cmp-key-1:before{background:repeating-linear-gradient(90deg, var(--cool) 0 .25rem, transparent .25rem .375rem)}.legend .cmp-key-2:before{background:repeating-linear-gradient(90deg, var(--text-dim) 0 .125rem, transparent .125rem .3125rem)}.compare-legend{padding:0 var(--sp-1)}.history-count{align-items:baseline;gap:.625rem;margin:0;display:flex}.history-count>b{font-size:var(--fs-2xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.history-count>span{font-weight:var(--fw-medium)}.history-count>.history-compare{font-family:var(--font-label);font-size:var(--fs-sm);font-weight:var(--fw-regular);color:var(--text-dim);text-align:right;flex:1}.history-verdict{padding-top:var(--sp-3);border-top:1px solid var(--line)}.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem 0;display:grid}.cal-head{font-family:var(--font-label);font-size:var(--fs-xs);color:var(--text-dim);text-align:center}.cal-day{border-radius:var(--r-sm);min-width:0;height:2.75rem;color:var(--text);font-family:var(--font-display);font-size:var(--fs-sm);transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:padding-box content-box;border:0;flex-direction:column;justify-content:center;align-items:center;gap:.1875rem;padding:0 .1875rem;display:flex}.cal-day.is-today{box-shadow:inset 0 0 0 1px var(--line)}.cal-day.is-on{background:var(--accent-c);color:var(--on-accent-c);box-shadow:none}.cal-day:disabled{color:var(--text-faint)}.cal-dots{min-height:var(--fs-xs);font-size:var(--fs-xs);letter-spacing:1px;color:var(--accent-text);line-height:1}.cal-day.is-on .cal-dots{color:var(--on-accent-c)}.lens-in{animation:fade-in var(--dur-effects) var(--spring-effects)}.history-filters{gap:var(--sp-3);flex-direction:column;display:flex}.history-summary{font-weight:var(--fw-medium)}.history-day{margin-top:var(--sp-2)}.shot-line.is-choosing{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"box main taste""box sub taste"}.compare-box{grid-area:box;align-self:center}.compare-box.is-on{background:var(--accent);box-shadow:none}.compare-box.is-on:after{content:"";border:solid var(--on-accent);border-width:0 2px 2px 0;width:.375rem;height:.6875rem;margin:.25rem auto 0;display:block;transform:rotate(45deg)}.compare-bar{bottom:calc(var(--tabbar-h) + var(--safe-bottom) + var(--sp-3));justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--surface-3);box-shadow:var(--shadow-float);display:flex;position:sticky}.compare-chart{padding-right:3rem;position:relative}.compare-chart .history-axis{width:2.75rem}.history-axis .axis-top{top:7.5%}.history-axis .axis-bottom{top:92.5%}.compare-time{margin-top:calc(var(--gap-tight) - var(--gap-card));font-family:var(--font-label);font-size:var(--fs-xs);color:var(--text-dim);justify-content:space-between;padding-right:3rem;display:flex}.compare-table{border-collapse:collapse;width:100%;font-family:var(--font-label);font-size:var(--fs-sm)}.compare-table th,.compare-table td{padding:var(--sp-2) var(--sp-1);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.compare-table th[scope=row]{color:var(--text-dim);font-weight:var(--fw-medium)}.compare-table thead th{font-weight:var(--fw-semibold)}.compare-table td{font-variant-numeric:tabular-nums}.compare-table td.is-diff{color:var(--text-strong);font-weight:var(--fw-bold)}.curve.curve-lg{height:8rem}.live-shot{gap:var(--sp-4);flex-direction:column;display:flex}.gauge-amount{font-size:var(--fs-xl);font-weight:var(--fw-medium);white-space:nowrap}.gauge-of{font-family:var(--font-label);font-size:var(--fs-sm);font-weight:var(--fw-regular);color:var(--text-dim)}.gauge-of.is-ratio{font-family:var(--font-display);font-size:inherit}.live-steps{gap:var(--sp-2);margin:calc(-1 * var(--sp-2)) var(--sp-2) 0;font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);grid-template-columns:repeat(3,minmax(0,1fr));padding:0;list-style:none;display:grid}.live-steps.is-2{grid-template-columns:repeat(2,minmax(0,1fr))}.live-steps li{flex-direction:column;gap:.375rem;display:flex}.live-steps li.is-current{color:var(--text);font-weight:var(--fw-medium)}.live-steps .bar{background:var(--surface-3);height:.25rem}.live-steps .bar::-webkit-progress-bar{background:var(--surface-3)}.live-steps .bar::-webkit-progress-value{background:var(--heat)}.live-steps .bar::-moz-progress-bar{background:var(--heat)}.live-chart{padding:var(--sp-4) var(--sp-3) var(--sp-3)}.live-chart-head{padding:0 var(--sp-1);justify-content:space-between;align-items:baseline;display:flex}.live-chart-wait{height:var(--live-chart-h,12rem)}.label-dim{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim)}.live-chart-temp{font-size:var(--fs-xl);font-weight:var(--fw-medium)}.live-chart-temp .unit,.shot-usual{font-family:var(--font-label);font-size:var(--fs-sm);font-weight:var(--fw-regular);color:var(--text-dim)}.shot-usual.is-off{color:var(--danger-text)}.tip-box{gap:var(--sp-3);padding:.875rem var(--sp-4);border-radius:var(--r-md);background:var(--accent-c);color:var(--on-accent-c);flex-direction:column;display:flex}.tip-box>p{margin:0;line-height:1.4}.tip-box .btn-secondary{background:var(--on-accent-c);box-shadow:none;color:var(--accent-c)}.live-goal{text-align:center;font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-medium);color:var(--text-dim)}.scale-line{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim)}.scale-line:before{content:"";width:.4375rem;height:.4375rem;margin-right:var(--sp-2);vertical-align:.0625rem;background:var(--text-faint);border-radius:50%;display:inline-block}.scale-line.is-on:before{background:var(--ready)}.is-low{color:var(--danger-text)}.status-line{font-weight:var(--fw-medium)}.plan-window{align-items:end;gap:var(--sp-2);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;display:grid}.plan-window>.btn{width:var(--tap);min-height:var(--tap);background:var(--surface-2);color:var(--text);margin-bottom:.1875rem;padding:0}.counts{gap:var(--sp-2);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.counts div{flex-direction:column-reverse;align-items:center;gap:.125rem;display:flex}.counts dt{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim)}.counts dd{line-height:var(--lh-tight);font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-medium);margin:0}.howto{gap:var(--sp-2);padding-left:var(--sp-5);font-family:var(--font-label);color:var(--text-dim);flex-direction:column;list-style:decimal;display:flex}.field-area{min-height:4.5rem;padding-block:var(--sp-3);line-height:var(--lh-text);resize:none}select.field-input{appearance:auto}.diag-text{max-height:22rem;padding:var(--sp-3);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-dim);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-sm);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.45;overflow:auto}.recovery{gap:var(--sp-2);flex-direction:column;display:flex}.recipe-glance{gap:var(--sp-3);flex-direction:column;display:flex}.recipe-bean{overflow-wrap:anywhere}.recipe-bean .hint{font-weight:var(--fw-regular)}.scale-row{justify-content:space-between;align-items:center;gap:var(--sp-3);min-height:var(--tap);margin-bottom:calc(-1 * var(--sp-2));padding-top:var(--sp-1);border-top:1px solid var(--line);display:flex}.scale-row>.btn-ghost{min-width:var(--tap);margin-right:calc(-1 * var(--sp-2));padding:0 var(--sp-2);flex:none}.nav-card{padding-block:var(--sp-1)}.shot-page-body{gap:var(--gap-section);flex-direction:column;display:flex}.page-actions{align-items:center;gap:var(--sp-2);padding-top:var(--sp-2);flex-direction:column;display:flex}.stack-tight{gap:var(--sp-2);flex-direction:column;display:flex}.field-pair{gap:var(--sp-3);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.note-card{gap:var(--sp-3);padding:var(--card-pad);border-radius:var(--r-lg);background:var(--accent-c);color:var(--on-accent-c);flex-direction:column;display:flex}.note-card-body{align-items:center;gap:.875rem;display:flex}.note-card-icon{width:var(--tap);height:var(--tap);background:color-mix(in srgb, var(--on-accent-c) 12%, transparent);border-radius:50%;flex:none;place-items:center;display:grid}.note-card-text{min-width:0;font-size:var(--fs-md);line-height:var(--lh-snug);flex:1;margin:0}.note-card-title{font-weight:var(--fw-semibold);margin:0}.note-card-sub{margin:.125rem 0 var(--sp-2);font-family:var(--font-label);font-size:var(--fs-sm);opacity:.8}.note-card .bar{background:color-mix(in srgb, var(--on-accent-c) 18%, transparent);height:.25rem}.note-card .bar::-webkit-progress-bar{background:color-mix(in srgb, var(--on-accent-c) 18%, transparent)}.note-card .bar::-webkit-progress-value{background:var(--on-accent-c)}.note-card .bar::-moz-progress-bar{background:var(--on-accent-c)}.note-card .btn-secondary{background:var(--on-accent-c);box-shadow:none;color:var(--accent-c)}.note-card .btn-secondary:disabled{opacity:.5}.note-card .btn-secondary .spinner{border-color:color-mix(in srgb, var(--accent-c) 30%, transparent);border-top-color:var(--accent-c)}.live-bar{left:50%;bottom:calc(var(--tabbar-h) + var(--safe-bottom) + var(--sp-3));z-index:9;align-items:center;gap:var(--sp-3);width:min(calc(var(--content-max) - 1.5rem), calc(100% - 1.5rem));min-height:3.5rem;padding:var(--sp-2) var(--sp-4);background:var(--surface-3);box-shadow:var(--shadow-float);color:var(--text);border-radius:1.125rem;text-decoration:none;display:flex;position:fixed;transform:translate(-50%)}.tab-screen:has(.live-bar){padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 6rem)}.live-bar-ring{flex:none;width:1.75rem;height:1.75rem;transform:rotate(-90deg)}.live-bar-track,.live-bar-value{fill:none;stroke-width:4px}.live-bar-track{stroke:var(--surface-2)}.live-bar-value{stroke:var(--heat);stroke-linecap:round}.live-bar-water .live-bar-value{stroke:var(--cool)}.live-bar-text{min-width:0;line-height:var(--lh-tight);flex-direction:column;flex:1;display:flex}.live-bar-title{font-weight:var(--fw-semibold)}.live-bar-sub{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim)}.live-bar-value-text{font-weight:var(--fw-medium);white-space:nowrap;flex:none}.fact-row.is-key dd{align-items:baseline;gap:0 var(--sp-1);font-size:var(--fs-2xl);font-weight:var(--fw-semibold);white-space:normal;flex-wrap:wrap;display:flex}.fact-row.is-key dd>small{font-family:var(--font-label);font-size:var(--fs-sm);font-weight:var(--fw-regular);white-space:nowrap}.legend-max{color:var(--text);font-weight:var(--fw-semibold);margin-left:.3125rem}.machine-tile{padding-bottom:0}.machine-tile>.field-error:empty{display:none}.device-head{align-items:center;gap:.875rem;display:flex}.device-icon{background:var(--surface-2);border-radius:.875rem;flex:none;place-items:center;width:3rem;height:3rem;display:grid}.tags{gap:var(--sp-2);flex-wrap:wrap;display:flex}.plan,.week{gap:var(--sp-2);flex-direction:column;display:flex}.week-row{align-items:center;gap:var(--sp-2);width:100%;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:2rem repeat(2,minmax(0,1fr));padding:0;display:grid}button.week-row{min-height:var(--tap)}.week-head{min-height:0}.week-col{font-family:var(--font-label);font-size:var(--fs-xs);color:var(--text-dim);text-align:center}.week-day{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-dim)}.week-row.is-today .week-day{color:var(--text)}.week-slot{height:2rem;box-shadow:inset 0 0 0 1px var(--line);color:var(--text-faint);font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;border-radius:.5rem;justify-content:center;align-items:center;display:flex}.week-slot.is-on{background:var(--accent-c);box-shadow:none;color:var(--on-accent-c)}.week-row.is-today .week-slot.is-on{outline:2px solid var(--text);outline-offset:2px}.week-row[aria-expanded=true] .week-day{color:var(--text-strong)}.week-edit,.week-item>.stack{padding:var(--sp-3) 0 var(--sp-2)}.week-legend{align-items:center;gap:var(--sp-2);margin:var(--sp-1) 0 0;font-family:var(--font-label);font-size:var(--fs-xs);color:var(--text-dim);display:flex}.week-key{background:var(--accent-c);border-radius:.1875rem;width:.875rem;height:.625rem}.due-item,.program{gap:var(--sp-2);padding:var(--sp-3) 0;border-top:1px solid var(--line);flex-direction:column;display:flex}.due-card>.card-head+.due-item,.programs-card>.card-head+.program{border-top:0;padding-top:0}.due-card,.programs-card{gap:0}.due-card>.card-head,.programs-card>.card-head{margin-bottom:var(--sp-2)}.programs-card>.disclosure{margin-top:0}.due-item>.row>.row-control>.btn-ghost{margin-right:calc(-1 * var(--sp-2));padding:0 var(--sp-2);font-size:var(--fs-sm)}.sheet-head.sheet-head-start{justify-content:space-between;gap:var(--sp-3);display:flex}.sheet-head-start>.sheet-title{min-width:0;font-size:var(--fs-title);text-align:left;flex:1}.account-sub{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.account-actions .nav-row>.icon:first-child{color:var(--text)}.nav-row:disabled{opacity:.5}.row-aside{font-family:var(--font-label);font-size:var(--fs-sm);color:var(--text-dim);flex:none}.sheet-sheet .sheet-body{gap:var(--sp-4)}.sheet-sheet .card{background:var(--surface)}.chips{scrollbar-width:none;margin-inline:calc(-1 * var(--gutter-left)) calc(-1 * var(--gutter-right));padding-inline:var(--gutter-left) var(--gutter-right);gap:.375rem;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip-select{min-height:2.25rem;box-shadow:inset 0 0 0 1px var(--line);color:var(--text);font-size:var(--fs-sm);font-weight:var(--fw-medium);white-space:nowrap;border-radius:.625rem;flex:none;align-items:center;gap:.125rem;padding:0 .375rem 0 .625rem;display:inline-flex;position:relative}.chip-select.is-on{background:var(--accent-c);box-shadow:none;color:var(--on-accent-c)}.chip-select-input{opacity:0;cursor:pointer;width:100%;height:100%;font-size:var(--fs-input);position:absolute;inset:0}.chip-select:has(.chip-select-input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}.history-stats .history-summary{font-size:var(--fs-xl);font-weight:var(--fw-semibold)}.live-done{margin:calc(-1 * var(--sp-2)) 0 0;font-weight:var(--fw-medium);text-align:center}.program>.status-line{font-family:var(--font-label);font-size:var(--fs-sm);margin:0}.ai-shot{align-items:flex-start;gap:var(--sp-2);flex-direction:column;display:flex}.ai-card{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-sm);background:var(--surface);flex-direction:column;align-self:stretch;display:flex}.ai-text{font-size:var(--fs-md);line-height:var(--lh-text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.ai-text.is-live{color:var(--text-dim)}.ai-links{gap:0 var(--sp-5);flex-wrap:wrap;display:flex}.ai-error{color:var(--danger-text);font-size:var(--fs-sm);line-height:var(--lh-snug);flex-direction:column;align-items:flex-start;gap:0;display:flex}.ai-error p{margin:0}.ai-apply{align-items:flex-start;gap:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--line);flex-direction:column;display:flex}.ai-changes{gap:var(--gap-tight);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;transition:color var(--dur-calm) var(--ease);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ai-apply.is-sending .ai-changes{color:var(--text-dim)}.ai-chat-shot{margin-top:calc(-1 * var(--sp-3));text-align:center}.ai-msgs{gap:var(--sp-3);overscroll-behavior:contain;flex-direction:column;max-height:min(55dvh,30rem);display:flex;overflow-y:auto}.ai-msg{gap:var(--sp-2);max-width:88%;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);flex-direction:column;display:flex}.ai-msg p{line-height:var(--lh-text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.ai-msg-u{background:var(--surface-3);align-self:flex-end}.ai-msg-a{align-self:flex-start}.ai-msg .ai-apply{border-top-color:var(--surface-3)}.ai-chat-foot{align-items:flex-end;gap:var(--sp-2);display:flex}.ai-chat-input{min-width:0;min-height:var(--tap);resize:none;flex:auto;max-height:7.5rem}.ai-connected{align-items:center;gap:var(--sp-1);color:var(--ready-text);display:inline-flex}.ai-grinder{align-items:flex-start;gap:var(--sp-2);flex-direction:column;display:flex}.ai-sources a{color:var(--accent-text);font-weight:var(--fw-semibold)}.ai-label{align-items:center;gap:var(--sp-2);display:inline-flex}
