Files
formulation/src/styles/global.css
T
nicholas 272642f372 feat(home): meez-style home page skin
- Header app bar: full-bleed #FBFBFB h80 with #F3F3F3 border, 1120px content column
- Search: borderless-underline MUI textbox (16px, focus #3D5DF6 underline), placeholder 'Search '
- Nav chips: h40 r999 label 16px/400 rgba(0,0,0,.87), active #DBE4FF, inline count, no leading icon
- Filter + item-type chips: h44 r20 white
- New button: 16px/500 blue pill
- Directory: head row 57px #FBFBFB with Type/Name labels + select-all, rows 57px 36|112|1fr|36,
  flat 24x24 type glyphs, blue 16/300 name links, kebab 24x24 r50 revealed on row hover,
  no row hover bg, meez-menu-in entry animation
- Mobile <=760px: kebab always visible, row grid fits 390px, head row hidden
2026-08-14 21:42:29 -05:00

984 lines
148 KiB
CSS

:root { --ink:#172033; --muted:#64748b; --paper:#f8fafc; --card:#ffffff; --line:#dbe2ea; --green:#2563eb; --orange:#475569; --serif:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; --sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
* { box-sizing:border-box; }
html { background:var(--paper); color:var(--ink); font-family:var(--sans); scroll-behavior:smooth; }
body { margin:0; min-height:100vh; }
a { color:inherit; text-decoration-thickness:1px; text-underline-offset:.2em; }
.shell { width:min(1160px,calc(100% - 40px)); margin-inline:auto; }
.site-header { min-height:76px; padding:0 max(20px,calc((100vw - 1160px)/2)); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); background:rgba(244,240,231,.94); position:sticky; top:0; z-index:10; backdrop-filter:blur(12px); }
.brand { display:flex; gap:12px; align-items:center; font-family:var(--serif); font-size:1.15rem; font-weight:600; text-decoration:none; }
.brand img { width:31px; height:31px; }
nav { display:flex; gap:24px; }
nav a { text-decoration:none; color:var(--muted); font-size:.9rem; font-weight:600; }
nav a:hover { color:var(--ink); }
main { min-height:calc(100vh - 150px); }
h1,h2,h3 { font-family:var(--serif); line-height:1.08; margin-top:0; }
h1 { font-size:clamp(3rem,7vw,6.4rem); letter-spacing:-.045em; }
h2 { font-size:clamp(2rem,4vw,3.4rem); letter-spacing:-.03em; }
h3 { font-size:1.35rem; }
p { line-height:1.65; }
.eyebrow { text-transform:uppercase; letter-spacing:.16em; font-size:.72rem; font-weight:600; color:var(--orange); margin:0 0 14px; }
.button { display:inline-flex; padding:13px 20px; border:1px solid var(--ink); text-decoration:none; font-weight:600; font-size:.9rem; }
.button.primary { color:var(--paper); background:var(--green); border-color:var(--green); }
.section-block { padding-block:80px; }
.section-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:32px; }
.section-heading h2 { margin-bottom:0; }
.recipe-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.recipe-card { min-height:245px; padding:25px; border:1px solid var(--line); background:var(--card); display:flex; flex-direction:column; }
.recipe-card h2 { font-size:1.65rem; margin:35px 0 10px; }
.recipe-card h2 a { text-decoration:none; }
.recipe-card p { color:var(--muted); font-size:.92rem; margin-top:0; }
.card-topline { display:flex; justify-content:space-between; text-transform:uppercase; font-size:.68rem; letter-spacing:.1em; color:var(--muted); }
.tag-row { display:flex; flex-wrap:wrap; gap:8px 14px; margin-top:auto; }
.tag-row a { color:var(--green); font-size:.78rem; text-decoration:none; }
.page-heading { padding-block:85px 50px; border-bottom:1px solid var(--line); }.page-heading h1 { margin-bottom:15px; }.page-heading p:last-child { color:var(--muted); font-size:1.05rem; }
.taxonomy-grid { padding-block:50px 90px; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.taxonomy-grid a { display:flex; flex-direction:column; gap:8px; padding:25px; border:1px solid var(--line); background:var(--card); text-decoration:none; }.taxonomy-grid span { color:var(--muted); font-size:.85rem; }
.tag-cloud { padding-block:50px 90px; display:flex; gap:12px; flex-wrap:wrap; }.tag-cloud a { padding:10px 14px; border:1px solid var(--line); background:var(--card); text-decoration:none; }.tag-cloud small { color:var(--muted); margin-left:4px; }
.recipe-page { padding-block:70px 100px; }.recipe-header { display:grid; grid-template-columns:1fr 280px; gap:80px; align-items:end; padding-bottom:55px; border-bottom:1px solid var(--line); }.recipe-header h1 { font-size:clamp(3rem,6vw,5.6rem); margin:18px 0; }.recipe-kicker { display:flex; gap:20px; text-transform:uppercase; color:var(--muted); letter-spacing:.12em; font-size:.7rem; }.recipe-facts { margin:0; display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--ink); }.recipe-facts div { padding:17px 5px; border-bottom:1px solid var(--line); }.recipe-facts dt { color:var(--muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.1em; }.recipe-facts dd { margin:5px 0 0; font-weight:600; }
.workspace-command-bar { display:flex; align-items:center; gap:.75rem; margin-bottom:2rem; }.workspace-command-bar .back-link { margin-right:auto; }.mode-indicator { padding:.45rem .7rem; color:var(--muted); background:var(--card); border:1px solid var(--line); font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; }.mode-indicator.editing { color:#8b321f; background:#f3dfd4; }.primary-command { padding:.65rem .9rem; color:white; background:var(--green); text-decoration:none; font-weight:700; }.recipe-task-tabs { position:sticky; top:0; z-index:2; display:flex; gap:1.25rem; overflow-x:auto; margin-top:1.5rem; padding:.85rem 0; background:var(--paper); border-bottom:1px solid var(--line); }.recipe-task-tabs a { white-space:nowrap; color:var(--green); text-decoration:none; font-size:.78rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.notice { margin-top:28px; padding:16px 20px; border-left:4px solid var(--orange); background:#f3dfd4; }
.calculator { margin-top:65px; }.calculator-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:25px; }.calculator-heading h2 { margin:0; }.basis-input { display:flex; flex-direction:column; gap:7px; font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); }.input-with-unit { display:flex; align-items:center; border-bottom:1px solid var(--ink); color:var(--ink); }.input-with-unit input { width:120px; padding:8px 5px; border:0; background:transparent; font:600 1.1rem var(--sans); color:var(--ink); outline:none; }
.quantity-control { display:inline-flex; align-items:center; border-bottom:1px solid var(--ink); }.quantity-control input { width:9rem; padding:.55rem .3rem; border:0; background:transparent; color:var(--ink); font:600 1.05rem var(--sans); }.quantity-control select { padding:.55rem .3rem; border:0; background:transparent; color:var(--green); font-weight:700; cursor:pointer; }.line-quantity { display:grid; grid-template-columns:7rem 6rem; justify-content:end; border-bottom:0; }.line-quantity input { width:100%; text-align:right; }.line-quantity select { width:100%; text-align:left; }
.formula-component { margin-top:30px; }.table-wrap { overflow-x:auto; } table { width:100%; border-collapse:collapse; } th,td { padding:14px 10px; border-bottom:1px solid var(--line); text-align:left; } th:not(:first-child),td:not(:first-child) { text-align:right; } th { color:var(--muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.1em; }.recipe-ingredients { table-layout:fixed; }.recipe-ingredients th:first-child,.recipe-ingredients td:first-child { text-align:left; }.recipe-ingredients th:nth-last-child(2):not(:first-child),.recipe-ingredients td:nth-last-child(2):not(:first-child) { width:8rem; text-align:right; }.recipe-ingredients th:last-child,.recipe-ingredients td:last-child { width:14rem; text-align:right; }.basis-row td:first-child { color:var(--green); font-weight:600; }td small { display:block; color:var(--muted); margin-top:3px; }.muted { color:var(--muted); font-size:.75em; }.formula-total { display:flex; justify-content:flex-end; gap:60px; padding:20px 10px; background:var(--green); color:white; }
.derived-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr)); gap:1rem; margin-top:2rem; }.derived-card { padding:1.15rem; background:var(--card); border:1px solid var(--line); }.derived-title { display:flex; justify-content:space-between; gap:1rem; align-items:end; padding-bottom:.6rem; border-bottom:3px solid var(--green); }.derived-title h3,.derived-title p { margin:0; }.derived-title > strong { font-size:.75rem; }.derived-card dl { margin:0; }.derived-card dl div { display:flex; justify-content:space-between; gap:1rem; padding:.4rem 0; border-bottom:1px solid var(--line); }.derived-card dt,.derived-card dd { margin:0; }.derived-card dd { font-weight:700; }.derived-batch { display:flex; justify-content:space-between; gap:1rem; }.derived-warning { color:#8b321f; font-size:.8rem; font-weight:700; }
.nutrition-wrap { margin:0; }.nutrition-label { padding:.45rem .55rem .55rem; color:#111; background:#fff; border:1px solid #111; font-family:Arial,Helvetica,sans-serif; line-height:1.05; }.nutrition-title { display:block; border-bottom:.65rem solid #111; padding-bottom:.3rem; }.nutrition-title h2 { margin:0; font-family:Arial Black,Arial,Helvetica,sans-serif; font-size:2.65rem; line-height:.95; letter-spacing:-.12rem; }.nutrition-title p { margin:.18rem 0; font-size:.9rem; }.serving-size { display:flex; justify-content:space-between; gap:1rem; padding-top:.25rem; border-top:1px solid #111; font-size:1rem; }.amount-heading,.dv-heading { margin:0; font-size:.72rem; font-weight:700; }.calorie-row { display:flex; justify-content:space-between; align-items:end; border-bottom:.35rem solid #111; font-size:2rem; line-height:1; padding:.15rem 0; }.calorie-row strong:first-child { font-size:1.25rem; }.dv-heading { padding:.2rem 0; text-align:right; border-bottom:1px solid #111; }.nutrition-facts { margin:0; }.nutrition-facts div { display:flex; justify-content:space-between; gap:1rem; padding:.22rem .05rem; border-bottom:1px solid #777; font-size:.9rem; }.nutrition-facts dt,.nutrition-facts dd { margin:0; }.nutrition-facts dd { font-weight:700; }.nutrition-facts .protein { border-bottom:.35rem solid #111; }.dv-footnote { margin:.35rem 0 0; padding-left:.65rem; text-indent:-.55rem; font-size:.68rem; line-height:1.2; }.nutrition-source { margin:.75rem 0 0; font-size:.78rem; color:var(--muted); }
.preparation,.notes { width:min(780px,100%); margin-top:80px; }.preparation ol { list-style:none; counter-reset:steps; padding:0; }.preparation li { counter-increment:steps; position:relative; padding:22px 0 22px 62px; border-top:1px solid var(--line); line-height:1.65; }.preparation li::before { content:counter(steps,decimal-leading-zero); position:absolute; left:5px; top:24px; color:var(--orange); font-size:.76rem; font-weight:600; }.preparation li.placeholder { color:var(--orange); }.notes ul { padding-left:20px; }.notes li { margin:10px 0; line-height:1.6; }
.equipment-list { width:min(780px,100%); margin-top:60px; }.equipment-list h2 { margin-top:0; }.equipment-list ul { display:flex; flex-wrap:wrap; gap:.6rem; padding:0; list-style:none; }.equipment-list li { padding:.7rem .9rem; background:var(--card); border:1px solid var(--line); }.equipment-list small { display:block; max-width:18rem; margin-top:.2rem; color:var(--muted); }.step-equipment { display:block; margin-top:.35rem; color:var(--muted); font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; }
.additional-details { width:min(780px,100%); margin-top:80px; }.additional-details h2 { margin-top:0; }.additional-details dl { margin:0; border-top:1px solid var(--ink); }.additional-details dl > div { display:grid; grid-template-columns:10rem 1fr; gap:1rem; padding:1rem .3rem; border-bottom:1px solid var(--line); }.additional-details dt { color:var(--muted); font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; }.additional-details dd { margin:0; font-weight:600; }.additional-details dd small { display:block; margin-top:.25rem; color:var(--muted); font-weight:400; }.additional-details ul { margin:0; padding:0; list-style:none; }.additional-details li + li { margin-top:.4rem; }
.prose { max-width:850px; padding-block:80px 110px; }.prose h1 { font-size:clamp(3rem,6vw,5rem); }.prose h2 { font-size:2rem; margin-top:50px; }.prose p { color:var(--muted); }
.review-toolbar { position:sticky; top:0; z-index:3; display:flex; gap:1rem; align-items:center; flex-wrap:wrap; padding:1rem; margin-bottom:2rem; background:var(--paper); border:1px solid var(--line); box-shadow:0 .5rem 1rem rgba(30,35,25,.08); }.review-toolbar div { margin-right:auto; }.review-toolbar small { display:block; color:var(--muted); }.review-toolbar input[type="search"],.review-toolbar button,.basis-input select { padding:.65rem .8rem; border:1px solid var(--line); background:var(--card); color:var(--ink); }.review-toolbar button { cursor:pointer; background:var(--green); color:white; font-weight:700; }.candidate-card { margin:0 0 1.5rem; padding:1.2rem; border:1px solid var(--line); background:var(--card); }.candidate-card legend { padding:0 .5rem; font:600 1.4rem var(--serif); }.candidate-card code { color:var(--muted); font:400 .72rem var(--sans); }.candidate-choice { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:1rem; padding:.8rem; border-bottom:1px solid var(--line); cursor:pointer; }.candidate-choice:has(input:checked) { background:#dce6d9; outline:2px solid var(--green); }.candidate-choice small { display:block; margin-top:.2rem; color:var(--muted); }.candidate-choice a { font-size:.78rem; }.candidate-choice.none { border-bottom:0; }
.product-meta { color:var(--muted); font-size:.82rem; text-transform:capitalize; }
.other-choice { display:flex; gap:1rem; align-items:center; justify-content:space-between; padding:.8rem; border-bottom:1px solid var(--line); }.other-choice select { min-width:min(25rem,55vw); padding:.6rem; border:1px solid var(--line); background:var(--paper); }
.quality-summary { display:grid; grid-template-columns:repeat(auto-fit,minmax(9rem,1fr)); gap:1rem; padding-bottom:1rem; }.quality-summary article { display:flex; flex-direction:column; padding:1.1rem; background:var(--card); border:1px solid var(--line); }.quality-summary strong { font:600 2.25rem var(--serif); color:var(--green); }.quality-summary span { color:var(--muted); font-size:.78rem; }.quality-table td:first-child { text-align:left; }.quality-table small { display:block; }.quality-table td:not(:first-child) { font-size:.82rem; }
.app-launcher { display:grid; grid-template-columns:repeat(auto-fit,minmax(15rem,1fr)); gap:1rem; padding-bottom:6rem; }.app-launcher a { position:relative; min-height:14rem; padding:1.4rem; color:var(--ink); background:var(--card); border:1px solid var(--line); text-decoration:none; }.app-launcher h2 { margin:.45rem 0; }.app-launcher strong { position:absolute; top:1.2rem; right:1.2rem; font:600 1.5rem var(--serif); color:var(--green); }.app-launcher p { color:var(--muted); }.entity-list { padding-bottom:6rem; }.entity-list-head,.entity-list > a { display:grid; grid-template-columns:minmax(16rem,2fr) repeat(3,minmax(6rem,1fr)); align-items:center; gap:1rem; padding:.8rem 1rem; border-bottom:1px solid var(--line); }.entity-list-head { color:var(--muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.08em; }.entity-list > a { color:var(--ink); text-decoration:none; }.entity-list > a:hover { background:var(--card); }.entity-list small { display:block; color:var(--muted); }.empty-state { padding:3rem; text-align:center; background:var(--card); border:1px solid var(--line); }
.ingredient-list-tools { display:flex; justify-content:flex-end; padding-block:1rem; }.filter-menu { position:relative; }.filter-menu summary { padding:.65rem .85rem; color:white; background:var(--green); cursor:pointer; font-weight:700; list-style:none; }.filter-menu summary::-webkit-details-marker { display:none; }.filter-menu form { position:absolute; z-index:4; right:0; width:min(20rem,calc(100vw - 2rem)); padding:1rem; background:var(--card); border:1px solid var(--line); box-shadow:0 .75rem 2rem rgba(30,35,25,.14); }.filter-menu label { display:flex; align-items:center; gap:.55rem; padding:.35rem 0; }.filter-menu fieldset { margin:.75rem 0; padding:.75rem; border:1px solid var(--line); }.filter-menu legend { color:var(--muted); font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; }.filter-menu form > div { display:flex; align-items:center; gap:1rem; }.filter-menu button { padding:.6rem .8rem; color:white; background:var(--green); border:0; cursor:pointer; font-weight:700; }.ingredient-entity-list .entity-list-head,.ingredient-entity-list > a { grid-template-columns:minmax(16rem,1fr) 7rem; }.attention-reasons { display:flex; flex-wrap:wrap; gap:.35rem; margin-top:.4rem; }.attention-reasons em { padding:.18rem .4rem; color:#8b321f; background:#f3dfd4; font-size:.68rem; font-style:normal; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.directory-workspace { padding-block:28px 72px; }.workspace-pills { display:flex; align-items:center; flex-wrap:wrap; gap:10px; overflow:visible; padding:0 0 28px; }.workspace-pills > a { display:inline-flex; align-items:center; gap:8px; flex:none; min-height:42px; padding:7px 13px; color:rgba(0,0,0,0.87); background:white; border:1px solid #e5e7ef; border-radius:999px; text-decoration:none; font-weight:400; box-shadow:0 1px 2px rgba(15,23,42,.03); }.workspace-pills > a.active { background:#DBE4FF; border-color:#DBE4FF; }.workspace-pills > a small { color:#a0a7ba; font-size:.8rem; font-weight:500; }.workspace-pill-icon { display:grid; place-items:center; width:22px; height:22px; color:white; background:#48558d; border-radius:50%; font-size:.7rem; }.workspace-pill-icon.ingredient,.workspace-pill-icon.purchase { background:#489d96; }.workspace-pill-icon.book { background:#6847ed; }.workspace-pills .filter-menu { flex:none; margin-left:auto; }.workspace-pills .filter-menu summary { color:#172033; background:transparent; white-space:nowrap; }.ingredient-directory { overflow:hidden; background:white; border:1px solid #eef0f5; }.ingredient-selection-bar { display:grid; grid-template-columns:28px 1fr auto; align-items:center; min-height:58px; gap:18px; padding:0 22px; border-bottom:1px solid #eef0f5; }.ingredient-selection-bar input,.ingredient-directory-row > input { width:17px; height:17px; margin:0; accent-color:#4868f7; }.ingredient-selection-bar strong { color:#5366fa; font-size:.9rem; }.ingredient-selection-bar button { color:#64748b; background:transparent; border:0; cursor:pointer; }.ingredient-directory-row { display:grid; grid-template-columns:28px 34px minmax(14rem,1fr) 10rem 28px; align-items:center; min-height:60px; gap:18px; padding:0 22px; border-bottom:1px solid #eef0f5; }.ingredient-directory-row:last-child { border-bottom:0; }.ingredient-directory-row:hover { background:#f8faff; }.ingredient-directory-row.selected { background:#edf2ff; }.ingredient-type-icon { display:grid; place-items:center; width:26px; height:26px; color:white; background:#489d96; border-radius:50%; font-size:.65rem; }.ingredient-directory-name { color:#111a49; text-decoration:none; }.ingredient-directory-name strong { font-size:.9rem; }.ingredient-directory-name small { display:flex; gap:5px; margin-top:3px; }.ingredient-directory-name em { padding:2px 5px; color:#9a3412; background:#fff0e8; border-radius:3px; font-size:.62rem; font-style:normal; font-weight:700; text-transform:uppercase; }.ingredient-usage { color:#8b93a7; font-size:.82rem; text-align:right; }.ingredient-row-menu { color:#a0a7ba; font-size:1.45rem; line-height:1; text-align:center; text-decoration:none; }
.workspace-directory-list { overflow:hidden; background:white; border:1px solid #eef0f5; }.workspace-directory-heading,.workspace-directory-row { display:grid; grid-template-columns:34px minmax(16rem,1fr) 9rem 10rem 28px; align-items:center; gap:18px; padding:0 22px; }.workspace-directory-heading { min-height:42px; color:#8b93a7; border-bottom:1px solid #eef0f5; font-size:.72rem; text-transform:uppercase; letter-spacing:.04em; }.workspace-directory-heading strong { grid-column:2; }.workspace-directory-row { min-height:64px; color:#111a49; border-bottom:1px solid #eef0f5; text-decoration:none; }.workspace-directory-row:last-child { border-bottom:0; }.workspace-directory-row:hover { background:#f8faff; }.workspace-directory-row > span:nth-child(2) { display:flex; flex-direction:column; min-width:0; }.workspace-directory-row small { overflow:hidden; color:#8b93a7; text-overflow:ellipsis; white-space:nowrap; }.workspace-directory-row b { color:#a0a7ba; font-size:1.35rem; text-align:center; }.workspace-directory-heading:has(+ .books),.workspace-directory-row.books { grid-template-columns:34px minmax(16rem,1fr) 9rem 28px; }.workspace-directory-heading:has(+ .purchases),.workspace-directory-row.purchases { grid-template-columns:34px minmax(14rem,1fr) minmax(10rem,1fr) 9rem 7rem 28px; }
.workspace-search-tools { display:flex; align-items:flex-start; gap:10px; margin-bottom:18px; }.workspace-global-search { display:flex; align-items:center; gap:10px; flex:1; max-width:680px; min-height:44px; padding:0 14px; background:white; border:1px solid #dfe3ec; border-radius:7px; }.workspace-global-search:focus-within { border-color:#7185ec; box-shadow:0 0 0 3px #e9efff; }.workspace-global-search > span { color:#818aa0; font-size:1.35rem; }.workspace-global-search input[type="search"] { flex:1; min-width:0; padding:10px 0; color:#111a49; background:transparent; border:0; outline:0; font:inherit; }.workspace-global-search a { color:#818aa0; font-size:1.35rem; text-decoration:none; }.search-type-filter { position:relative; }.search-type-filter summary { min-height:44px; padding:11px 14px; color:#172033; background:white; border:1px solid #dfe3ec; border-radius:7px; cursor:pointer; font-weight:700; list-style:none; white-space:nowrap; }.search-type-filter summary::-webkit-details-marker { display:none; }.search-type-filter form { position:absolute; z-index:5; right:0; width:220px; padding:12px; background:white; border:1px solid #dfe3ec; border-radius:7px; box-shadow:0 .75rem 2rem rgba(30,35,25,.14); }.search-type-filter label { display:flex; align-items:center; gap:8px; padding:6px 2px; }.search-type-filter form > div { display:flex; align-items:center; gap:12px; margin-top:10px; }.search-type-filter button { padding:7px 10px; color:white; background:#48558d; border:0; border-radius:5px; cursor:pointer; font-weight:700; }.workspace-search-results > p { color:#687086; font-size:.86rem; }.workspace-search-results > div { overflow:hidden; background:white; border:1px solid #eef0f5; }.workspace-search-results > div > a { display:grid; grid-template-columns:34px minmax(12rem,1fr) 9rem 24px; align-items:center; gap:16px; min-height:62px; padding:0 22px; color:#111a49; border-bottom:1px solid #eef0f5; text-decoration:none; }.workspace-search-results > div > a:last-child { border-bottom:0; }.workspace-search-results > div > a:hover { background:#f8faff; }.workspace-search-results > div > a > span:nth-child(2) { display:flex; flex-direction:column; min-width:0; }.workspace-search-results small { overflow:hidden; color:#8b93a7; text-overflow:ellipsis; white-space:nowrap; }.workspace-search-results em { color:#8b93a7; font-size:.75rem; font-style:normal; text-align:right; text-transform:uppercase; }.workspace-search-results b { color:#a0a7ba; font-size:1.3rem; }
.workspace-tabs { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1.5rem; }.workspace-tabs a { padding:.55rem .75rem; color:var(--ink); background:var(--card); border:1px solid var(--line); text-decoration:none; }.ingredient-workspace { display:grid; gap:1.25rem; padding-bottom:6rem; }.workspace-panel { scroll-margin-top:1rem; padding:1.25rem; background:var(--card); border:1px solid var(--line); }.workspace-panel h2 { margin-top:0; }.workspace-panel > label { display:grid; grid-template-columns:minmax(9rem,1fr) 3fr; gap:1rem; align-items:center; margin:.75rem 0; color:var(--muted); }.workspace-panel input,.workspace-panel textarea,.workspace-panel select { padding:.65rem; color:var(--ink); background:var(--paper); border:1px solid var(--line); font:1rem var(--sans); }.inline-form { display:flex; flex-wrap:wrap; gap:.55rem; align-items:center; margin-top:1rem; padding-top:1rem; border-top:1px solid var(--line); }.inline-form button { padding:.7rem; color:white; background:var(--green); border:1px solid var(--green); cursor:pointer; }.purchase-row { display:grid; grid-template-columns:minmax(12rem,1fr) auto auto; gap:1rem; align-items:center; padding:.7rem 0; border-bottom:1px solid var(--line); }.purchase-row small { display:block; color:var(--muted); }
.panel-intro { color:var(--muted); }.ingredient-nutrition { margin-top:1rem; padding:1rem; background:var(--paper); border:1px solid var(--line); }.nutrition-mapping-head { display:flex; justify-content:space-between; gap:1rem; align-items:start; padding-bottom:.75rem; border-bottom:3px solid var(--green); }.nutrition-mapping-head small { display:block; margin-top:.2rem; color:var(--muted); text-transform:capitalize; }.nutrition-mapping-head a { white-space:nowrap; }.ingredient-nutrition dl { display:grid; grid-template-columns:repeat(auto-fit,minmax(11rem,1fr)); margin:0; }.ingredient-nutrition dl div { display:flex; justify-content:space-between; gap:1rem; padding:.55rem; border-bottom:1px solid var(--line); }.ingredient-nutrition dt,.ingredient-nutrition dd { margin:0; }.ingredient-nutrition dd { font-weight:700; }.ingredient-nutrition footer { display:flex; flex-wrap:wrap; gap:.5rem 1.2rem; padding-top:.75rem; color:var(--muted); font-size:.72rem; }
.purchase-editor { border-top:1px solid var(--line); }.purchase-editor:last-child { border-bottom:1px solid var(--line); }.purchase-editor > summary { display:flex; justify-content:space-between; gap:1rem; align-items:center; padding:1rem .25rem; cursor:pointer; }.purchase-editor > summary > span:last-child { text-align:right; }.purchase-editor summary small { display:block; margin-top:.2rem; color:var(--muted); }.add-purchase > summary { color:var(--green); font-weight:700; }.purchase-item-form { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.85rem; padding:1rem; margin-bottom:1rem; background:var(--paper); border:1px solid var(--line); }.purchase-item-form label { display:flex; flex-direction:column; gap:.3rem; min-width:0; color:var(--muted); font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; }.purchase-item-form .purchase-name { grid-column:span 2; }.purchase-item-form input,.purchase-item-form select { width:100%; }.input-suffix { display:flex; align-items:center; }.input-suffix input { min-width:0; }.input-suffix > span { padding:.65rem; color:var(--ink); background:var(--card); border:1px solid var(--line); border-left:0; }.purchase-rate { grid-column:span 3; display:flex; align-items:center; gap:1rem; margin:0; padding:.65rem; background:var(--card); }.purchase-rate span { color:var(--muted); }.purchase-form-actions { display:flex; justify-content:flex-end; align-items:end; }.purchase-form-actions button { padding:.7rem; color:white; background:var(--green); border:1px solid var(--green); cursor:pointer; font-weight:700; }.price-history { grid-column:1/-1; }.price-history summary { cursor:pointer; color:var(--green); font-size:.8rem; font-weight:700; }.price-history table { margin-top:.5rem; }.price-history td { padding:.4rem; font-size:.8rem; }.price-history td:last-child { text-align:right; }
.usda-id-form { display:flex; flex-wrap:wrap; gap:.65rem; align-items:end; }.usda-id-form label { display:flex; flex-direction:column; gap:.35rem; }.usda-id-form input { min-width:15rem; }.usda-id-form button { padding:.7rem; color:white; background:var(--green); border:1px solid var(--green); cursor:pointer; }.usda-id-form a { padding:.65rem 0; }
.editor-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(16rem,1fr); gap:2rem; padding-bottom:6rem; }.editor-form fieldset { display:grid; gap:1rem; margin:0 0 1.5rem; padding:1.25rem; border:1px solid var(--line); background:var(--card); }.editor-form legend { padding:0 .5rem; font:600 1.35rem var(--serif); }.editor-form label { display:flex; flex-direction:column; gap:.4rem; color:var(--muted); font-size:.76rem; text-transform:uppercase; letter-spacing:.06em; }.editor-form input,.editor-form textarea,.editor-form select { width:100%; padding:.7rem; color:var(--ink); background:var(--paper); border:1px solid var(--line); font:1rem var(--sans); text-transform:none; letter-spacing:normal; }.editor-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }.editor-actions { display:flex; flex-wrap:wrap; gap:.75rem; }.editor-actions button { padding:.8rem 1rem; border:1px solid var(--green); background:var(--green); color:white; font-weight:700; cursor:pointer; }.editor-actions .secondary { background:transparent; color:var(--green); }.success-notice { margin-bottom:1rem; padding:1rem; color:#204f31; background:#dcebdc; border-left:4px solid #39734c; }
.structure-editor button { padding:.55rem .7rem; border:1px solid var(--line); background:var(--card); cursor:pointer; }.structure-editor .section-heading > button,.add-line button { color:white; background:var(--green); }.component-editor { margin:0 0 1.5rem; padding:1rem; border:1px solid var(--line); }.component-editor legend { padding:0 .5rem; font:600 1.25rem var(--serif); }.editor-inline,.add-line { display:flex; gap:.5rem; margin-bottom:1rem; }.editor-inline input,.add-line select,.editor-items input[type="number"],.editor-items select,.method-editor textarea { width:100%; padding:.55rem; color:var(--ink); background:var(--paper); border:1px solid var(--line); }.editor-inline input { font-weight:700; }.editor-items { min-width:60rem; table-layout:fixed; }.editor-items th,.editor-items td { vertical-align:middle; text-align:left; }.editor-items th:nth-child(2),.editor-items td:nth-child(2) { width:7rem; text-align:right; }.editor-items td:nth-child(2) input { text-align:right; }.editor-items th:nth-child(3),.editor-items td:nth-child(3) { width:12rem; }.editor-items th:nth-child(4),.editor-items td:nth-child(4) { width:9rem; }.editor-items th:nth-child(5),.editor-items td:nth-child(5) { width:6rem; text-align:center; }.editor-items th:last-child,.editor-items td:last-child { width:8.5rem; text-align:right; }.editor-items input[type="number"],.editor-items select { min-width:0; }.editor-items td:last-child .row-actions button { width:2.1rem; height:2.1rem; padding:0; }.row-actions { display:flex; gap:.25rem; justify-content:flex-end; }.structure-editor button.danger { color:#8b321f; }.inline-check { display:inline-flex; align-items:center; justify-content:center; gap:.35rem; white-space:nowrap; font-size:.76rem; }.inline-check input { width:auto; min-width:0; margin:0; }.secondary-action { margin-bottom:1.5rem; }.method-editor ol { padding:0; list-style:none; counter-reset:method; }.method-editor li { display:grid; grid-template-columns:1fr auto; gap:.5rem; margin-bottom:.75rem; counter-increment:method; }.method-editor li::before { content:counter(method); display:none; }
.editor-entity-link { color:var(--green); text-decoration-thickness:1px; text-underline-offset:3px; }
@media (max-width:900px) { .recipe-grid,.taxonomy-grid { grid-template-columns:repeat(2,1fr); }.recipe-header { grid-template-columns:1fr; gap:25px; }.recipe-facts { max-width:500px; }.purchase-item-form { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px) { .site-header { align-items:flex-start; padding-block:17px; }.site-header nav { gap:8px 14px; flex-wrap:wrap; justify-content:flex-end; }.brand span { display:none; }.recipe-grid,.taxonomy-grid { grid-template-columns:1fr; }.calculator-heading { align-items:flex-start; gap:25px; flex-direction:column; }.formula-total { justify-content:space-between; gap:15px; }.recipe-page { padding-top:45px; }.recipe-header h1 { font-size:3.2rem; }.entity-list-head { display:none; }.entity-list > a { grid-template-columns:1fr 1fr; }.editor-layout { grid-template-columns:1fr; }.workspace-panel > label { grid-template-columns:1fr; }.purchase-row { grid-template-columns:1fr; }.purchase-item-form { grid-template-columns:1fr; }.purchase-item-form .purchase-name,.purchase-rate { grid-column:auto; }.purchase-editor > summary { align-items:flex-start; }.purchase-editor > summary > span:last-child { text-align:left; } }
/* Conventional application theme */
html { line-height:1.5; }
body { background:var(--paper); }
.shell { width:min(1180px,calc(100% - 32px)); }
.site-header { min-height:64px; padding-inline:max(16px,calc((100vw - 1180px)/2)); background:rgba(255,255,255,.96); box-shadow:0 1px 2px rgba(15,23,42,.04); }
.brand { gap:10px; font-size:1rem; font-weight:700; }
.brand img { width:28px; height:28px; }
nav { gap:20px; }
nav a { font-size:.875rem; }
h1,h2,h3 { font-family:var(--sans); line-height:1.2; letter-spacing:-.02em; }
h1 { font-size:clamp(2rem,4vw,3rem); }
h2 { font-size:clamp(1.5rem,2.5vw,2rem); }
h3 { font-size:1.125rem; }
.eyebrow { margin-bottom:8px; color:var(--muted); font-size:.7rem; letter-spacing:.1em; }
.button,.primary-command { border-radius:6px; }
.button { padding:10px 16px; font-size:.875rem; }
.button.primary,.primary-command { background:var(--green); border-color:var(--green); }
.section-block { padding-block:48px; }
.section-heading { margin-bottom:20px; align-items:center; }
.recipe-grid { gap:16px; }
.recipe-card,.taxonomy-grid a,.candidate-card,.workspace-panel,.derived-card,.app-launcher a { border-radius:8px; box-shadow:0 1px 2px rgba(15,23,42,.04); }
.recipe-card { min-height:190px; padding:20px; }
.recipe-card h2 { margin:24px 0 8px; font-size:1.25rem; }
.page-heading { padding-block:48px 28px; }
.page-heading h1 { margin-bottom:8px; }
.page-heading p:last-child { font-size:.95rem; }
.recipe-page { padding-block:48px 72px; }
.recipe-header { grid-template-columns:1fr 260px; gap:48px; padding-bottom:36px; }
.recipe-header h1 { margin:12px 0; font-size:clamp(2rem,4vw,3rem); }
.workspace-command-bar { margin-bottom:1.25rem; }
.mode-indicator,.workspace-tabs a,.primary-command { border-radius:6px; }
.recipe-task-tabs { top:64px; background:rgba(248,250,252,.96); }
.calculator { margin-top:44px; }
th,td { padding:11px 10px; }
th { font-size:.7rem; letter-spacing:.06em; }
.formula-total { padding:14px 10px; background:#eef2ff; color:var(--ink); border-bottom:1px solid var(--line); }
.equipment-list li { border-radius:6px; }
.preparation,.notes,.additional-details { margin-top:56px; }
.review-toolbar { top:64px; border-radius:8px; background:rgba(248,250,252,.96); }
.entity-list > a:hover { background:#f1f5f9; }
.filter-menu summary,.filter-menu button,.inline-form button,.purchase-form-actions button,.editor-actions button { border-radius:6px; }
.workspace-panel { padding:1.25rem; }
.workspace-panel input,.workspace-panel textarea,.workspace-panel select,.editor-form input,.editor-form textarea,.editor-form select,.editor-inline input,.add-line select,.editor-items input[type="number"],.editor-items select,.method-editor textarea { border-radius:6px; background:white; }
.component-editor { border-radius:8px; background:var(--card); }
.structure-editor button { border-radius:6px; }
.success-notice,.notice { border-radius:6px; }
.purchase-item-form,.ingredient-nutrition { border-radius:6px; background:#f8fafc; }
.app-launcher a { min-height:11rem; }
@media (max-width:620px) {
.shell { width:min(100% - 24px,1180px); }
.recipe-page { padding-top:32px; }
.recipe-header h1 { font-size:2.25rem; }
.page-heading { padding-block:36px 24px; }
.directory-workspace { width:100%; padding-top:16px; }.workspace-search-tools { padding-inline:12px; }.workspace-pills { padding-inline:12px; }.workspace-pills .filter-menu { margin-left:0; }.ingredient-directory { border-inline:0; }.ingredient-directory-row { grid-template-columns:24px 28px minmax(0,1fr) 24px; gap:10px; padding-inline:14px; }.ingredient-usage { display:none; }.ingredient-selection-bar { padding-inline:14px; }
}
.workspace-new-menu { position:relative; margin-left:auto; }
.workspace-new-menu > summary { display:flex; align-items:center; gap:5px; min-height:44px; padding:9px 16px; color:white; background:#4868f7; border-radius:22px; cursor:pointer; font-weight:700; list-style:none; white-space:nowrap; }
.workspace-new-menu > summary::-webkit-details-marker { display:none; }
.workspace-new-menu > nav { position:absolute; z-index:6; top:52px; right:0; width:260px; padding:10px 0; background:white; border:1px solid #dfe3ec; border-radius:7px; box-shadow:0 .75rem 2rem rgba(30,35,25,.16); }
.workspace-new-menu > nav a { display:grid; grid-template-columns:28px 1fr; align-items:center; gap:14px; min-height:54px; padding:8px 20px; color:#111a49; text-decoration:none; }
.workspace-new-menu > nav a:hover { background:#f8faff; }
.create-entity { max-width:720px; padding-bottom:72px; }
.entity-detail-shell,.recipe-detail-shell { width:min(1500px,calc(100% - 48px)); margin:0 auto; padding:24px 0 72px; color:#101a4a; }
.entity-detail-header { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; min-height:108px; border-bottom:1px solid #e8eaf0; }.entity-detail-header h1 { margin:8px 0 2px; font:700 clamp(1.7rem,2.4vw,2.35rem) var(--sans); letter-spacing:-.035em; }.entity-detail-header p { margin:0; color:#858da2; }.entity-breadcrumb a { color:#26346d; font-size:.82rem; text-decoration:none; }.identity-edit { position:relative; }.identity-edit > summary { padding:8px 15px; color:#4868f7; border:1px solid #4868f7; border-radius:20px; cursor:pointer; font-weight:700; list-style:none; }.identity-edit > summary::-webkit-details-marker { display:none; }.identity-edit > form { position:absolute; z-index:8; right:0; width:min(390px,calc(100vw - 32px)); padding:18px; background:white; border:1px solid #dfe3ec; border-radius:7px; box-shadow:0 .75rem 2rem rgba(30,35,25,.16); }.identity-edit label { display:grid; gap:4px; margin-bottom:10px; color:#737c91; font-size:.75rem; }.identity-edit input,.identity-edit select,.identity-edit textarea { width:100%; padding:9px; border:1px solid #dfe3ec; }.identity-edit button { padding:9px 12px; color:white; background:#4868f7; border:0; border-radius:5px; font-weight:700; }.entity-notice { margin:14px 0; }.entity-detail-grid { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr); min-height:720px; }.entity-primary { padding:48px 42px 40px 0; border-right:1px solid #e8eaf0; }.entity-secondary { min-width:0; padding-left:32px; }.entity-section { margin-bottom:54px; }.entity-section h2,.entity-tab-panel h2 { margin:0 0 8px; font:700 1.35rem var(--sans); }.prep-action-table { margin-top:34px; }.prep-action-table th,.prep-action-table td { padding:13px 8px; text-align:left; border-bottom:1px solid #edf0f5; }.prep-action-table th { color:#9098aa; font-size:.72rem; font-weight:500; }.inline-editor { margin-top:20px; }.inline-editor > summary { color:#4868f7; cursor:pointer; font-weight:700; list-style:none; }.additional-card { min-height:260px; padding:28px; border:1px solid #e8eaf0; }.additional-card > details { padding:16px 0; }.additional-card summary { cursor:pointer; font-weight:700; }.additional-card summary small { margin-left:5px; color:#9aa2b5; }.additional-card ul { padding-left:20px; }.additional-card li { display:flex; justify-content:space-between; gap:10px; padding:6px 0; }.entity-tabs { display:flex; position:sticky; top:0; z-index:3; background:var(--paper); border-bottom:1px solid #e8eaf0; }.entity-tabs button { flex:1; padding:18px 10px; color:#111a49; background:transparent; border:0; border-bottom:2px solid transparent; cursor:pointer; font-weight:700; }.entity-tabs button.active { border-bottom-color:#4868f7; }.entity-tab-panel { display:none; padding:42px 0; background:transparent; border:0; }.entity-tab-panel.active { display:block; }.equivalency-list p { display:grid; grid-template-columns:1fr auto 1fr; gap:12px; padding:14px 4px; border-bottom:1px solid #e8eaf0; }.equivalency-list p small { grid-column:1/-1; color:#8b93a7; }.entity-secondary .purchase-item-form { grid-template-columns:repeat(2,minmax(0,1fr)); }.entity-secondary .purchase-name,.entity-secondary .purchase-rate { grid-column:1/-1; }
.recipe-detail-shell { width:min(1600px,calc(100% - 48px)); }.recipe-detail-shell .entity-detail-header { min-height:92px; }.recipe-workspace-tabs { display:flex; justify-content:flex-end; border-bottom:1px solid #f3f3f3; }.recipe-workspace-tabs a { min-width:150px; padding:16px 18px; color:#111a49; border-bottom:2px solid transparent; text-align:center; text-decoration:none; font-weight:700; }.recipe-workspace-tabs a.active { border-bottom-color:#4868f7; }.recipe-overview-strip { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding:18px 0; }.recipe-overview-form { flex:1; }.recipe-overview-form > details > summary { color:#4868f7; cursor:pointer; font-weight:700; }.recipe-overview-form fieldset { max-width:720px; margin-top:15px; }.recipe-yield-summary { display:flex; align-items:baseline; gap:12px; min-width:260px; padding:12px 16px; border:1px solid #e8eaf0; }.recipe-yield-summary span,.recipe-yield-summary small { color:#8b93a7; }.recipe-structure-workspace { border-top:1px solid #e8eaf0; }.recipe-structure-workspace .structure-editor { display:grid; grid-template-columns:minmax(0,1fr) minmax(420px,.92fr); column-gap:32px; }.recipe-structure-workspace .section-heading { grid-column:1/-1; }.recipe-structure-workspace .component-editor,.recipe-structure-workspace > .structure-editor > .secondary-action { grid-column:1; }.recipe-structure-workspace .method-editor { grid-column:2; grid-row:2 / span 40; min-width:0; padding-left:32px; border-left:1px solid #e8eaf0; }.recipe-structure-workspace .component-editor { border-color:#e8eaf0; background:white; }.recipe-structure-workspace .editor-items { min-width:46rem; }.recipe-structure-workspace .method-editor li { padding:15px; border:1px solid #e8eaf0; }.recipe-history { margin-top:30px; padding:18px; border:1px solid #e8eaf0; }.recipe-history summary { cursor:pointer; font-weight:700; }.recipe-history li span,.recipe-history li small { display:block; color:#8b93a7; }
@media (max-width:980px) { .entity-detail-grid { grid-template-columns:1fr; }.entity-primary { padding-right:0; border-right:0; }.entity-secondary { padding-left:0; }.recipe-structure-workspace .structure-editor { grid-template-columns:1fr; }.recipe-structure-workspace .method-editor { grid-column:1; grid-row:auto; padding-left:0; border-left:0; }.recipe-structure-workspace .component-editor,.recipe-structure-workspace > .structure-editor > .secondary-action { grid-column:1; } }
@media (max-width:620px) { .entity-detail-shell,.recipe-detail-shell { width:calc(100% - 24px); padding-top:16px; }.entity-detail-header { min-height:90px; }.entity-primary { padding-top:28px; }.entity-tabs button span { display:none; }.recipe-workspace-tabs { overflow-x:auto; justify-content:flex-start; }.recipe-overview-strip { flex-direction:column-reverse; }.recipe-yield-summary { width:100%; }.recipe-structure-workspace .editor-items { min-width:42rem; } }
.immersive-main { min-height:100vh; background:#fff; }.immersive-main .entity-detail-shell,.immersive-main .recipe-detail-shell { width:100%; max-width:none; margin:0; padding:0 0 72px; }.detail-utility { display:flex; align-items:center; justify-content:flex-end; gap:18px; min-height:58px; padding:7px 28px; border-bottom:1px solid #e8eaf0; }.detail-utility form { width:min(560px,42vw); }.detail-utility input { width:100%; min-height:42px; padding:8px 14px; border:1px solid #e5e8ef; border-radius:4px; font:inherit; }.detail-utility > a { color:#26346d; text-decoration:none; font-weight:700; }.detail-utility .detail-new { padding:9px 16px; color:white; background:#4868f7; border-radius:21px; }.immersive-main .entity-detail-header { width:52%; min-height:128px; padding:26px 38px; border-right:1px solid #e8eaf0; }.immersive-main .entity-notice { width:calc(52% - 76px); margin:12px 38px; }.immersive-main .entity-detail-grid { grid-template-columns:52% 48%; }.immersive-main .entity-primary { padding:48px 38px; }.immersive-main .entity-secondary { padding:0 30px; }.immersive-main .recipe-detail-shell .entity-detail-header { width:52%; padding:22px 38px; }.immersive-main .recipe-workspace-tabs { width:48%; margin:-92px 0 30px 52%; min-height:92px; align-items:end; padding:0 22px; }.immersive-main .recipe-overview-strip { width:52%; min-height:150px; padding:20px 38px; border-right:1px solid #e8eaf0; }.immersive-main .recipe-structure-workspace { padding:0 38px; }.immersive-main .recipe-structure-workspace .structure-editor { grid-template-columns:minmax(0,52fr) minmax(420px,48fr); column-gap:0; }.immersive-main .recipe-structure-workspace .section-heading { padding-right:32px; }.immersive-main .recipe-structure-workspace .component-editor,.immersive-main .recipe-structure-workspace > .structure-editor > .secondary-action { margin-right:32px; }.immersive-main .recipe-structure-workspace .method-editor { padding-left:32px; }.immersive-main .recipe-history { margin-inline:38px; }
@media (max-width:980px) { .immersive-main .entity-detail-header,.immersive-main .recipe-detail-shell .entity-detail-header,.immersive-main .recipe-overview-strip { width:100%; border-right:0; }.immersive-main .entity-detail-grid { grid-template-columns:1fr; }.immersive-main .recipe-workspace-tabs { width:100%; min-height:auto; margin:0; }.immersive-main .recipe-structure-workspace .structure-editor { grid-template-columns:1fr; }.detail-utility form { width:100%; }.detail-utility > a:not(.detail-new) { display:none; } }
@media (max-width:620px) { .detail-utility { padding-inline:12px; }.detail-utility .detail-new { padding-inline:11px; }.immersive-main .entity-detail-header,.immersive-main .recipe-detail-shell .entity-detail-header,.immersive-main .entity-primary,.immersive-main .recipe-overview-strip { padding-inline:18px; }.immersive-main .entity-secondary { padding-inline:18px; }.immersive-main .recipe-structure-workspace { padding-inline:18px; }.immersive-main .recipe-structure-workspace .component-editor { margin-right:0; } }
.immersive-main .entity-detail-shell,.immersive-main .recipe-detail-shell { position:relative; }.immersive-main .detail-utility { position:absolute; z-index:10; top:0; right:0; width:48%; height:58px; background:#fff; }.detail-new-menu { position:relative; }.detail-new-menu > summary { padding:9px 16px; color:white; background:#4868f7; border-radius:21px; cursor:pointer; font-weight:700; list-style:none; white-space:nowrap; }.detail-new-menu > summary::-webkit-details-marker { display:none; }.detail-new-menu > div { position:absolute; top:46px; right:0; width:220px; padding:8px 0; background:#fff; border:1px solid #e5e8ef; border-radius:6px; box-shadow:0 12px 30px rgba(22,30,65,.15); }.detail-new-menu > div a { display:flex; gap:12px; padding:13px 18px; color:#111a49; text-decoration:none; }.detail-new-menu > div a:hover { background:#f7f8fc; }.immersive-main .entity-detail-header { min-height:164px; padding-top:24px; }.immersive-main .entity-detail-grid { border-top:1px solid #e8eaf0; }.immersive-main .entity-secondary { margin-top:-106px; background:#fff; }.immersive-main .entity-tabs { min-height:58px; }.immersive-main .recipe-detail-shell .entity-detail-header { min-height:116px; padding-top:20px; }.immersive-main .recipe-workspace-tabs { min-height:58px; margin:-58px 0 28px 52%; }.immersive-main .recipe-workspace-tabs a { padding-block:17px; }.immersive-main .recipe-overview-strip { min-height:126px; }.immersive-main .recipe-structure-workspace { border-top:0; }.immersive-main .recipe-structure-workspace .structure-editor { border-top:1px solid #e8eaf0; }.immersive-main .recipe-structure-workspace .section-heading { min-height:76px; margin:0; padding:18px 32px 12px 0; }.immersive-main .recipe-structure-workspace .section-heading h2 { margin:2px 0; font:700 1.35rem var(--sans); }
@media (max-width:980px) { .immersive-main .detail-utility { position:relative; width:100%; }.immersive-main .entity-secondary { margin-top:0; }.immersive-main .entity-detail-header { min-height:118px; }.immersive-main .recipe-workspace-tabs { margin:0; } }
.edit-command { padding:8px 15px; color:#4868f7; border:1px solid #4868f7; border-radius:20px; text-decoration:none; font-weight:700; }.recipe-view-workspace { display:grid; grid-template-columns:52% 48%; border-top:1px solid #e8eaf0; }.recipe-view-formula { min-width:0; padding:26px 32px 48px 38px; border-right:1px solid #e8eaf0; }.recipe-view-formula .calculator { padding:0; }.recipe-view-formula .calculator-heading { display:grid; grid-template-columns:1fr 150px 210px; align-items:end; gap:14px; margin-bottom:22px; }.recipe-view-formula .calculator-heading h2 { margin:0; font:700 1.4rem var(--sans); }.recipe-view-formula .calculator-heading .eyebrow { display:none; }.recipe-view-formula .basis-input { min-width:0; }.recipe-view-formula .formula-component { margin:0 0 14px; border:1px solid #edf0f5; }.recipe-view-formula .formula-component h3 { margin:0; padding:13px 12px; background:#fafbfe; border-bottom:1px solid #edf0f5; font:700 1rem var(--sans); }.recipe-view-formula .recipe-ingredients th { color:#8b93a7; background:white; font-size:.72rem; font-weight:500; }.recipe-view-formula .recipe-ingredients td { border-color:#edf0f5; }.recipe-view-formula .formula-total { margin-top:12px; }.recipe-view-details { min-width:0; padding:28px 30px 60px; }.recipe-view-method h2,.recipe-derived-panel > h2 { font:700 1.4rem var(--sans); }.recipe-view-method h2 small { color:#9aa2b5; font-size:.85rem; }.recipe-view-method ol { padding:0; list-style:none; }.recipe-view-method li { display:grid; grid-template-columns:28px 1fr; gap:12px; min-height:92px; padding:22px 16px; border:1px solid #edf0f5; border-bottom:0; }.recipe-view-method li:last-child { border-bottom:1px solid #edf0f5; }.recipe-view-method li.placeholder { color:#a15c42; background:#fff9f5; }.recipe-derived-panel { margin-top:46px; padding-top:26px; border-top:1px solid #e8eaf0; }.recipe-derived-panel dl { margin:0; }.recipe-derived-panel dl > div { display:flex; justify-content:space-between; padding:12px 4px; border-bottom:1px solid #edf0f5; }.recipe-derived-panel dd { margin:0; font-weight:700; }.recipe-derived-panel .nutrition-wrap { display:block; }.recipe-derived-panel .nutrition-label { max-width:520px; }
@media (max-width:980px) { .recipe-view-workspace { grid-template-columns:1fr; }.recipe-view-formula { border-right:0; }.recipe-view-formula .calculator-heading { grid-template-columns:1fr 1fr; }.recipe-view-formula .calculator-heading > div:first-child { grid-column:1/-1; } }
@media (max-width:620px) { .recipe-view-formula,.recipe-view-details { padding-inline:18px; }.recipe-view-formula .calculator-heading { grid-template-columns:1fr; }.recipe-view-formula .calculator-heading > div:first-child { grid-column:auto; } }
.ingredient-identity-form { display:grid; grid-template-columns:1fr 180px; gap:12px; margin:0 0 42px; padding:20px; background:#fafbfe; border:1px solid #e8eaf0; }.ingredient-identity-form h2 { grid-column:1/-1; margin:0 0 6px; font:700 1.2rem var(--sans); }.ingredient-identity-form label { display:grid; gap:5px; color:#788197; font-size:.72rem; text-transform:uppercase; letter-spacing:.04em; }.ingredient-identity-form label:nth-of-type(3),.ingredient-identity-form label:nth-of-type(4) { grid-column:1/-1; }.ingredient-identity-form input,.ingredient-identity-form select,.ingredient-identity-form textarea { width:100%; padding:9px; color:#111a49; background:#fff; border:1px solid #dfe3ec; font:1rem var(--sans); text-transform:none; letter-spacing:normal; }.ingredient-identity-form button { justify-self:start; padding:9px 13px; color:white; background:#4868f7; border:0; border-radius:5px; font-weight:700; }.primary-command { padding:9px 16px; color:white; background:#43b99f; border-radius:21px; text-decoration:none; font-weight:700; }
.ingredient-identity-data { display:none; }
.ingredient-prep-section .panel-intro { max-width:650px; line-height:1.55; }
.prep-action-table td:first-child small { display:block; margin-top:3px; color:#8d93a7; font-weight:400; }
.prep-action-editor .inline-form { display:grid; align-items:end; grid-template-columns:minmax(150px,1.2fr) minmax(110px,.55fr) minmax(160px,1fr) auto; }
.prep-action-editor label { display:grid; gap:5px; color:#8b92a6; font-size:11px; }
.prep-action-editor label input,.prep-action-editor label select { width:100%; }
.percent-input { display:flex; align-items:center; min-width:0; border:1px solid #dfe3ec; background:#fff; }
.percent-input input { min-width:0; border:0 !important; }
.percent-input i { padding-right:10px; color:#8b92a6; font-style:normal; }
.field-help { margin:10px 0 0; color:#9298aa; font-size:12px; line-height:1.5; }
.alias-editor { display:grid; gap:7px; margin-top:14px; color:#8b92a6; font-size:11px; }
.alias-editor textarea { width:100%; padding:10px 12px; resize:vertical; border:1px solid #dfe3ec; border-radius:3px; color:#111a49; font:14px var(--sans); }
@media (max-width:720px) { .prep-action-table { display:block; overflow-x:auto; }.prep-action-table th,.prep-action-table td { min-width:90px; white-space:nowrap; }.prep-action-editor .inline-form { grid-template-columns:1fr; } }
.ingredient-title-editor { overflow:hidden; resize:none; field-sizing:content; }
.ingredient-prep-section .inline-editor > summary { display:inline-flex; align-items:center; min-height:40px; margin-top:5px; padding:8px 16px; color:#202962; background:#fff; border:1px solid #202962; border-radius:22px; font-size:14px; font-weight:600; }
.ingredient-additional-edit { padding:42px 32px 62px !important; border:1px solid #f3f3f3 !important; border-radius:4px; }
.ingredient-detail-fields { display:grid; gap:24px; margin-top:28px; }
.ingredient-detail-fields > label { display:grid; gap:8px; color:#3c4679; font-size:14px; }
.ingredient-detail-fields > label > small { margin-top:-5px; color:#a5a9c1; font-size:11px; }
.ingredient-detail-fields input,.ingredient-detail-fields textarea { width:100%; min-height:44px; padding:10px 12px; color:#050841; background:#fff; border:1px solid #ececec; border-bottom-color:#b5b5b5; border-radius:0; font:15px var(--sans); resize:vertical; }
.ingredient-detail-fields textarea:focus,.ingredient-detail-fields input:focus { background:#f1f5fe; border-bottom-color:#3d5df6; outline:0; }
.ingredient-tag-view,.ingredient-description-view { padding:16px 0; border-bottom:1px solid #eeeef3; }
.ingredient-tag-view > strong,.ingredient-description-view > strong { display:block; margin-bottom:10px; color:#3c4679; font-size:13px; }
.ingredient-tag-view > span { display:flex; flex-wrap:wrap; gap:7px; }
.ingredient-tag-view i { padding:5px 11px; color:#202962; background:#f1f5fe; border-radius:16px; font-size:12px; font-style:normal; }
.ingredient-description-view p { margin:0; color:#505773; line-height:1.55; }
.ingredient-cost-edit { display:grid; gap:28px; }
.ingredient-purchase-form { padding-bottom:28px; border-bottom:1px solid #f3f3f3; }
.ingredient-purchase-form > header { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:18px; }
.ingredient-purchase-form h3 { margin:0; color:#3c4679; font-size:14px; font-weight:600; }
.ingredient-purchase-form > header form { margin:0; }
.ingredient-purchase-form > header button { padding:5px 7px; color:#f63d48; background:transparent; border:0; cursor:pointer; font-size:11px; }
.ingredient-purchase-form .purchase-item-form { margin:0; padding:0; background:#fff; border:0; border-radius:0; }
.ingredient-purchase-form .purchase-item-form label { color:#3c4679; font-size:11px; font-weight:500; letter-spacing:0; text-transform:none; }
.ingredient-purchase-form .purchase-item-form input,.ingredient-purchase-form .purchase-item-form select { min-height:44px; padding:9px 10px; background:#fbfbfb; border-color:#ececec; border-radius:0; }
.ingredient-purchase-form .purchase-form-actions button { padding:9px 16px; background:#3d5df6; border-color:#3d5df6; border-radius:20px; }
.ingredient-cost-row { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:68px; padding:12px 0; border-bottom:1px solid #f3f3f3; }
.ingredient-cost-row > span:last-child { text-align:right; }
.ingredient-cost-row strong,.ingredient-cost-row small { display:block; }
.ingredient-cost-row small { margin-top:3px; color:#a5a9c1; font-size:11px; }
.detail-actions-menu label { display:grid; gap:6px; padding:9px 14px; color:#a5a9c1; font-size:11px; }
.detail-actions-menu select { width:250px; padding:9px; }
.application-body .ingredient-actions-menu > div { width:290px; }
@media (min-width:981px) { .application-body .entity-detail-shell .entity-primary { background:#fbfbfb; } }
.application-body .entity-detail-shell .entity-detail-header { background:#fbfbfb; }
.application-body .entity-detail-shell .entity-primary { padding-top:35px; }
.application-body .entity-detail-shell .entity-section { margin-bottom:35px; }
.application-body .entity-detail-shell .entity-section h2,.application-body .entity-detail-shell .entity-tab-panel h2 { color:#050841; font-size:22px; font-weight:700; line-height:1.25; }
.application-body .entity-detail-shell .panel-intro { max-width:640px; margin:5px 0 20px; color:#95969c; font-size:14px; line-height:1.5; }
.application-body .entity-detail-shell .entity-tabs { position:relative; min-height:58px; background:#fff; border-color:#f3f3f3; }
.application-body .entity-detail-shell .entity-tabs button { min-height:58px; padding:8px 12px; color:#050841; font-size:15px; font-weight:400; }
.application-body .entity-detail-shell .entity-tabs button.active { color:#050841; background:#f1f5fe; border-bottom:0; }
.application-body .entity-detail-shell .entity-tab-panel { padding:35px 2px 60px; }
.application-body .entity-detail-shell .prep-action-table { width:100%; margin-top:26px; table-layout:fixed; }
.application-body .entity-detail-shell .prep-action-table th { height:40px; padding:8px 10px; color:#757677; background:#fbfbfb; border-color:#f3f3f3; font-size:12px; }
.application-body .entity-detail-shell .prep-action-table td { height:58px; padding:10px; color:#050841; background:#fff; border:1px solid #f3f3f3; font-size:14px; }
.application-body .entity-detail-shell .inline-editor > summary,.application-body .entity-detail-shell .add-purchase > summary { display:inline-flex; align-items:center; min-height:40px; padding:8px 16px; color:#202962; background:#fff; border:1px solid #202962; border-radius:22px; font-size:14px; font-weight:600; list-style:none; }
.application-body .entity-detail-shell .inline-editor > summary::-webkit-details-marker,.application-body .entity-detail-shell .add-purchase > summary::-webkit-details-marker { display:none; }
.application-body .entity-detail-shell .inline-form { gap:10px; margin-top:18px; padding-top:18px; border-color:#f3f3f3; }
.application-body .entity-detail-shell .inline-form label { color:#3c4679; font-size:11px; font-weight:500; }
.application-body .entity-detail-shell .inline-form input,.application-body .entity-detail-shell .inline-form select { min-height:44px; padding:9px 10px; color:#050841; background:#fff; border:1px solid #ececec; border-radius:0; font-size:14px; }
.application-body .entity-detail-shell .inline-form input:focus,.application-body .entity-detail-shell .inline-form select:focus { background:#f1f5fe; border-color:#3d5df6; outline:0; }
.application-body .entity-detail-shell .inline-form button,.application-body .entity-detail-shell .usda-id-form button { min-height:38px; padding:8px 16px; color:#fff; background:#3d5df6; border:0; border-radius:20px; font-size:13px; font-weight:600; }
.application-body .equivalency-editor .inline-form { display:grid; grid-template-columns:90px minmax(120px,1fr) auto 90px minmax(120px,1fr) minmax(130px,1fr) auto; align-items:end; }
.application-body .equivalency-editor .inline-form label { display:grid; gap:5px; }
.application-body .equivalency-editor .inline-form > i { align-self:center; color:#a5a9c1; font-style:normal; }
.application-body .equivalency-list { margin-top:8px; }
.application-body .equivalency-list p { min-height:58px; margin:0; padding:12px 8px; border-color:#f3f3f3; color:#050841; }
.application-body .equivalency-list p small { color:#a5a9c1; font-size:11px; }
.application-body .equivalency-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; border-bottom:1px solid #f3f3f3; }
.application-body .equivalency-row > p { border-bottom:0; }
.application-body .equivalency-actions { display:flex; gap:4px; }
.application-body .equivalency-actions form { margin:0; }
.application-body .equivalency-actions button,.application-body .cancel-equivalency { padding:6px 8px; color:#3d5df6; background:transparent; border:0; cursor:pointer; font-size:11px; }
.application-body .equivalency-actions form button { color:#f63d48; }
.application-body .cancel-equivalency { align-self:end; min-height:38px; }
.application-body .usda-id-form { gap:10px; margin:24px 0; padding:18px 0; border-block:1px solid #f3f3f3; }
.application-body .usda-id-form label { gap:6px; color:#3c4679; font-size:11px; font-weight:500; }
.application-body .usda-id-form input { min-height:44px; padding:9px 10px; background:#fff; border:1px solid #ececec; border-radius:0; font-size:14px; }
.application-body .usda-id-form a,.application-body .nutrition-mapping-head a { color:#3d5df6; font-size:12px; font-weight:600; text-decoration:none; }
.application-body .ingredient-nutrition { margin-top:20px; padding:0; background:#fff; border:0; border-radius:0; }
.application-body .nutrition-mapping-head { padding:0 0 14px; border-bottom:1px solid #3d5df6; }
.application-body .ingredient-nutrition dl div { min-height:44px; padding:10px 6px; border-color:#f3f3f3; font-size:13px; }
.application-body .ingredient-nutrition footer { color:#a5a9c1; }
@media (max-width:1180px) { .application-body .equivalency-editor .inline-form { grid-template-columns:1fr 1fr; }.application-body .equivalency-editor .inline-form > i { display:none; } }
@media (max-width:700px) { .application-body .entity-detail-shell .entity-detail-header { background:#fff; }.application-body .entity-detail-shell .entity-primary { padding-top:28px; }.application-body .entity-detail-shell .entity-tabs { overflow-x:auto; }.application-body .entity-detail-shell .entity-tabs button { flex:0 0 auto; min-width:112px; }.application-body .equivalency-editor .inline-form { grid-template-columns:1fr; } }
.application-body .prep-edit-wrap { overflow-x:auto; margin-top:26px; }
.application-body .prep-edit-table { min-width:700px; margin-top:0 !important; }
.application-body .prep-edit-table th:first-child { width:31%; }
.application-body .prep-edit-table th:nth-child(2) { width:15%; }
.application-body .prep-edit-table th:last-child { width:44px; }
.application-body .prep-edit-table select,.application-body .prep-edit-table input { width:100%; min-height:36px; padding:7px 8px; color:#050841; background:#fff; border:0; border-bottom:1px solid #ececec; border-radius:0; font-size:13px; }
.application-body .prep-edit-table .prep-row-notes { margin-top:3px; color:#757677; font-size:11px; font-style:italic; }
.application-body .prep-edit-table .percent-input { border:0; }
.application-body .prep-edit-table .percent-input i { padding-right:5px; }
.application-body .prep-row-remove { display:grid; place-items:center; width:30px; height:30px; padding:0; color:#a5a9c1; background:transparent; border:0; border-radius:50%; cursor:pointer; font-size:20px; }
.application-body .prep-row-remove:hover { color:#f63d48; background:#fff1f2; }
.application-body .prep-equivalency-link { width:100%; min-height:32px; padding:4px; color:#3d5df6; background:transparent; border:0; border-radius:3px; cursor:pointer; font-size:12px; text-align:left; }
.application-body .prep-equivalency-link:hover { background:#f1f5fe; text-decoration:underline; }
.application-body .outlined-add-action { min-height:40px; margin-top:20px; padding:8px 16px; color:#202962; background:#fff; border:1px solid #202962; border-radius:22px; cursor:pointer; font-size:14px; font-weight:600; }
.application-body #ingredient-done.dirty::after { content:""; display:inline-block; width:6px; height:6px; margin-left:7px; background:#fff; border-radius:50%; vertical-align:middle; }
@media (max-width:620px) { .ingredient-identity-form { grid-template-columns:1fr; }.ingredient-identity-form h2,.ingredient-identity-form label:nth-of-type(3),.ingredient-identity-form label:nth-of-type(4) { grid-column:1; } }
.recipe-workspace-tabs button { min-width:150px; padding:16px 18px; color:#111a49; background:transparent; border:0; border-bottom:2px solid transparent; cursor:pointer; font:700 .9rem var(--sans); }.recipe-workspace-tabs button.active { border-bottom-color:#4868f7; }.recipe-tab-panel { display:none; }.recipe-tab-panel.active { display:block; }.recipe-view-details > .recipe-derived-panel { margin-top:0; padding-top:0; border-top:0; }.recipe-view-details .derived-grid { display:block; }.recipe-view-details .derived-card { border:0; padding:0; }.recipe-view-details .derived-title h2 { font:700 1.4rem var(--sans); }
.recipe-view-equivalencies h2,.recipe-equivalence-editor h2 { font:700 1.4rem var(--sans); }.recipe-view-equivalencies > div,.recipe-equivalence-editor > div { display:grid; grid-template-columns:1fr auto 1fr; gap:12px; padding:14px 4px; border-bottom:1px solid #e8eaf0; }.recipe-view-equivalencies small,.recipe-equivalence-editor small { grid-column:1/-1; color:#8b93a7; }.recipe-equivalence-editor { margin:30px 38px; padding:24px; border:1px solid #e8eaf0; }.recipe-equivalence-editor > p { color:#8b93a7; }.recipe-equivalence-editor form { display:grid; grid-template-columns:90px 1fr auto 90px 1fr minmax(150px,1fr) auto; align-items:center; gap:8px; margin-top:20px; }.recipe-equivalence-editor input,.recipe-equivalence-editor select { min-width:0; padding:9px; border:1px solid #dfe3ec; }.recipe-equivalence-editor button { padding:10px 12px; color:white; background:#4868f7; border:0; border-radius:5px; font-weight:700; }
@media (max-width:900px) { .recipe-equivalence-editor form { grid-template-columns:1fr 1fr; }.recipe-equivalence-editor form > span { display:none; } }
.editable-entity-title { display:block; width:min(680px,44vw); margin:8px 0 2px; padding:3px 6px; color:#101a4a; background:#fff; border:1px solid #b9c5fb; border-radius:3px; font:700 clamp(1.7rem,2.4vw,2.35rem) var(--sans); letter-spacing:-.035em; }.calculate-toggle { display:inline-flex; align-items:center; gap:9px; color:#26346d; font-size:.82rem; font-weight:700; white-space:nowrap; }.calculate-toggle input { position:absolute; opacity:0; pointer-events:none; }.calculate-toggle i { position:relative; width:35px; height:20px; background:#cbd1dc; border-radius:12px; }.calculate-toggle i::after { content:""; position:absolute; top:3px; left:3px; width:14px; height:14px; background:#fff; border-radius:50%; transition:.15s; }.calculate-toggle input:checked + i { background:#43b99f; }.calculate-toggle input:checked + i::after { transform:translateX(15px); }.calculator-heading .calculate-toggle { grid-column:1/-1; justify-self:end; }.structure-heading-actions { display:flex; align-items:center; gap:18px; }.recipe-edit-workspace { display:grid; grid-template-columns:52% 48%; border-top:1px solid #e8eaf0; }.recipe-edit-structure { min-width:0; padding:0 32px 48px 38px; border-right:1px solid #e8eaf0; }.recipe-edit-structure .structure-editor { display:block; }.recipe-edit-structure .section-heading { min-height:76px; margin:0; padding:18px 0 12px; }.recipe-edit-structure .component-editor { margin-right:0; background:#fff; border-color:#e8eaf0; }.recipe-edit-static-method { min-width:0; padding:28px 30px 60px; }.recipe-edit-structure .editor-items { min-width:54rem; }.recipe-edit-structure .editor-items th:nth-child(2),.recipe-edit-structure .editor-items td:nth-child(2) { width:6rem; }.recipe-edit-structure .editor-items th:nth-child(3),.recipe-edit-structure .editor-items td:nth-child(3) { width:7rem; text-align:right; }.recipe-edit-structure .editor-items th:nth-child(4),.recipe-edit-structure .editor-items td:nth-child(4) { width:11rem; }.recipe-edit-structure .editor-items th:nth-child(5),.recipe-edit-structure .editor-items td:nth-child(5) { width:9rem; }.recipe-edit-structure .editor-items th:nth-child(6),.recipe-edit-structure .editor-items td:nth-child(6) { width:6rem; }.recipe-edit-structure .editor-items th:last-child,.recipe-edit-structure .editor-items td:last-child { width:8rem; }.recipe-edit-static-method h2 { margin-bottom:18px; }
@media (max-width:980px) { .recipe-edit-workspace { grid-template-columns:1fr; }.recipe-edit-structure { border-right:0; }.editable-entity-title { width:min(680px,70vw); } }
@media (max-width:620px) { .recipe-edit-structure,.recipe-edit-static-method { padding-inline:18px; }.editable-entity-title { width:calc(100vw - 48px); }.structure-heading-actions { align-items:flex-end; flex-direction:column; gap:8px; } }
.percent-mode { display:inline-flex; border:1px solid #dfe3ec; border-radius:18px; overflow:hidden; }.percent-mode button { min-width:96px; padding:7px 11px; color:#26346d; background:#fff; border:0; cursor:pointer; font-weight:700; }.percent-mode button.active { background:#e9efff; }.calculator-percent-controls { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:14px; }.calculator-percent-controls .calculate-toggle { justify-self:auto; }.basis-choice { display:inline-flex; align-items:center; gap:4px; margin-left:10px; color:#4868f7; font-size:.68rem; font-weight:700; }.basis-choice input { width:auto; }.structure-heading-actions { flex-wrap:wrap; justify-content:flex-end; }
.editor-items .base-column { width:4.5rem; text-align:center; }.editor-items .base-column input { width:17px; height:17px; margin:0; accent-color:#4868f7; }.bakers-base-summary { display:grid; grid-template-columns:55px 1fr; gap:14px; margin:0 0 28px; padding:18px; background:#f7f7f8; border-radius:5px; }.bakers-base-summary > strong { color:#a0a7ba; font-weight:500; }.bakers-base-summary p { display:grid; grid-template-columns:80px 1fr; gap:10px; margin:0 0 10px; }.bakers-base-summary p:last-child { margin-bottom:0; }.bakers-base-summary a { color:#111a49; text-decoration:none; font-weight:700; }.bakers-base-summary span { color:#26346d; }
.bakers-base-summary p > span { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; border-bottom:1px solid #a5a9c1; }
.bakers-base-summary input,.bakers-base-summary select { min-width:0; padding:3px 2px; color:#26346d; background:transparent; border:0; font:inherit; }
.bakers-base-summary input { width:100%; text-align:right; }
.bakers-base-summary select { max-width:48px; color:#3d5df6; }
.entity-directory-table { background:#fff; border:1px solid #eef0f5; }.entity-directory-toolbar { display:grid; grid-template-columns:24px minmax(12rem,1fr) auto auto; align-items:center; gap:14px; min-height:58px; padding:0 20px; border-bottom:1px solid #eef0f5; }.entity-directory-toolbar input,.entity-directory-row > input { width:20px; height:20px; margin:0; accent-color:#3d5df6; }.entity-directory-toolbar strong { color:#5366fa; font-size:.88rem; }.entity-directory-toolbar button { padding:7px 10px; color:#64748b; background:transparent; border:0; cursor:pointer; }.entity-directory-toolbar .bulk-delete { color:#a73838; }.directory-error { margin:0; padding:11px 20px; color:#8d2e2e; background:#fff1f1; border-bottom:1px solid #f5cece; }.entity-directory-head,.entity-directory-row { display:grid; align-items:center; gap:14px; padding:0 20px; }.entity-directory-head { grid-template-columns:24px 28px minmax(14rem,1fr) repeat(var(--directory-columns),minmax(7rem,10rem)) 28px; min-height:38px; color:#8b93a7; border-bottom:1px solid #eef0f5; font-size:.7rem; text-transform:uppercase; }.entity-directory-head > span:first-child { grid-column:1/3; }.entity-directory-row { grid-template-columns:24px 28px minmax(14rem,1fr) repeat(var(--directory-columns),minmax(7rem,10rem)) 28px; min-height:62px; border-bottom:1px solid #eef0f5; }.entity-directory-row:last-child { border-bottom:0; }.entity-directory-row.selected { background:#edf2ff; }.entity-directory-head.columns-1,.entity-directory-row.columns-1 { --directory-columns:1; }.entity-directory-head.columns-2,.entity-directory-row.columns-2 { --directory-columns:2; }.entity-directory-head.columns-3,.entity-directory-row.columns-3 { --directory-columns:3; }.entity-directory-name { display:flex; flex-direction:column; min-width:0; }.entity-directory-name a { overflow:hidden; color:#111a49; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }.entity-directory-name small { color:#8b93a7; }.directory-attention { display:flex; gap:5px; }.directory-attention em { padding:2px 5px; color:#9a3412; background:#fff0e8; border-radius:3px; font-size:.62rem; font-style:normal; font-weight:700; text-transform:uppercase; }.entity-directory-value { overflow:hidden; color:#687086; font-size:.82rem; text-overflow:ellipsis; white-space:nowrap; }.entity-row-actions { position:relative; }.entity-row-actions > summary { color:#a0a7ba; cursor:pointer; font-size:1.4rem; list-style:none; text-align:center; }.entity-row-actions > summary::-webkit-details-marker { display:none; }.entity-row-actions > div { position:absolute; z-index:5; top:28px; right:0; width:130px; padding:5px; background:#fff; border:1px solid #dfe3ec; border-radius:5px; box-shadow:0 8px 22px rgba(20,30,60,.14); }.entity-row-actions a,.entity-row-actions button { display:block; width:100%; padding:8px 10px; color:#26346d; background:transparent; border:0; text-align:left; text-decoration:none; cursor:pointer; }.entity-row-actions button { color:#a73838; }.entity-row-actions a:hover,.entity-row-actions button:hover { background:#f7f8fc; }
@media (max-width:760px) { .entity-directory-table { border-inline:0; }.entity-directory-head { display:none; }.entity-directory-row,.entity-directory-row.columns-1,.entity-directory-row.columns-2,.entity-directory-row.columns-3 { grid-template-columns:24px 28px minmax(0,1fr) 28px; padding-inline:14px; }.entity-directory-value { display:none; }.entity-directory-toolbar { padding-inline:14px; }.entity-directory-toolbar strong { min-width:0; }.entity-directory-toolbar button { padding-inline:4px; } }
.delete-confirmation { width:min(430px,calc(100% - 32px)); padding:24px; color:#172033; background:#fff; border:0; border-radius:10px; box-shadow:0 20px 60px rgba(15,23,42,.25); }.delete-confirmation::backdrop { background:rgba(0,0,0,0.5); }.delete-confirmation h2 { margin:0 30px 10px 0; font:700 1.35rem var(--sans); }.delete-confirmation p { margin:0 0 24px; color:#64748b; }.delete-confirmation > div { display:flex; justify-content:flex-end; gap:10px; }.delete-confirmation button { padding:9px 14px; background:#fff; border:1px solid #d6dbe5; border-radius:5px; cursor:pointer; font-weight:700; }.delete-confirmation .confirm-delete { color:#fff; background:#b93838; border-color:#b93838; }.delete-confirmation .dialog-close { position:absolute; top:14px; right:14px; padding:2px 7px; color:#788197; border:0; font-size:1.25rem; }
.entity-directory-head,.entity-directory-row,.entity-directory-head.columns-1,.entity-directory-head.columns-2,.entity-directory-head.columns-3,.entity-directory-row.columns-1,.entity-directory-row.columns-2,.entity-directory-row.columns-3 { grid-template-columns:24px 28px minmax(14rem,1fr) 28px; }.entity-directory-head > span:first-child { grid-column:auto; }.entity-directory-head > span:nth-child(2) { text-align:center; }.entity-directory-name { justify-content:center; }.entity-directory-toolbar { min-height:52px; }
/* Application interface skin. */
.application-body {
--ink:#050841;
--muted:#a5a9c1;
--paper:#fbfbfb;
--card:#fff;
--line:#eeeeF3;
--green:#3d5df6;
--orange:#647df8;
color:#050841;
background:#f3f3f3;
font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
font-size:14px;
font-weight:400;
letter-spacing:0;
}
.application-body main:not(.immersive-main) { min-height:100vh; }
.application-body button,.application-body input,.application-body select,.application-body textarea { font:inherit; }
.application-body button,.application-body summary,.application-body a { -webkit-tap-highlight-color:transparent; }
.application-body h1,.application-body h2,.application-body h3 { color:#050841; font-family:inherit; letter-spacing:-.015em; }
.application-body p { line-height:1.5; }
/* Home workspace */
.application-body .directory-workspace { width:min(1120px,calc(100% - 48px)); padding:0 0 64px; }
.application-body .workspace-search-tools { align-items:center; justify-content:flex-end; gap:12px; min-height:80px; margin-block:0 34px; margin-inline:calc(50% - 50vw); padding-inline:calc((100vw - min(1120px, calc(100vw - 48px)))/2); background:#fbfbfb; border-bottom:1px solid #f3f3f3; }
.application-body .workspace-global-search { flex:0 1 610px; min-height:0; padding:0; background:transparent; border:0; border-radius:0; box-shadow:none; }
.application-body .workspace-global-search:focus-within { box-shadow:none; }
.application-body form.workspace-global-search input[type="search"] { padding:8px 0 6px; color:#050841; background:transparent; border:0; border-bottom:1px solid #e4e5ed; border-radius:0; font-size:16px; }
.application-body .workspace-global-search:focus-within input[type="search"] { border-bottom:2px solid #3d5df6; }
.application-body .workspace-global-search input::placeholder { color:#a5a9c1; }
.application-body .search-type-filter summary { min-height:44px; padding:10px 16px; color:rgba(0,0,0,0.87); background:#fff; border:1px solid #e4e5ed; border-radius:20px; font-size:16px; font-weight:400; }
@keyframes meez-menu-in { from { opacity:0; transform:translateY(4px) scale(.98); } to { opacity:1; transform:none; } }
.application-body .workspace-new-menu[open] > nav,.application-body .filter-menu[open] > form,.application-body .search-type-filter[open] > form,.application-body .entity-row-actions[open] > div { animation:meez-menu-in .2s cubic-bezier(0.4,0,0.2,1); }
.application-body .search-type-filter form,.application-body .filter-menu form,.application-body .workspace-new-menu nav { border:1px solid #eeeef3; border-radius:4px; box-shadow:0 8px 25px rgba(5,8,65,.12); }
.application-body .workspace-new-menu > summary,.application-body .detail-new-menu > summary { padding:10px 17px; color:#fff; background:#3d5df6; border-radius:20px; font-size:14px; font-weight:600; }
.application-body .workspace-new-menu,.application-body .detail-new-menu { position:relative; flex:none; }
.application-body .workspace-new-menu > summary,.application-body .detail-new-menu > summary { display:grid; grid-template-columns:18px auto 12px; align-items:center; gap:7px; min-height:40px; padding:6px 12px 6px 9px; color:#fff; background:#3d5df6; border:1px solid #3d5df6; border-radius:6px; box-shadow:0 1px 2px rgba(5,8,65,.12); cursor:pointer; font-size:14px; font-weight:600; line-height:1; list-style:none; transition:background .15s,border-color .15s,box-shadow .15s; }
.application-body .workspace-new-menu > summary:hover,.application-body .detail-new-menu > summary:hover { background:#304fdf; border-color:#304fdf; }
.application-body .workspace-new-menu > summary:focus-visible,.application-body .detail-new-menu > summary:focus-visible { outline:3px solid rgba(61,93,246,.22); outline-offset:2px; }
.application-body .workspace-new-menu[open] > summary,.application-body .detail-new-menu[open] > summary { background:#304fdf; border-color:#304fdf; box-shadow:0 0 0 3px rgba(61,93,246,.14); }
.application-body .new-trigger-plus { display:grid; place-items:center; width:18px; height:18px; font-size:18px; font-weight:400; line-height:1; }
.application-body .new-trigger-chevron { color:#dce2ff; font-size:14px; transform:translateY(-1px); transition:transform .15s; }
.application-body details[open] > summary .new-trigger-chevron { transform:rotate(180deg) translateY(1px); }
.application-body .workspace-new-menu > nav,.application-body .detail-new-menu > div { display:block; position:absolute; z-index:30; top:calc(100% + 8px); right:0; width:272px; padding:6px; background:#fff; border:1px solid #e4e5ed; border-radius:7px; box-shadow:0 12px 34px rgba(5,8,65,.16); }
.application-body .workspace-new-menu > nav a,.application-body .detail-new-menu > div a { display:grid; grid-template-columns:30px minmax(0,1fr); align-items:center; gap:11px; min-height:58px; padding:8px 10px; color:#050841; border-radius:5px; text-decoration:none; }
.application-body .workspace-new-menu > nav a:hover,.application-body .detail-new-menu > div a:hover { background:#f1f5fe; }
.application-body .workspace-new-menu > nav a:focus-visible,.application-body .detail-new-menu > div a:focus-visible { outline:2px solid #647df8; outline-offset:-2px; }
.application-body .workspace-new-menu > nav a + a,.application-body .detail-new-menu > div a + a { border-top:1px solid #f1f1f5; }
.application-body .workspace-new-menu > nav a > span:last-child,.application-body .detail-new-menu > div a > span:last-child { display:flex; min-width:0; flex-direction:column; gap:3px; }
.application-body .workspace-new-menu strong,.application-body .detail-new-menu strong { font-size:14px; font-weight:600; }
.application-body .workspace-new-menu small,.application-body .detail-new-menu small { overflow:hidden; color:#8b93a7; font-size:12px; font-weight:400; text-overflow:ellipsis; white-space:nowrap; }
/* Menu treatment: quiet white surfaces, navy text, roomy rows. */
.application-body .workspace-new-menu > summary,.application-body .detail-new-menu > summary { grid-template-columns:18px auto; gap:6px; min-height:36px; padding:7px 15px 7px 11px; border-radius:999px; box-shadow:none; font-size:16px; font-weight:500; }
.application-body .new-trigger-plus { font-size:20px; }
.application-body .workspace-new-menu > nav,.application-body .detail-new-menu > div { width:340px; padding:16px 0; border-color:#e6e7ee; border-radius:4px; box-shadow:0 2px 5px rgba(5,8,65,.18); }
.application-body .workspace-new-menu > nav a,.application-body .detail-new-menu > div a { grid-template-columns:32px minmax(0,1fr); gap:14px; min-height:50px; padding:8px 28px; border-radius:0; }
.application-body .workspace-new-menu > nav a + a,.application-body .detail-new-menu > div a + a { border-top:0; }
.application-body .new-menu-icon { display:grid; place-items:center; width:24px; height:24px; color:#a5a9c1; font-size:19px; }
.application-body .workspace-new-menu strong,.application-body .detail-new-menu strong { color:#202962; font-size:14px; font-weight:600; }
.application-body .workspace-new-menu > nav a:hover,.application-body .detail-new-menu > div a:hover { background:#f1f5fe; transition:background-color .15s cubic-bezier(0.4,0,0.2,1); }
.application-body .search-type-filter form,.application-body .filter-menu form { width:300px; padding:14px 0; color:#202962; background:#fff; border:1px solid #e6e7ee; border-radius:4px; box-shadow:0 2px 5px rgba(5,8,65,.18); }
.application-body .search-type-filter label,.application-body .filter-menu label { min-height:42px; padding:8px 20px; font-size:14px; }
.application-body .search-type-filter label:hover,.application-body .filter-menu label:hover { background:#f1f5fe; transition:background-color .15s cubic-bezier(0.4,0,0.2,1); }
.application-body .filter-menu fieldset { margin:6px 14px; padding:6px 0; border:0; border-top:1px solid #eeeef3; }
.application-body .filter-menu legend { padding:12px 6px 4px; color:#a5a9c1; font-size:11px; font-weight:500; letter-spacing:.02em; text-transform:none; }
.application-body .search-type-filter form > div,.application-body .filter-menu form > div { justify-content:flex-end; margin:8px 14px 0; padding-top:12px; border-top:1px solid #eeeef3; }
.application-body .search-type-filter button,.application-body .filter-menu button { padding:8px 13px; color:#fff; background:#3d5df6; border:0; border-radius:4px; font-size:13px; font-weight:600; }
.application-body .search-type-filter form a,.application-body .filter-menu form a { color:#647df8; font-size:13px; text-decoration:none; }
.application-body .entity-row-actions > div { width:150px; padding:6px 0; border:1px solid #e6e7ee; border-radius:4px; box-shadow:0 2px 5px rgba(5,8,65,.18); }
.application-body .entity-row-actions a,.application-body .entity-row-actions button { min-height:42px; padding:10px 18px; color:#202962; font-size:14px; }
.application-body .entity-row-actions button { color:#f63d48; }
.application-body .entity-row-actions a:hover,.application-body .entity-row-actions button:hover { background:#f1f5fe; transition:background-color .15s cubic-bezier(0.4,0,0.2,1); }
.application-body .identity-edit > form { border-color:#e6e7ee; border-radius:4px; box-shadow:0 2px 5px rgba(5,8,65,.18); }
.application-body .workspace-pills { gap:8px; padding:0 0 38px; }
.application-body .workspace-pills > a { min-height:40px; padding:8px 16px 8px 12px; color:rgba(0,0,0,0.87); border:1px solid #ededf2; border-radius:999px; box-shadow:none; font-size:16px; font-weight:400; transition:background-color .15s cubic-bezier(0.4,0,0.2,1),border-color .15s cubic-bezier(0.4,0,0.2,1); }
.application-body .workspace-pills > a:hover { background:rgba(0,0,0,0.04); border-color:#ededf2; }
.application-body .workspace-pills > a.active { background:#DBE4FF; border-color:#DBE4FF; }
.application-body .workspace-pills > a small { color:inherit; font-size:inherit; font-weight:inherit; }
.application-body .workspace-pill-icon { width:25px; height:25px; background:#647df8; font-size:10px; font-weight:700; }
.application-body .workspace-pill-icon.ingredient,.application-body .workspace-pill-icon.purchase { background:#40b49a; }
.application-body .workspace-pill-icon.book { background:#6234f2; }
.application-body .workspace-pills .filter-menu summary { min-height:44px; padding:10px 16px; color:rgba(0,0,0,0.87); background:#fff; border:1px solid #e4e5ed; border-radius:20px; font-size:16px; font-weight:400; }
.application-body .entity-directory-table,.application-body .workspace-search-results > div { overflow:visible; border:0; background:#fff; }
.application-body .entity-directory-toolbar { grid-template-columns:36px 112px minmax(0,1fr) auto; gap:8px; min-height:57px; padding:0 20px; background:#fbfbfb; border-bottom:1px solid #f3f3f3; }
.application-body .entity-directory-head > span { font-size:14px; font-weight:500; color:#3c4679; text-transform:none; }
.application-body .entity-directory-toolbar-actions { display:flex; align-items:center; gap:12px; justify-self:end; }
.application-body .entity-directory-toolbar strong { color:#3d5df6; font-size:13px; font-weight:600; }
.application-body .entity-directory-toolbar button { color:#647df8; font-size:13px; }
.application-body .entity-directory-toolbar .bulk-delete { color:#f63d48; }
.application-body .entity-directory-row,.application-body .entity-directory-row.columns-1,.application-body .entity-directory-row.columns-2,.application-body .entity-directory-row.columns-3 { grid-template-columns:36px 112px minmax(14rem,1fr) 36px; gap:8px; min-height:57px; padding:0 20px; border-bottom:1px solid #f3f3f3; }
.application-body .entity-directory-table.read-only .entity-directory-row { grid-template-columns:30px minmax(0,1fr); }
.application-body .entity-directory-row.selected { background:#f1f5fe; }
.application-body .entity-directory-name a,.application-body .entity-directory-name strong { color:#3d5df6; font-size:16px; font-weight:300; }
.application-body .entity-directory-row .workspace-pill-icon { width:24px; height:24px; justify-self:center; background:transparent; border-radius:0; color:#647df8; font-size:14px; }
.application-body .entity-directory-row .workspace-pill-icon.ingredient,.application-body .entity-directory-row .workspace-pill-icon.purchase { color:#40b49a; }
.application-body .entity-directory-row .workspace-pill-icon.book { color:#6234f2; }
.application-body .entity-row-actions { opacity:0; transition:opacity .15s cubic-bezier(0.4,0,0.2,1); }
.application-body .entity-directory-row:hover .entity-row-actions,.application-body .entity-directory-row:focus-within .entity-row-actions,.application-body .entity-row-actions[open] { opacity:1; }
.application-body .entity-row-actions > summary { display:grid; place-items:center; width:24px; height:24px; color:#a5a9c1; background:transparent; border-radius:50%; font-size:18px; }
.application-body .entity-row-actions > summary:hover { background:rgba(0,0,0,0.04); }
.application-body .entity-row-actions > div { border-color:#eeeef3; border-radius:4px; box-shadow:0 8px 25px rgba(5,8,65,.12); }
.application-body .entity-row-actions button { color:#f63d48; }
.application-body input[type="checkbox"] { accent-color:#3d5df6; }
/* Full-width entity workspaces */
.application-body .immersive-main { color:#050841; background:#fff; }
.application-body .detail-utility { min-height:58px; padding:8px 28px; background:#fbfbfb; border-color:#f3f3f3; }
.application-body .detail-utility input::placeholder { color:#a5a9c1; }
.application-body .detail-utility > a { color:#202962; font-size:13px; font-weight:500; }
.application-body .immersive-main .entity-detail-header { min-height:164px; padding:25px 38px; border-color:#eeeef3; }
.application-body .entity-detail-header h1 { margin:9px 0 4px; color:#050841; font-size:28px; font-weight:600; line-height:1.18; letter-spacing:-.025em; }
.application-body .entity-detail-header p { color:#a5a9c1; font-size:13px; }
.application-body .entity-breadcrumb a { color:#647df8; font-size:13px; }
.application-body .identity-edit > summary { padding:7px 15px; color:#3d5df6; border-color:#3d5df6; border-radius:999px; font-size:13px; font-weight:600; }
.application-body .immersive-main .entity-detail-grid,.application-body .immersive-main .recipe-structure-workspace .structure-editor { border-color:#eeeef3; }
.application-body .immersive-main .entity-primary { padding:42px 38px; border-color:#eeeef3; }
.application-body .immersive-main .entity-secondary { padding:0 32px; }
.application-body .entity-tabs { min-height:58px; border-color:#f3f3f3; }
.application-body .entity-tabs button,.application-body .recipe-workspace-tabs button { padding:17px 10px; color:#202962; font-size:15px; font-weight:400; }
.application-body .entity-tabs button.active,.application-body .recipe-workspace-tabs button.active { color:#050841; background:#f1f5fe; border-bottom:0; }
.application-body .entity-tab-panel { padding-top:38px; }
.application-body .entity-section { margin-bottom:48px; }
.application-body .entity-section h2,.application-body .entity-tab-panel h2,.application-body .recipe-view-method h2 { font-size:20px; font-weight:600; }
.application-body .panel-intro,.application-body .empty-copy { color:#a5a9c1; font-size:13px; }
.application-body .prep-action-table th,.application-body .prep-action-table td { padding:12px 8px; border-color:#eeeef3; }
.application-body .prep-action-table th { color:#a5a9c1; font-size:11px; font-weight:500; letter-spacing:.03em; text-transform:none; }
.application-body .additional-card { padding:25px 0; border:0; border-top:1px solid #eeeef3; }
.application-body .additional-card > details { border-bottom:1px solid #eeeef3; }
/* Recipe workspace and controls */
.application-body .immersive-main .recipe-detail-shell .entity-detail-header { min-height:116px; padding:20px 38px; }
.application-body .immersive-main .recipe-workspace-tabs { border-color:#f3f3f3; }
.application-body .recipe-overview-strip { border-color:#eeeef3; }
.application-body .recipe-yield-summary { border-color:#eeeef3; border-radius:2px; }
.application-body .recipe-yield-summary span,.application-body .recipe-yield-summary small { color:#a5a9c1; }
.application-body .recipe-structure-workspace .component-editor,.application-body .recipe-structure-workspace .method-editor,.application-body .recipe-structure-workspace .method-editor li { border-color:#eeeef3; }
.application-body .recipe-structure-workspace .component-editor { border-radius:0; box-shadow:none; }
.application-body .recipe-structure-workspace .section-heading h2 { color:#050841; font-size:20px; font-weight:600; }
.application-body table th { color:#a5a9c1; font-size:11px; font-weight:500; letter-spacing:.02em; text-transform:none; }
.application-body table td { color:#202962; }
.application-body th,.application-body td { border-color:#eeeef3; }
.application-body input:not([type="checkbox"]):not([type="radio"]),.application-body select,.application-body textarea { color:#050841; border-color:#e4e5ed; border-radius:3px; }
.application-body .detail-utility input[type="search"] { min-height:40px; color:#050841; background:transparent; border:0; border-bottom:1px solid #e4e5ed; border-radius:0; }
.application-body button { border-radius:3px; }
.application-body .primary-command,.application-body .editor-actions button,.application-body .inline-form button { background:#3d5df6; }
.application-body .recipe-view-method li { border-color:#eeeef3; }
.application-body .recipe-view-method li > strong { color:#647df8; }
.application-body .detail-utility .detail-new { background:#3d5df6; border-radius:999px; }
.application-body .edit-command { color:#3d5df6; border-color:#3d5df6; border-radius:999px; }
.application-body .ingredient-purchase-form .purchase-form-actions button { border-radius:999px; }
.application-body .nutrition-source,.application-body .muted { color:#a5a9c1; }
.application-body .recipe-edit-nutrition { width:48%; margin-left:52%; padding:38px 32px 56px; border-top:1px solid #eeeef3; border-left:1px solid #eeeef3; }
.application-body .nutrition-readiness { max-width:560px; margin-bottom:28px; }
.application-body .nutrition-readiness > header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:20px; }
.application-body .nutrition-readiness h2 { margin:0 0 3px; font-size:20px; font-weight:600; }
.application-body .nutrition-readiness p { margin:0; color:#a5a9c1; font-size:13px; }
.application-body .nutrition-readiness > header button { padding:8px 15px; color:#fff; background:#3d5df6; border:0; border-radius:18px; font-weight:600; cursor:pointer; }
.application-body .nutrition-readiness > header button:disabled { color:#a5a9c1; background:#f1f1f4; cursor:not-allowed; }
.application-body .nutrition-check { display:grid; grid-template-columns:26px 1fr; align-items:center; gap:10px; min-height:58px; padding:8px 12px; background:#fff8f2; border:1px solid #f6e2d2; }
.application-body .nutrition-check.complete { background:#f3faf8; border-color:#d9eee9; }
.application-body .nutrition-check > span,.application-body .nutrition-status-dot { display:grid; place-items:center; width:22px; height:22px; color:#fff; background:#e19351; border-radius:50%; font-size:11px; font-weight:700; }
.application-body .nutrition-check.complete > span,.application-body .nutrition-status-dot.mapped { background:#40b49a; }
.application-body .nutrition-check strong,.application-body .nutrition-check small { display:block; }
.application-body .nutrition-check small { margin-top:2px; color:#8b93a7; }
.application-body .nutrition-serving-form { display:flex; align-items:center; gap:7px; margin-top:9px; }
.application-body .nutrition-serving-form input { width:110px; min-height:34px; padding:6px 8px; background:#fff; }
.application-body .nutrition-serving-form button { min-height:34px; padding:6px 12px; color:#fff; background:#3d5df6; border:0; font-weight:600; }
.application-body .retention-input { display:flex; align-items:center; gap:4px; }.application-body .retention-input input { width:68px; }
.application-body .auto-yield-action { display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:12px; width:48%; margin-left:52%; padding:18px 32px; border-left:1px solid #eeeef3; border-top:1px solid #eeeef3; }.application-body .auto-yield-action button { padding:8px 12px; color:#fff; background:#3d5df6; border:0; }.application-body .auto-yield-action small { grid-column:1/-1; color:#a5a9c1; }
.application-body .cost-diagnostics { margin-top:18px; padding:12px; color:#8a4b25; background:#fff8f2; }.application-body .cost-diagnostics summary { cursor:pointer; font-weight:600; }.application-body .cost-diagnostics ul { padding-left:20px; }
.recipe-cost-ledger { color:#050841; }
.recipe-cost-ledger > header { margin-bottom:26px; }
.recipe-cost-ledger > header h2 { margin:0 0 6px !important; font-size:24px; }
.recipe-cost-ledger > header p { margin:0; color:#8d92a2; font-size:14px; line-height:1.5; }
.cost-ledger-heading { display:grid; grid-template-columns:minmax(0,1fr) 130px; gap:18px; padding:10px 18px; color:#a0a7bd; border-bottom:1px solid #eeeef3; font-size:12px; font-weight:600; }
.cost-ledger-heading > span:last-child { text-align:right; }
.cost-ledger-heading button { padding:0 3px; color:#4560ff; background:transparent; border:0; font:inherit; cursor:pointer; }
.cost-ledger-heading i { color:#a0a7bd; font-style:normal; }
.cost-ledger-line { border-bottom:1px solid #eeeef3; background:#fff; }
.cost-ledger-line > summary,.cost-ledger-line.flat { display:grid; grid-template-columns:24px 30px minmax(0,1fr) 22px 130px; align-items:center; gap:10px; min-height:66px; padding:10px 18px; list-style:none; }
.cost-ledger-line > summary::-webkit-details-marker { display:none; }
.cost-ledger-line > summary { cursor:pointer; }
.cost-ledger-line > summary::before { content:"⌄"; grid-column:1; color:#101a4a; font-size:20px; transform:rotate(-90deg); transition:.12s; }
.cost-ledger-line[open] > summary::before { transform:none; }
.cost-ledger-line.flat { grid-template-columns:24px 30px minmax(0,1fr) 22px 130px; }
.cost-ledger-line.flat::before { content:""; }
.cost-subject-icon { display:grid; grid-column:2; place-items:center; width:28px; height:28px; color:#fff; background:#54a19a; border-radius:50%; font-size:10px; }
.cost-subject-icon.recipe { background:#6771a7; }
.cost-ledger-line a { min-width:0; overflow:hidden; color:#050841; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }
.cost-attention { display:grid; place-items:center; width:17px; height:17px; color:#f43d4b; border:1.5px solid currentColor; border-radius:50%; font-size:11px; font-weight:700; }
.cost-line-value { grid-column:5; text-align:right; white-space:nowrap; }
.cost-line-value a { color:#8d92a2; }
.cost-line-detail { display:grid; grid-template-columns:minmax(0,1fr) minmax(120px,.4fr); gap:24px 40px; padding:18px 52px 28px; background:#fff; }
.cost-line-detail > div:not(.cost-child-lines) { display:grid; gap:5px; }
.cost-line-detail small { color:#a0a7bd; }
.cost-line-detail strong { font-weight:500; }
.cost-child-lines { grid-column:1/-1; border-top:1px solid #eeeef3; }
.cost-summary { width:min(520px,100%); margin:52px 0 0 auto; }
.cost-summary > div { display:grid; gap:8px; margin-bottom:18px; }
.cost-summary > div > strong { font-size:14px; }
.cost-summary > div > span { display:flex; justify-content:space-between; min-height:58px; padding:18px 20px; background:#f7f7f8; font-size:16px; }
.cost-summary small { font:inherit; }
@media (max-width:620px) { .cost-ledger-heading { grid-template-columns:1fr 82px; padding-inline:10px; }.cost-ledger-line > summary,.cost-ledger-line.flat { grid-template-columns:16px 26px minmax(0,1fr) 18px 82px; gap:7px; padding-inline:10px; }.cost-line-value { grid-column:5; }.cost-line-detail { grid-template-columns:1fr; padding-inline:34px; }.cost-child-lines { grid-column:1; } }
.application-body .entity-header-actions { display:flex; align-items:center; gap:8px; }
.application-body .detail-actions-menu { position:relative; z-index:12; }
.application-body .detail-actions-menu > summary { display:grid; place-items:center; width:36px; height:36px; color:#a5a9c1; border-radius:50%; cursor:pointer; font-size:22px; line-height:1; list-style:none; }
.application-body .detail-actions-menu > summary::-webkit-details-marker { display:none; }
.application-body .detail-actions-menu > summary:hover,.application-body .detail-actions-menu[open] > summary { color:#202962; background:#f1f5fe; }
.application-body .detail-actions-menu > div { position:absolute; top:42px; right:0; width:190px; padding:6px 0; background:#fff; border:1px solid #e6e7ee; border-radius:4px; box-shadow:0 2px 5px rgba(5,8,65,.18); }
.application-body .detail-actions-menu form { margin:0; }
.application-body .detail-actions-menu button { display:block; width:100%; min-height:42px; padding:10px 18px; color:#202962; background:transparent; border:0; border-radius:0; cursor:pointer; font-size:14px; text-align:left; }
.application-body .detail-actions-menu button:hover { background:#f1f5fe; }
.application-body .book-workspace { width:min(900px,calc(100% - 48px)); min-height:600px; margin:0 auto; padding:42px 0; }.application-body .book-details-form { display:grid; grid-template-columns:1fr 1.4fr auto; align-items:end; gap:12px; margin-bottom:32px; }.application-body .book-details-form label { display:grid; gap:5px; }.application-body .book-details-form input { padding:9px; }.application-body .book-details-form button,.application-body .book-membership header button { padding:9px 14px; color:#fff; background:#3d5df6; border:0; }.application-body .book-membership > header { display:flex; justify-content:space-between; align-items:start; padding-bottom:18px; border-bottom:1px solid #eeeef3; }.application-body .book-membership h2 { margin:0; font-size:20px; }.application-body .book-membership p { margin:4px 0 0; color:#a5a9c1; }.application-body .book-recipe-row { display:grid; grid-template-columns:24px 28px 1fr; align-items:center; gap:12px; min-height:60px; border-bottom:1px solid #eeeef3; }.application-body .book-recipe-row > a { display:flex; flex-direction:column; text-decoration:none; }.application-body .book-recipe-row small { color:#a5a9c1; }
.application-body .book-membership.read-only .book-recipe-row { grid-template-columns:28px minmax(0,1fr); }
.application-body .recipe-additional-editor { width:min(800px,calc(100% - 76px)); margin:36px 38px; padding-top:28px; border-top:1px solid #eeeef3; }.application-body .recipe-additional-editor > form { display:grid; gap:14px; }.application-body .recipe-additional-editor label { display:grid; gap:5px; }.application-body .recipe-additional-editor input,.application-body .recipe-additional-editor textarea,.application-body .recipe-additional-editor select { padding:9px; }.application-body .recipe-additional-editor fieldset { display:grid; grid-template-columns:120px 120px 1fr; gap:10px; border:1px solid #eeeef3; }.application-body .recipe-additional-editor button { justify-self:start; padding:9px 14px; color:#fff; background:#3d5df6; border:0; }
.application-body .nutrition-ingredient-list { margin-top:16px; border-top:1px solid #eeeef3; }
.application-body .nutrition-list-heading { display:flex; justify-content:space-between; gap:20px; padding:14px 4px 10px; color:#202962; }
.application-body .nutrition-list-heading small { color:#a5a9c1; }
.application-body .nutrition-ingredient-list > a { display:grid; grid-template-columns:24px minmax(0,1fr) auto 14px; align-items:center; gap:10px; min-height:58px; padding:7px 4px; border-bottom:1px solid #eeeef3; text-decoration:none; }
.application-body .nutrition-ingredient-list > a > span:nth-child(2) { min-width:0; }
.application-body .nutrition-ingredient-list strong,.application-body .nutrition-ingredient-list small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.application-body .nutrition-ingredient-list strong { color:#050841; font-weight:500; }
.application-body .nutrition-ingredient-list small { margin-top:2px; color:#a5a9c1; font-size:12px; }
.application-body .nutrition-ingredient-list em { color:#8b93a7; font-size:12px; font-style:normal; }
.application-body .nutrition-ingredient-list b { color:#a5a9c1; font-size:18px; }
.application-body .recipe-derived-panel .nutrition-label,.application-body .recipe-edit-nutrition .nutrition-label { max-width:430px; }
.application-body .recipe-view-formula .calculator-heading { grid-template-columns:minmax(0,1fr) 176px 176px; }
.application-body .calculator-heading .basis-input { gap:6px; color:#8b93a7; font-size:11px; font-weight:500; letter-spacing:.02em; text-transform:none; }
.application-body .calculator-heading .recipe-scale-control { display:grid; grid-template-columns:minmax(0,1fr) 48px; align-items:center; width:100%; height:40px; color:#202962; background:#fff; border:1px solid #e4e5ed; border-radius:4px; overflow:hidden; }
.application-body .calculator-heading .batch-size-control { grid-template-columns:minmax(0,1fr); }
.application-body .calculator-heading .recipe-scale-control:focus-within { border-color:#647df8; box-shadow:0 0 0 2px rgba(61,93,246,.12); }
.application-body .calculator-heading .recipe-scale-control input { width:100%; height:38px; min-width:0; padding:8px 10px; color:#050841; background:transparent; border:0; outline:0; font-size:14px; font-weight:500; text-align:left; }
.application-body .calculator-heading .input-with-unit > span { display:grid; place-items:center; height:100%; color:#647df8; border-left:1px solid #eeeef3; font-size:14px; font-weight:600; }
.application-body .calculator-heading .recipe-scale-control select { width:100%; height:38px; padding:0 6px; color:#647df8; background:#fff; border:0; border-left:1px solid #eeeef3; border-radius:0; outline:0; font-size:13px; font-weight:600; cursor:pointer; text-align:center; }
.application-body .workspace-pills > a.archive-link { margin-left:auto; color:#8b93a7; background:transparent; border-color:transparent; }
.application-body .archive-workspace { width:min(900px,calc(100% - 48px)); padding:42px 0; }
.application-body .archive-workspace h1 { margin:8px 0; font-size:28px; }
.application-body .archive-workspace header p { color:#a5a9c1; }
.application-body .archive-row { display:grid; grid-template-columns:28px 1fr auto; align-items:center; gap:12px; min-height:60px; border-bottom:1px solid #eeeef3; }
.application-body .archive-row small { display:block; color:#a5a9c1; }
.application-body .archive-row button { padding:7px 12px; color:#3d5df6; background:#fff; border:1px solid #cfd5fa; }
.application-body .ingredient-merge { margin:24px 0; padding:16px; border:1px solid #f0d6d6; }
.application-body .ingredient-merge summary { color:#a73838; cursor:pointer; font-weight:600; }
.application-body .ingredient-merge form { display:flex; gap:8px; }
.application-body .ingredient-merge select { flex:1; padding:8px; }
.application-body .ingredient-merge button { color:#fff; background:#f63d48; border:0; padding:8px 12px; }
.application-body .recipe-additional-view { display:grid; grid-template-columns:minmax(0,360px) minmax(0,1fr); gap:32px; margin:36px 38px; padding-top:30px; border-top:1px solid #eeeef3; }.application-body .recipe-additional-view figure { margin:0; }.application-body .recipe-additional-view img { display:block; width:100%; max-height:300px; object-fit:cover; }.application-body .recipe-additional-view h2 { font-size:20px; }.application-body .recipe-additional-view p { display:grid; grid-template-columns:120px 1fr; padding:10px 0; border-bottom:1px solid #eeeef3; }.application-body .recipe-additional-view ul { color:#202962; }
.application-body .recipe-media-form { grid-template-columns:110px 150px 1fr 1fr auto; align-items:end; margin-top:26px; padding-top:20px; border-top:1px solid #eeeef3; }.application-body .recipe-media-form h3 { grid-column:1/-1; margin:0; font-size:16px; }.application-body .step-media { margin:14px 0 0; }.application-body .step-media img,.application-body .step-media video { display:block; width:min(100%,420px); max-height:300px; object-fit:cover; }.application-body .step-media figcaption { margin-top:5px; color:#8b93a7; font-size:12px; }
/* Responsive application geometry. Keep wide workspaces useful without allowing
a two-pane layout to squeeze either pane below its usable width. */
.application-body { overflow-x:clip; }
.application-body .entity-detail-shell,.application-body .recipe-detail-shell,
.application-body .entity-detail-grid,.application-body .entity-primary,.application-body .entity-secondary,
.application-body .recipe-view-workspace,.application-body .recipe-view-formula,.application-body .recipe-view-details,
.application-body .recipe-edit-workspace,.application-body .recipe-edit-structure,.application-body .recipe-edit-static-method,
.application-body .structure-editor,.application-body .component-editor,.application-body .table-wrap { min-width:0; max-width:100%; }
.application-body .table-wrap { overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-gutter:stable; }
@media (max-width:1440px) and (min-width:1281px) {
.application-body .immersive-main .entity-detail-header,.application-body .immersive-main .recipe-detail-shell .entity-detail-header { padding-inline:28px; }
.application-body .immersive-main .entity-primary,.application-body .recipe-view-formula,.application-body .recipe-edit-structure { padding-inline:28px 22px; }
.application-body .immersive-main .entity-secondary,.application-body .recipe-view-details,.application-body .recipe-edit-static-method { padding-inline:22px; }
.application-body .recipe-edit-structure .editor-items { min-width:48rem; }
.application-body .recipe-workspace-tabs button,.application-body .recipe-workspace-tabs a { min-width:122px; padding-inline:10px; }
.application-body .detail-utility form { width:min(460px,34vw); }
}
@media (max-width:1280px) {
.application-body .immersive-main .detail-utility { position:relative; top:auto; right:auto; width:100%; }
.application-body .immersive-main .entity-detail-header,.application-body .immersive-main .recipe-detail-shell .entity-detail-header { width:100%; min-height:112px; padding:20px 28px; border-right:0; }
.application-body .immersive-main .entity-notice { width:auto; margin-inline:28px; }
.application-body .immersive-main .entity-detail-grid { grid-template-columns:minmax(0,1fr); }
.application-body .immersive-main .entity-primary { padding:34px 28px; border-right:0; }
.application-body .immersive-main .entity-secondary { margin-top:0; padding:0 28px 44px; }
.application-body .entity-tabs { position:static; overflow-x:auto; scrollbar-width:thin; }
.application-body .entity-tabs button { flex:0 0 150px; }
.application-body .immersive-main .recipe-workspace-tabs { width:100%; min-height:58px; margin:0; padding:0 18px; justify-content:flex-start; overflow-x:auto; }
.application-body .recipe-workspace-tabs button,.application-body .recipe-workspace-tabs a { flex:0 0 145px; min-width:0; }
.application-body .immersive-main .recipe-overview-strip { width:100%; min-height:auto; padding:18px 28px; border-right:0; }
.application-body .recipe-view-workspace,.application-body .recipe-edit-workspace { grid-template-columns:minmax(0,1fr); }
.application-body .recipe-view-formula,.application-body .recipe-edit-structure { padding:24px 28px 38px; border-right:0; }
.application-body .recipe-view-details,.application-body .recipe-edit-static-method { padding:28px; border-top:1px solid #eeeef3; }
.application-body .recipe-edit-structure .editor-items { min-width:50rem; }
.application-body .recipe-edit-nutrition,.application-body .auto-yield-action { width:100%; margin-left:0; padding-inline:28px; border-left:0; }
.application-body .recipe-additional-editor { width:auto; margin-inline:28px; }
}
@media (max-width:900px) {
.application-body .directory-workspace { width:calc(100% - 28px); }
.application-body .workspace-search-tools { align-items:stretch; flex-wrap:wrap; }
.application-body .workspace-global-search { order:0; flex:1 1 100%; max-width:none; }
.application-body .search-type-filter { order:1; }
.application-body .workspace-new-menu { order:2; margin-left:auto; }
.application-body .workspace-new-menu > nav,.application-body .detail-new-menu > div { width:min(272px,calc(100vw - 24px)); }
.application-body .workspace-pills { flex-wrap:nowrap; overflow-x:auto; padding-bottom:22px; scrollbar-width:thin; }
.application-body .workspace-pills .filter-menu { margin-left:0; }
.application-body .workspace-pills > a.archive-link { margin-left:0; }
.application-body .detail-utility { padding-inline:16px; }
.application-body .detail-utility form { width:auto; flex:1; min-width:0; }
.application-body .detail-utility > a { white-space:nowrap; }
.application-body .recipe-overview-strip { flex-wrap:wrap; }
.application-body .recipe-yield-summary { width:100%; min-width:0; }
.application-body .structure-editor .section-heading { align-items:flex-start; flex-direction:column; gap:12px; }
.application-body .structure-heading-actions { width:100%; justify-content:flex-start; }
.application-body .recipe-equivalence-editor { margin-inline:20px; padding:18px; }
.application-body .recipe-equivalence-editor form { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.application-body .recipe-media-form { grid-template-columns:1fr 1fr; }
.application-body .recipe-media-form input[name="url"],.application-body .recipe-media-form input[name="caption"],.application-body .recipe-media-form button { grid-column:1/-1; }
.application-body .recipe-additional-view { grid-template-columns:1fr; margin-inline:20px; }
.application-body .book-workspace,.application-body .archive-workspace { width:calc(100% - 32px); }
}
@media print {
body.application-body * { visibility:hidden !important; }
body.application-body .nutrition-label,body.application-body .nutrition-label * { visibility:visible !important; }
body.application-body .nutrition-label { position:absolute; top:0; left:0; width:360px; max-width:none !important; border:1px solid #000; }
@page { margin:.35in; }
}
@media (max-width:760px) {
.application-body .directory-workspace { width:100%; padding-top:12px; }
.application-body .workspace-search-tools { align-items:stretch; flex-wrap:wrap; padding-inline:12px; margin-bottom:24px; }
.application-body .workspace-global-search { flex:1 1 100%; max-width:none; }
.application-body .workspace-pills { padding-inline:12px; padding-bottom:24px; }
.application-body .entity-directory-row { padding-inline:14px; }
.application-body .entity-directory-row,.application-body .entity-directory-row.columns-1,.application-body .entity-directory-row.columns-2,.application-body .entity-directory-row.columns-3 { grid-template-columns:36px 112px minmax(0,1fr) 36px; }
.application-body .entity-row-actions { opacity:1; }
.application-body .recipe-edit-nutrition { width:100%; margin-left:0; padding:28px 18px; border-left:0; }
.application-body .auto-yield-action { width:100%; margin-left:0; padding:18px; border-left:0; }
.application-body .book-details-form { grid-template-columns:1fr; }
.application-body .recipe-view-formula .calculator-heading { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.application-body .recipe-view-formula .calculator-heading > div:first-child { grid-column:1/-1; }
}
@media (max-width:520px) {
.application-body .recipe-view-formula .calculator-heading { grid-template-columns:minmax(0,1fr); }
.application-body .recipe-view-formula .calculator-heading > div:first-child { grid-column:auto; }
}
/* Recipe edit mode follows the documented, stable two-pane workspace. */
.application-body .inline-yield-editor { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.application-body .inline-yield-editor > span { margin-right:4px; color:#777f96; font-size:13px; font-weight:600; }
.application-body .inline-yield-editor label { display:block; }
.application-body .inline-yield-editor input,.application-body .inline-yield-editor select { width:auto; min-height:35px; padding:6px 9px; color:#101a4a; background:#fff; border:1px solid #dfe3ec; border-radius:4px; font:600 14px var(--sans); }
.application-body .inline-yield-editor input[name="yield_quantity"] { width:92px; text-align:right; }
.application-body .inline-yield-editor select { width:76px; color:#4868f7; }
.application-body .inline-yield-editor input[name="yield_servings"] { width:108px; font-weight:500; }
.application-body .inline-yield-editor > small { flex-basis:100%; color:#40a58e; font-size:11px; }
.application-body .inline-yield-editor.auto-calculated input,.application-body .inline-yield-editor.auto-calculated select { color:#3c4679; background:#f1f5fe; }
.application-body .inline-yield-editor.auto-calculated select { pointer-events:none; }
.application-body .recipe-metadata-disclosure { margin-top:13px; color:#4868f7; font-size:13px; }
.application-body .recipe-metadata-disclosure > summary { cursor:pointer; font-weight:600; }
.application-body .recipe-metadata-disclosure fieldset { margin-top:12px; }
.application-body .inline-auto-yield { display:flex; align-items:center; align-self:flex-start; flex-wrap:wrap; gap:8px; padding-top:6px; color:#687086; font-size:12px; }
.application-body .inline-auto-yield .toggle-button { position:relative; width:35px; height:20px; padding:0; background:#cbd1dc; border:0; border-radius:12px; cursor:pointer; }
.application-body .inline-auto-yield .toggle-button i { position:absolute; top:3px; left:3px; width:14px; height:14px; background:#fff; border-radius:50%; }
.application-body .inline-auto-yield small { flex-basis:100%; margin-left:43px; color:#a0a7ba; }
.application-body .inline-auto-yield.active .toggle-button { background:#40b49a; }
.application-body .inline-auto-yield.active .toggle-button i { transform:translateX(15px); }
.application-body .inline-auto-yield small b { color:#3d5df6; font-weight:500; }
.application-body .unified-recipe-editor { padding:0 38px 48px; }
.application-body .unified-recipe-editor .structure-editor { display:grid; grid-template-columns:minmax(0,52fr) minmax(390px,48fr); column-gap:0; border-top:1px solid #eeeef3; }
.application-body .unified-recipe-editor .section-heading { grid-column:1; min-height:76px; margin:0 32px 0 0; padding:17px 0 11px; }
.application-body .unified-recipe-editor .section-heading h2,.application-body .unified-recipe-editor .method-editor h2 { margin:0; color:#050841; font-size:20px; font-weight:600; }
.application-body .unified-recipe-editor .method-editor h2 small { color:#a0a7ba; font-size:12px; font-weight:500; }
.application-body .unified-recipe-editor .structure-heading-actions { gap:10px; }
.application-body .unified-recipe-editor .structure-heading-actions > button { color:#fff; background:#4868f7; border-color:#4868f7; }
.application-body .unified-recipe-editor .component-editor,.application-body .unified-recipe-editor > .structure-editor > .secondary-action,.application-body .unified-recipe-editor .success-notice,.application-body .unified-recipe-editor .notice { grid-column:1; margin-right:32px; }
.application-body .unified-recipe-editor .auto-yield-warning { grid-column:1; margin:0 36px 16px 0; padding:9px 12px; color:#9a3412; background:#fff7ed; border-left:3px solid #f3a642; font-size:12px; }
.application-body .unified-recipe-editor .component-editor { margin-bottom:22px; padding:0; background:#fff; border:0; border-radius:0; }
.application-body .unified-recipe-editor .component-editor legend { width:100%; padding:0; color:#9ba2b6; font:500 11px var(--sans); text-transform:uppercase; letter-spacing:.04em; }
.application-body .unified-recipe-editor .editor-inline { margin:4px 0 5px; }
.application-body .unified-recipe-editor .editor-inline input { min-height:36px; color:#111a49; border:0; border-bottom:1px solid #e5e8ef; border-radius:0; font-size:15px; }
.application-body .unified-recipe-editor .component-note-row { display:flex; align-items:center; gap:5px; margin:5px 0 8px; }
.application-body .unified-recipe-editor .component-notes { flex:1; min-height:34px; padding:7px 9px; color:#687086; background:#fbfbfd; border:1px solid #eeeef3; border-radius:4px; font:13px var(--sans); }
.application-body .unified-recipe-editor .table-wrap { border-top:1px solid #eeeef3; }
.application-body .unified-recipe-editor .editor-items { min-width:720px; table-layout:auto; }
.application-body .unified-recipe-editor .editor-items th,.application-body .unified-recipe-editor .editor-items td { padding:9px 6px; }
.application-body .unified-recipe-editor .editor-items th { color:#9ba2b6; font-size:10px; font-weight:600; letter-spacing:.03em; }
.application-body .unified-recipe-editor .editor-items td:first-child { min-width:150px; }
.application-body .unified-recipe-editor .editor-items input[type="number"],.application-body .unified-recipe-editor .editor-items select { min-height:34px; padding:5px 7px; border-color:#e2e5ec; border-radius:4px; font-size:12px; }
.application-body .unified-recipe-editor .add-line { margin:9px 0 0; }
.application-body .unified-recipe-editor .add-line select { min-height:37px; border-color:#dfe3ec; }
.application-body .unified-recipe-editor .add-line button,.application-body .unified-recipe-editor > .structure-editor > .secondary-action,.application-body .unified-recipe-editor .method-editor > .secondary-action { color:#4868f7; background:#fff; border-color:#cfd5fa; }
.application-body .unified-recipe-editor .method-editor { grid-column:2; grid-row:1 / span 100; min-width:0; padding:18px 0 60px 32px; border-left:1px solid #eeeef3; }
.application-body .unified-recipe-editor .method-editor h2 { margin-bottom:20px; }
.application-body .unified-recipe-editor .method-editor ol { margin:0; }
.application-body .unified-recipe-editor .method-editor li { position:relative; grid-template-columns:minmax(0,1fr) auto; margin:0 0 12px; padding:0 0 12px 32px; border:0; border-bottom:1px solid #eeeef3; }
.application-body .unified-recipe-editor .method-editor li::before { display:block; position:absolute; top:8px; left:5px; color:#687086; font-size:12px; font-weight:600; }
.application-body .unified-recipe-editor .method-editor textarea { min-height:64px; padding:9px 10px; border-color:#dfe3ec; resize:vertical; font-size:14px; line-height:1.45; }
.application-body .unified-recipe-editor .section-heading { justify-content:flex-end; }
.application-body .unified-recipe-editor .section-heading > div:first-child { display:none; }
.application-body .unified-recipe-editor .structure-heading-actions { width:100%; justify-content:space-between; }
.application-body .unified-recipe-editor .percent-mode { order:-1; display:grid; grid-template-columns:1fr 1fr; width:min(430px,58%); padding:0; overflow:hidden; border:1px solid #e1e4eb; border-radius:18px; }
.application-body .unified-recipe-editor .percent-mode button { min-height:34px; padding:6px 14px; color:#111a49; background:#fff; border:0; border-radius:0; font-size:12px; font-weight:600; }
.application-body .unified-recipe-editor .percent-mode button.active { background:#eef2ff; box-shadow:inset 0 0 0 1px #d8e0ff; }
.application-body .unified-recipe-editor .editor-entity-link { color:#101a4a; text-decoration:none; }
.application-body .unified-recipe-editor .editor-entity-link + small { display:none; }
.calculator-ingredient-name,.pending-ingredient-name { display:inline-flex; align-items:center; gap:7px; }
.ingredient-attention-icon { display:inline-grid; flex:0 0 auto; place-items:center; width:18px; height:18px; color:#fff; background:#ef8d32; border-radius:50%; font:700 12px/1 var(--sans); cursor:help; }
.application-body .unified-recipe-editor .pending-ingredient-row td { background:#fff7f7; }
.application-body .unified-recipe-editor .pending-ingredient-row td:first-child { border-left:3px solid #e96368; }
.application-body .unified-recipe-editor .pending-ingredient-help { display:block; margin-top:3px; color:#c44c55; font-size:11px; }
.application-body .unified-recipe-editor .row-entity-combobox { position:relative; min-width:0; }
.application-body .unified-recipe-editor .row-entity-combobox > input { width:100%; min-height:42px; padding:8px 32px 8px 10px; color:#050841; background:#fff; border:0; border-bottom:2px solid transparent; border-radius:0; font:600 14px var(--sans); }
.application-body .unified-recipe-editor .row-entity-combobox > input:focus { background:#f1f5fe; border-bottom-color:#6379ff; outline:0; }
.application-body .unified-recipe-editor .row-entity-combobox.unmatched > input { background:#fff4f4; border-bottom-color:#f04f59; }
.application-body .unified-recipe-editor .row-entity-combobox > .ingredient-attention-icon { position:absolute; top:12px; right:8px; }
.application-body .unified-recipe-editor .row-entity-results { position:absolute; z-index:60; left:0; top:calc(100% - 1px); width:min(500px,calc(100vw - 48px)); max-height:470px; overflow-y:auto; background:#fff; border:1px solid #e2e3e8; box-shadow:0 8px 18px rgba(17,26,73,.22); }
.application-body .unified-recipe-editor .row-entity-results > button { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; min-height:46px; padding:10px 20px; color:#050841; background:#fff; border:0; text-align:left; }
.application-body .unified-recipe-editor .row-entity-results > button:hover,.application-body .unified-recipe-editor .row-entity-results > button:focus { background:#f1f5fe; outline:0; }
.application-body .unified-recipe-editor .row-entity-results small { color:#9aa1b7; font-size:11px; font-weight:400; }
.application-body .unified-recipe-editor .row-create-actions { position:sticky; bottom:0; padding:7px 0; background:#fff; border-top:1px solid #e5e6eb; box-shadow:0 -4px 9px rgba(17,26,73,.06); }
.application-body .unified-recipe-editor .row-create-actions button { display:block; width:100%; padding:10px 20px; color:#4560ff; background:#fff; border:0; text-align:left; font:500 14px var(--sans); }
.application-body .unified-recipe-editor .row-create-actions button:hover,.application-body .unified-recipe-editor .row-create-actions button:focus { background:#f1f5fe; outline:0; }
.application-body .unified-recipe-editor .line-notes { width:100%; min-width:110px; padding:7px 5px; color:#687086; background:transparent; border:0; border-bottom:1px solid transparent; border-radius:0; font:italic 12px var(--sans); }
.application-body .unified-recipe-editor .line-notes:focus { border-bottom-color:#b9c5fb; outline:0; }
.application-body .unified-recipe-editor .remove-row { width:30px; height:30px; padding:0; color:#a7aec3; background:transparent; border:0; border-radius:50%; font-size:19px; line-height:1; }
.application-body .unified-recipe-editor .drag-handle { display:inline-grid; place-items:center; width:24px; color:#abb2c7; cursor:grab; font-size:20px; line-height:1; }
.application-body .unified-recipe-editor .row-actions { align-items:center; flex-wrap:nowrap; }
.application-body .unified-recipe-editor .editor-inline .drag-handle { flex:none; }
.application-body .unified-recipe-editor .editor-items th:last-child,.application-body .unified-recipe-editor .editor-items td:last-child { width:68px; }
.application-body .unified-recipe-editor .editor-items th:nth-last-child(2),.application-body .unified-recipe-editor .editor-items td:nth-last-child(2) { width:auto; text-align:left; }
.application-body .unified-recipe-editor .method-editor .row-actions { align-self:start; padding-top:3px; }
.application-body .unified-recipe-editor .method-editor > .secondary-action { float:right; padding:9px 18px; border-radius:20px; font-weight:600; }
.application-body .unified-recipe-editor > .structure-editor > .secondary-action { justify-self:start; padding-inline:0; border:0; }
.application-body .unified-recipe-editor .structure-add-actions {
grid-column:1;
display:flex;
align-items:center;
gap:28px;
min-height:48px;
margin:0 32px 22px 0;
padding:5px 0;
}
.application-body .unified-recipe-editor .structure-add-actions button {
display:inline-flex;
align-items:center;
gap:6px;
min-height:36px;
padding:5px 2px;
color:#3c4679;
background:transparent;
border:0;
border-radius:3px;
font:500 14px/1.25 var(--sans);
cursor:pointer;
}
.application-body .unified-recipe-editor .structure-add-actions button span {
display:inline-grid;
place-items:center;
width:20px;
height:20px;
font-size:21px;
font-weight:300;
line-height:1;
}
.application-body .unified-recipe-editor .structure-add-actions button:hover { color:#4868f7; }
.application-body .unified-recipe-editor .structure-add-actions button:focus-visible {
outline:2px solid #b9c5fb;
outline-offset:2px;
}
.application-body .unified-recipe-editor .structure-add-actions .bulk-add-trigger {
margin-left:auto;
min-height:42px;
padding:8px 22px;
color:#050841;
background:#fff;
border:1px solid #050841;
border-radius:24px;
font-weight:600;
}
.application-body .unified-recipe-editor .add-line {
display:grid;
grid-template-columns:minmax(0,2fr) minmax(130px,1fr);
gap:0;
}
.application-body .unified-recipe-editor .add-line-notes {
width:100%;
min-height:58px;
padding:12px 14px;
color:#050841;
background:#fff;
border:1px solid #f3f3f3;
border-left:0;
border-radius:0;
font:italic 14px var(--sans);
}
.application-body .unified-recipe-editor .add-line-notes::placeholder { color:#a5a9c1; }
.bulk-ingredient-backdrop {
position:fixed;
z-index:1000;
inset:0;
display:grid;
place-items:center;
padding:24px;
background:rgba(5,8,31,.52);
}
.bulk-ingredient-dialog {
position:relative;
display:flex;
width:min(780px,100%);
max-height:calc(100vh - 48px);
padding:52px 68px 48px;
overflow:auto;
flex-direction:column;
color:#050841;
background:#fff;
border-radius:10px;
box-shadow:0 24px 70px rgba(5,8,31,.28);
}
.bulk-ingredient-dialog h2 { margin:0 0 24px; font-size:30px; font-weight:700; }
.bulk-ingredient-dialog > p:not(.bulk-dialog-error) { margin:0 0 8px; color:#8b8d99; font-size:15px; font-weight:500; }
.bulk-ingredient-dialog textarea {
width:100%;
min-height:330px;
padding:18px 14px;
resize:vertical;
color:#050841;
background:#fff;
border:1px solid #eeeef3;
border-bottom:1px solid #647df8;
border-radius:0;
font:15px/1.55 var(--sans);
}
.bulk-ingredient-dialog textarea::placeholder { color:#a5a9c1; opacity:1; }
.bulk-dialog-close {
position:absolute;
top:28px;
right:36px;
width:38px;
height:38px;
padding:0;
color:#050841;
background:transparent;
border:0;
cursor:pointer;
font-size:34px;
font-weight:300;
line-height:1;
}
.bulk-dialog-error { margin:7px 0 0; color:#ef3d4d; font-size:13px; font-weight:600; }
.bulk-entry-help { display:flex; margin:18px 0 34px; flex-direction:column; gap:12px; font-size:14px; }
.bulk-entry-help small { color:#a5a9c1; font-size:inherit; }
.bulk-ingredient-dialog footer { display:flex; align-items:center; justify-content:flex-end; gap:44px; }
.bulk-ingredient-dialog footer button { min-height:48px; padding:10px 24px; cursor:pointer; border:0; font-weight:700; }
.bulk-ingredient-dialog .bulk-cancel { color:#3d5df6; background:transparent; }
.bulk-ingredient-dialog .bulk-submit { min-width:250px; color:#fff; background:#647df8; border-radius:28px; }
.bulk-ingredient-dialog .bulk-submit:disabled { background:#aeb9f8; cursor:not-allowed; }
.bulk-prep-dialog { width:min(860px,100%); }
.bulk-prep-dialog textarea { min-height:390px; }
.application-body .unified-recipe-editor .method-editor li.prep-heading { min-height:70px; padding-block:18px; background:#fbfbfd; }
.application-body .unified-recipe-editor .method-editor li.prep-heading textarea { min-height:34px; font-weight:700; }
.application-body .unified-recipe-editor .method-editor li.prep-note { min-height:76px; background:#fafbfe; }
.application-body .unified-recipe-editor .method-editor li.prep-note textarea { min-height:44px; color:#727a91; font-style:italic; }
/* Recipe edit workspace refinements. */
.application-body .editable-entity-title { margin:2px 0 0; padding:0 0 4px; background:transparent; border:0; border-bottom:1px solid #f3f3f3; border-radius:0; color:#050841; font-size:30px; line-height:1.2; }
.application-body .recipe-overview-strip { background:#fbfbfb; }
.application-body .inline-yield-editor { align-items:flex-end; }
.application-body .inline-yield-editor > span { flex-basis:100%; margin:0 0 5px; color:#3c4679; font-size:14px; font-weight:500; }
.application-body .inline-yield-editor input,.application-body .inline-yield-editor select { min-height:48px; background:#fff; border:1px solid #f3f3f3; border-bottom-color:#ececec; border-radius:0; font-size:14px; font-weight:500; }
.application-body .inline-yield-editor input[name="yield_quantity"] { width:108px; }
.application-body .inline-yield-editor select { width:108px; color:#050841; }
.application-body .inline-yield-editor input[name="yield_servings"] { width:120px; }
.application-body .inline-auto-yield { padding-top:25px; color:#050841; font-size:14px; }
.application-body .unified-recipe-editor { padding-inline:0; background:linear-gradient(to right,#fbfbfb 0 52%,#fff 52% 100%); }
.application-body .unified-recipe-editor .structure-editor { grid-template-columns:minmax(0,52fr) minmax(390px,48fr); padding-left:36px; background:transparent; }
.application-body .unified-recipe-editor .section-heading,.application-body .unified-recipe-editor .component-editor,.application-body .unified-recipe-editor > .structure-editor > .secondary-action { margin-right:36px; }
.application-body .unified-recipe-editor .section-heading { min-height:92px; padding-top:30px; }
.application-body .unified-recipe-editor .component-editor { background:transparent; }
.application-body .unified-recipe-editor .editor-inline { min-height:50px; margin:0; align-items:center; background:#fff; border:1px solid #f3f3f3; border-radius:3px; }
.application-body .unified-recipe-editor .editor-inline input { min-height:48px; padding:10px; background:#fff; border:0; color:#050841; font-size:16px; }
.application-body .unified-recipe-editor .component-editor legend { margin-bottom:5px; color:#a5a9c1; }
.application-body .unified-recipe-editor .table-wrap { border:0; }
.application-body .unified-recipe-editor .editor-items th { height:42px; padding:8px 10px; color:#757677; background:#fbfbfb; border-color:#f3f3f3; font-size:12px; font-weight:500; text-transform:none; }
.application-body .unified-recipe-editor .editor-items td { height:64px; padding:8px 10px; background:#fff; border:1px solid #f3f3f3; color:#050841; font-size:14px; }
.application-body .unified-recipe-editor .editor-items { width:100%; min-width:760px; table-layout:fixed; }
.application-body .unified-recipe-editor .editor-items th.base-column,.application-body .unified-recipe-editor .editor-items td.base-column { width:52px; min-width:0; padding-inline:6px; text-align:center; }
.application-body .unified-recipe-editor .editor-items th.percent-column,.application-body .unified-recipe-editor .editor-items td.percent-column { width:66px; min-width:0; padding-inline:6px; text-align:right; }
.application-body .unified-recipe-editor .editor-items th.quantity-column,.application-body .unified-recipe-editor .editor-items td.quantity-column { width:78px; min-width:0; text-align:right; }
.application-body .unified-recipe-editor .editor-items th.unit-column,.application-body .unified-recipe-editor .editor-items td.unit-column { width:112px; min-width:0; }
.application-body .unified-recipe-editor .editor-items th.entity-column,.application-body .unified-recipe-editor .editor-items td.entity-column { width:auto; min-width:0; }
.application-body .unified-recipe-editor .editor-items th.notes-column,.application-body .unified-recipe-editor .editor-items td.notes-column { width:22%; min-width:130px; }
.application-body .unified-recipe-editor .editor-items th.actions-column,.application-body .unified-recipe-editor .editor-items td.actions-column { width:64px; min-width:0; padding-inline:4px; }
.application-body .unified-recipe-editor .editor-items .percent-column input,.application-body .unified-recipe-editor .editor-items .quantity-column input { width:100%; min-width:0; padding-inline:5px; text-align:right; }
.application-body .unified-recipe-editor .editor-items input[type="number"],.application-body .unified-recipe-editor .editor-items select { min-height:45px; padding:8px 5px; background:#fff; border:0; border-radius:0; color:#050841; font-size:14px; }
.application-body .unified-recipe-editor .line-notes { min-height:45px; font-size:14px; }
.application-body .unified-recipe-editor .component-note-row { min-height:50px; margin:8px 0; background:#fff; border:1px solid #f3f3f3; }
.application-body .unified-recipe-editor .component-notes { min-height:48px; background:#fff; border:0; border-radius:0; color:#050841; font-size:14px; }
.application-body .unified-recipe-editor .add-line { margin-top:8px; }
.application-body .unified-recipe-editor .add-line select { min-height:58px; background:#fff; border:1px solid #f3f3f3; border-radius:0; font-size:14px; }
.application-body .unified-recipe-editor .add-line button { align-self:center; padding:9px 18px; border:1px solid #050841; border-radius:24px; color:#050841; }
.application-body .unified-recipe-editor .method-editor { padding:35px 32px 60px; background:#fff; }
.application-body .unified-recipe-editor .method-editor h2 { margin-bottom:28px; color:#050841; font-size:24px; }
.application-body .unified-recipe-editor .method-editor li { min-height:134px; margin:0 0 8px; padding:24px 68px 8px 48px; background:#fff; border:1px solid #f3f3f3; border-radius:3px; }
.application-body .unified-recipe-editor .method-editor li::before { top:24px; left:16px; color:#050841; font-size:16px; font-weight:700; }
.application-body .unified-recipe-editor .method-editor textarea { min-height:100px; padding:0 16px; color:#050841; background:transparent; border:0; border-radius:0; font-size:16px; line-height:1.6; }
.application-body .unified-recipe-editor .method-editor li:focus-within { border-bottom-color:#3d5df6; }
.application-body .unified-recipe-editor .method-editor .row-actions { position:absolute; top:20px; right:12px; flex-direction:column-reverse; }
.application-body .unified-recipe-editor .drag-handle,.application-body .unified-recipe-editor .remove-row { color:#a5a9c1; }
.application-body .unified-recipe-editor .method-editor > .secondary-action { margin-top:22px; border-color:#050841; color:#050841; }
.application-body .unified-recipe-editor .recipe-item-search { position:relative; flex:1; min-width:0; }
.application-body .unified-recipe-editor .recipe-item-search > input { width:100%; min-height:58px; padding:12px 14px; color:#050841; background:#fff; border:1px solid #f3f3f3; border-radius:0; font:14px var(--sans); }
.application-body .unified-recipe-editor .recipe-item-results { position:absolute; z-index:20; top:calc(100% - 1px); left:0; right:0; overflow:auto; max-height:320px; background:#fff; border:1px solid #ececec; border-radius:0 0 4px 4px; box-shadow:0 7px 15px #ececec; }
.application-body .unified-recipe-editor .recipe-item-search:not(:focus-within) .recipe-item-results { display:none; }
.application-body .unified-recipe-editor .recipe-item-results button { display:flex; align-items:center; justify-content:space-between; width:100%; padding:11px 14px; color:#050841; background:#fff; border:0; border-bottom:1px solid #f3f3f3; text-align:left; }
.application-body .unified-recipe-editor .recipe-item-results button:hover,.application-body .unified-recipe-editor .recipe-item-results button:focus { background:#f1f5fe; outline:0; }
.application-body .unified-recipe-editor .recipe-item-results small { color:#a5a9c1; font-size:11px; }
.application-body .unified-recipe-editor .recipe-item-results .create-ingredient-result { position:sticky; bottom:0; color:#3d5df6; background:#fff; border-top:1px solid #dfe3ec; border-bottom:0; }
.application-body .unified-recipe-editor .recipe-item-results .create-ingredient-result small { color:#6876b5; }
.application-body .unified-recipe-editor .add-line > button:disabled { color:#a5a9c1; background:#f3f3f3; border-color:#ececec; cursor:not-allowed; }
.application-body .unified-recipe-editor .method-editor textarea { field-sizing:content; }
.application-body .unified-recipe-editor .dragging { opacity:.5; outline:2px solid #3d5df6; outline-offset:-2px; }
.application-body #recipe-done.dirty::after { content:""; width:6px; height:6px; margin-left:2px; background:#fff; border-radius:50%; }
.application-body .scale-relationship { grid-column:1/-1; margin:0; padding:9px 12px; color:#687086; background:#fbfbfb; border-left:3px solid #40b49a; font-size:12px; }
.application-body .formula-conversion-warning { margin:8px 0 0; color:#9a3412; font-size:12px; }
/* Persistent detail breadcrumbs. */
.application-body .immersive-main .detail-utility { position:absolute; z-index:30; top:0; left:0; right:0; width:100%; height:58px; min-height:58px; display:grid; grid-template-columns:52% 48%; gap:0; padding:0; background:#fbfbfb; border-bottom:1px solid #f3f3f3; }
.application-body .detail-context,.application-body .detail-tools { display:flex; align-items:center; min-width:0; height:58px; }
.application-body .detail-context { gap:14px; padding:0 28px; }
.application-body .detail-tools { gap:18px; padding:7px 28px; border-left:1px solid #eeeef3; }
.application-body .detail-tools form { flex:1; width:auto; }
.application-body .detail-back { display:grid; place-items:center; width:30px; height:30px; color:#202962; text-decoration:none; font-size:30px; font-weight:400; line-height:1; }
.application-body .detail-back:hover { color:#3d5df6; }
.application-body .detail-avatar { display:grid; place-items:center; flex:none; width:27px; height:27px; color:#fff; background:#050841; border-radius:50%; text-decoration:none; font-size:10px; font-weight:600; }
.application-body .detail-breadcrumbs { display:flex; align-items:center; min-width:0; gap:0; margin:0; padding:0; list-style:none; }
.application-body .detail-breadcrumbs li { display:flex; align-items:center; min-width:0; }
.application-body .detail-breadcrumbs li+li::before { content:"/"; margin:0 8px; color:#a5a9c1; }
.application-body .detail-breadcrumbs a { overflow:hidden; color:#202962; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; font-size:13px; font-weight:500; }
.application-body .detail-breadcrumbs a:hover { color:#3d5df6; text-decoration:underline; }
.application-body .entity-breadcrumb { display:none; }
.application-body .recipe-detail-shell > .entity-detail-header > div:first-child > p { display:none; }
.application-body .immersive-main .entity-detail-header,.application-body .immersive-main .recipe-detail-shell .entity-detail-header { padding-top:72px; }
@media (max-width:1023.95px) {
.application-body .immersive-main .detail-utility { position:relative; grid-template-columns:minmax(260px,42%) 1fr; }
.application-body .immersive-main .entity-detail-header,.application-body .immersive-main .recipe-detail-shell .entity-detail-header { padding-top:24px; }
}
@media (max-width:700px) {
.application-body .immersive-main .detail-utility { height:auto; grid-template-columns:1fr; }
.application-body .detail-context { padding-inline:12px; border-bottom:1px solid #eeeef3; }
.application-body .detail-tools { padding-inline:12px; border-left:0; }
.application-body .detail-breadcrumbs li:first-child { display:none; }
.application-body .detail-breadcrumbs li+li::before { display:none; }
}
.application-body .tag-chip-editor { min-height:48px; padding:6px 10px; background:#fff; border:1px solid #f3f3f3; border-bottom-color:#ececec; }
.application-body .tag-chip-list { display:flex; flex-wrap:wrap; gap:6px; }
.application-body .tag-chip-list span { display:inline-flex; align-items:center; gap:5px; min-height:30px; padding:4px 7px 4px 11px; color:#202962; background:#f1f5fe; border-radius:16px; font-size:12px; }
.application-body .tag-chip-list b { font-weight:500; }
.application-body .tag-chip-list button { display:grid; place-items:center; width:20px; height:20px; padding:0; color:#7d86a0; background:transparent; border:0; border-radius:50%; cursor:pointer; font-size:16px; }
.application-body .tag-chip-list button:hover { color:#050841; background:#e1e7fa; }
.application-body input.tag-chip-entry { width:100%; min-height:34px !important; padding:5px 2px !important; background:transparent !important; border:0 !important; outline:0; }
.application-body .unified-recipe-editor .method-editor > [hidden] { display:none !important; }
.application-body .unified-recipe-editor #recipe-cover-slot:empty,.application-body .unified-recipe-editor #recipe-additional-slot:empty,.application-body .unified-recipe-editor #recipe-tab-panel-slot:empty { display:none; }
.application-body .unified-recipe-editor #recipe-cover-slot { margin:-35px -32px 34px; }
.application-body .unified-recipe-editor #recipe-cover-slot .cover-media-field { position:relative; display:grid; place-items:center; min-height:220px; padding:22px; color:#3c4679; background:#f3f3f3; text-align:center; }
.application-body .unified-recipe-editor #recipe-cover-slot .cover-media-field > span { font-size:16px; font-weight:500; }
.application-body .unified-recipe-editor #recipe-cover-slot .cover-media-field img { order:-1; display:block; width:100%; max-height:420px; margin-bottom:14px; object-fit:cover; }
.application-body .unified-recipe-editor #recipe-cover-slot .cover-media-field input { width:min(520px,90%); min-height:42px; margin-top:10px; padding:9px 12px; color:#050841; background:#fff; border:1px solid #ececec; }
.application-body .unified-recipe-editor #recipe-tab-panel-slot > [hidden],.application-body .unified-recipe-editor #recipe-cover-slot[hidden],.application-body .unified-recipe-editor #recipe-additional-slot[hidden],.application-body .unified-recipe-editor #recipe-tab-panel-slot[hidden] { display:none !important; }
.application-body .unified-recipe-editor .method-editor .recipe-edit-tab-panel { width:100%; margin:0; padding:0; border:0; }
.application-body .unified-recipe-editor .method-editor .recipe-edit-tab-panel h2 { margin:0 0 28px; }
.application-body .recipe-edit-tab-panel { width:100%; min-height:680px; padding:48px 52px 80px; background:#fff; border-top:1px solid #eeeef3; }
.application-body .recipe-edit-tab-panel[hidden] { display:none !important; }
.application-body .recipe-edit-tab-panel .recipe-cost-ledger { width:100%; }
.application-body .recipe-edit-tab-panel .cost-ledger-lines { border-top:1px solid #eeeef3; }
@media (max-width:720px) { .application-body .recipe-edit-tab-panel { min-height:0; padding:30px 18px 60px; } }
.application-body .unified-recipe-editor .method-editor .recipe-equivalence-editor > div { background:#fff; }
.application-body .unified-recipe-editor .method-editor .recipe-equivalence-editor form { grid-template-columns:72px minmax(100px,1fr) auto 72px minmax(100px,1fr); }
.application-body .unified-recipe-editor .method-editor .recipe-equivalence-editor form input[name="notes"] { grid-column:1/-2; }
.application-body .unified-recipe-editor .method-editor .recipe-edit-nutrition .nutrition-wrap { max-width:430px; }
.application-body .unified-recipe-editor .method-editor .recipe-additional-editor { width:100%; margin:70px 0 0; padding:36px 24px; background:#fff; border:1px solid #f3f3f3; }
.application-body .unified-recipe-editor .method-editor .recipe-additional-editor h2 { margin:0 0 36px; font-size:20px; }
.application-body .unified-recipe-editor .method-editor .recipe-additional-editor > form { display:grid; grid-template-columns:1fr 1fr; gap:28px 58px; }
.application-body .unified-recipe-editor .method-editor .recipe-additional-editor .cover-media-field { grid-column:1/-1; }
.application-body .unified-recipe-editor .method-editor .recipe-additional-editor .cover-media-field img { display:block; width:100%; max-height:330px; margin-bottom:10px; object-fit:cover; }
.application-body .unified-recipe-editor .method-editor .recipe-additional-editor fieldset { grid-template-columns:1fr 1fr; padding:0; border:0; }
.application-body .unified-recipe-editor .method-editor .recipe-additional-editor fieldset input[name="storage_condition"] { grid-column:1/-1; }
.application-body .unified-recipe-editor .method-editor .recipe-additional-editor input,.application-body .unified-recipe-editor .method-editor .recipe-additional-editor select { min-height:48px; background:#fff; border:1px solid #f3f3f3; border-bottom-color:#ececec; }
.application-body .unified-recipe-editor .method-editor .recipe-additional-editor button { grid-column:1/-1; padding:9px 18px; border-radius:20px; }
.application-body .recipe-history { display:none; }
@media (max-width:1023.95px) {
.application-body .unified-recipe-editor { padding-inline:24px 0; }
.application-body .unified-recipe-editor .structure-editor { grid-template-columns:minmax(0,52fr) minmax(320px,48fr); padding-left:0; }
.application-body .unified-recipe-editor .section-heading,.application-body .unified-recipe-editor .component-editor { margin-right:24px; }
.application-body .unified-recipe-editor .structure-add-actions { margin-right:24px; }
.application-body .unified-recipe-editor .method-editor { padding-inline:24px; }
}
@media (max-width:760px) {
.application-body .unified-recipe-editor { padding-inline:18px; background:#fbfbfb; }
.application-body .unified-recipe-editor .structure-editor { grid-template-columns:1fr; }
.application-body .unified-recipe-editor .section-heading,.application-body .unified-recipe-editor .component-editor,.application-body .unified-recipe-editor > .structure-editor > .secondary-action { grid-column:1; margin-right:0; }
.application-body .unified-recipe-editor .structure-add-actions { margin-right:0; }
.application-body .unified-recipe-editor .method-editor { grid-column:1; grid-row:auto; margin-top:24px; padding:24px 0 50px; border-top:1px solid #eeeef3; border-left:0; }
}
@media (max-width:620px) {
.application-body .inline-yield-editor input[name="yield_servings"] { width:100px; }
.application-body .inline-auto-yield { padding-top:0; }
.application-body .unified-recipe-editor .add-line { grid-template-columns:1fr; }
.application-body .unified-recipe-editor .add-line-notes { border-top:0; border-left:1px solid #f3f3f3; }
.application-body .unified-recipe-editor .structure-add-actions { flex-wrap:wrap; gap:12px 20px; }
.application-body .unified-recipe-editor .structure-add-actions .bulk-add-trigger { width:100%; margin:6px 0 0; justify-content:center; }
.bulk-ingredient-backdrop { padding:0; }
.bulk-ingredient-dialog { width:100%; max-height:100vh; min-height:100vh; padding:52px 22px 28px; border-radius:0; }
.bulk-ingredient-dialog h2 { font-size:25px; }
.bulk-ingredient-dialog textarea { min-height:280px; }
.bulk-dialog-close { top:16px; right:18px; }
.bulk-ingredient-dialog footer { gap:12px; }
.bulk-ingredient-dialog .bulk-submit { min-width:0; flex:1; }
}