:root { --ink:#293127; --muted:#6b6f63; --paper:#f3eee3; --card:#fffaf0; --green:#405c47; --green-dark:#293e30; --line:#d9cfbd; --warm:#b86643; --gold:#c99a52; --sage:#e1e7d9; --shadow:0 16px 40px rgba(52,57,43,.08); }
* { box-sizing:border-box; }
body { margin:0; background:radial-gradient(circle at 8% 2%,rgba(201,154,82,.12),transparent 28rem),radial-gradient(circle at 94% 18%,rgba(64,92,71,.09),transparent 32rem),var(--paper); color:var(--ink); font-family:Aptos,Inter,"Segoe UI",sans-serif; line-height:1.55; min-height:100vh; }
a { color:var(--green); }
.site-header { align-items:center; background:rgba(41,62,48,.97); border-bottom:1px solid rgba(255,250,240,.12); box-shadow:0 8px 28px rgba(31,43,34,.13); display:flex; justify-content:space-between; padding:14px max(24px,calc((100vw - 1120px)/2)); position:sticky; top:0; z-index:2; }
.brand { align-items:center; color:#fffaf0; display:flex; gap:11px; text-decoration:none; }
.brand-mark,.footer-mark { align-items:center; background:var(--warm); border:1px solid rgba(255,255,255,.24); border-radius:50%; color:#fffaf0; display:inline-flex; font:700 25px/1 "Palatino Linotype",Georgia,serif; height:42px; justify-content:center; width:42px; }
.brand-copy { display:flex; flex-direction:column; }.brand-copy strong { font:700 28px/1 "Palatino Linotype",Georgia,serif; letter-spacing:.02em; }.brand-copy small { color:#dfe5d7; font-size:9px; letter-spacing:.16em; margin-top:4px; text-transform:uppercase; }
nav { align-items:center; display:flex; gap:8px; } nav a { border-radius:999px; color:#eef1e9; font-size:14px; font-weight:650; padding:9px 13px; text-decoration:none; }nav>a:not(.button):hover { background:rgba(255,255,255,.09); color:white; }.site-header nav .button { background:var(--gold); border-color:var(--gold); color:#263228; margin-left:6px; }.site-header nav .button:hover { background:#dbad67; color:#263228; }
.container { margin:0 auto; max-width:1120px; padding:64px 24px 96px; }
h1,h2 { font-family:"Palatino Linotype","Book Antiqua",Georgia,serif; letter-spacing:-.025em; line-height:1.08; } h1 { font-size:clamp(42px,7vw,70px); font-weight:700; margin:8px 0 16px; } h2 { font-size:28px; }
.eyebrow { color:var(--warm); font-size:11px; font-weight:850; letter-spacing:.19em; margin:0; text-transform:uppercase; }
.site-footer { align-items:center; border-top:1px solid var(--line); color:var(--muted); display:flex; font-size:13px; gap:12px; justify-content:center; margin:0 auto; max-width:1072px; padding:28px 24px 38px; }.footer-mark { height:29px; font-size:16px; width:29px; }
.hero,.recipe-heading { align-items:end; display:flex; justify-content:space-between; gap:28px; margin-bottom:44px; position:relative; }.hero::after { background:linear-gradient(90deg,var(--warm),var(--gold),transparent); bottom:-21px; content:""; height:2px; left:0; position:absolute; width:122px; }.recipe-heading { align-items:stretch; }.recipe-heading-copy { align-self:center; flex:1; min-width:0; }.recipe-heading-side { align-items:flex-end; display:flex; flex-direction:column; flex:0 0 clamp(230px,29vw,320px); gap:14px; }.recipe-detail-thumbnail { aspect-ratio:4/3; background:#e5ddcc; border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow); margin:0; overflow:hidden; width:100%; }.recipe-detail-thumbnail img { display:block; height:100%; object-fit:cover; width:100%; }.recipe-heading-side .actions { justify-content:flex-end; }
.hero p:not(.eyebrow),.lede,.page-heading>p:last-child { color:var(--muted); font-size:18px; max-width:640px; }
.button,button { background:var(--card); border:1px solid var(--green); border-radius:999px; box-shadow:0 4px 12px rgba(49,62,48,.05); color:var(--green); cursor:pointer; display:inline-block; font:inherit; font-weight:750; padding:10px 18px; text-decoration:none; transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.button.primary,button { background:var(--green); color:white; } .button:hover,button:hover { background:var(--green-dark); box-shadow:0 7px 18px rgba(41,62,48,.16); color:white; transform:translateY(-1px); }
.search { display:flex; max-width:720px; } .search input[type="search"] { border:1px solid var(--line); border-radius:10px 0 0 10px; flex:1; font:inherit; padding:14px 16px; } .search button { border-radius:0 10px 10px 0; }.recipe-toolbar { align-items:center; display:flex; gap:20px; justify-content:space-between; margin-bottom:34px; }.recipe-toolbar .search { flex:1; }.view-switcher { background:#e9e2d5; border-radius:10px; display:flex; gap:3px; padding:4px; }.view-switcher a { border-radius:7px; color:var(--muted); font-size:13px; font-weight:700; padding:8px 11px; white-space:nowrap; }.view-switcher a.active { background:white; box-shadow:0 1px 4px #00000018; color:var(--green); }
.recipe-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); gap:18px; }
.recipe-card,.empty-state,.form-section,.notes { background:rgba(255,250,240,.94); border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow); padding:24px; }
.recipe-card { border-top:3px solid rgba(184,102,67,.62); transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease; }.recipe-card:hover { border-top-color:var(--warm); box-shadow:0 20px 44px rgba(52,57,43,.12); transform:translateY(-2px); }.recipe-card h2 { margin:14px 0 10px; }.recipe-card h2 a { color:var(--ink); text-decoration:none; }.recipe-card p { color:var(--muted); }
.recipe-thumbnail { align-self:stretch; background:#e5ddcc; border:1px solid var(--line); border-radius:13px; display:block; min-height:94px; overflow:hidden; position:relative; }.recipe-thumbnail img { height:100%; inset:0; object-fit:cover; position:absolute; width:100%; }.recipe-thumbnail-placeholder { align-items:center; background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.15),transparent 32%),linear-gradient(145deg,var(--green),var(--green-dark)); color:#fffaf0; display:flex; flex-direction:column; inset:0; justify-content:center; position:absolute; }.recipe-thumbnail-placeholder b { font:700 36px/1 "Palatino Linotype",Georgia,serif; }.recipe-thumbnail-placeholder small { font-size:8px; letter-spacing:.18em; margin-top:5px; text-transform:uppercase; }
.recipe-view-list { grid-template-columns:1fr; }.recipe-view-list .recipe-card { align-items:center; display:grid; gap:22px; grid-template-columns:132px minmax(0,1fr) 220px; padding:18px 20px; }.recipe-view-list .recipe-thumbnail { align-self:center; aspect-ratio:4/3; min-height:0; min-width:0; width:100%; }.recipe-view-list .recipe-card h2 { margin:8px 0 6px; }.recipe-view-list .recipe-card p { margin:0; }.recipe-view-list .timing { border:0; margin:0; padding:0; }.recipe-list-ingredients { color:var(--muted); font-size:13px; margin-top:10px; }.recipe-list-actions { display:flex; gap:12px; justify-content:flex-end; margin-top:14px; }.recipe-list-actions a { font-size:13px; font-weight:700; }.recipe-view-tiles .recipe-card { align-items:start; display:grid; grid-template-columns:94px minmax(0,1fr); }.recipe-view-tiles .recipe-thumbnail { align-self:start; height:94px; min-height:94px; width:94px; }.recipe-view-tiles .recipe-card-main { min-width:0; }.recipe-view-tiles .recipe-card-side { grid-column:1/-1; width:100%; }
.card-meta,.timing { display:flex; flex-wrap:wrap; gap:8px; }.card-meta span { background:var(--sage); border:1px solid #ced8c5; border-radius:999px; color:var(--green-dark); font-size:11px; font-weight:750; padding:4px 9px; }.timing { border-top:1px solid var(--line); color:var(--muted); justify-content:space-between; margin-top:20px; padding-top:14px; }
.actions { display:flex; gap:10px; }.facts { background:linear-gradient(135deg,var(--green-dark),var(--green)); border:1px solid rgba(255,255,255,.1); border-radius:18px; box-shadow:0 14px 32px rgba(41,62,48,.15); color:white; display:grid; grid-template-columns:repeat(4,1fr); margin:0 0 46px; padding:20px; }.facts div { border-right:1px solid #ffffff42; padding:2px 20px; }.facts div:last-child { border:0; }.facts dt { font-size:11px; letter-spacing:.08em; opacity:.75; text-transform:uppercase; }.facts dd { font:22px "Palatino Linotype",Georgia,serif; margin:3px 0 0; }
.recipe-columns { display:grid; grid-template-columns:minmax(240px,.8fr) minmax(320px,1.4fr); gap:64px; }.ingredients { list-style:none; padding:0; }.ingredients li { border-bottom:1px solid var(--line); padding:10px 0; }.amount { display:inline-block; font-weight:700; min-width:76px; }.steps li { padding:0 0 16px 8px; }.steps p { margin:4px 0; }.timer { color:var(--warm); font-size:13px; font-weight:bold; }.notes { margin-top:30px; }.source { border-top:1px solid var(--line); color:var(--muted); margin-top:30px; padding-top:18px; }
.page-heading { margin-bottom:34px; }.page-heading h1 { font-size:52px; }.recipe-form { display:grid; gap:22px; }.form-section h2 { margin-top:0; }.form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }.field-description,.field-attribution,.field-notes,.field-equipment,.field-photo { grid-column:1/-1; }.field-photo input { max-width:520px; }.field label,.compact-field label { display:block; font-size:13px; font-weight:700; margin-bottom:5px; }.field input,.field select,.field textarea,.compact-field input,.compact-field select,.compact-field textarea { background:white; border:1px solid var(--line); border-radius:8px; font:inherit; padding:9px 10px; width:100%; }.field small { color:var(--muted); }.errorlist { color:#a52828; margin:5px 0; padding-left:18px; }.formset-list { display:grid; gap:12px; }.formset-row { background:#f5f1e8; border-radius:10px; display:grid; gap:10px; padding:14px; }.ingredient-row { grid-template-columns:2.4fr .65fr 1.35fr 1.2fr .55fr .8fr .55fr .5fr .55fr; }.ingredient-row .compact-field { min-width:0; }.step-row { align-items:start; grid-template-columns:1.2fr 4fr .7fr .55fr 1.3fr .55fr; }.step-row .compact-field { min-width:0; }.step-row .compact-field>label { min-height:41px; }.step-field-DELETE { text-align:center; }.step-field-DELETE input { display:block; margin:5px auto 0; width:auto; }.section-heading,.form-actions { align-items:center; display:flex; justify-content:space-between; }.form-actions { padding:12px 4px; }.sr-only { height:1px; overflow:hidden; position:absolute; width:1px; }
.section-hint { color:var(--muted); font-size:13px; }
.narrow-heading { max-width:760px; }
.upload-card { background:var(--card); border:1px solid var(--line); border-radius:18px; max-width:760px; padding:28px; }
.upload-field { align-items:center; background:#f5f1e8; border:2px dashed #b7b09f; border-radius:14px; display:flex; flex-direction:column; padding:42px 22px; text-align:center; }
.upload-field label { font:700 24px Georgia,serif; }
.upload-field p { color:var(--muted); margin:6px 0 20px; }
.upload-icon { align-items:center; background:var(--green); border-radius:50%; color:white; display:flex; font-family:Georgia,serif; height:52px; justify-content:center; margin-bottom:14px; width:52px; }
.language-field { margin:24px 0; }
.review-grid { display:grid; grid-template-columns:minmax(280px,.9fr) minmax(380px,1.2fr); gap:26px; }
.scan-preview,.review-form { background:var(--card); border:1px solid var(--line); border-radius:16px; padding:20px; }
.scan-preview img { border-radius:8px; display:block; max-height:680px; object-fit:contain; width:100%; }
.scan-preview p { color:var(--muted); font-size:13px; overflow-wrap:anywhere; }
.review-form textarea { min-height:510px; resize:vertical; }
.status { border-radius:999px; display:inline-block; font-size:12px; font-weight:800; margin-bottom:16px; padding:5px 10px; }
.status-ready { background:#dcebdd; color:#21502e; }
.status-failed { background:#f7dddd; color:#8b2525; }
.scan-warning { background:#fff1d2; border-radius:8px; margin-bottom:16px; padding:12px; }
.parser-result { background:#e6f0e8; border:1px solid #b8cfbd; border-radius:12px; color:#214333; padding:16px 18px; }
.parser-result ul { margin-bottom:0; }
.quantity-uncertain { background:#fff3cd !important; border-color:#c58b18 !important; }
.fraction-snippet { align-items:center; background:#fff9e8; border:1px solid #e2c979; border-radius:8px; display:flex; gap:10px; grid-column:1/-1; padding:6px 9px; }
.fraction-snippet span { color:#745b17; font-size:12px; font-weight:700; min-width:180px; }
.fraction-snippet img { background:white; border:1px solid var(--line); border-radius:5px; max-height:42px; max-width:50%; object-fit:contain; }
.field-included_meal_types { grid-column:1/-1; }.field-included_meal_types>div { display:flex; flex-wrap:wrap; gap:10px 24px; }.field-included_meal_types label { align-items:center; display:flex; gap:7px; margin:0; }.field-included_meal_types input { width:auto; }
.menu-card-actions { align-items:center; display:flex; gap:14px; }
.product-match { align-items:center; background:#eef4e8; border-radius:7px; display:flex; flex-wrap:wrap; gap:5px 10px; margin-top:7px; padding:7px 9px; text-decoration:none!important; }.product-match.unmapped { background:#f5f1e8; }.product-match>span,.product-match>small { color:var(--muted); font-size:11px; }.product-match>a { font-size:12px; font-weight:700; margin-left:auto; }.product-status { border-radius:10px; padding:2px 7px; }.product-status.status-in_stock { background:#d9ead3; color:#2d6826; }.product-status.status-out_of_stock,.product-status.status-not_sold { background:#f4d5d2; color:#8a2921; }.mapping-notice { background:#fff3cd; border:1px solid #e0c36c; border-radius:10px; margin-bottom:20px; padding:14px 16px; }.candidate-list { display:grid; gap:10px; }.candidate-card { align-items:center; border:1px solid var(--line); border-radius:9px; display:flex; justify-content:space-between; padding:12px; }.candidate-card div { display:flex; flex-direction:column; }.candidate-card span { color:var(--muted); font-size:12px; }
.menu-heading { align-items:center; display:flex; justify-content:space-between; }.menu-card-list { display:grid; gap:16px; }.menu-card { align-items:center; background:white; border:1px solid var(--line); border-radius:14px; color:inherit; display:flex; justify-content:space-between; padding:22px; text-decoration:none; }.menu-card h2 { margin:5px 0; }.score-ring { align-items:center; background:conic-gradient(var(--accent) calc(var(--score) * 1%), #e6e1d6 0); border-radius:50%; display:flex; flex-direction:column; height:78px; justify-content:center; min-width:78px; position:relative; }.score-ring::before { background:white; border-radius:50%; content:""; inset:7px; position:absolute; }.score-ring strong,.score-ring span { position:relative; }.score-ring span { color:var(--muted); font-size:10px; }.score-ring.large { height:96px; min-width:96px; }.heading-actions { align-items:center; display:flex; gap:22px; }.score-breakdown { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:22px; }.score-breakdown div { background:#f5f1e8; border-radius:10px; display:flex; flex-direction:column; padding:16px; }.score-breakdown strong { font-size:24px; }.score-breakdown span { color:var(--muted); }.menu-entry-row { align-items:start; grid-template-columns:minmax(105px,.8fr) minmax(110px,.9fr) minmax(210px,1.8fr) minmax(110px,.9fr) 76px minmax(150px,1.3fr) 62px; }.menu-field-servings input { max-width:76px; }.menu-delete-field { align-self:end; justify-self:center; text-align:center; }.menu-delete-field label { white-space:nowrap; }.menu-delete-field input { display:block; margin:12px auto 10px; width:auto; }.menu-entry-row.is-marked-delete { opacity:.55; }.menu-entry-row.is-marked-delete .compact-field:not(.menu-delete-field) { text-decoration:line-through; }.planned-meals { display:grid; gap:10px; }.planned-meals article { align-items:center; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; padding:12px 0; }.planned-meals h3 { margin:4px 0; }
.component-row { align-items:start; grid-template-columns:90px 100px 105px minmax(190px,2fr) minmax(115px,1.1fr) 72px minmax(125px,1.2fr) 58px 62px; }.component-row .compact-field { min-width:0; }.component-field-servings input,.component-field-order input { max-width:72px; }.component-delete-field { align-self:end; justify-self:center; text-align:center; }.component-delete-field input { display:block; margin:12px auto 10px; width:auto; }.component-row.is-marked-delete { opacity:.55; }.component-row.is-marked-delete .compact-field:not(.component-delete-field) { text-decoration:line-through; }
.weekly-calendar { display:grid; gap:10px; grid-template-columns:repeat(7,minmax(145px,1fr)); overflow-x:auto; }.calendar-day { background:#f5f1e8; border-radius:10px; min-width:145px; overflow:hidden; }.calendar-day>header { align-items:center; background:#e9e2d5; display:flex; justify-content:space-between; padding:10px; }.calendar-day>header span { color:var(--muted); font-size:12px; }.meal-slot { border-top:1px solid var(--line); display:flex; flex-direction:column; min-height:82px; padding:9px; }.meal-slot>span { color:var(--muted); font-size:11px; font-weight:700; text-transform:uppercase; }.meal-slot a,.meal-slot strong { margin-top:5px; }.meal-slot small,.meal-slot em { color:var(--muted); margin-top:3px; }.shopping-groups { display:grid; gap:18px; }.shopping-group { background:white; border:1px solid var(--line); border-radius:12px; overflow:hidden; }.shopping-group h2 { background:#f5f1e8; margin:0; padding:12px 16px; }.shopping-item { align-items:center; border-top:1px solid var(--line); display:grid; gap:14px; grid-template-columns:110px 1fr 120px; padding:12px 16px; }.shopping-item.is-checked .shopping-name { opacity:.55; text-decoration:line-through; }.shopping-item.is-pantry { background:#f4f7ef; }.check-control { align-items:center; display:flex; font-size:12px; gap:6px; }.shopping-name small { color:var(--muted); }.print-heading { align-items:center; display:flex; justify-content:space-between; }.print-shopping-item { align-items:center; border-bottom:1px solid var(--line); display:flex; gap:10px; padding:9px 14px; }.print-checkbox { border:1px solid #222; display:inline-block; height:14px; width:14px; }
.meal-component { border-left:2px solid #b8cfbd; display:flex; flex-direction:column; margin-top:7px; padding-left:7px; }.meal-component>span { color:var(--warm); font-size:9px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }.meal-component>a,.meal-component>strong { font-size:12px; margin-top:1px; }
.variations { border-top:1px solid var(--line); margin-top:50px; padding-top:36px; }.variation-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:18px; }.variation-card { background:var(--card); border:1px solid var(--line); border-radius:16px; padding:22px; }.variation-card h3 { font:700 23px Georgia,serif; margin-top:0; }.variation-card h4 { color:var(--warm); font-size:12px; letter-spacing:.08em; margin:20px 0 6px; text-transform:uppercase; }.reprocess-banner { align-items:center; background:#e6f0e8; border:1px solid #b8cfbd; border-radius:14px; display:flex; justify-content:space-between; margin-bottom:24px; max-width:900px; padding:16px 18px; }.reprocess-banner span { color:var(--muted); }
.shopping-name .conversion-note { display:block; margin-top:4px; }
button:disabled { cursor:not-allowed; opacity:.45; }
.recognition-settings { gap:14px; }.recognition-settings .compact-field { min-width:155px; }.recognition-settings label { display:block; font-size:12px; font-weight:700; margin-bottom:4px; }
.pdf-preview-toolbar { align-items:center; display:flex; flex-wrap:wrap; gap:8px 12px; margin-bottom:12px; }.pdf-preview-toolbar label { font-weight:700; }.pdf-preview-toolbar a { margin-left:auto; }
.review-grid.translated-review { grid-template-columns:minmax(240px,.65fr) minmax(680px,1.8fr); }.translation-columns { display:grid; gap:18px; grid-template-columns:1fr 1fr; }.translation-columns.english-only { grid-template-columns:1fr; }.translation-heading { align-items:center; display:flex; justify-content:space-between; }.translation-heading .status { margin:0; }
.page-heading h1 { color:var(--green-dark); }.page-heading>p:last-child { max-width:720px; }.form-section { border-top:3px solid rgba(64,92,71,.2); }.form-section h2 { color:var(--green-dark); }.formset-row { background:#f5efe3; border:1px solid #e8dfcf; }.field input,.field select,.field textarea,.compact-field input,.compact-field select,.compact-field textarea,.search input[type="search"] { color:var(--ink); outline:none; transition:border-color .16s ease,box-shadow .16s ease; }.field input:focus,.field select:focus,.field textarea:focus,.compact-field input:focus,.compact-field select:focus,.compact-field textarea:focus,.search input[type="search"]:focus { border-color:var(--green); box-shadow:0 0 0 3px rgba(64,92,71,.12); }.field label,.compact-field label { color:#394437; }.upload-card,.scan-preview,.review-form { box-shadow:var(--shadow); }.upload-field { background:linear-gradient(145deg,#f7f1e5,#eef1e7); border-color:#aebba8; }.upload-icon { box-shadow:0 8px 20px rgba(64,92,71,.2); }.menu-card { background:var(--card); border-color:var(--line); box-shadow:var(--shadow); transition:box-shadow .18s ease,transform .18s ease; }.menu-card:hover { box-shadow:0 20px 44px rgba(52,57,43,.12); transform:translateY(-2px); }.score-ring { --accent:var(--warm); }.score-breakdown div { background:var(--sage); border:1px solid #cfd8c6; }.calendar-day { background:#f8f2e7; border:1px solid var(--line); }.calendar-day>header { background:linear-gradient(135deg,#e1e7d9,#eee6d6); }.meal-slot { border-top-color:#ded4c2; }.shopping-group { background:var(--card); border-color:var(--line); box-shadow:var(--shadow); }.shopping-group h2 { background:linear-gradient(90deg,var(--sage),#efe6d5); color:var(--green-dark); }.view-switcher { background:#e5dccb; }.view-switcher a.active { background:var(--card); box-shadow:0 2px 8px rgba(52,57,43,.1); }.status-ready { background:var(--sage); color:var(--green-dark); }.parser-result { background:var(--sage); border-color:#bdcbb7; color:var(--green-dark); }
.field-generate_photo { background:var(--sage); border:1px solid #c4d0bd; border-radius:12px; grid-column:1/-1; padding:15px 17px; }.field-generate_photo label { display:inline; margin-left:7px; }.field-generate_photo input { padding:0; width:auto; }.field-generate_photo small { display:block; margin:6px 0 0 25px; max-width:760px; }.field-generate_photo .configuration-note { color:#8a442c; font-weight:700; }.messages { display:grid; gap:10px; margin-bottom:24px; }.message { background:var(--card); border:1px solid var(--line); border-left:5px solid var(--green); border-radius:10px; box-shadow:var(--shadow); padding:13px 16px; }.message.success { border-left-color:var(--green); }.message.info { border-left-color:var(--gold); }.message.warning,.message.error { border-left-color:var(--warm); }
.fridge-mode { background:radial-gradient(circle at 8% 0,rgba(201,154,82,.16),transparent 32rem),#f2ecdf; min-height:100vh; }.fridge-mode a { text-decoration:none; }.fridge-header { align-items:center; background:var(--green-dark); color:#fffaf0; display:grid; gap:26px; grid-template-columns:minmax(180px,.6fr) minmax(260px,1.4fr) minmax(280px,.8fr); min-height:92px; padding:16px clamp(24px,3vw,58px); position:sticky; top:0; z-index:5; }.fridge-brand { align-items:center; color:#fffaf0; display:flex; gap:12px; font:700 34px/1 "Palatino Linotype",Georgia,serif; }.fridge-brand span { align-items:center; background:var(--warm); border:1px solid #ffffff4a; border-radius:50%; display:flex; height:50px; justify-content:center; width:50px; }.fridge-week { display:flex; flex-direction:column; text-align:center; }.fridge-week span { color:#d6ddcf; font-size:11px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }.fridge-week strong { font:700 24px/1.2 "Palatino Linotype",Georgia,serif; }.fridge-header-actions { display:flex; gap:12px; justify-content:flex-end; }.fridge-header-actions a,.fridge-week-nav a,.fridge-empty a { align-items:center; background:#fffaf0; border:1px solid #ffffff52; border-radius:999px; color:var(--green-dark); display:inline-flex; font-size:15px; font-weight:800; justify-content:center; min-height:48px; padding:10px 20px; }.fridge-header-actions a:first-child { background:var(--gold); }.fridge-shell { margin:0 auto; max-width:1840px; padding:clamp(28px,3vw,52px); }.fridge-today,.fridge-weekly { background:rgba(255,250,240,.9); border:1px solid var(--line); border-radius:24px; box-shadow:var(--shadow); padding:clamp(22px,2.4vw,38px); }.fridge-weekly { margin-top:28px; }.fridge-section-heading { align-items:end; display:flex; gap:30px; justify-content:space-between; margin-bottom:24px; }.fridge-section-heading p { color:var(--warm); font-size:12px; font-weight:850; letter-spacing:.15em; margin:0; text-transform:uppercase; }.fridge-section-heading h1,.fridge-section-heading h2 { color:var(--green-dark); font-size:clamp(34px,4vw,58px); margin:5px 0 0; }.fridge-section-heading h2 { font-size:36px; }.fridge-section-heading .fridge-summary { color:var(--muted); font-size:16px; font-weight:500; letter-spacing:0; max-width:600px; text-align:right; text-transform:none; }.fridge-today-meals { display:grid; gap:18px; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); }.fridge-featured-meal { align-items:stretch; background:#f7f1e5; border:1px solid var(--line); border-radius:18px; color:var(--ink); display:grid; grid-template-columns:180px minmax(0,1fr); min-height:180px; overflow:hidden; }.fridge-meal-photo { align-items:center; background:linear-gradient(145deg,var(--green),var(--green-dark)); color:#fffaf0; display:flex; font:700 54px/1 Georgia,serif; justify-content:center; min-height:180px; overflow:hidden; }.fridge-meal-photo img { height:100%; object-fit:cover; width:100%; }.fridge-meal-copy { display:flex; flex-direction:column; justify-content:center; min-width:0; padding:22px; }.fridge-meal-copy small { color:var(--warm); font-size:11px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }.fridge-meal-copy strong { font:700 clamp(24px,2vw,34px)/1.08 "Palatino Linotype",Georgia,serif; margin:6px 0 10px; }.fridge-meal-copy>span { color:var(--muted); }.fridge-meal-copy em { color:var(--green); font-size:13px; font-style:normal; font-weight:800; margin-top:8px; }.fridge-open-today { align-items:flex-start; background:var(--sage); border-radius:18px; display:flex; flex-direction:column; grid-column:1/-1; justify-content:center; min-height:130px; padding:24px 28px; }.fridge-open-today strong { font:700 28px Georgia,serif; }.fridge-open-today span { color:var(--muted); margin-top:5px; }.fridge-section-heading.compact { align-items:center; }.fridge-week-nav { display:flex; flex-wrap:wrap; gap:9px; justify-content:flex-end; }.fridge-week-nav a { background:#eef1e8; border-color:#c8d2c1; color:var(--green); min-height:44px; padding:8px 16px; }.fridge-calendar { display:grid; gap:12px; grid-template-columns:repeat(7,minmax(145px,1fr)); }.fridge-day { background:#f7f1e5; border:1px solid var(--line); border-radius:16px; min-width:0; overflow:hidden; }.fridge-day.is-today { border:3px solid var(--warm); box-shadow:0 8px 24px rgba(184,102,67,.16); }.fridge-day>header { align-items:center; background:var(--sage); display:flex; justify-content:space-between; padding:14px; }.fridge-day.is-today>header { background:#ead5c6; }.fridge-day>header strong { font:700 18px Georgia,serif; }.fridge-day>header span { color:var(--muted); font-size:12px; }.fridge-day-meals { display:grid; }.fridge-day-meal { border-top:1px solid var(--line); display:flex; flex-direction:column; min-height:92px; padding:12px 14px; }.fridge-day-meal:first-child { border-top:0; }.fridge-day-meal small { color:var(--warm); font-size:9px; font-weight:850; letter-spacing:.11em; text-transform:uppercase; }.fridge-day-meal a { color:var(--ink); font-size:14px; font-weight:800; line-height:1.25; margin-top:5px; }.fridge-day-meal span { color:var(--green); font-size:11px; font-weight:700; margin-top:5px; }.fridge-day-meal em { color:#9a978e; font-size:13px; font-style:normal; margin-top:7px; }.fridge-footer { color:var(--muted); display:flex; font-size:12px; justify-content:space-between; margin:0 auto; max-width:1840px; padding:0 clamp(28px,3vw,52px) 30px; }.fridge-empty { align-items:center; display:flex; flex-direction:column; justify-content:center; min-height:calc(100vh - 190px); text-align:center; }.fridge-empty-mark { align-items:center; background:var(--warm); border-radius:50%; color:white; display:flex; font:700 64px Georgia,serif; height:110px; justify-content:center; width:110px; }.fridge-empty p { color:var(--warm); font-size:12px; font-weight:800; letter-spacing:.18em; margin:20px 0 0; text-transform:uppercase; }.fridge-empty h1 { max-width:720px; }.fridge-empty a { background:var(--green); color:white; }
@media(max-width:1250px){.fridge-calendar{grid-template-columns:repeat(4,1fr)}.fridge-header{grid-template-columns:auto 1fr auto}.fridge-week{align-items:flex-start;text-align:left}.fridge-week strong{font-size:20px}.fridge-brand strong{display:none}}
@media(max-width:760px){.container{padding-top:34px}.hero,.recipe-heading{align-items:start;flex-direction:column}.recipe-heading-side{align-items:stretch;flex-basis:auto;width:100%}.recipe-detail-thumbnail{max-width:420px}.recipe-heading-side .actions{justify-content:flex-start}.facts{grid-template-columns:repeat(2,1fr)}.facts div:nth-child(2){border:0}.recipe-columns,.form-grid,.review-grid{grid-template-columns:1fr}.recipe-toolbar{align-items:stretch;flex-direction:column}.view-switcher{align-self:flex-start}.recipe-view-list .recipe-card{gap:14px;grid-template-columns:82px minmax(0,1fr)}.recipe-view-list .recipe-thumbnail{aspect-ratio:1}.recipe-view-list .recipe-card-side{border-top:1px solid var(--line);grid-column:1/-1;padding-top:12px;width:100%}.ingredient-row,.step-row,.menu-entry-row,.component-row{grid-template-columns:1fr 1fr}.menu-field-recipe,.menu-field-notes,.component-field-recipe,.component-field-notes{grid-column:1/-1}.menu-delete-field,.component-delete-field{align-self:end;justify-self:center}.fraction-snippet{align-items:flex-start;flex-direction:column}.fraction-snippet img{max-width:100%}.site-header{padding:14px 18px}.site-header nav>a:not(.button){display:none}}
@media(max-width:760px){.fridge-header{gap:10px;grid-template-columns:auto 1fr;padding:12px 16px}.fridge-brand span{height:44px;width:44px}.fridge-week span{display:none}.fridge-week strong{font-size:16px}.fridge-header-actions{grid-column:1/-1;justify-content:stretch}.fridge-header-actions a{flex:1;min-height:44px}.fridge-shell{padding:18px 14px}.fridge-today,.fridge-weekly{border-radius:18px;padding:18px}.fridge-section-heading{align-items:flex-start;flex-direction:column;gap:9px}.fridge-section-heading .fridge-summary{text-align:left}.fridge-featured-meal{grid-template-columns:110px minmax(0,1fr);min-height:140px}.fridge-meal-photo{min-height:140px}.fridge-meal-copy{padding:16px}.fridge-calendar{grid-template-columns:repeat(2,1fr)}.fridge-section-heading.compact{align-items:flex-start}.fridge-week-nav{justify-content:flex-start}.fridge-footer{flex-direction:column;gap:4px;padding:0 18px 24px}}
@media print {.site-header,.site-footer,.no-print{display:none!important}.container{max-width:none;padding:0}.weekly-calendar{grid-template-columns:repeat(7,1fr);overflow:visible}.calendar-day{min-width:0}.meal-slot{min-height:64px}.shopping-group{break-inside:avoid}}
@media(max-width:980px){.review-grid.translated-review,.translation-columns{grid-template-columns:1fr}}
.menu-entry-row{grid-template-columns:minmax(90px,.7fr) minmax(100px,.8fr) minmax(190px,1.7fr) minmax(100px,.8fr) 65px 100px 88px minmax(135px,1.2fr) 58px}.menu-field-serve_at input{min-width:95px}.menu-field-prep_reminder_minutes input{max-width:88px}.pantry-heading{align-items:center;display:flex;justify-content:space-between}.pantry-summary{align-items:center;background:var(--sage);border:1px solid #cbd5c5;border-radius:14px;display:grid;gap:3px 12px;grid-template-columns:auto auto;padding:14px 20px}.pantry-summary strong{color:var(--green-dark);font:700 25px Georgia,serif}.pantry-summary span{color:var(--muted);font-size:12px;text-transform:uppercase}.restock-banner{align-items:center;background:#f5dfd1;border:1px solid #dfbba6;border-radius:14px;display:flex;justify-content:space-between;margin-bottom:20px;padding:18px 22px}.restock-banner h2{margin:4px 0}.restock-banner>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.restock-banner span{background:#fff8f1;border-radius:999px;font-weight:700;padding:7px 11px}.pantry-table,.status-panel{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.pantry-table>header,.pantry-row{display:grid;gap:10px;grid-template-columns:minmax(180px,1.5fr) 90px 85px 70px 100px minmax(150px,1.2fr) 60px}.pantry-table>header{background:linear-gradient(90deg,var(--sage),#efe6d5);font-size:11px;font-weight:800;letter-spacing:.08em;padding:12px 15px;text-transform:uppercase}.pantry-row{align-items:start;border-top:1px solid var(--line);padding:13px 15px}.pantry-row.needs-restock{background:#fff7f0}.pantry-check{text-align:center}.pantry-check input{width:auto}.pantry-stock{display:block;margin-top:6px}.pantry-stock.covers{color:var(--green);font-weight:800}.status-grid{display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:22px}.status-card{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);min-height:145px;padding:20px;position:relative}.status-card p{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.09em;margin:0;text-transform:uppercase}.status-card h2{color:var(--green-dark);font-size:28px;margin:10px 0 7px}.status-card small{color:var(--muted)}.status-card.status-good{border-top:5px solid var(--green)}.status-card.status-warning{border-top:5px solid var(--gold)}.status-dot{background:#4d895d;border-radius:50%;box-shadow:0 0 0 6px #dce8dc;height:10px;position:absolute;right:20px;top:20px;width:10px}.status-panel{margin-top:20px;padding:22px}.backup-list{border:1px solid var(--line);border-radius:10px;overflow:hidden}.backup-list>header,.backup-list>div{display:grid;gap:12px;grid-template-columns:1.4fr 1fr 1.2fr .7fr .7fr;padding:11px 13px}.backup-list>header{background:var(--sage);font-size:11px;font-weight:800;text-transform:uppercase}.backup-list>div{border-top:1px solid var(--line);font-size:13px}.replication-panel code{background:#ece7dc;border-radius:8px;display:block;margin-top:12px;padding:12px}.muted{color:var(--muted)}
.fridge-header-actions a,.fridge-header-actions button{white-space:nowrap}.fridge-header-actions button{align-items:center;background:#eef1e8;border:1px solid #ffffff52;border-radius:999px;color:var(--green-dark);cursor:pointer;display:inline-flex;font-size:15px;font-weight:800;justify-content:center;min-height:48px;padding:10px 20px}.fridge-clock{align-self:center;color:#fffaf0;font-size:17px;font-weight:800;white-space:nowrap}.fridge-day>header{align-items:flex-start;flex-direction:column;gap:3px}.fridge-day>header span{white-space:nowrap}.fridge-reminder{align-items:center;background:linear-gradient(120deg,#e5eadf,#f3ebdc);border:1px solid #c5d0bf;border-radius:18px;display:flex;gap:16px;grid-column:1/-1;padding:16px 20px}.fridge-reminder.reminder-start{background:linear-gradient(120deg,#f2d4c2,#f8ead9);border-color:#d8a78b}.reminder-icon{align-items:center;background:var(--green);border-radius:50%;color:white;display:flex;font-size:24px;font-weight:900;height:48px;justify-content:center;min-width:48px}.reminder-start .reminder-icon{background:var(--warm)}.fridge-reminder>span:last-child{display:grid;gap:2px}.fridge-reminder small{color:var(--warm);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.fridge-reminder strong{color:var(--green-dark);font:700 23px Georgia,serif}.fridge-reminder em{color:var(--muted);font-size:13px;font-style:normal}.fridge-meal-copy .fridge-prep-time{color:var(--green);font-size:13px;font-weight:850;margin-top:7px}.fridge-mode.is-fullscreen .fridge-header{min-height:76px;padding-bottom:10px;padding-top:10px}.fridge-mode.is-fullscreen .fridge-shell{padding-top:24px}.fridge-mode.is-fullscreen .fridge-today{border-color:#bdcbb7}.fridge-mode.is-fullscreen .fridge-footer{display:none}
.nutrition-summary{align-items:center;background:linear-gradient(135deg,#edf2e8,#f8efe1);border:1px solid #cad4c3;border-radius:16px;display:flex;gap:28px;justify-content:space-between;margin-bottom:22px;padding:20px 24px}.nutrition-summary h2{color:var(--green-dark);margin:3px 0 5px}.nutrition-summary p{margin:0}.nutrition-summary small{color:var(--muted)}.nutrition-legend{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.nutrition-legend span{background:white;border:1px solid var(--line);border-radius:999px;font-size:11px;font-weight:800;padding:6px 9px}.nutrition-legend span::before{border-radius:50%;content:"";display:inline-block;height:8px;margin-right:5px;width:8px}.legend-vegetable::before{background:#4d8b57}.legend-fruit::before{background:#d45555}.legend-grain::before{background:#d99a38}.legend-protein::before{background:#8061a8}.legend-dairy::before{background:#4c91c6}.nutrition-wheel{--vegetable-fill:#dfe6dc;--fruit-fill:#eadede;--grain-fill:#ebe2d2;--protein-fill:#e4dfea;--dairy-fill:#dce6eb;align-items:center;background:conic-gradient(var(--vegetable-fill) 0 20%,var(--fruit-fill) 20% 40%,var(--grain-fill) 40% 60%,var(--protein-fill) 60% 80%,var(--dairy-fill) 80% 100%);border-radius:50%;display:inline-flex;height:58px;justify-content:center;min-width:58px;position:relative}.nutrition-wheel::after{background:#fffaf0;border-radius:50%;content:"";inset:10px;position:absolute}.nutrition-wheel b{color:var(--green-dark);font:800 11px/1 Arial,sans-serif;position:relative;z-index:1}.nutrition-wheel.has-vegetable{--vegetable-fill:#4d8b57}.nutrition-wheel.has-fruit{--fruit-fill:#d45555}.nutrition-wheel.has-grain{--grain-fill:#d99a38}.nutrition-wheel.has-protein{--protein-fill:#8061a8}.nutrition-wheel.has-dairy{--dairy-fill:#4c91c6}.nutrition-wheel.small{height:42px;min-width:42px}.nutrition-wheel.small::after{inset:7px}.nutrition-wheel.tiny{height:30px;min-width:30px}.nutrition-wheel.tiny::after{inset:5px}.nutrition-wheel.tiny b{font-size:9px}.meal-balance-inline{align-items:center;display:flex;gap:7px;margin-top:8px}.meal-balance-inline>span:last-child{color:var(--green);font-size:10px;font-weight:800}.fridge-balance{align-items:center;display:flex;gap:10px;margin-top:10px}.fridge-balance>span:last-child{display:flex;flex-direction:column}.fridge-balance small{color:var(--muted);font-size:10px;letter-spacing:0;text-transform:none}.fridge-mini-balance{align-items:center;display:flex;gap:5px}.fridge-day-meal .fridge-mini-balance{color:var(--muted);font-size:10px}.fridge-mode.is-fullscreen .fridge-header{min-height:76px;padding-bottom:10px;padding-top:10px}.fridge-mode.is-fullscreen .fridge-shell{padding-top:24px}.fridge-mode.is-fullscreen .fridge-today{border-color:#bdcbb7}.fridge-mode.is-fullscreen .fridge-footer{display:none}
.fridge-header-actions a,.fridge-header-actions button{white-space:nowrap}.fridge-header-actions button{align-items:center;background:#eef1e8;border:1px solid #ffffff52;border-radius:999px;color:var(--green-dark);cursor:pointer;display:inline-flex;font-size:15px;font-weight:800;justify-content:center;min-height:48px;padding:10px 20px}.fridge-clock{align-self:center;color:#fffaf0;font-size:17px;font-weight:800;white-space:nowrap}.fridge-day>header{align-items:flex-start;flex-direction:column;gap:3px}.fridge-day>header span{white-space:nowrap}.fridge-reminder{align-items:center;background:linear-gradient(120deg,#e5eadf,#f3ebdc);border:1px solid #c5d0bf;border-radius:18px;display:flex;gap:16px;grid-column:1/-1;padding:16px 20px}.fridge-reminder.reminder-start{background:linear-gradient(120deg,#f2d4c2,#f8ead9);border-color:#d8a78b}.reminder-icon{align-items:center;background:var(--green);border-radius:50%;color:white;display:flex;font-size:24px;font-weight:900;height:48px;justify-content:center;min-width:48px}.reminder-start .reminder-icon{background:var(--warm)}.fridge-reminder>span:last-child{display:grid;gap:2px}.fridge-reminder small{color:var(--warm);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.fridge-reminder strong{color:var(--green-dark);font:700 23px Georgia,serif}.fridge-reminder em{color:var(--muted);font-size:13px;font-style:normal}.fridge-meal-copy .fridge-prep-time{color:var(--green);font-size:13px;font-weight:850;margin-top:7px}
@media(max-width:760px){.nutrition-summary{align-items:flex-start;flex-direction:column}.nutrition-legend{justify-content:flex-start}}
.bulk-import-card{background:linear-gradient(145deg,#f7f1e5,#eef1e7);border:1px solid #bfcbb8;border-radius:18px;box-shadow:var(--shadow);margin-top:28px;padding:26px}.bulk-import-card h2,.bulk-review-queue h2{color:var(--green-dark);margin:3px 0}.bulk-import-card code{background:#ffffffa8;border:1px solid var(--line);border-radius:6px;padding:3px 6px}.bulk-count{background:var(--green);border-radius:999px;color:white;font-size:12px;font-weight:800;padding:7px 11px}.bulk-file-list{background:white;border:1px solid var(--line);border-radius:12px;margin:18px 0;max-height:360px;overflow:auto}.bulk-file-list>div{align-items:center;border-top:1px solid var(--line);display:grid;gap:14px;grid-template-columns:minmax(0,1fr) auto auto;padding:11px 14px}.bulk-file-list>div:first-child{border-top:0}.bulk-file-list>div>span:first-child{display:flex;flex-direction:column;min-width:0}.bulk-file-list strong{overflow-wrap:anywhere}.bulk-file-list small{color:var(--muted)}.bulk-file-list>div>span:nth-child(2){color:var(--warm);font-size:11px;font-weight:850;text-transform:uppercase}.bulk-settings{align-items:end;display:grid;gap:14px;grid-template-columns:1fr 1fr auto;margin-top:20px}.bulk-settings button{min-height:44px}.bulk-settings button:disabled{cursor:not-allowed;opacity:.5}.bulk-empty{align-items:flex-start;background:#ffffffa8;border:1px dashed #acb8a5;border-radius:12px;display:flex;flex-direction:column;margin:18px 0;padding:18px}.bulk-empty span{color:var(--muted);margin-top:3px}.bulk-review-queue{margin-top:28px}.bulk-review-state.needs-review{color:#a55737!important}.bulk-review-state.reviewed{color:var(--green)!important}.bulk-review-banner{align-items:center;background:#f2dfcf;border:1px solid #d5ad91;border-radius:12px;color:var(--green-dark);display:flex;gap:18px;justify-content:space-between;margin-bottom:18px;padding:14px 18px}.bulk-review-banner span{color:var(--muted);font-size:13px}@media(max-width:760px){.bulk-settings{grid-template-columns:1fr}.bulk-file-list>div{grid-template-columns:minmax(0,1fr) auto}.bulk-file-list>div>a{grid-column:1/-1}.bulk-review-banner{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:1100px){.status-grid{grid-template-columns:repeat(2,1fr)}.pantry-table{overflow-x:auto}.pantry-table>header,.pantry-row{min-width:900px}.menu-entry-row{grid-template-columns:repeat(4,1fr)}.menu-field-recipe,.menu-field-notes{grid-column:span 2}}
@media(max-width:760px){.pantry-heading,.restock-banner{align-items:flex-start;flex-direction:column;gap:14px}.status-grid{grid-template-columns:1fr}.backup-list{overflow-x:auto}.backup-list>header,.backup-list>div{min-width:680px}.fridge-clock{display:none}.fridge-header-actions button{flex:1;min-height:44px}.fridge-reminder{align-items:flex-start}.fridge-reminder strong{font-size:19px}}

/* Compact ingredient editor rows: preserve room for names while keeping
   utility controls aligned and visually lightweight. */
.ingredient-row { gap:8px; grid-template-columns:2.7fr .6fr 1.45fr .55fr .55fr .85fr .95fr .7fr .45fr; }
.ingredient-row .compact-field { min-width:0; }
.ingredient-row .compact-field input,.ingredient-row .compact-field select { min-width:0; }
.ingredient-field-optional,.ingredient-field-DELETE { text-align:center; }
.ingredient-field-optional input,.ingredient-field-DELETE input { display:block; margin:5px auto 0; width:auto; }
.ingredient-field-order input { max-width:58px; }
.ingredient-field-unit input { max-width:72px; }
.fridge-recipe-link { color:var(--warm); font-size:12px; font-weight:700; letter-spacing:.02em; margin-top:8px; }
.fridge-featured-meal .fridge-recipe-link { display:block; }
.fridge-day-meal .fridge-recipe-link { display:block; margin-top:4px; }
.ingredient-row .compact-field > label { min-height:36px; }
.ingredient-row .compact-field { align-self:start; }
.ingredient-row .compact-field input:not([type="checkbox"]),.ingredient-row .compact-field select { box-sizing:border-box; min-height:42px; }
.processing-overlay{align-items:center;background:rgba(29,38,31,.58);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1000}.processing-overlay[hidden]{display:none}.processing-dialog{align-items:center;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 70px rgba(22,30,24,.28);display:flex;flex-direction:column;max-width:440px;padding:34px;text-align:center;width:100%}.processing-dialog strong{color:var(--green-dark);font:700 27px/1.2 Georgia,serif;margin:17px 0 7px}.processing-dialog>span:last-child{color:var(--muted);line-height:1.45}.processing-spinner{animation:processing-spin .85s linear infinite;border:5px solid #d8dfd2;border-radius:50%;border-top-color:var(--warm);height:48px;width:48px}@keyframes processing-spin{to{transform:rotate(360deg)}}
.recipe-form .form-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.recipe-form .form-grid>.field{grid-column:span 3}.recipe-form .form-grid>.field.field-title,.recipe-form .form-grid>.field.field-description,.recipe-form .form-grid>.field.field-attribution,.recipe-form .form-grid>.field.field-notes,.recipe-form .form-grid>.field.field-equipment,.recipe-form .form-grid>.field.field-photo{grid-column:1/-1}.recipe-form .form-grid>.field.field-servings,.recipe-form .form-grid>.field.field-prep_minutes,.recipe-form .form-grid>.field.field-cook_minutes{grid-column:span 2}.recipe-form .form-grid>.field.field-minimum_servings,.recipe-form .form-grid>.field.field-maximum_servings{grid-column:span 3}.recipe-form .field-servings input,.recipe-form .field-prep_minutes input,.recipe-form .field-cook_minutes input,.recipe-form .field-minimum_servings input,.recipe-form .field-maximum_servings input{max-width:150px}
.ingredients li{align-items:start;column-gap:12px;display:grid;grid-template-columns:minmax(68px,86px) minmax(0,1fr)}.ingredients .amount{display:block;min-width:0;white-space:nowrap}.ingredient-copy{min-width:0}
@media(max-width:760px){.recipe-form .form-grid{grid-template-columns:1fr 1fr}.recipe-form .form-grid>.field,.recipe-form .field-servings,.recipe-form .field-prep_minutes,.recipe-form .field-cook_minutes,.recipe-form .field-minimum_servings,.recipe-form .field-maximum_servings{grid-column:1/-1}.recipe-form .field-servings input,.recipe-form .field-prep_minutes input,.recipe-form .field-cook_minutes input,.recipe-form .field-minimum_servings input,.recipe-form .field-maximum_servings input{max-width:none}}
