:root{--accent: #d9522f;--bg: #fff;--bg-secondary: #f2f2f7;--text: #000;--text-secondary: #6c6c70;--border: rgb(0 0 0 / .55);--ok: #248a3d;color-scheme:light dark}@media (prefers-color-scheme: dark){:root{--accent: #f07040;--bg: #000;--bg-secondary: #1c1c1e;--text: #fff;--text-secondary: #98989d;--border: rgb(255 255 255 / .55);--ok: #30d158}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.4 -apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}a{color:var(--accent)}button{font:inherit;color:inherit}h1{font-size:2rem;margin:0 0 8px}h2{font-size:1.2rem}.secondary{color:var(--text-secondary);font-size:.9rem}.ok{color:var(--ok);font-size:.9rem}.error{color:#d70015}.pre{white-space:pre-wrap}.shell{display:flex;flex-direction:column;min-height:100dvh;max-width:720px;margin:0 auto}main{flex:1;padding:16px;padding-top:max(16px,env(safe-area-inset-top))}.tabbar{position:sticky;bottom:0;display:flex;border-top:.5px solid var(--text-secondary);padding-bottom:env(safe-area-inset-bottom);background:var(--bg-secondary)}.tabbar a{flex:1;padding:12px 4px;text-align:center;text-decoration:none;color:var(--text-secondary)}.tabbar a.active{color:var(--accent);font-weight:600}.titlebar{display:flex;align-items:center;justify-content:space-between}.menu{position:relative}.menu summary{list-style:none;cursor:pointer;font-size:1.6rem;padding:0 8px}.menu summary::-webkit-details-marker{display:none}.menu-body{position:absolute;right:0;z-index:2;width:260px;padding:8px;background:var(--bg-secondary);border-radius:12px;box-shadow:0 4px 16px #00000040}.menu-body button{display:block;width:100%;text-align:left;padding:10px;border:0;background:none}.search{width:100%;padding:10px 12px;border:0;border-radius:10px;background:var(--bg-secondary);color:var(--text);font:inherit}.chips{display:flex;gap:8px;overflow-x:auto;padding:12px 0}.chip{flex:none;padding:6px 12px;border:0;border-radius:999px;background:var(--bg-secondary)}.chip.on{background:var(--accent);color:#fff}.list{list-style:none;margin:0;padding:0}.row{display:flex;gap:12px;padding:10px 0;text-decoration:none;color:inherit;border-bottom:.5px solid var(--bg-secondary)}.row-title{font-weight:600}.grow{flex:1;min-width:0}.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tags{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0}.tags span{font-size:.75rem;color:var(--text-secondary);background:var(--bg-secondary);padding:1px 8px;border-radius:999px}.photo{object-fit:cover;border-radius:8px;flex:none}.photo.placeholder{background:var(--bg-secondary)}.photo.hero{width:100%;height:220px;border-radius:12px;margin:8px 0}.empty{text-align:center;padding:48px 16px;color:var(--text-secondary)}.primary{padding:10px 18px;border:0;border-radius:999px;background:var(--accent);color:#fff;font-weight:600}.back{display:inline-block;margin-bottom:8px;text-decoration:none}.stepper{display:flex;align-items:center;gap:8px;margin:12px 0}.stepper span{flex:1}.stepper button:not(.link){width:36px;height:36px;border:0;border-radius:50%;background:var(--bg-secondary);font-size:1.2rem}.stepper button:disabled{opacity:.4}.link{border:0;background:none;color:var(--accent)}.scroll-x{overflow-x:auto;margin:0 -16px;padding:0 16px 8px}.tables{display:flex;flex-direction:column;gap:16px;width:max-content}.table{display:grid;border:1.5px solid var(--border)}.cell{padding:6px 8px;border:.5px solid var(--border);font-size:.95rem}.cell.ingredient{background:var(--bg-secondary)}.cell.step{background:var(--bg)}.cell .note{font-size:.75rem;color:var(--text-secondary)}.cell .meta{display:flex;flex-direction:column;font-size:.7rem;color:var(--text-secondary);margin-top:2px}.cell.tappable{cursor:pointer}.cell.current{background:color-mix(in srgb,var(--accent) 35%,var(--bg))}.cell.active{background:color-mix(in srgb,var(--accent) 15%,var(--bg))}.cell.done{background:color-mix(in srgb,var(--text-secondary) 12%,var(--bg))}h2.section{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin:20px 0 4px}.bar{display:flex;align-items:center;gap:12px}.badge{background:var(--accent);color:#fff;border-radius:999px;font-size:.7rem;padding:1px 6px;margin-left:4px}.item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:.5px solid var(--bg-secondary)}.item.checked .grow{text-decoration:line-through;color:var(--text-secondary)}.check{flex:none;width:26px;height:26px;border:1.5px solid var(--text-secondary);border-radius:50%;background:none;color:#fff;padding:0}.item.checked .check{background:var(--accent);border-color:var(--accent)}.item-menu{position:relative}.more{border:0;background:none;font-size:1.4rem;padding:0 8px;color:var(--text-secondary)}.menu-body.menu-body{z-index:5}.move{display:block;padding:10px}.move select{display:block;margin-top:4px;width:100%;font:inherit}form.add{display:flex;gap:8px;margin-top:20px}form.add input{flex:1;padding:10px 12px;border:0;border-radius:10px;background:var(--bg-secondary);color:var(--text);font:inherit}button:disabled.primary{opacity:.4}.actionbar{position:sticky;bottom:0;display:flex;gap:8px;padding:12px 0;background:var(--bg)}.actionbar button{flex:1;padding:10px;border:0;border-radius:999px;background:var(--bg-secondary)}.actionbar .danger{color:#d70015;flex:none}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:#0006;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:720px;max-height:85dvh;overflow-y:auto;background:var(--bg);border-radius:16px 16px 0 0;padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom))}.sheet h2{margin:0}.pick{display:flex;gap:10px;align-items:center}.pick input{width:20px;height:20px;accent-color:var(--accent)}.actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.actions button:not(.primary){padding:10px 18px;border:0;border-radius:999px;background:var(--bg-secondary)}.actionbar .cook-link{flex:none;padding:10px 18px;border-radius:999px;background:var(--accent);color:#fff;text-decoration:none;font-weight:600}.cook{display:flex;flex-direction:column;height:100dvh;max-width:720px;margin:0 auto}.cook-head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));border-bottom:.5px solid var(--text-secondary)}.cook-title{font-weight:600}.cook-table{flex:1;overflow:auto;padding:16px}.stepcard{padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom));background:var(--bg-secondary);border-top:.5px solid var(--text-secondary);display:flex;flex-direction:column;gap:10px}.step-text{font-size:1.3rem;font-weight:600}.step-meta{display:flex;justify-content:space-between;align-items:center;font-weight:600}.timer{padding:8px 14px;border:0;border-radius:999px;background:var(--bg);font-variant-numeric:tabular-nums}.timer.ringing{background:var(--accent);color:#fff}.actions.wide{display:flex;gap:8px;margin:0}.actions.wide button{flex:1;padding:12px;border:0;border-radius:999px;background:var(--bg)}.actions.wide .primary{background:var(--accent);color:#fff}.actions.wide button:disabled{opacity:.4}.block{display:block}.add-link{font-size:1.8rem;text-decoration:none;line-height:1}.primary-link{display:inline-block;padding:10px 18px;border-radius:999px;background:var(--accent);color:#fff;text-decoration:none;font-weight:600}.menu-link{display:block;padding:10px;text-decoration:none;color:var(--text)}.segmented{display:flex;background:var(--bg-secondary);border-radius:10px;padding:2px;margin:12px 0}.segmented button{flex:1;padding:8px;border:0;border-radius:8px;background:none}.segmented button.on{background:var(--bg);box-shadow:0 1px 3px #0003;font-weight:600}.field{display:flex;gap:8px;align-items:center}.field input,textarea,.form-row input,.form-row select{width:100%;padding:10px 12px;border:0;border-radius:10px;background:var(--bg-secondary);color:var(--text);font:inherit}textarea{resize:vertical}.form-row{display:block;margin:10px 0;font-size:.85rem;color:var(--text-secondary)}.form-row input,.form-row select{display:block;margin-top:4px;font-size:1rem}.primary.wide{width:100%;margin:16px 0 8px;padding:12px}.photo-row{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.photo-pick{position:relative}.photo-pick button{position:absolute;top:-6px;right:-6px;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:var(--text);color:var(--bg)}.bar button:not(.link):not(.primary){padding:8px 14px;border:0;border-radius:999px;background:var(--bg-secondary)}.busy{display:flex;align-items:center;gap:10px;margin:16px 0}.spinner{width:18px;height:18px;border:2px solid var(--bg-secondary);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.addbox{margin-top:20px}.addbox form.add{margin-top:0}.suggestions{list-style:none;margin:6px 0 0;padding:0;background:var(--bg-secondary);border-radius:12px;overflow:hidden}.suggestions.inline{background:none;margin-top:12px}.suggestion{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:10px 12px;border:0;border-bottom:.5px solid var(--bg);background:none;text-align:left}.suggestions.inline .suggestion{background:var(--bg-secondary);border-radius:10px;margin-bottom:6px}.suggestion .secondary{font-size:.8rem}.product a{text-decoration:none}.bar.wrap{flex-wrap:wrap}.shell,.cook{-webkit-tap-highlight-color:transparent}
