:root{font-family:system-ui,sans-serif;color:#1b2430;background:#f4f6f9;--surface:#ffffff;--text:#1b2430;--muted:#66717f;--line:#dde3ea;--accent:#1f4e8c;--ok:#1f8a4c;--warn:#b7791f;--bad:#c23b3b;--soft:#eef2f7}body{margin:0;background:#f4f6f9}button,input,textarea,select{font:inherit}main{max-width:760px;margin:0 auto;padding:12px 16px 96px}p{line-height:1.6;color:var(--muted)}.bar{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:2}.brand{font-weight:700;color:var(--accent)}.tabs{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--surface);border-top:1px solid var(--line);padding:6px 8px calc(6px + env(safe-area-inset-bottom))}.tabs button{flex:1;background:none;border:0;color:var(--muted);padding:10px;border-radius:10px;font-weight:500;display:flex;gap:6px;justify-content:center;align-items:center}.tabs button.on{color:var(--accent);background:var(--soft)}.tabs b{background:var(--bad);color:#fff;border-radius:10px;padding:0 7px;font-size:12px;line-height:18px}h2{font-size:20px;font-weight:650;margin:16px 0 8px}h3{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:22px 0 8px;display:flex;align-items:center;gap:8px}.group h2{display:flex;align-items:center;gap:8px;font-size:14px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted)}.count{background:var(--soft);color:var(--muted);border-radius:10px;padding:0 8px;font-size:12px;line-height:20px;font-weight:500;text-transform:none;letter-spacing:0}.file-row{display:flex;flex-direction:column;gap:4px;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:8px;color:var(--text)}.file-row.s-needs_fix{border-left-color:var(--bad)}.file-row.s-ready{border-left-color:var(--ok)}.file-row.s-pulling{border-left-color:var(--warn)}.file-row.s-preparing{border-left-color:var(--accent)}.file-row .top,.file-row .bottom{display:flex;justify-content:space-between;align-items:center;gap:8px}.progress{font-variant-numeric:tabular-nums;font-weight:650;color:var(--text)}.title{font-size:16px;color:var(--text)}.sub,.holdup{font-size:13px;color:var(--muted)}.holdup.bad{color:var(--bad)}.pill{font-size:12px;border-radius:10px;padding:2px 8px;background:var(--soft);color:var(--muted);white-space:nowrap}.pill.ready{background:#e3f4ea;color:var(--ok)}.pill.needs_fix{background:#fbe5e5;color:var(--bad)}.pill.printed{background:#e8ecf1;color:#4b5563}.pill.pulling{background:#fdf1dc;color:var(--warn)}.pill.preparing{background:#e4ecf8;color:var(--accent)}.item{display:flex;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin-bottom:6px;flex-wrap:wrap}.item>input{width:22px;height:22px;accent-color:var(--ok);flex:none}.item-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left;background:none;border:0;color:inherit;padding:0}.item.done .title{color:var(--muted)}.item.doc.flagged{border-color:#f1c1c1;background:#fff7f7}.item.doc.flagged .sub{color:var(--bad)}.item.doc.proofed .title{color:var(--muted)}.tag{font-size:12px;color:var(--muted);background:var(--soft);border-radius:8px;padding:3px 8px;white-space:nowrap}.tag.ok{background:#e3f4ea;color:var(--ok)}.doc-actions{display:flex;gap:6px;align-items:center}.doc-actions button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:6px 10px;font-size:13px}.doc-actions .warn{color:var(--bad)}.doc-actions .quiet{border:0;color:var(--muted)}.flag{flex-basis:100%;display:flex;flex-direction:column;gap:8px;padding-top:4px}.banner{border-radius:12px;padding:12px 14px;margin:8px 0}.banner.bad{background:#fbe5e5;color:var(--bad)}.primary{background:var(--accent);color:#fff;border:0;border-radius:10px;padding:12px 18px;font-weight:600}.primary.disabled,.primary:disabled{background:#c8d2de;color:#fff}.wide{width:100%;margin:8px 0 12px}.actions{display:flex;gap:8px;margin-top:8px}.actions button{border:0;border-radius:10px;padding:12px 16px;background:var(--soft);color:var(--text)}.actions .primary{background:var(--accent);color:#fff}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px;margin-top:12px}.sheet label,.edit{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.edit{margin:8px 0;gap:8px}.edit .danger{align-self:flex-start;background:none;border:1px solid #f1c1c1;color:var(--bad);border-radius:8px;padding:8px 12px}input[type=text],input:not([type]),input[type=date]{background:var(--surface);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:11px 12px;font-size:16px;width:100%;box-sizing:border-box}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.seg{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}.seg button{flex:1;background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:10px;padding:9px 6px;font-size:14px;white-space:nowrap}.seg button.on{border-color:var(--accent);color:var(--accent);background:var(--soft)}.hint{font-size:13px}.error{color:var(--bad)}.detail-head .back{background:none;border:0;color:var(--accent);padding:4px 0}.detail-head h2{margin:6px 0 2px}.add-link{background:none;border:0;color:var(--accent);padding:8px 2px;text-align:left}.print{margin-top:24px}.close-tx{margin-top:24px;background:none;border:1px solid var(--line);color:var(--muted);border-radius:10px;padding:10px 14px}.empty{margin:14vh auto;max-width:460px;text-align:center}@media(min-width:860px){.tabs{position:sticky;top:52px;bottom:auto;border-top:0;border-bottom:1px solid var(--line);justify-content:center}.tabs button{flex:0 0 auto;padding:10px 20px}main{padding-bottom:40px}}.seg.wrap{flex-wrap:wrap}.seg.wrap button{flex:0 0 auto}.sub-seg{margin-top:6px}.sub-seg button{font-size:13px;padding:7px 10px;opacity:.95}.controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:4px 0 8px}.search-box{flex:1;min-width:180px}.search-box input{width:100%;box-sizing:border-box;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-size:15px;color:var(--text)}.controls select{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:9px 10px;color:var(--text);font-size:14px}.chk{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--text);white-space:nowrap}.count-line{font-size:13px;color:var(--muted);margin:0 0 6px}.item.biz{align-items:flex-start}.title .chip{font-size:11px;font-weight:700;border-radius:20px;padding:1px 7px;margin-left:8px;vertical-align:middle}.chip.chain{background:#e8ecf1;color:#4b5563}.chip.gap{background:#fdf1dc;color:var(--warn)}.links{display:flex;gap:12px;flex-wrap:wrap}.links a{color:var(--accent);font-size:13px}.note-preview{font-style:italic}.notes{width:100%;box-sizing:border-box;margin-top:6px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px;font-size:14px;color:var(--text);resize:vertical;min-height:52px}.biz-actions{display:flex;flex-direction:column;gap:6px;align-items:flex-end;flex:none}.biz-actions select{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:13px;color:var(--text)}select.status-lead{border-color:var(--accent);color:var(--accent)}select.status-customer{border-color:var(--ok);color:var(--ok)}select.status-not_a_fit{color:var(--muted)}.item.biz.s-customer{border-left:3px solid var(--ok)}.item.biz.s-lead{border-left:3px solid var(--accent)}.item.biz.s-not_a_fit{opacity:.6}.row-main{flex:1;text-align:left;background:none;border:0;color:inherit;display:flex;flex-direction:column;gap:3px;padding:0;cursor:pointer}.row-del{flex:none}main{padding-bottom:84px}.tabs{position:fixed;left:0;right:0;bottom:0;display:flex;background:var(--surface,#131924);border-top:1px solid var(--line,#1f2733);padding:6px 8px calc(6px + env(safe-area-inset-bottom))}.tabs button{flex:1;background:none;border:0;color:var(--muted,#9cabbd);padding:10px 4px;font-size:14px;border-radius:10px}.tabs button.on{color:var(--text,#dde5ef);background:#ffffff0f;font-weight:600}.week{display:flex;align-items:center;justify-content:space-between;margin:4px 0}.week h2{margin:0;font-size:18px}.week button{background:none;border:1px solid var(--line,#1f2733);color:inherit;border-radius:10px;width:40px;height:36px;font-size:20px}.center{text-align:center}.link{background:none;border:0;color:var(--accent,#72dfe9);padding:0;cursor:pointer;font:inherit}.link.small{font-size:13px}.day h3{display:flex;justify-content:space-between;align-items:baseline;font-size:15px}.day h3 .sub{font-weight:400;font-size:12px}.slot{display:flex;gap:10px;padding:6px 0;border-top:1px solid var(--line,#1f2733)}.slot-name{width:70px;flex:none;font-size:12px;color:var(--muted,#9cabbd);text-transform:capitalize;padding-top:6px}.slot-body{flex:1;display:flex;flex-direction:column;gap:4px}.meal{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.meal-name{flex:1;text-align:left;background:none;border:0;color:inherit;padding:4px 0;font:inherit}.meal-name small{display:block;color:var(--muted,#9cabbd);font-size:12px}.x{background:none;border:0;color:var(--muted,#9cabbd);font-size:18px;padding:0 6px}.portions{width:100%;font-size:12px;border-collapse:collapse;margin:2px 0 6px}.portions td{padding:2px 4px;color:var(--muted,#9cabbd)}.portions td:first-child{color:inherit}.add-row{display:flex;gap:6px;align-items:center}.add-row select{flex:1}.compact{padding:12px 14px;margin:0 0 12px}.compact h2{font-size:17px;margin:0 0 6px}.two{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end}.four{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.add-form{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr auto;gap:6px;margin-top:8px}.add-form.inline{grid-template-columns:1fr auto;margin:0 0 10px}.review-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;grid-template-areas:"name name name name" "qty unit loc x";gap:6px;margin:6px 0 10px;padding-bottom:8px;border-bottom:1px solid var(--line,#1f2733)}.review-row>*{min-width:0}.review-row>input:first-child{grid-area:name;font-weight:600}.review-row>input[type=number]{grid-area:qty}.review-row>input:nth-child(3){grid-area:unit}.review-row>select{grid-area:loc}.review-row>button{grid-area:x}@media(min-width:600px){.review-row{grid-template-columns:2fr .8fr .9fr 1.1fr auto;grid-template-areas:"name qty unit loc x";border-bottom:0;padding-bottom:0;margin:6px 0}}.pantry-row{display:flex;align-items:center;gap:8px}.pantry-row.out .title{color:var(--muted,#9cabbd);text-decoration:line-through}.qty-ctl{display:flex;align-items:center;gap:4px;white-space:nowrap}.qty-ctl button{width:32px;height:32px;border-radius:8px;border:1px solid var(--line,#1f2733);background:none;color:inherit;font-size:18px}.qty-ctl b{min-width:52px;text-align:center;font-size:13px}.quiet.small{padding:4px 8px;font-size:13px}.shop-row{display:flex;align-items:center;gap:8px}.chk.big{flex:1;display:flex;gap:10px;align-items:flex-start}.chk.big input{width:22px;height:22px;margin-top:4px}.strike{text-decoration:line-through;color:var(--muted,#9cabbd)}.done .item{gap:10px}a.button{display:inline-block;padding:8px 14px;border:1px solid var(--line,#1f2733);border-radius:10px;color:inherit;text-decoration:none}.macros{font-size:15px}.recipe{width:100%;text-align:left;background:none;border:0;color:inherit;font:inherit;cursor:pointer}.notice{background:#2b2418;border:1px solid #4a3a1c;color:#f0c674;border-radius:10px;padding:10px 12px;font-size:14px;margin:0 0 12px}.error{color:#f28b82;font-size:14px}
