:root{--brand:#883a5e;--mul:#2f6b4f;--mul-deep:#245840;--mul-soft:#e7f0ea;--cream:#fbfaf6;--paper:#fff;--ink:#1b1a16;--ink-soft:#6c6a60;--indigo:#2a4e69;--line:#eae7de;--line-strong:#c9c3b4;--good:#2f6b4f;--good-soft:#e7f0ea;--warn:#9a6714;--warn-soft:#f6ead2;--bad:#9e3a2c;--bad-soft:#f5e1dc;--radius:12px;--display:"Futura","Century Gothic","Avenir Next",ui-sans-serif,system-ui,sans-serif;--body:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--cream);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{font:inherit}.shell{display:flex;align-items:stretch;min-height:100vh}.content{flex:1 1;min-width:0;display:flex;flex-direction:column}.content>main{width:100%;max-width:1040px;margin:0 auto;padding:6px 28px 72px}.sidebar{flex:none;width:232px;background:var(--mul-deep);color:#fff;display:flex;flex-direction:column;padding:20px 14px;position:-webkit-sticky;position:sticky;top:0;height:100vh;transition:width .16s ease}.sidebar.col{width:74px}.side-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 4px 22px}.side-word{color:#fff;font-family:var(--display);font-weight:800;letter-spacing:.06em;font-size:22px}.side-mk b,.side-word b{color:#e79ac0}.side-mk{display:none;color:#fff;font-family:var(--display);font-weight:800;font-size:20px}.side-toggle{background:hsla(0,0%,100%,.14);border:none;color:#fff;width:28px;height:28px;border-radius:8px;font-size:16px;line-height:1;flex:none}.side-toggle:hover{background:hsla(0,0%,100%,.28)}.side-nav{display:flex;flex-direction:column;gap:14px;flex:1 1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:hsla(0,0%,100%,.25) transparent}.side-section{display:flex;flex-direction:column;gap:3px}.side-section-label{color:#94b8a7;font-size:9.5px;font-weight:750;line-height:1;letter-spacing:.08em;text-transform:uppercase;padding:1px 12px 5px}.side-link{display:flex;align-items:center;gap:12px;color:#cfe0d6;text-decoration:none;font-size:13.5px;font-weight:600;padding:11px 12px;border-radius:10px;white-space:nowrap}.side-ic{width:18px;text-align:center;font-size:15px;opacity:.9;flex:none}.side-link:hover{background:hsla(0,0%,100%,.09);color:#fff}.side-link.act{background:hsla(0,0%,100%,.16);color:#fff}.side-nav::-webkit-scrollbar{width:6px}.side-nav::-webkit-scrollbar-track{background:transparent}.side-nav::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.22);border-radius:3px}.side-nav::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.34)}.side-foot{margin-top:auto;flex:none;display:flex;flex-direction:column;gap:7px;align-items:stretch;padding:10px 0 0;margin-inline:4px;border-top:1px solid hsla(0,0%,100%,.13)}.side-foot .side-link{padding:9px 12px}.side-who{display:flex;align-items:center;gap:8px;padding:0 12px;min-width:0}.side-foot .rolechip{background:hsla(0,0%,100%,.16);color:#fff}.side-name{color:#a9cbbc;font-size:12px;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-signout{align-self:flex-start;margin-left:12px;padding:5px 0;color:#cfe0d6;background:transparent;border:0;font-size:12.5px;font-weight:600}.side-signout:hover{color:#fff}.sidebar.col .side-lbl,.sidebar.col .side-name,.sidebar.col .side-section-label,.sidebar.col .side-word{display:none}.sidebar.col .side-mk{display:inline}.sidebar.col .side-head{flex-direction:column;gap:12px}.sidebar.col .side-nav{gap:3px}.sidebar.col .side-link{justify-content:center;padding:12px 0}.sidebar.col .side-foot{align-items:center}.sidebar.col .side-who{justify-content:center;padding:0}.ah-back{flex:none;white-space:nowrap;background:none;border:none;padding:6px 0;font-family:var(--display);font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--mul-deep)}.ah-back:hover{color:var(--ink)}.ah-back-home{display:none}.apphead{width:100%;max-width:1040px;margin:0 auto;padding:16px 28px 2px}.ah-row,.ah-search{display:flex;gap:10px;align-items:center}.ah-search{position:relative;max-width:520px;flex:1 1;min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:11px 15px}.ah-search:focus-within{border-color:var(--mul)}.ah-mag{color:var(--ink-soft);font-size:18px}.ah-search input{border:none;outline:none;background:transparent;font-size:14.5px;flex:1 1;min-width:0;color:var(--ink)}.ah-list{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:60;max-height:340px;overflow-y:auto;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px -14px rgba(0,0,0,.24)}.ah-item{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;border:none;background:transparent;padding:11px 15px;font-size:14px;color:var(--ink)}.ah-item:hover{background:var(--mul-soft)}.ah-tag{font-size:11px;text-transform:uppercase;letter-spacing:.04em}.ah-empty,.ah-tag{color:var(--ink-soft)}.ah-empty{padding:12px 15px;font-size:13px}.nb-wrap{position:relative;flex:none}.nb-btn{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:6px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:8px 12px;font-size:15px;color:var(--ink)}.nb-btn:hover{border-color:var(--mul)}.nb-n{color:var(--mul);font-weight:700;font-size:15px}.nb-list{position:absolute;top:calc(100% + 6px);right:0;z-index:60;width:min(340px,86vw);max-height:380px;overflow-y:auto;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px -14px rgba(0,0,0,.24)}.nb-item{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;border:none;border-bottom:1px solid var(--line);background:transparent;padding:11px 15px;font-size:14px;color:var(--ink)}.nb-item:last-child{border-bottom:none}.nb-item:hover{background:var(--mul-soft)}.nb-item.unread .nb-t{color:var(--mul-deep);font-weight:700}.nb-clear{color:var(--mul-deep);font-weight:600;font-size:13px}.nb-row{display:flex;align-items:stretch;border-bottom:1px solid var(--line)}.nb-row:last-child{border-bottom:none}.nb-row:hover{background:var(--mul-soft)}.nb-row .nb-item{border-bottom:none}.nb-row .nb-item:hover,.nb-x{background:transparent}.nb-x{border:none;padding:0 14px;font-size:17px;line-height:1;color:var(--ink);opacity:.4;cursor:pointer}.nb-x:hover{opacity:1}.nb-b{font-size:12.5px}.nb-b,.nb-when{color:var(--ink-soft)}.nb-when{font-size:11px}.home-hi{font-size:27px;font-weight:800;letter-spacing:-.01em;margin:26px 0 0}.home-note{color:var(--ink-soft);font-size:14px;margin:9px 0 0}.home-list{margin-top:26px;max-width:540px}.home-row{display:flex;align-items:center;justify-content:space-between;padding:18px 4px;border-bottom:1px solid var(--line);color:var(--ink)}.home-row:last-of-type{border-bottom:none}.home-row:hover .hr-t{color:var(--mul-deep)}.hr-t{font-size:17px;font-weight:600}.hr-a{color:var(--mul);font-size:16px}.home-soon{margin-top:24px;color:var(--ink-soft);font-size:12.5px}.menu-fab,.side-scrim{display:none}@media (max-width:760px){.sidebar{position:fixed;left:0;top:0;z-index:90;height:100dvh;width:min(78vw,300px);transform:translateX(0);transition:transform .18s ease;box-shadow:0 0 40px rgba(0,0,0,.25)}.sidebar.col{width:min(78vw,300px);transform:translateX(-105%)}.side-scrim.on{inset:0;z-index:80;background:rgba(27,26,22,.42)}.menu-fab,.side-scrim.on{display:block;position:fixed}.menu-fab{left:14px;bottom:14px;z-index:70;min-height:46px;padding:0 18px;border:none;border-radius:10px;background:var(--mul-deep);color:#fff;font-family:var(--display);font-size:15.5px;font-weight:700;letter-spacing:.04em;box-shadow:0 8px 22px -8px rgba(0,0,0,.4)}.menu-fab.off,.side-ic{display:none}.side-link{font-size:15.5px;padding:13px 14px}.side-toggle{width:44px;height:44px;font-size:0}.side-toggle:after{content:"✕";font-size:20px}.side-signout{font-size:15px;padding:12px 14px;min-height:46px;margin-left:0}.apphead,.content>main{padding-left:18px;padding-right:18px}.ah-back-home{display:inline-block}.ah-back{min-height:44px;font-size:14px}.tbl{display:block;overflow-x:auto}.ah-row{flex-wrap:wrap}.ah-back{order:1}.nb-wrap{order:2;margin-left:auto}.ah-search{order:3;flex-basis:100%;max-width:none}}.topbar{display:flex;align-items:center;gap:14px;padding:14px 0 12px;border-bottom:1px solid var(--line);margin-bottom:26px;flex-wrap:nowrap}.wordmark{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:.04em;text-transform:uppercase;line-height:1;flex:none}.wordmark b{color:var(--brand);font-weight:700}.topbar nav{display:flex;gap:1px;flex-wrap:nowrap;margin-left:auto;min-width:0;flex:0 1 auto;overflow-x:auto;scrollbar-width:none}.topbar nav::-webkit-scrollbar{display:none}.navlink{font-family:var(--display);font-size:11.5px;font-weight:700;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap;padding:7px 7.5px;border-radius:8px;color:var(--ink-soft)}.navlink:hover{background:var(--mul-soft);color:var(--mul-deep)}.navlink.active{background:var(--mul);color:var(--paper)}.whoami{font-size:12px;color:var(--ink-soft);display:flex;align-items:center;gap:8px;flex:none;white-space:nowrap}.whoami .small{max-width:12ch;overflow:hidden;text-overflow:ellipsis}@media (max-width:1240px){.whoami .small{display:none}}.rolechip{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;background:var(--indigo);color:var(--paper);border-radius:999px;padding:3px 9px}.rolechip,h1{font-weight:700}h1{font-family:var(--display);font-size:24px;letter-spacing:.02em;margin:4px 0}.sub{color:var(--ink-soft);font-size:13.5px;margin:0 0 18px}h2{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.06em;text-transform:uppercase;margin:26px 0 10px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl th{text-align:left;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);padding:10px 12px;background:var(--cream)}.tbl td,.tbl th{border-bottom:1px solid var(--line)}.tbl td{padding:12px;vertical-align:middle}.tbl tr:last-child td{border-bottom:none}.tbl tr.rowlink:hover td{background:var(--mul-soft);cursor:pointer}.tbl tr.grocery-cat td{background:color-mix(in srgb,var(--mul-soft) 58%,var(--paper));color:var(--mul-deep);font-family:var(--display);font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding-top:9px;padding-bottom:8px}.tbl tr.grocery-cat span{color:var(--ink-soft);font-family:var(--body);font-size:12px;font-weight:500;letter-spacing:0;margin-left:8px;text-transform:none}.pur-det summary{cursor:pointer;color:var(--mul-deep);font-size:12.5px;font-weight:600;padding:10px 0;min-height:44px;line-height:24px;list-style:none}.pur-det summary:before{content:"▸ "}.pur-det[open] summary:before{content:"▾ "}.pur-det-line{font-size:12.5px;color:var(--ink-soft);padding:2px 0 6px 14px}.num{text-align:right;white-space:nowrap}.mono,.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.muted{color:var(--ink-soft)}.small{font-size:12.5px}.pill{display:inline-block;font-size:11px;font-weight:600;border-radius:0;padding:0;white-space:nowrap;background:none}.pill.good{color:var(--good)}.pill.warn{color:var(--warn)}.pill.bad{color:var(--bad)}.pill.mul{color:var(--mul-deep);font-weight:600;font-style:normal}a.recipe-link{text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--mul) 45%,transparent);padding-bottom:1px}a.recipe-link:hover{color:var(--mul);border-bottom-color:var(--mul)}.tbl .in-inline+.pill,.tbl .pill+.in-inline{margin-left:6px}.btn{font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;background:var(--mul);color:var(--paper);border:none;border-radius:9px;padding:10px 16px}.btn:hover{background:var(--mul-deep)}.btn:disabled{opacity:.45;cursor:default}.btn.quiet{background:#ece7d9;color:var(--ink);border:1px solid var(--line-strong)}.btn.sm{padding:6px 10px;font-size:11px}.text-action{padding:8px 2px;background:transparent;border:0;color:var(--mul-deep);font-size:13px;font-weight:650}.text-action:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft)}.in{border:1px solid var(--line-strong);border-radius:9px;padding:9px 11px;background:var(--cream);color:var(--ink);width:100%}.in:focus{outline:none;border-color:var(--mul);box-shadow:0 0 0 3px var(--mul-soft)}.in.num-in{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.in-doc{min-height:360px;resize:vertical;line-height:1.65;padding:14px 16px}.in-inline{width:auto;min-width:36px;max-width:100%;border:none;border-radius:4px;padding:3px 4px;background:var(--cream);box-shadow:inset 0 0 0 1px var(--line-strong);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink);font:inherit}.in-inline:hover{background:color-mix(in srgb,var(--mul-soft) 55%,transparent)}.in-inline:focus{outline:none;background:var(--mul-soft);box-shadow:inset 0 -2px 0 var(--mul)}.in-inline.dirty{background:var(--mul-soft);box-shadow:inset 0 -2px 0 var(--warn)}.in-name,select.in-inline{text-align:left}.in-name{width:100%;min-width:0}.unit-select{min-width:92px}.in-inline::placeholder{color:color-mix(in srgb,var(--ink-soft) 40%,transparent)}.in::placeholder{color:color-mix(in srgb,var(--ink-soft) 55%,transparent)}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.grid2{grid-template-columns:1fr 1fr;grid-gap:12px}.grid2,.grid3{display:grid;gap:12px}.grid3{grid-template-columns:repeat(3,1fr);grid-gap:12px}@media (max-width:720px){.grid2,.grid3{grid-template-columns:1fr}}.spread{justify-content:space-between;align-items:center;flex-wrap:wrap}.spread,.stack{display:flex;gap:12px}.stack{flex-direction:column}.scroll-x{overflow-x:auto}.scroll-x::-webkit-scrollbar{height:8px}.scroll-x::-webkit-scrollbar-track{background:transparent}.scroll-x::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}.scroll-x::-webkit-scrollbar-thumb:hover{background:var(--ink-soft)}@media screen and (max-width:760px){.tbl.glance-rows,.tbl.glance-rows tbody{display:block;width:auto;overflow:visible}.tbl.glance-rows thead{display:none}.tbl.glance-rows tr{display:flex;align-items:baseline;gap:8px;padding:17px 14px;border-bottom:1px solid var(--line)}.tbl.glance-rows td.glance-name,.tbl.glance-rows td:first-child{flex:1 1 auto}.tbl.glance-rows tr:last-child{border-bottom:none}.tbl.glance-rows td{display:none;border:none;padding:0}.tbl.glance-rows td.glance-name,.tbl.glance-rows td.glance-v,.tbl.glance-rows td[colspan]{display:block}.tbl.glance-rows td.glance-name,.tbl.glance-rows td:first-child{min-width:0;text-align:left;font-size:17px;font-weight:600;line-height:1.3}.tbl.glance-rows tr:has(td.glance-name) td:first-child:not(.glance-name){display:none;flex:none}.tbl.glance-rows td:first-child:not(.glance-name):not([colspan]){display:block;flex:1 1 auto}.tbl.glance-rows td.glance-v{flex:none;text-align:right;font-size:15px;color:var(--ink-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tbl.stack-rows.reading td.plate-detail{display:none}.tbl.stack-rows,.tbl.stack-rows tbody,.tbl.stack-rows td,.tbl.stack-rows tr{display:block;width:auto;overflow:visible}.tbl.stack-rows thead{display:none}.tbl.stack-rows tr{display:flex;flex-direction:column;padding:14px 14px 12px;border-bottom:1px solid var(--line)}.tbl.stack-rows tr:last-child{border-bottom:none}.tbl.stack-rows td{border:none;padding:0;text-align:left}.tbl.stack-rows td.stack-title,.tbl.stack-rows td:first-child:not([data-label]){font-size:16px;font-weight:600;margin-bottom:6px}.tbl.stack-rows td.stack-title{order:-1}.tbl.stack-rows td[data-label]{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0;font-size:13.5px}.tbl.stack-rows td[data-label]:before{content:attr(data-label);flex:none;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.tbl.stack-rows td[data-label]:empty{display:none}.tbl.stack-rows tr.blk{flex-direction:row;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px}.tbl.stack-rows tr.blk .blk-k{font-size:14px;margin-bottom:0}.tbl.stack-rows tr.blk .blk-v{font-size:15px}.tbl.stack-rows tr.blk,.tbl.stack-rows tr.q-row{background:color-mix(in srgb,var(--mul-soft) 32%,var(--paper))}.tbl.stack-rows tr.q-row{background:color-mix(in srgb,var(--mul-soft) 45%,var(--paper))}.tbl.stack-rows tr.blk.first{border-top:2px solid var(--mul)}.tbl.stack-rows tr.blk td,.tbl.stack-rows tr.blk.first td,.tbl.stack-rows tr.q-row td{background:none;border-top:none}}.draftbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-4px 0 10px;padding:10px 12px;border:1px solid var(--line);border-left:3px solid var(--warn);background:color-mix(in srgb,var(--mul-soft) 52%,var(--paper))}.draftbar span{color:var(--ink);font-size:13px;font-weight:600;margin-right:auto}.edit-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.edit-warning{color:var(--warn);font-size:12px;font-weight:600;max-width:260px}.tile{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.tile .k{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.tile .v{font-size:24px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:4px}.tile .v .unit{font-size:12px;color:var(--ink-soft);font-weight:500}.tile.accent{border-top:3px solid var(--mul)}.yield-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.yield-summary .tile .small{margin:4px 0 0}.yield-review-note{margin:12px 0 0;padding:10px 12px;border-left:3px solid var(--warn);background:color-mix(in srgb,var(--mul-soft) 48%,var(--paper));color:var(--ink-soft);font-size:13px}.yield-filter{width:230px}@media (max-width:980px){.yield-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.yield-summary{grid-template-columns:1fr}.yield-filter{width:100%}}.login-wrap{min-height:82vh;display:flex;align-items:center;justify-content:center}.login-card{width:360px;max-width:92vw;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:28px}.login-band{height:6px;background:var(--mul);border-radius:999px 999px 0 0;margin:-28px -28px 22px}.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--paper);font-size:13px;border-radius:10px;padding:10px 16px;z-index:100}.actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:12px;gap:12px;margin:6px 0 8px}.action{position:relative;display:block;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:16px 16px 15px;transition:border-color .12s,transform .06s}.action:hover{border-color:var(--mul);transform:translateY(-1px)}.action.primary{border-left:4px solid var(--mul)}.action.primary:hover{border-color:var(--mul)}.action-t{font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:.01em}.action-s{color:var(--ink-soft);font-size:13px;margin-top:4px;max-width:34ch}.action-go{position:absolute;top:14px;right:15px;color:var(--mul);font-size:18px;font-weight:700}.action.soon{background:var(--cream);border-style:dashed;opacity:.72}.action.soon .action-t{color:var(--ink-soft);font-weight:700}.grouphead{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:none;padding:14px 16px;text-align:left}.grouphead:hover{background:var(--mul-soft)}.grouphead .chev{color:var(--mul);font-size:12px;width:12px}.grouphead .gname{font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:.04em;text-transform:uppercase}.grouphead .gcount{color:var(--ink-soft);font-size:12.5px}.combo{position:relative}.combo-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;background:var(--paper);border:1px solid var(--line);border-radius:10px;max-height:240px;overflow-y:auto;box-shadow:0 8px 22px rgba(34,26,18,.12)}.combo-item{padding:8px 12px;font-size:13.5px;cursor:pointer;display:flex;justify-content:space-between;gap:10px}.combo-item.hi,.combo-item:hover{background:var(--mul-soft)}.combo-item .tag{font-size:11px;color:var(--indigo);font-weight:600}.chef-overlay{position:fixed;inset:0;z-index:60;background:rgba(34,26,18,.45);overflow-y:auto;padding:4vh 16px;display:flex;align-items:flex-start;justify-content:center}.chef-modal{background:var(--paper);border:1px solid var(--line);border-radius:14px;width:100%;max-width:720px;box-shadow:0 18px 48px rgba(34,26,18,.25)}.chef-actions{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--cream);border-radius:14px 14px 0 0}.chef-card{padding:24px 28px 30px}.chef-card .tbl th{background:var(--paper)}.menu-card{--menu-serif:var(--font-cormorant),"Cormorant Garamond","EB Garamond",Garamond,serif;padding:58px 48px;text-align:center;font-family:var(--menu-serif);color:#1a1a1a;background:#fcf7f1;aspect-ratio:127/178;width:min(100%,480px);margin:28px auto;display:flex;flex-direction:column;justify-content:center;box-shadow:0 10px 34px rgba(34,26,18,.14);position:relative}.menu-card.mc-dl{aspect-ratio:99/210;width:min(100%,330px);padding:40px 26px}.menu-card.mc-a5{aspect-ratio:148/210;width:min(100%,440px)}.menu-card.mc-dl .mc-menu{font-size:22px}.menu-card.mc-dl .mc-name{font-size:15px}.menu-card.mc-dl .mc-item{font-size:13.5px}.menu-card.mc-dl .mc-desc{font-size:12px}.menu-card:before{content:"";position:absolute;inset:13px;pointer-events:none;border:1px solid rgba(26,26,26,.55)}.mc-title{margin:0;font-family:var(--menu-serif);font-weight:500;font-size:11px;line-height:1.2;letter-spacing:.42em;text-indent:.42em}.mc-menu,.mc-title{text-transform:uppercase}.mc-menu{margin:14px 0 0;font-weight:400;font-size:27px;line-height:1.15;letter-spacing:.08em;text-indent:.08em;color:#1a1a1a}.mc-section{margin:34px 0 0;font-weight:700;font-size:10.5px;letter-spacing:.34em;text-indent:.34em;text-transform:uppercase;color:#000}.mc-rule{height:0;margin:0;background:none;border:none}.mc-dish{margin-top:30px}.mc-name{margin:0;font-family:inherit;font-weight:500;text-transform:none;font-size:16.5px;line-height:1.45;letter-spacing:.02em}.mc-desc{max-width:46ch;margin:6px auto 0;font-style:italic;font-weight:400;font-size:13px;line-height:1.55;letter-spacing:.01em;color:#55504a;text-align:center}.mc-item{margin:14px 0 0;font-weight:400;font-size:15px;line-height:1.5;letter-spacing:.02em;color:#1a1a1a}.mc-desc+.mc-item,.mc-name+.mc-item{margin-top:16px}@keyframes share-flash{0%,to{background:transparent}15%,60%{background:var(--mul-soft)}}.share-flash{animation:share-flash 2.2s ease-in-out;border-radius:8px}@media (prefers-reduced-motion:reduce){.share-flash{animation:none;background:var(--mul-soft)}}.share-send{position:-webkit-sticky;position:sticky;bottom:0;z-index:2;margin:14px -16px -16px;padding:12px 16px;background:var(--paper)}.share-list,.share-send{border-top:1px solid var(--line)}.share-list{list-style:none;margin:0;padding:0}.share-list li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 2px;border-bottom:1px solid var(--line);font-size:13px}.share-who{font-weight:650;min-width:120px}.share-state{flex:1 1;min-width:200px}.mc-line{position:relative}.mc-arrange{position:absolute;right:-4px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;gap:2px;opacity:0;transition:opacity .12s;font-family:var(--body);letter-spacing:0}.mc-line:focus-within .mc-arrange,.menu-card:hover .mc-line .mc-arrange{opacity:1}@media (hover:none){.mc-arrange{opacity:1}}.mc-move{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);border-radius:6px;width:22px;height:22px;line-height:1;font-size:12px;cursor:-webkit-grab;cursor:grab}.mc-move:hover:not(:disabled){background:var(--mul-soft);color:var(--mul-deep);border-color:var(--mul)}.mc-move:disabled{opacity:.3;cursor:default}.mc-course{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin-left:4px;white-space:nowrap}@media print{.mc-arrange{display:none!important}}.mc-price{margin:34px 0 0;font-weight:500;font-size:10.5px;letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;color:#1a1a1a}@media (max-width:720px){.menu-card{padding:40px 24px 44px}.mc-title{font-size:26px}}.ws{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-gap:20px;gap:20px;align-items:start}.ws .ws-col>h2:first-child{margin-top:0}@media (max-width:720px){.ws{grid-template-columns:1fr}.ws .tbl{font-size:15.5px}.ws .tbl td{padding:13px 10px}.ws .btn.sm{padding:9px 13px}}.spec{padding:4px 16px 6px}.spec-row{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.spec-row:last-of-type{border-bottom:none}.spec-k{flex:none;width:110px;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.spec-v{font-size:14px;flex:1 1;min-width:0}.spec-note{margin:0;padding:2px 0 10px;font-size:11.5px;color:var(--ink-soft)}.cost-foot{border-top:1px solid var(--line);padding:0 16px 12px;background:var(--paper)}.cost-total{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--mul-soft) 45%,var(--paper));margin:0 -16px;padding:8px 16px}.cost-units{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 24px;gap:0 24px}.cost-units .u{display:flex;flex-direction:column}.cost-units .uh{font-family:var(--display);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);padding:8px 0 4px}.cost-units .uh,.u-row{border-bottom:1px solid var(--line)}.u-row{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:6px 0}.u-row span:first-child{color:var(--ink-soft)}.cost-cat{margin-top:0;padding:6px 0;border-bottom:1px solid var(--line)}.tbl.xl td,.tbl.xl th{border:1px solid var(--line)}.tbl.xl thead th{border-top:none;padding:5px 9px}.tbl.xl td:first-child,.tbl.xl th:first-child{border-left:none}.tbl.xl td:last-child,.tbl.xl th:last-child{border-right:none}.tbl.xl td{padding:3px 9px;font-size:13px;line-height:1.35;vertical-align:middle;height:27px}.tbl.xl tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--mul-soft) 65%,var(--paper))}.tbl.xl .in-inline{padding:1px 4px;font-size:13px}.tbl.xl .xl-proc{min-width:250px}.tbl.xl th:first-child{width:30%}.tbl.xl th:nth-child(2){width:14%}.tbl.xl th.xl-proc{width:28%}.tbl.xl td.xl-proc{vertical-align:top;padding:0;background:var(--paper);height:1px}.xl-proc-edit{display:block;width:100%;height:100%;min-height:300px;border:none;outline:none;resize:vertical;background:transparent;padding:12px 14px;font-family:inherit;font-size:13.5px;line-height:1.7;color:var(--ink)}.xl-proc-edit::placeholder{color:color-mix(in srgb,var(--ink-soft) 55%,transparent)}.xl-proc-edit:focus{background:color-mix(in srgb,var(--mul-soft) 25%,transparent)}.xl-proc-view{padding:12px 14px}.xl-ing{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.xl-del{border:none;background:transparent;padding:4px;margin-left:2px;cursor:pointer;color:var(--ink-soft);opacity:.25;font-size:13px;line-height:1}.inv-edit tr:hover .xl-del,.rb-ing tr:hover .xl-del,.tbl.xl tr:hover .xl-del{opacity:.7}.xl-del:hover{opacity:1!important;color:var(--bad)}.tbl.xl .xl-delcol{width:28px;text-align:center;padding-left:4px;padding-right:4px}.xl-step{display:grid;grid-template-columns:1.7em 1fr;grid-column-gap:2px;column-gap:2px;font-size:13px;line-height:1.6;color:var(--ink);margin-bottom:14px;break-inside:avoid;page-break-inside:avoid}.xl-step b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tbl.xl td.xl-proc .xl-step:last-child{margin-bottom:0}.xl-proc-editbtn{margin-top:12px}.xl-method-in{width:100%;border:none;border-radius:4px;background:transparent;font:inherit;font-size:12.5px;line-height:1.5;color:var(--ink);padding:2px 4px;resize:none;overflow:hidden}.xl-method-in:hover{background:color-mix(in srgb,var(--mul-soft) 55%,transparent)}.xl-method-in:focus{outline:none;background:var(--mul-soft);box-shadow:inset 0 -2px 0 var(--mul)}.xl-method-in::placeholder{color:color-mix(in srgb,var(--ink-soft) 40%,transparent)}.xl-step b{color:var(--mul);margin-right:0;font-weight:700}.xl-foot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-top:1px solid var(--line);font-size:13.5px}.xl-foot .spec{padding:2px 10px 8px}.xl-foot .spec-row{padding:5px 0;gap:10px;border-bottom:1px solid var(--line)}.xl-foot .spec-note{padding-top:5px}.xl-foot .cost-foot{border-top:none;border-left:1px solid var(--line);padding:0 10px 8px}.xl-foot .cost-total{background:color-mix(in srgb,var(--mul-soft) 65%,var(--paper));border-bottom:1px solid var(--line);padding:6px 10px;margin:0 -10px 6px;font-size:14px}.xl-foot .cost-units{gap:14px}.xl-foot .u-row{font-size:12.5px;padding:4px 0;border-bottom:1px solid var(--line)}.xl-foot .u-row:last-child{border-bottom:none}.xl-foot .cost-cat{margin:4px 0 0;padding:5px 0 0;border-top:none}@media (max-width:720px){.xl-foot{grid-template-columns:1fr}.xl-foot .cost-foot{border-left:none;border-top:1px solid var(--line)}}.cook-view{position:fixed;inset:0;z-index:70;background:var(--paper);overflow-y:auto;padding:14px 18px 60px}.cook-inner{max-width:660px;margin:0 auto}.cook-top{position:-webkit-sticky;position:sticky;top:0;display:flex;justify-content:flex-end;padding:6px 0 10px;background:var(--paper);z-index:1}.cook-close{padding:13px 24px;font-size:14px}.cook-title{font-size:34px;line-height:1.15;margin:6px 0}.cook-sub{font-size:17px;color:var(--ink-soft);margin:0 0 10px}.cook-h{font-family:var(--display);font-size:14px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;margin:26px 0 6px}.cook-ing{list-style:none;margin:0;padding:0}.cook-ing li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:13px 0;border-bottom:1px solid var(--line);font-size:19px;line-height:1.4}.cook-ing .amt{font-weight:700;text-align:right}.cook-ing .q{font-weight:400;font-size:15px;color:var(--ink-soft);white-space:nowrap}.cook-method{margin:0;padding-left:1.7em}.cook-method li{font-size:19px;line-height:1.7;margin-bottom:24px;padding-left:2px}.cook-method li:last-child{margin-bottom:0}.cook-method li::marker{color:var(--mul);font-weight:700}.cook-h-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.cook-reset{flex:none}.cook-step{display:flex;align-items:flex-start;gap:14px;width:100%;min-height:48px;margin:-6px 0 -6px -8px;padding:6px 8px;background:none;border:none;border-radius:10px;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation}.cook-step:active{background:var(--mul-soft)}.cook-check{flex:none;width:30px;height:30px;margin-top:4px;display:flex;align-items:center;justify-content:center;border:2px solid var(--ink-soft);border-radius:8px;font-size:19px;font-weight:700;line-height:1;color:var(--paper)}.cook-step.done .cook-check{background:var(--good);border-color:var(--good)}.cook-step.done .cook-step-text{text-decoration:line-through;opacity:.45}.cook-step-text{flex:1 1}.cook-notes{font-size:15px}.cook-note-empty{margin:0;color:var(--ink-soft)}.cook-note{padding:12px 0;border-bottom:1px solid var(--line)}.cook-note p{margin:0 0 3px;font-size:17px;line-height:1.5}.cook-note-by{color:var(--ink-soft)}.cook-note-add{margin-top:14px;display:grid;grid-gap:10px;gap:10px;justify-items:start}.cook-note-in{font-size:16px;line-height:1.5;padding:12px;resize:vertical}.cook-note-save{padding:14px 26px;font-size:13px;min-height:48px}@media (min-width:900px){.cook-inner{max-width:760px}.cook-title{font-size:40px}.cook-ing li,.cook-method li{font-size:21px}.cook-note p{font-size:19px}}.method-list.book li{margin-bottom:16px;line-height:1.75}.cost-sheet-foot{display:flex;gap:26px;flex-wrap:wrap;margin-top:14px;padding-top:10px;border-top:1px solid var(--line);font-size:13.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cost-sheet-foot b{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);margin-right:6px}.method-list{padding:16px 16px 16px 40px;margin:0;font-size:14.5px}.method-list li{margin-bottom:10px;line-height:1.55}.method-list li::marker{color:var(--mul);font-weight:700}.print-only{display:none}@media print{body{background:#fff}.apphead,.no-print,.sidebar,.toast,.topbar{display:none!important}.shell{min-height:0}.content>main{padding-bottom:0}.print-only{display:block;margin-bottom:10px}.card,.tbl th{border-color:#bbb}.tbl th{background:#fff}.tbl tr.grocery-cat td{background:#fff;color:#000;border-top:1px solid #999}main:not(.print-prices) .prc{display:none!important}.in-inline{border:none!important;background:transparent!important}.rb-proc-edit,.xl-proc-edit{display:none!important}.cook-method li,.method-list li,.rb-step,.xl-step{break-inside:avoid;page-break-inside:avoid}.rb-step b,.xl-step b{color:#000!important}.method-list li::marker{color:#000!important}.method-list,.rb-proc-body,.xl-proc-view{orphans:2;widows:2}body.chef-printing .apphead,body.chef-printing .sidebar,body.chef-printing main>:not(.chef-overlay){display:none!important}body.chef-printing .shell{display:block;min-height:0}body.chef-printing .content>main{padding:0;max-width:none}body.chef-printing *{visibility:hidden}body.chef-printing .chef-card,body.chef-printing .chef-card *{visibility:visible}body.chef-printing .chef-overlay{position:static;display:block;overflow:visible;padding:0;background:none}body.chef-printing .chef-modal{border:none;border-radius:0;box-shadow:none;max-width:none;width:auto}body.chef-printing .chef-card{padding:0}body.chef-printing .chef-card .tbl th{background:#fff}body.chef-printing .menu-card{box-sizing:border-box;margin:36mm auto 0;aspect-ratio:auto;background:#fcf7f1;box-shadow:none;print-color-adjust:exact;-webkit-print-color-adjust:exact;display:flex;flex-direction:column;justify-content:center;break-inside:avoid;page-break-inside:avoid}body.chef-printing .menu-card.mc-dl{width:99mm;min-height:210mm;padding:16mm 10mm}body.chef-printing .menu-card.mc-a5{width:148mm;min-height:210mm;padding:20mm 17mm}body.chef-printing .menu-card.mc-dl:before{inset:5mm}body.chef-printing .mc-dl .mc-menu{font-size:14.5pt}body.chef-printing .mc-dl .mc-name{font-size:10pt}body.chef-printing .mc-dl .mc-item{font-size:9pt;margin-top:8pt}body.chef-printing .mc-dl .mc-desc{font-size:8pt}body.chef-printing .mc-dl .mc-section{margin-top:14pt}body.chef-printing .menu-card:before{inset:.24in;border:.5pt solid #1a1a1a;print-color-adjust:exact;-webkit-print-color-adjust:exact}body.chef-printing .mc-title{font-size:8pt}body.chef-printing .mc-menu{font-size:17pt;margin-top:10pt}body.chef-printing .mc-section{font-size:7.5pt;margin-top:20pt}body.chef-printing .mc-dish{margin-top:18pt}body.chef-printing .mc-item{font-size:10.5pt;margin-top:10pt}body.chef-printing .mc-desc+.mc-item,body.chef-printing .mc-name+.mc-item{margin-top:12pt}body.chef-printing .mc-name{font-size:11pt}body.chef-printing .mc-desc{font-size:9pt}body.chef-printing .mc-price{font-size:7.5pt;margin-top:20pt}body.chef-printing .mc-rule{print-color-adjust:exact;-webkit-print-color-adjust:exact}}:root{--rb-line:#d6d3c9}.rb-sheet{background:var(--paper);border:1px solid var(--rb-line);border-radius:var(--radius);padding:20px 22px 22px;max-width:1040px}.rb-title{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.01em;color:var(--mul-deep);text-transform:uppercase;margin-bottom:16px;border-bottom:2px solid var(--mul);padding-bottom:8px}.rb-fill{width:100%;border:none;background:var(--cream);font:inherit;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-strong);padding:2px;border-radius:4px;outline:none}.rb-fill::placeholder{color:color-mix(in srgb,var(--ink-soft) 55%,transparent);font-style:italic}.rb-fill:hover{background:color-mix(in srgb,var(--mul-soft) 55%,transparent)}.rb-fill:focus{background:var(--mul-soft);box-shadow:inset 0 -2px 0 var(--mul)}.rb-fill.num{text-align:left}.rb-fill-area{resize:vertical;min-height:24px;line-height:1.4}.rb-swap-name{background:none;border:0;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:text;width:100%}.rb-rowedit .rb-swap-name:focus-visible,.rb-rowedit .rb-swap-name:hover{background:color-mix(in srgb,var(--mul-soft) 55%,transparent);outline:none;border-radius:4px}.rb-swap{position:relative}.rb-top{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:18px;gap:18px;margin-bottom:18px}.rb-spec{width:100%;border-collapse:collapse;border:1px solid var(--rb-line)}.rb-spec td,.rb-spec th{border:1px solid var(--rb-line);padding:5px 9px;vertical-align:top}.rb-spec th{text-align:left;white-space:nowrap;width:118px;background:var(--cream);font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--ink-soft)}.rb-spec td{font-size:13px}.rb-spec td .rb-fill-area{min-height:44px}.rb-photo{border:1px solid var(--rb-line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;min-height:180px;background:var(--cream)}.rb-photo img{width:100%;height:100%;object-fit:cover;flex:1 1;min-height:180px}.rb-photo-empty{flex:1 1;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);font-size:12px}.rb-photo-actions{padding:8px;border-top:1px solid var(--rb-line);text-align:center}.rb-mid{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px;align-items:start}.rb-ing{width:100%;border-collapse:collapse}.rb-ing,.rb-ing th{border:1px solid var(--rb-line)}.rb-ing th{background:var(--cream);text-align:left;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--ink-soft);padding:6px 9px}.rb-ing td{border:1px solid var(--rb-line);padding:3px 9px;font-size:13px;height:26px}.rb-ing .rb-qty{width:54px}.rb-ing .rb-meas{width:76px}.rb-ing .rb-del{width:26px;text-align:center;padding:0}.rb-ing .rb-fill{padding:1px 2px}.rb-proc{border:1px solid var(--rb-line);border-radius:2px}.rb-proc-head{border-bottom:1px solid var(--rb-line);background:var(--cream);padding:6px 12px;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--ink-soft)}.rb-proc-body{padding:12px 14px}.rb-step{display:grid;grid-template-columns:1.9em 1fr;grid-column-gap:2px;column-gap:2px;font-size:13.5px;line-height:1.6;color:var(--ink);margin-bottom:14px;break-inside:avoid;page-break-inside:avoid}.rb-step b{color:var(--mul);font-weight:700;margin-right:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rb-proc-body .rb-step:last-child{margin-bottom:0}.rb-proc-edit{width:100%;border:1px solid var(--rb-line);border-radius:4px;background:var(--paper);color:var(--ink);font:inherit;font-size:14px;line-height:1.7;padding:10px 12px;resize:vertical;min-height:260px;outline:none}.rb-proc-edit:focus{border-color:var(--mul);box-shadow:inset 0 -2px 0 var(--mul)}.rb-notes{border:1px solid var(--rb-line);border-radius:2px;margin-top:18px}.rb-notes-head{border-bottom:1px solid var(--rb-line);background:var(--cream);padding:6px 12px;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--ink-soft)}.rb-notes .rb-fill,.rb-notes>span{display:block;padding:10px 12px;font-size:13px;min-height:40px}.reading-card{padding:14px 16px;margin-top:12px}.reading-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.reading-dot{width:9px;height:9px;border-radius:50%;background:var(--mul);animation:reading-pulse 1.1s ease-in-out infinite}@keyframes reading-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}@media (prefers-reduced-motion:reduce){.reading-dot{animation:none}}.reading-steps{list-style:none;margin:10px 0 0;padding:0;font-size:13px}.reading-steps li{padding:3px 0;color:var(--ink-soft);white-space:pre}.reading-steps li.now{color:var(--ink);font-weight:600}.reading-steps li.done{color:var(--mul-deep)}.rb-add{border-bottom:1px solid var(--rb-line)}.rb-add,.rb-add .rb-fill{padding:4px 2px}.analysis-review{max-width:1040px;border-top:2px solid var(--mul);border-bottom:1px solid var(--line);padding:14px 2px 18px;margin:18px 0}.analysis-review-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.analysis-review-k{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.07em;color:var(--mul-deep)}.analysis-empty{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.analysis-note{margin:12px 0 0;font-size:13px;color:var(--ink-soft)}.analysis-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px 18px;gap:12px 18px;margin-top:14px}.analysis-summary>div>span{display:block;font-family:var(--display);font-size:10px;font-weight:700;letter-spacing:.05em;color:var(--ink-soft);text-transform:uppercase}.analysis-summary p{margin:4px 0 0;font-size:13px;line-height:1.45}.analysis-summary .analysis-review-note{grid-column:1/-1}.analysis-review-form{display:grid;grid-gap:14px;gap:14px;margin-top:14px}.analysis-review-form fieldset{border:0;margin:0;padding:0;min-width:0}.analysis-review-form legend{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--ink-soft);margin-bottom:7px}.analysis-choices{display:flex;flex-wrap:wrap;gap:6px}.analysis-choice,.focus-choice{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:4px 8px;border:1px solid var(--line);border-radius:5px;color:var(--ink);font-size:12px;cursor:pointer}.analysis-choice:has(input:checked),.focus-choice.on{border-color:var(--mul);background:var(--mul-soft);color:var(--mul-deep)}.analysis-choice input,.focus-choice input{accent-color:var(--mul)}.analysis-review-fields{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(180px,.45fr);grid-gap:12px;gap:12px;max-width:460px}.focus-choices{display:flex;flex-wrap:wrap;gap:8px}.focus-choice{text-transform:capitalize}.insight-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;max-width:900px;margin:18px 0 24px}.insight-stats>div{border:1px solid var(--line);border-radius:6px;padding:12px 14px;background:var(--paper)}.insight-stats span{display:block;font-family:var(--display);font-size:10px;font-weight:700;letter-spacing:.05em;color:var(--ink-soft)}.insight-stats b{display:block;margin-top:5px;font-size:18px;color:var(--mul-deep)}.insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:20px;gap:20px;max-width:1040px}.insight-grid h2{margin-top:0}.cat-select{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--mul-deep);background:transparent;border:none;border-radius:4px;padding:4px 6px;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.cat-select:focus,.cat-select:hover{background:var(--mul-soft)}.cat-select:focus{outline:none;box-shadow:inset 0 -2px 0 var(--mul)}.cat-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}.cat-chip{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);cursor:pointer;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:6px 12px;border-radius:999px;display:inline-flex;align-items:center;gap:6px}.cat-chip:hover{background:var(--mul-soft);color:var(--mul-deep)}.cat-chip.on{background:var(--mul);color:var(--paper);border-color:var(--mul)}.cat-chip .cat-n{font-size:10px;opacity:.7}.rb-section-h{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:0 2px 10px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;flex:none}.seg-btn{border:none;background:var(--paper);color:var(--ink-soft);cursor:pointer;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:8px 14px}.seg-btn.on{background:var(--mul);color:var(--paper)}.seg-btn:not(.on):hover{background:var(--mul-soft);color:var(--mul-deep)}.rb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:16px;gap:16px}.rb-card{display:block;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper);text-decoration:none;color:inherit;transition:box-shadow .15s,transform .15s}.rb-card:hover{box-shadow:0 6px 18px rgba(0,0,0,.08);transform:translateY(-2px)}.rb-thumb{height:130px;background:var(--mul-soft);background-size:cover;background-position:50%;display:flex;align-items:center;justify-content:center}.rb-thumb-empty{color:var(--mul-deep);font-size:12px;opacity:.7}.rb-card-body{padding:11px 13px}.rb-card-name{font-weight:600;font-size:14px;color:var(--ink);line-height:1.3}.rb-card-cat{font-size:11.5px;color:var(--ink-soft);margin-top:3px}.manual-library{border-top:1px solid var(--line)}.manual-library-row{display:grid;grid-template-columns:minmax(0,1fr) 130px 170px;grid-gap:16px;gap:16px;align-items:center;padding:16px 12px;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}.manual-library-row:hover{background:var(--mul-soft)}.manual-library-title{font-weight:650}.manual-library-meta{color:var(--ink-soft);font-size:12px;text-align:right}.manual-empty{padding:34px 12px}.manual-empty h2{font-size:19px;margin:0 0 4px}.manual-builder{display:grid;grid-template-columns:minmax(0,1fr) 270px;grid-gap:24px;gap:24px;align-items:start}.manual-builder-main{min-width:0}.manual-field{display:grid;grid-gap:6px;gap:6px;margin-bottom:24px}.manual-field>span,.manual-picker-head h2,.manual-selection h2{font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.manual-picker-head,.manual-select-toolbar,.manual-selection-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.manual-picker-head{margin-bottom:12px}.manual-picker-head h2,.manual-selection h2{margin:0}.manual-picker-head p{margin:3px 0 0}.manual-categories{margin:12px 0}.manual-select-toolbar{margin:8px 0}.manual-select-list{border-top:1px solid var(--line);max-height:min(58vh,620px);overflow-y:auto}.manual-select-row{display:grid;grid-template-columns:18px minmax(0,1fr) 135px auto;align-items:center;grid-gap:10px;gap:10px;min-height:46px;padding:7px 10px;border-bottom:1px solid var(--line);cursor:pointer}.manual-select-row.selected,.manual-select-row:hover{background:var(--mul-soft)}.manual-select-row input{width:16px;height:16px;accent-color:var(--mul)}.manual-select-name{min-width:0;font-size:14px}.manual-select-meta{color:var(--ink-soft);font-size:12px}.manual-incomplete{color:#9c6818;font-size:11px;font-weight:650;white-space:nowrap}.manual-selection{position:-webkit-sticky;position:sticky;top:16px;border-left:1px solid var(--line);padding-left:18px}.manual-selection-head b{min-width:26px;text-align:center;border-radius:12px;padding:2px 7px;background:var(--mul-soft);color:var(--mul-deep)}.manual-selection-list{list-style:decimal;padding-left:22px;margin:14px 0 0}.manual-selection-list li{display:flex;gap:8px;align-items:baseline;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--line);font-size:13px}.manual-remove{border:0;background:none;color:var(--ink-soft);font-size:18px;line-height:1;cursor:pointer;padding:0 2px}.manual-remove:hover{color:var(--bad)}.manual-print{max-width:920px;margin:0 auto}.manual-cover{min-height:580px;display:flex;flex-direction:column;justify-content:center;padding:60px 64px;border:1px solid var(--rb-line);background:var(--paper)}.manual-cover .wordmark{font-size:28px;margin-bottom:48px}.manual-cover-kicker,.manual-recipe-category{margin:0 0 8px;color:var(--mul-deep);font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.manual-cover h1{max-width:650px;margin:0 0 12px;font-size:38px;line-height:1.08}.manual-cover>p:not(.manual-cover-kicker):not(.manual-cover-date){color:var(--ink-soft);font-size:16px}.manual-cover-date{margin-top:auto;color:var(--ink-soft);font-size:12px}.manual-toc{padding:42px 52px;border:1px solid var(--rb-line);border-top:0;background:var(--paper)}.manual-toc h2{margin:0 0 22px;font-size:25px}.manual-toc-group{margin-bottom:18px}.manual-toc-group h3{margin:0 0 5px;color:var(--mul-deep);font-size:13px;letter-spacing:.04em;text-transform:uppercase}.manual-toc-group ol{column-count:2;column-gap:42px;margin:0;padding-left:20px}.manual-toc-group li{page-break-inside:avoid;break-inside:avoid;margin:3px 0;font-size:13px}.manual-recipe{margin-top:28px;padding:28px 32px 32px;border:1px solid var(--rb-line);background:var(--paper)}.manual-recipe-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;border-bottom:2px solid var(--mul);padding-bottom:12px}.manual-recipe-top h2{margin:0;font-size:26px}.manual-yield{color:var(--ink-soft);font-size:13px;white-space:nowrap}.manual-yield b{display:block;color:var(--ink);font-size:15px;margin-top:2px}.manual-spec-photo{display:grid;grid-template-columns:minmax(0,1fr) 250px;grid-gap:18px;gap:18px;margin:18px 0}.manual-ingredients,.manual-spec{width:100%;border-collapse:collapse;border:1px solid var(--rb-line)}.manual-ingredients td,.manual-ingredients th,.manual-spec td,.manual-spec th{border:1px solid var(--rb-line);padding:6px 9px;text-align:left;vertical-align:top}.manual-ingredients th,.manual-spec th{background:var(--cream);color:var(--ink-soft);font-family:var(--display);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.manual-spec th{width:118px}.manual-ingredients td,.manual-spec td{font-size:12.5px;white-space:pre-line}.manual-photo{min-height:165px;border:1px solid var(--rb-line);background:var(--cream);display:flex;align-items:center;justify-content:center;color:var(--ink-soft);font-size:12px;overflow:hidden}.manual-photo img{width:100%;height:100%;min-height:165px;object-fit:cover}.manual-recipe-body{display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:22px;gap:22px;align-items:start}.manual-notes h3,.manual-recipe-body h3{margin:0 0 8px;color:var(--ink-soft);font-family:var(--display);font-size:11px;letter-spacing:.07em;text-transform:uppercase}.manual-ingredients td:first-child,.manual-ingredients th:first-child{width:58px}.manual-ingredients td:nth-child(2),.manual-ingredients th:nth-child(2){width:105px}.manual-procedure{border:1px solid var(--rb-line);padding:12px 15px}.manual-procedure ol{margin:0;padding-left:22px}.manual-procedure li{margin:0 0 10px;line-height:1.55;font-size:13px;break-inside:avoid;page-break-inside:avoid}.manual-procedure li:last-child{margin-bottom:0}.manual-procedure p{margin:0;font-size:13px}.manual-notes{margin-top:18px;border-top:1px solid var(--rb-line);padding-top:12px}.manual-notes p{margin:0;white-space:pre-line;font-size:13px;line-height:1.5}.rb-yield{display:inline-flex;gap:6px;align-items:center}.rb-title-in{width:100%;border:none;background:transparent;outline:none;font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.01em;color:var(--mul-deep);text-transform:uppercase;margin-bottom:16px;border-bottom:2px solid var(--mul);padding-bottom:8px;border-radius:4px 4px 0 0}.rb-title-in:hover{background:color-mix(in srgb,var(--mul-soft) 45%,transparent)}.rb-title-in:focus{background:var(--mul-soft)}.rb-rowedit:hover td{background:color-mix(in srgb,var(--mul-soft) 40%,transparent)}.rb-locked{color:var(--ink-soft);font-size:12.5px}.h1-in{font-family:var(--display);font-size:25px;font-weight:700;letter-spacing:-.01em;color:var(--ink);border:none;background:transparent;outline:none;width:100%;padding:2px 4px;border-radius:6px;margin:0 0 2px -4px}.h1-in:hover{background:color-mix(in srgb,var(--mul-soft) 45%,transparent)}.h1-in:focus{box-shadow:inset 0 -2px 0 var(--mul)}.banner,.h1-in:focus{background:var(--mul-soft)}.banner{color:var(--mul-deep);border:1px solid var(--mul);border-radius:10px;padding:11px 14px;margin:12px 0 4px;font-size:13px;line-height:1.5}.cc-body{padding:4px 16px 16px;border-top:1px solid var(--line)}.cc-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:12px;gap:12px;margin-top:14px}.cc-f{display:flex;flex-direction:column;gap:5px;font-size:12.5px;color:var(--ink-soft)}.cc-f .in{width:100%}.cc-out{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:12px;gap:12px;margin-top:16px}.cc-o{background:var(--mul-soft);border-radius:10px;padding:12px 14px}.cc-o span{display:block;font-size:12px}.cc-o b,.cc-o span{color:var(--mul-deep)}.cc-o b{font-size:18px;font-weight:800}.by-pick{position:relative}.by-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:60;max-height:236px;overflow-y:auto;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 34px -14px rgba(0,0,0,.24)}.by-item{display:flex;justify-content:space-between;align-items:baseline;gap:12px;width:100%;text-align:left;border:none;background:transparent;padding:9px 12px;font-size:13.5px;color:var(--ink)}.by-item+.by-item{border-top:1px solid var(--line)}.by-item.on,.by-item:hover{background:var(--mul-soft)}.by-w{flex:none;font-size:12px;color:var(--ink-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.calc-menu{display:grid;grid-gap:10px;gap:10px;margin:18px 0 4px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.calc-menu .calc-tile{text-align:left;padding:18px 16px;min-height:76px;line-height:1.35;white-space:normal;text-transform:none;letter-spacing:.01em;font-size:14px;background:#ece7d9;color:var(--ink);border:1px solid var(--line-strong)}.calc-menu .calc-tile:hover{background:#e3dccb}.calc-menu .calc-tile.is-open{background:var(--mul);color:var(--paper);border-color:var(--mul)}@media (max-width:640px){.calc-menu{grid-template-columns:1fr 1fr;gap:8px}.calc-menu .calc-tile{padding:13px 11px;min-height:68px;font-size:12.5px}}.calc-next{margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}@media (max-width:640px){.calc-next{margin-top:32px;padding-top:24px}}.cmp-card{margin-bottom:14px}.cmp-body{border-top:0;padding:18px}.cmp-target{margin:0 0 16px}.cmp-target .cc-f{color:var(--ink);font-weight:550}.cmp-options{display:flex;flex-direction:column;gap:12px}.cmp-opt{position:relative;border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:16px}.cmp-opt.is-best{border-color:color-mix(in srgb,var(--mul) 52%,var(--line));background:color-mix(in srgb,var(--mul-soft) 38%,var(--paper))}.cmp-opt-head{display:flex;align-items:center;min-height:20px;margin-bottom:10px}.cmp-item-label{display:inline-block;border-left:3px solid var(--line);padding:1px 0 1px 8px;color:var(--ink-soft);font-size:10.5px;font-weight:750;letter-spacing:.055em;text-transform:uppercase}.cmp-opt.is-best .cmp-item-label{border-left-color:var(--mul);color:var(--mul-deep)}.cmp-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:12px;gap:12px}.cmp-in .cc-f{color:var(--ink);font-weight:550}.cmp-in .in,.cmp-target .in{border-color:#d9d5ca}@media (max-width:760px){.cmp-in{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}.cmp-qty{display:flex;gap:6px}.cmp-qty .in:first-child{flex:1 1 auto;min-width:0}.cmp-qty select.in{flex:0 0 84px}.cmp-res{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:15px}.cmp-res b{font-size:21px;font-weight:800;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cmp-opt.is-best .cmp-res b{color:var(--mul-deep)}.cmp-res span{font-size:12.5px;color:var(--ink-soft)}.cmp-check{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;background:var(--mul);color:#fff!important;font-size:15px!important;font-weight:800;line-height:1}.cmp-best,.cmp-over{font-style:normal;font-size:10.5px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.cmp-best{color:var(--mul-deep)}.cmp-over{color:var(--ink-soft)}.cmp-summary{display:grid;grid-template-columns:auto minmax(0,1.4fr) minmax(180px,.7fr);align-items:center;grid-gap:14px;gap:14px;margin-top:16px;padding:14px 16px;background:color-mix(in srgb,var(--mul-soft) 66%,var(--paper));border:1px solid color-mix(in srgb,var(--mul) 22%,var(--line));border-radius:12px}.cmp-summary-check{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#d5ead9;color:var(--mul-deep);font-size:22px;font-weight:700}.cmp-summary-cost,.cmp-summary-name{display:flex;flex-direction:column;min-width:0}.cmp-summary-cost span,.cmp-summary-name span{color:var(--mul-deep);font-size:11.5px}.cmp-summary-cost b,.cmp-summary-name b{color:var(--mul-deep);font-size:17px;font-weight:800}.cmp-summary-name b{overflow-wrap:anywhere}.cmp-summary-cost b{font-size:19px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cmp-summary-cost small{color:var(--ink-soft);font-size:11.5px;font-weight:500}.cmp-summary.is-empty{background:var(--cream);border-color:var(--line);border-style:dashed}.cmp-summary.is-empty .cmp-summary-check{background:var(--line);color:var(--ink-soft)}.cmp-summary.is-empty .cmp-summary-cost b,.cmp-summary.is-empty .cmp-summary-cost span,.cmp-summary.is-empty .cmp-summary-name b,.cmp-summary.is-empty .cmp-summary-name span{color:var(--ink-soft)}.cmp-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:16px}.btn.cmp-add{min-height:42px;padding:10px 16px;text-transform:none;letter-spacing:0;font-family:var(--body);font-size:14px;box-shadow:0 5px 12px -8px rgba(36,88,64,.75)}.btn.cmp-add span{font-size:18px;line-height:0}@media (max-width:640px){.cmp-body{padding:14px}.cmp-opt{padding:13px}.cmp-summary{grid-template-columns:auto 1fr}.cmp-summary-cost{grid-column:2}.cmp-actions{gap:16px}}.ingredient-cost-card{margin-bottom:14px}.ingredient-cost-body{padding:18px}.ingredient-cost-fields{display:grid;grid-template-columns:minmax(180px,1.2fr) repeat(3,minmax(170px,1fr));grid-gap:12px;gap:12px}.ingredient-cost-fields .cc-f{color:var(--ink);font-weight:550}.ingredient-cost-fields .in{border-color:#d9d5ca}.ingredient-cost-qty{display:flex;gap:6px}.ingredient-cost-qty .in:first-child{flex:1 1 auto;min-width:0}.ingredient-cost-qty select.in{flex:0 0 82px}.ingredient-cost-result{display:grid;grid-template-columns:minmax(190px,.75fr) minmax(240px,1.25fr);align-items:center;grid-gap:18px;gap:18px;margin-top:16px;padding:14px 16px;background:var(--cream);border:1px dashed var(--line);border-radius:12px}.ingredient-cost-result div{display:flex;flex-direction:column}.ingredient-cost-result span{color:var(--ink-soft);font-size:11.5px}.ingredient-cost-result b{color:var(--ink-soft);font-size:21px;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ingredient-cost-result p{margin:0;color:var(--ink-soft);font-size:13px}.ingredient-cost-result.is-ready{background:color-mix(in srgb,var(--mul-soft) 66%,var(--paper));border:1px solid color-mix(in srgb,var(--mul) 22%,var(--line))}.ingredient-cost-result.is-ready b,.ingredient-cost-result.is-ready span{color:var(--mul-deep)}.ingredient-cost-result.is-ready p{color:var(--ink)}.ingredient-cost-error{margin:10px 0 0;color:var(--bad);font-size:12.5px}.ingredient-cost-body>.text-action{margin-top:8px}@media (max-width:860px){.ingredient-cost-fields{grid-template-columns:1fr 1fr}}@media (max-width:560px){.ingredient-cost-body{padding:14px}.ingredient-cost-fields,.ingredient-cost-result{grid-template-columns:1fr}}.inv-edit td{padding:8px 10px}.inv-edit .inv-cell{background:transparent;border:none;border-radius:4px;padding:5px 4px;width:100%;-moz-appearance:none;appearance:none;-webkit-appearance:none}.inv-edit .inv-cell:hover{background:color-mix(in srgb,var(--mul-soft) 55%,transparent)}.inv-edit .inv-cell:focus{background:var(--mul-soft);box-shadow:inset 0 -2px 0 var(--mul);outline:none}.attn-banner{background:color-mix(in srgb,var(--bad-soft) 30%,var(--paper));border:1.5px solid var(--bad);border-left-width:5px;border-radius:10px;padding:12px 14px;font-size:13px;line-height:1.5;color:var(--ink)}.attn-row td{background:color-mix(in srgb,var(--bad-soft) 22%,transparent)!important}.attn-row td:first-child{box-shadow:inset 4px 0 0 var(--bad)}.attn-select{border:1px solid var(--bad)!important;box-shadow:0 0 0 1px var(--bad);border-radius:4px}.attn-badge{display:inline-block;white-space:nowrap;font-size:10.5px;font-weight:700;letter-spacing:.04em;color:var(--paper);background:var(--bad);border-radius:999px;padding:3px 9px}.sugg{font:inherit;font-size:13px;color:var(--mul-deep);text-align:left;background:transparent;border:none;border-bottom:1px solid var(--mul);border-radius:0;padding:1px 2px;cursor:pointer}.sugg:hover{background:color-mix(in srgb,var(--mul-soft) 60%,transparent)}.sugg:focus{outline:none;background:var(--mul-soft);box-shadow:inset 0 -2px 0 var(--mul)}.sugg.plain{color:var(--ink-soft);border-bottom-color:var(--line)}.ctx-menu{position:fixed;z-index:1000;min-width:190px;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.16);padding:5px}.ctx-item{display:block;width:100%;text-align:left;border:none;background:transparent;padding:8px 11px;border-radius:7px;font-size:13.5px;color:var(--ink);cursor:pointer}.ctx-item:hover{background:var(--mul-soft)}.ctx-item.danger{color:var(--bad)}.ctx-item.danger:hover{background:color-mix(in srgb,var(--bad-soft) 45%,transparent)}.tbl.xl tr.xl-rowedit:hover td{background:color-mix(in srgb,var(--mul-soft) 38%,transparent)}@media (max-width:820px){.rb-mid,.rb-top{grid-template-columns:1fr}.analysis-summary,.insight-grid,.insight-stats{grid-template-columns:1fr 1fr}.manual-builder{grid-template-columns:1fr}.manual-selection{position:static;border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.manual-recipe-body,.manual-spec-photo{grid-template-columns:1fr}.manual-photo{max-height:280px}}@media print{.rb-sheet{border:none;padding:0;max-width:none}.rb-fill{background:transparent!important;box-shadow:none!important}.rb-ing,.rb-ing td,.rb-ing th,.rb-notes,.rb-photo,.rb-proc,.rb-spec,.rb-spec td,.rb-spec th{border-color:#999!important}.rb-notes,.rb-proc-head{break-inside:avoid;page-break-inside:avoid}.rb-proc-head{break-after:avoid;page-break-after:avoid}.manual-print{max-width:none}.manual-cover,.manual-recipe,.manual-toc{border:none;margin:0;box-shadow:none}.manual-cover,.manual-toc{break-after:page;page-break-after:always}.manual-recipe{break-before:page;page-break-before:always;padding:0}.manual-recipe-top{padding-top:0}.manual-recipe-body,.manual-spec-photo{break-inside:avoid;page-break-inside:avoid}.manual-cover{min-height:auto;padding:0}.manual-cover-date{margin-top:220px}}@media (max-width:640px){.analysis-review-fields,.analysis-summary,.insight-grid,.insight-stats{grid-template-columns:1fr}body{font-size:14px}.tbl td,.tbl th{padding:8px}.wordmark{font-size:22px}.rb-step{font-size:15px;line-height:1.65;margin-bottom:18px;grid-template-columns:2em 1fr}.rb-proc-body{padding:12px}.rb-proc-edit{font-size:15px;min-height:300px}.xl-step{font-size:14px;line-height:1.65;margin-bottom:16px}.tbl.xl .xl-proc{min-width:230px}.xl-proc-edit{font-size:14.5px;min-height:340px}.cook-method li{font-size:18px;margin-bottom:22px}.method-list{padding:14px 12px 14px 32px}.method-list li{font-size:15px;line-height:1.6;margin-bottom:14px}}.how-card{padding:16px 18px;margin-bottom:14px}.how-head{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px}.how-steps{margin:0;padding-left:20px;font-size:13.5px;line-height:1.65}.how-steps li{padding:3px 0}.how-note{margin:8px 0;font-size:13.5px;line-height:1.65}.how-out{margin:12px 0 0;padding-top:11px;border-top:1px solid var(--line);font-size:13.5px;line-height:1.6}@media (max-width:640px){.how-out,.how-steps{font-size:14px}}.pct{font-size:17px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.01em}.pct.good{color:var(--good)}.pct.warn{color:var(--warn)}.pct.bad{color:var(--bad)}.pct-note{display:block;font-size:11px;font-weight:600;color:var(--ink-soft);margin-top:1px}.tile .v .pct{font-size:26px}.tile.hero{border-top-width:3px;background:linear-gradient(var(--mul-soft),var(--paper) 46%)}.tile.hero .k{color:var(--mul-deep)}.rate-cell{display:inline-flex;align-items:baseline;gap:1px}.rate-cell .in-inline{width:52px;text-align:right}.q-mode-switch{margin-left:8px}.tbl tr.q-row td{background:color-mix(in srgb,var(--mul-soft) 45%,var(--paper))}.tbl tr.blk td{border-bottom:none;padding-top:7px;padding-bottom:7px;background:color-mix(in srgb,var(--mul-soft) 32%,var(--paper))}.tbl tr.blk.first td{border-top:2px solid var(--mul)}.tbl tr.blk .blk-k{font-weight:600}.tbl tr.blk .blk-v{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.tbl tr.blk.pct-row td{padding-top:10px;padding-bottom:12px}.stack-tbl{width:100%;border-collapse:collapse;font-size:14px}.stack-tbl td{padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.stack-tbl tr:last-child td{border-bottom:none}.stack-tbl .sk{width:46%}.stack-tbl .sa{width:26%;color:var(--ink-soft);font-size:12.5px}.stack-tbl .sa,.stack-tbl .sv{text-align:right;white-space:nowrap}.stack-tbl .sv{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stack-tbl tr.head td{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);padding-top:14px}.stack-tbl tr.sum td{border-top:1px solid var(--line);font-weight:700}.stack-tbl tr.target td{border-top:2px solid var(--mul);font-weight:700;font-size:16px;background:color-mix(in srgb,var(--mul-soft) 40%,var(--paper))}.stack-tbl tr.indent .sk{padding-left:28px;color:var(--ink-soft)}@media (max-width:640px){.pct{font-size:16px}.tile .v .pct{font-size:23px}.stack-tbl td{padding:10px 8px}.stack-tbl .sk{width:40%}.stack-tbl .sa{font-size:12px}}.beat{font-family:var(--display);font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}.b-brief{color:var(--ink-soft)}.b-show{color:var(--indigo)}.b-do{color:var(--mul-deep)}.b-check{color:var(--warn)}.tr-head{padding:12px 16px;margin-bottom:6px}.tr-head-row{display:flex;align-items:center;gap:12px;padding:6px 0;border-bottom:1px solid var(--line)}.tr-head-row:last-child{border-bottom:none}.tr-k{font-family:var(--display);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);width:84px;flex:none}.tr-next{padding:14px 16px;margin-bottom:8px;border-left:4px solid var(--mul)}.tr-next-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.tr-next-title{font-family:var(--display);font-weight:700;font-size:16px}.tr-next-list{list-style:none;margin:10px 0 0;padding:0}.tr-next-list li{display:flex;align-items:baseline;gap:10px;padding:4px 0;font-size:14px}.tr-sess{padding:0;margin-bottom:12px}.tr-sess-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:11px 14px;background:var(--cream);border-bottom:1px solid var(--line)}.tr-sess-when{flex:none}.tr-sess-title{flex:1 1;min-width:180px;font-size:15px}.tr-beat{display:flex;gap:14px;padding:10px 14px;border-bottom:1px solid var(--line)}.tr-beat:last-child{border-bottom:none}.tr-beat-k{width:56px;flex:none;padding-top:3px}.tr-beat-body{flex:1 1;min-width:0;gap:8px}.tr-beat-body,.tr-item{display:flex;flex-direction:column}.tr-item{gap:4px}.tr-item-top{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.tr-item-name{font-size:14.5px}.tr-item-go{color:var(--mul-deep);font-size:12px;font-weight:600;white-space:nowrap}.tr-item-go:hover{text-decoration:underline}.tr-item-fields{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tr-tick{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-soft)}.tr-tick input{width:18px;height:18px;accent-color:var(--mul)}.tr-sign{display:flex;flex-direction:column;gap:6px;margin-top:4px;padding-top:8px;border-top:1px dashed var(--line)}.tr-sign-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tr-sign-who{min-width:120px;font-size:13.5px}.tr-check{list-style:none;margin:0;padding:0}.tr-check li{display:flex;align-items:baseline;gap:8px;padding:3px 0;font-size:13.5px}.tr-box{color:var(--ink-soft)}.tr-add{background:none;border:none;padding:4px 0;text-align:left;color:var(--mul-deep);font-size:12.5px;font-weight:600}.tr-add:hover{text-decoration:underline}.tr-lesson{padding:0}.tr-lesson-body{padding:4px 16px 14px;border-top:1px solid var(--line)}.tr-record{margin-bottom:20px}.tr-record-foot{display:flex;gap:32px;margin-top:22px}.tr-record-foot>div{display:flex;align-items:flex-end;gap:10px;flex:1 1}.tr-rule{flex:1 1;border-bottom:1px solid var(--rb-line,#999);height:18px}@media print{.tr-record{break-after:page;page-break-after:always}.tr-record:last-of-type{break-after:auto;page-break-after:auto}.tr-item,.tr-sess{break-inside:avoid;page-break-inside:avoid}.tr-sess-head{background:#fff}}@media (max-width:640px){.tr-beat{flex-direction:column;gap:4px}.tr-beat-k{width:auto;padding-top:0}.tr-item-name,.tr-next-list li{font-size:15px}.tr-k{width:68px}.tr-head-row{align-items:flex-start}.tr-sign-row{gap:6px}.tr-sign-row .btn.sm{padding:10px 12px;min-height:40px}.tr-tick input{width:22px;height:22px}.tr-add{padding:10px 0;font-size:13.5px}}.tn-kinds{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin-top:8px}.tn-kind{text-align:left;background:var(--paper);border:1px solid var(--line);padding:22px 20px;cursor:pointer;font:inherit;color:var(--ink)}.tn-kind:hover{border-color:var(--mul);box-shadow:0 6px 18px rgba(0,0,0,.06)}.tn-kind-name{font-family:var(--display);font-weight:700;font-size:20px;margin-bottom:6px}.tn-kind p{margin:0;font-size:13.5px;color:var(--ink-soft);line-height:1.5}.tn-pickable{text-align:left;cursor:pointer;font:inherit;padding:0;border:1px solid var(--line)}.tn-picked{outline:2px solid var(--mul);outline-offset:-2px}.tn-tick{position:absolute;top:8px;right:8px;width:24px;height:24px;background:var(--mul);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:700;border-radius:50%}.tn-pickable .rb-thumb{position:relative}.tn-menu-source{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.tn-menu-source-foot,.tn-menu-source-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.tn-menu-source-name{font-family:var(--display);font-size:17px;font-weight:700}.tn-menu-dishes{border-top:1px solid var(--line);margin-top:12px}.tn-menu-dish{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.tn-menu-dish.on{background:color-mix(in srgb,var(--mul-soft) 45%,transparent)}.tn-menu-dish-check{display:flex;align-items:flex-start;gap:10px;flex:1 1;cursor:pointer}.tn-menu-dish-check input{width:18px;height:18px;margin-top:2px;flex:0 0 auto}.tn-menu-dish-check b,.tn-menu-dish-description,.tn-menu-dish-empty,.tn-menu-dish-recipes{display:block}.tn-menu-dish-description,.tn-menu-dish-empty,.tn-menu-dish-recipes{font-size:12.5px;line-height:1.45;margin-top:2px}.tn-menu-dish-description,.tn-menu-dish-recipes{color:var(--ink-soft)}.tn-menu-dish-empty{color:var(--warn)}.tn-menu-source-foot{padding-top:12px}.tn-tray{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -6px 18px rgba(0,0,0,.07)}.tn-tray-inner{max-width:1080px;margin:0 auto;padding:12px 18px;display:flex;align-items:center;gap:14px}.tn-tray-list{flex:1 1;display:flex;flex-wrap:wrap;gap:6px;max-height:76px;overflow-y:auto}.tn-tray-chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;background:var(--cream);padding:4px 8px}.tn-tray-chip button{border:0;background:none;cursor:pointer;font-size:14px;color:var(--ink-soft);padding:0 2px}.tn-tray-chip button:hover{color:var(--bad)}.tn-lesson{display:flex;align-items:flex-start;gap:12px;padding:12px 10px;border-bottom:1px solid var(--line);cursor:pointer}.tn-lesson:last-child{border-bottom:0}.tn-lesson.on{background:var(--cream)}.tn-lesson input{margin-top:3px;width:18px;height:18px}.tn-lesson>div{flex:1 1}.tn-lesson-title{font-weight:600;font-size:14px}.tn-day{padding:14px 16px;margin-bottom:10px}.tn-day-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.tn-day-title{font-family:var(--display);font-weight:700;font-size:16px}.tn-x{border:0;background:none;cursor:pointer;color:var(--ink-soft);font-size:15px;padding:0 4px}.tn-x:hover{color:var(--bad)}@media (max-width:640px){.tn-kinds{grid-template-columns:1fr}.tn-menu-dish{align-items:stretch;flex-direction:column}.tn-menu-dish>.btn{align-self:flex-start}}.tn-phase{font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mul-deep);margin:22px 0 8px}.pw-wrap{position:relative}.pw-wrap .in{padding-right:42px;width:100%}.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:none;cursor:pointer;padding:6px;color:var(--ink-soft);font-size:15px;line-height:1}.pw-eye:hover{color:var(--ink)}.ev-editing .in-inline:focus{border-color:var(--mul);background:var(--paper)}.ev-form .fq-card{max-width:680px;padding:20px 22px}.ev-form .fq{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.ev-form .fq>label{font-weight:600;font-size:14px}.ev-form .fq .in{width:100%;max-width:420px;min-height:44px}.ev-form .fq-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px}.ev-form .fline{border:1px solid var(--line);border-radius:10px;padding:14px;margin-bottom:12px}.ev-form .fline-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.ev-form .fline-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:10px 14px;gap:10px 14px}.ev-form .fline-grid .fq{margin-bottom:0}.ev-form .fline-grid .fq .in,.ev-form .fq-card.fq-wide{max-width:none}.ev-form .fq-wide .fline{border:none;border-top:1px solid var(--line);border-radius:0;padding:14px 0 16px;margin-bottom:0}.ev-form .fq-wide .fserv>.fline:first-of-type{border-top:none}.ev-form .fq-wide .fline-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.ev-form .fserv{border-left:3px solid var(--mul-soft);padding-left:14px;margin-bottom:22px}.ev-form .fserv>.fline-head{margin-bottom:12px}.ev-form .fserv>.fline-head b{font-size:17px}.share-modal{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;background:rgba(0,0,0,.35);overflow-y:auto}.share-box{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:20px 22px;width:min(560px,100%);box-shadow:0 12px 40px rgba(0,0,0,.18)}.share-box textarea.in{width:100%;font:inherit}.share-preview{margin-top:14px;padding:16px 18px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--mul-soft) 32%,var(--paper))}.share-preview .sp-k{display:block;font-family:var(--display);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px}.share-preview p{margin:0 0 12px;font-size:14px;white-space:pre-wrap}.share-preview p:last-child{margin-bottom:0}.share-preview .sp-cta{font-weight:700;letter-spacing:.06em;color:var(--mul-deep);text-decoration:underline;text-underline-offset:3px}.share-preview .sp-pending{color:var(--ink-soft);-webkit-text-decoration-style:dotted;text-decoration-style:dotted}.rb-thumb-menu{display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--mul-soft) 55%,var(--paper))}.dz{max-width:74ch}.dz-mission{margin:0 0 10px;font-size:15px;line-height:1.6;color:var(--ink)}.dz-how{margin:0 0 6px;font-size:12.5px;line-height:1.6;color:var(--ink-soft)}.dz-sec{margin-top:42px}.dz-sec-h{margin:0 0 4px;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}.dz-sec-intro{margin:8px 0 0;font-size:13px;line-height:1.6;color:var(--ink-soft)}.dz-item{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px 34px;gap:10px 34px;align-items:start;padding:22px 0;border-top:1px solid var(--line)}.dz-sec-h+.dz-item,.dz-sec-intro+.dz-item{border-top:none}.dz-main{min-width:0}.dz-name{margin:0;font-size:17px;font-weight:600;line-height:1.35;color:var(--ink)}.dz-diet{margin-left:8px;padding:2px 7px;border-radius:3px;vertical-align:2px;font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;background:var(--mul-soft);color:var(--mul-deep)}.dz-note{margin:5px 0 0;font-size:13px;line-height:1.55}.dz-ing,.dz-note{color:var(--ink-soft)}.dz-ing{margin:8px 0 0;font-size:12.5px;line-height:1.6}.dz-all{margin:6px 0 0;font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--bad)}.dz-prices{margin:0;display:grid;grid-gap:8px;gap:8px;justify-items:end;text-align:right}.dz-prices>div{min-width:118px}.dz-prices dt{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.dz-prices dd{margin:2px 0 0;font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink)}.dz-prices dd.dz-cp{font-size:11px;font-style:italic;letter-spacing:.02em;color:var(--ink-soft)}.dz-notes .dz-note-line{margin:12px 0 0;font-size:13px;line-height:1.65;color:var(--ink-soft)}@media (max-width:640px){.dz-item{grid-template-columns:1fr;gap:14px}.dz-prices{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));justify-items:start;text-align:left}.dz-prices>div{min-width:0}}.me-actions{gap:10px;margin:6px 0 22px}.me-actions .btn{padding:9px 16px;font-size:12px}.me-key{padding:16px 18px;margin-bottom:16px}.me-key-lead{margin:0 0 12px;font-size:14px;color:var(--ink);line-height:1.55}.me-key-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:14px 22px;gap:14px 22px}.me-key-grid p{margin:5px 0 0;font-size:13px;color:var(--ink-soft);line-height:1.5}.ce-usemenu{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.pp-agree{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;cursor:pointer}.pp-agree input{margin-top:3px;width:18px;height:18px;flex:none}.shop-wrap{max-width:620px;margin:0 auto;padding:26px 18px 70px}.shop-title{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:.02em;margin:0}.shop-who{font-size:14px;margin:4px 0 0}.shop-left,.shop-who{color:var(--ink-soft)}.shop-left{font-size:12.5px;margin:2px 0 18px}.shop-cat{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:22px 0 0}.shop-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.shop-row{gap:8px;border-bottom:1px solid var(--line)}.shop-row,.shop-tick{display:flex;align-items:center}.shop-tick{flex:1 1;min-width:0;gap:13px;background:none;border:none;padding:13px 2px;min-height:56px;text-align:left;color:var(--ink);font:inherit}.shop-box{flex:none;width:26px;height:26px;border:1.5px solid var(--line);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:15px;line-height:1;color:var(--mul-deep)}.shop-name{flex:1 1;min-width:0;font-size:16px}.shop-qty{flex:none;font-size:14px;color:var(--ink-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.shop-row.got .shop-box{background:var(--mul-soft);border-color:var(--mul)}.shop-row.got .shop-name{color:var(--ink-soft);text-decoration:line-through}.shop-row.missing .shop-box{border-color:var(--warn)}.shop-row.missing .shop-name{color:var(--warn)}.shop-miss{flex:none;background:none;border:none;padding:10px 0 10px 12px;min-height:44px;border-left:1px solid var(--line);font-size:11px;font-weight:600;color:var(--ink-soft);white-space:nowrap}.shop-miss-flag,.shop-row.missing .shop-miss{color:var(--warn)}.shop-miss-flag{flex:none;font-size:12px;font-weight:600;padding-right:4px}.gshare{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.tickcol{width:26px}.tickbox{display:inline-block;width:13px;height:13px;border:1px solid var(--ink);border-radius:2px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.tr-sess-toggle{display:none}@media screen and (max-width:760px){.tr-head-row{flex-direction:column;align-items:flex-start;gap:3px;padding:9px 0}.tr-k{width:auto}.tr-beat{flex-direction:column;gap:6px}.tr-beat-k{width:auto;padding-top:0}.tr-sess-head{gap:8px 10px}.tr-sess-when{order:1}.tr-sess-toggle{order:2;margin-left:auto}.tr-sess-title{order:3;flex:1 1 100%;min-width:0}.tr-sess-toggle{display:inline-flex;align-items:center;min-height:44px;padding:10px 2px;background:none;border:none;font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mul-deep)}.tr-sess.shut>:not(.tr-sess-head){display:none}}