:root{--font-sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--text-sm:.84rem;--text-base:1rem;--text-lg:1.25rem;--text-xl:clamp(1.8rem,4vw,2.5rem);--space-1:.375rem;--space-2:.75rem;--space-3:1.125rem;--space-4:1.75rem;--space-5:2.5rem;--radius:12px;--radius-sm:8px;--surface-page:#faf9f6;--surface-card:#fffefa;--surface-subtle:#f1f0e9;--text-primary:#29332e;--text-muted:#68736c;--border:#deded4;--accent:#456654;--content:1180px}*{box-sizing:border-box}body{margin:0;background:var(--surface-page);color:var(--text-primary);font:var(--text-base)/1.5 var(--font-sans)}.site-header{padding:var(--space-3) max(var(--space-3),calc((100% - var(--content))/2));background:#fffefa;border-bottom:1px solid var(--border);display:flex;gap:var(--space-4);align-items:center;justify-content:space-between}.brand{font-weight:700;letter-spacing:-.02em}a{color:inherit;text-decoration:none}nav{display:flex;gap:var(--space-1);flex-wrap:wrap}nav a{padding:.42rem .65rem;border-radius:99px;color:var(--text-muted);font-size:var(--text-sm)}nav a:hover,nav a[aria-current=page]{background:var(--surface-subtle);color:var(--text-primary)}nav a[aria-current=page]{font-weight:650}main{max-width:var(--content);margin:var(--space-5) auto;padding:0 var(--space-3)}h1,h2{line-height:1.15;letter-spacing:-.025em}h1{font-size:var(--text-xl);margin:0}h2{font-size:var(--text-lg);margin:0 0 var(--space-3)}p{margin:0 0 var(--space-2)}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:var(--space-3);margin-bottom:var(--space-4)}.eyebrow{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:700;margin-bottom:var(--space-1)}.muted,small,.helper{color:var(--text-muted)}.cards,.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.cards article,.two article,.form-card,.day{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3)}.week{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-3)}.day h2{font-size:1rem;padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.meal{border-bottom:1px solid var(--border);padding:var(--space-2) 0}.meal:last-child{border:0;padding-bottom:0}.meal summary{cursor:pointer;display:flex;justify-content:space-between;gap:var(--space-2);align-items:center;list-style:none}.meal summary::-webkit-details-marker{display:none}.meal-slot{font-size:var(--text-sm);font-weight:650}.meal-summary{display:flex;align-items:center;gap:var(--space-1);text-align:right;font-size:var(--text-sm)}.add-link{font-size:var(--text-sm);color:var(--accent);font-weight:650}.tag{font-size:.72rem;padding:.2rem .45rem;border-radius:99px;background:var(--surface-subtle);white-space:nowrap;font-weight:650}.DEFINED,.COMPLETED{background:#dcecdf}.LIKELY{background:#fff1c9}.OPEN,.SKIPPED{background:#e9edef}.AVAILABLE{background:#dceaf0}form{display:grid;gap:var(--space-2);margin-top:var(--space-3)}label{display:grid;gap:var(--space-1);font-size:var(--text-sm);font-weight:600}input,textarea,select,button,.button{font:inherit;padding:.65rem .7rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:#fff;color:var(--text-primary);min-height:42px}textarea{min-height:88px;resize:vertical}input:focus,textarea:focus,select:focus,button:focus,a:focus{outline:3px solid #b9d5c2;outline-offset:2px}button,.button{display:inline-flex;justify-content:center;align-items:center;background:var(--accent);color:#fff;border-color:var(--accent);font-weight:650;cursor:pointer}.secondary{background:transparent;color:var(--accent)}.danger{background:transparent;color:#a13f36;border-color:#d7a59e}.form-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.checkbox{display:flex;align-items:center;gap:var(--space-2)}.checkbox input{min-height:auto}.list{display:flex;justify-content:space-between;gap:var(--space-3);border-bottom:1px solid var(--border);padding:var(--space-3) 0}.list:first-of-type{padding-top:0}.list span:first-child{display:grid;gap:var(--space-1)}.recipe-meta{font-size:var(--text-sm);color:var(--text-muted);text-align:right}.form-card summary{font-weight:700;cursor:pointer}.row{display:flex;gap:var(--space-2);align-items:center;border-bottom:1px solid var(--border);padding:var(--space-2) 0}.row form{margin:0}.check{background:transparent;color:var(--accent);border:0;padding:0;min-height:auto;font-size:1.25rem}.done{color:var(--text-muted);text-decoration:line-through}.quick{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;align-items:end;gap:var(--space-2);margin-bottom:var(--space-4)}.shopping{max-width:720px}.back{color:var(--accent);font-size:var(--text-sm);font-weight:650;display:inline-block;margin-bottom:var(--space-3)}@media(max-width:760px){.site-header{display:block}.brand{display:inline-block;margin-bottom:var(--space-2)}nav{justify-content:space-between}.page-heading{align-items:start;flex-direction:column}.cards,.two{grid-template-columns:1fr}.quick{grid-template-columns:1fr 1fr}.quick label:first-child{grid-column:1/-1}.quick button{grid-column:1/-1}.week{grid-template-columns:1fr}.meal-summary{max-width:70%}.food-layout{display:block}.form-card{margin-top:var(--space-3)}}@media(max-width:380px){main{padding:0 var(--space-2);margin:var(--space-4) auto}nav a{padding:.4rem .45rem;font-size:.78rem}.quick{grid-template-columns:1fr}.quick label:first-child,.quick button{grid-column:auto}.list{flex-direction:column;gap:var(--space-1)}.recipe-meta{text-align:left}.meal summary{align-items:flex-start}.meal-summary{flex-direction:column;align-items:flex-end}}
