:root{--brand:#c2410c;--brand-dark:#9a3412;--brand-soft:#ffedd5;--bg:#f5f5f4;--card:#fff;--text:#1c1917;--muted:#78716c;--line:#e7e5e4;--ok:#15803d;--err:#b91c1c;--warn:#fef3c7;color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:17px}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1{margin:.5rem 0;font-size:1.4rem}h2{margin:0 0 .5rem;font-size:1.15rem}h3{margin:1rem 0 .4rem;font-size:.95rem}p{margin:.4rem 0;line-height:1.45}.splash{min-height:100dvh;color:var(--muted);place-items:center;padding:16px;display:grid}.splash .card{width:100%;max-width:400px;color:var(--text)}.screen{max-width:760px;padding-bottom:calc(2rem + env(safe-area-inset-bottom));margin:0 auto}.top{z-index:2;color:#fff;padding:calc(.6rem + env(safe-area-inset-top)) 16px .6rem;background:#1c1917;align-items:center;gap:.5rem;display:flex;position:sticky;top:0}.top .who{text-align:right;color:#d6d3d1;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.85rem;overflow:hidden}.top .ghost{color:#fdba74;width:auto;margin:0;padding:.25rem .5rem}.tabs{top:calc(48px + env(safe-area-inset-top));z-index:2;background:var(--bg);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:4px;padding:6px 16px;display:grid;position:sticky}.tabs button{margin:0;padding:.7rem .25rem;font-size:.95rem}.tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff}main{padding:.5rem 16px}.card{text-align:left;background:var(--card);border:1px solid var(--line);width:100%;color:inherit;font:inherit;border-radius:14px;margin:.75rem 0;padding:1rem;display:block}.card.bad{border:2px solid var(--err);background:#fef2f2}label{margin:.75rem 0 .35rem;font-weight:600;display:block}label.inline{flex-wrap:wrap;align-items:center;gap:.5rem;font-weight:500;display:flex}input{width:100%;font:inherit;border:1px solid var(--line);background:#fff;border-radius:10px;margin-top:.5rem;padding:.75rem .85rem;font-size:1rem}input:focus{outline:2px solid var(--brand);outline-offset:-1px}input.tiny{text-align:center;width:5rem;margin:0}input.bad{border-color:var(--err);background:#fef2f2}.big-input{text-align:center;letter-spacing:.05em;font-size:2rem}.phone{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;display:flex}.phone span{color:var(--muted);padding-left:.8rem}.phone input{border:0;margin:0}button{width:100%;font:inherit;text-align:center;border:1px solid var(--line);color:var(--text);cursor:pointer;background:#fff;border-radius:12px;margin-top:.6rem;padding:.85rem 1rem;font-weight:600;display:block}.primary{background:var(--brand);border-color:var(--brand);color:#fff}.primary:active{background:var(--brand-dark)}.ghost,button.link{color:var(--brand);background:0 0;border:0;font-weight:500}button:disabled{opacity:.5}.datebar{grid-template-columns:3.5rem 1fr 3.5rem;align-items:stretch;gap:.5rem;margin:.5rem 0;display:grid}.datebar>button{margin:0;padding:.3rem;font-size:1.6rem}.datebar .date{border:1px solid var(--line);background:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;margin:0;padding:.4rem;display:flex;position:relative}.datebar .date strong{font-size:1.15rem}.datebar .date span{color:var(--muted);min-height:1em;font-size:.8rem;font-weight:400}.datebar .date input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.hero{flex-direction:column;align-items:center;gap:.25rem;padding:.75rem 0;display:flex}.hero strong{font-size:3rem;line-height:1}.hero span{color:var(--muted)}.pill{background:var(--warn);color:#92400e;border-radius:999px;padding:.2rem .7rem;font-size:.8rem;display:inline-block}.pill.ok{color:#166534;background:#dcfce7}.dish{align-items:center;gap:1rem;display:flex}.dish>div:first-child{flex:1;min-width:0}.dish h2{margin:.15rem 0;font-size:1.3rem}.dish small{display:block}.count{text-align:center;min-width:5.5rem}.count strong{color:var(--brand);font-size:2.4rem;line-height:1;display:block}.count span{color:var(--muted);font-size:.8rem}.tick{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:.75rem;margin:0;padding:.7rem 0;font-weight:400;display:flex}.tick:last-child{border-bottom:0}.tick input{width:1.5rem;height:1.5rem;accent-color:var(--brand);flex:none;margin:0}.tick span{flex:1}.tick strong{white-space:nowrap;font-variant-numeric:tabular-nums}.tick.done span,.tick.done strong{color:var(--muted);text-decoration:line-through}.choices{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.choices button{flex-direction:column;gap:.2rem;margin:0;padding:.7rem .4rem;display:flex}.choices button small{color:var(--muted);font-size:.75rem;font-weight:400}.choices button.active{background:var(--brand-soft);border:2px solid var(--brand)}.log{border-bottom:1px solid var(--line);grid-template-columns:4.5rem 1fr auto;gap:0 .75rem;padding:.5rem 0;display:grid}.log small{grid-column:2/-1}.log.bad{background:#fef2f2}.row-btn{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:.5rem;margin:0;padding:0;font-weight:400;display:flex}.line{border-bottom:1px solid var(--line);justify-content:space-between;padding:.5rem 0;display:flex}.center{text-align:center}.muted{color:var(--muted)}.small{font-size:.85rem}.ok{color:var(--ok)}.error{color:var(--err)}.warn{background:var(--warn);border-radius:8px;padding:.5rem .75rem}@media (width<=480px){.choices{grid-template-columns:1fr}.tabs button{font-size:.8rem}}@media print{.no-print,.datebar>button{display:none!important}:root,body{background:#fff;font-size:13px}.card{break-inside:avoid;border-color:#ccc}}
