:root{--bg: #FFFFFF;--card: #ffffff;--ink: #000000;--muted: #666666;--line: #D4D4D4;--accent: #000000;--accent-ink: #fff;--ok: #000000;--warn: #666666;--bad: #000000;--radius: 14px}@media(prefers-color-scheme:dark){:root{--bg: #000000;--card: #222222;--ink: #FFFFFF;--muted: #999999;--line: #333333;--accent: #FFFFFF;--accent-ink: #000000}.logo{filter:invert(1)}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}button,input{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--card);border-radius:10px;padding:10px 16px;min-height:44px}button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}button.danger{color:var(--bad)}button:disabled{opacity:.5;cursor:default}input[type=text],input[type=email],input[type=password],input[type=number]{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);min-height:44px}.shell{max-width:1180px;margin:0 auto;padding:16px}.top{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:16px}.top h1{font-size:22px;margin:0 auto 0 0;letter-spacing:.02em}.tabs{display:flex;gap:8px}.tabs button.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.login{max-width:360px;margin:14vh auto;padding:0 16px;display:grid;gap:12px}.err{color:var(--bad);font-weight:700;font-size:14px;min-height:1.2em}.muted{color:var(--muted);font-size:14px}.list{display:grid;gap:10px}.prow{display:grid;grid-template-columns:72px 1fr 120px 110px auto;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px}.prow.dirty{border-color:var(--warn)}.thumb{width:72px;height:72px;border-radius:12px;background:var(--bg);object-fit:cover;border:1px solid var(--line);display:grid;place-items:center;color:var(--muted);font-size:12px;cursor:pointer;text-align:center}.check{display:flex;gap:8px;align-items:center}.check input{width:22px;height:22px}.actions{display:flex;gap:8px}@media(max-width:760px){.prow{grid-template-columns:72px 1fr}.prow>:nth-child(n+3){grid-column:1 / -1}}.board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}@media(max-width:860px){.board{grid-template-columns:1fr}}.col h2{font-size:15px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 10px;display:flex;justify-content:space-between}.col .stack{display:grid;gap:10px}.ticket{background:var(--card);border:1px solid var(--line);border-left:6px solid var(--accent);border-radius:var(--radius);padding:14px;display:grid;gap:8px}.ticket.new{border-left-color:var(--bad);animation:pulse 1.2s ease-in-out 3}@keyframes pulse{50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--bad) 30%,transparent)}}.ticket .head{display:flex;justify-content:space-between;align-items:baseline}.ticket .num{font-size:28px;font-weight:700}.badge{font-size:12px;padding:2px 8px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}.ticket ul{margin:0;padding:0;list-style:none;font-size:18px}.ticket li b{display:inline-block;min-width:1.6em}.ticket .btns{display:flex;gap:8px}.ticket .btns button{flex:1;min-height:52px;font-size:17px}.dot{width:10px;height:10px;border-radius:50%;display:inline-block;background:transparent;border:2px solid var(--ink);box-sizing:border-box;margin-right:6px}.dot.on{background:var(--ink)}.logo{display:block;height:56px;width:auto}.logo.sm{height:30px;display:inline-block;vertical-align:middle}.login .logo{height:auto;width:220px;margin:0 auto 12px}.top h1{display:flex;align-items:center;gap:8px}select{padding:10px 8px;border:1px solid var(--line);border-radius:10px;background:var(--card);min-height:44px;max-width:100%}h4{margin:14px 0 6px;font-size:14px}details{padding:4px 0}summary{cursor:pointer}.recipe{display:grid;gap:8px;margin:8px 0;justify-items:start}.rline{display:grid;grid-template-columns:minmax(140px,1fr) 110px 36px 44px;gap:8px;align-items:center;width:100%;max-width:520px}.srow{display:grid;grid-template-columns:1.4fr 80px 150px 130px auto;gap:10px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px}.srow.head{background:none;border:0;padding:0 12px;font-size:13px}.srow.low{border-color:var(--warn)}.stockq{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}.stockq b{font-size:20px}.badge.warn{color:var(--warn);border-color:var(--warn)}.moves{margin:0;padding-left:18px;font-size:14px}.newrow{display:grid;grid-template-columns:1.4fr 80px 150px auto;gap:10px}.gcard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:grid;gap:12px}.gcard.dirty{border-color:var(--warn)}.grow{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center}.orow{display:grid;grid-template-columns:1fr 100px auto 44px;gap:10px;align-items:center}.opt{border-top:1px solid var(--line);padding-top:10px}.mods{color:var(--muted);font-size:16px}@media(max-width:760px){.srow,.newrow,.grow,.orow{grid-template-columns:1fr 1fr}.srow.head{display:none}.srow>input[type=text],.grow>input,.orow>input[type=text]{grid-column:1 / -1}}input[type=checkbox]{accent-color:var(--accent)}.cname{font-weight:600;font-size:18px;margin-left:6px}.num.sm{font-size:20px;font-weight:700}.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.filters input[type=text]{flex:1 1 240px;width:auto}.filters input[type=date]{width:auto;min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--card)}.hrow{display:grid;grid-template-columns:110px 1fr 120px 130px;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px}.hrow .right{text-align:right}@media(max-width:760px){.hrow{grid-template-columns:1fr 1fr}.hrow>:nth-child(2){grid-column:1 / -1;order:3}}.pickup{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:16px}.ticket.later{opacity:.7;border-left-color:var(--muted)}.hday{display:grid;grid-template-columns:110px auto 120px 16px 120px;gap:10px;align-items:center}.hday input[type=time]{min-height:44px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--card)}label>input[type=number],label>input[type=text]{display:block;margin-top:4px}@media(max-width:760px){.hday{grid-template-columns:1fr 1fr}}.etas{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.chip{min-height:40px;padding:6px 12px;border-radius:999px}.chip.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.ticket .btns button{min-width:0}.ticket .btns{flex-wrap:wrap}.ticket .btns button{flex:1 1 90px;padding:8px 10px}:root{--tile: #f5f5f5;--radius: 20px}@media(prefers-color-scheme:dark){:root:not([data-x]){--tile: #1c1c1c}}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased;letter-spacing:-.01em}.shell{padding:24px 20px}.top h1{font-size:26px;font-weight:700;letter-spacing:-.03em}button{border:0;background:var(--tile);border-radius:999px;padding:10px 20px;font-weight:600;transition:opacity .15s,transform .15s}button:hover{opacity:.85}button:active{transform:scale(.98)}button.primary,.tabs button.on,.chip.on{background:var(--accent);color:var(--accent-ink)}input[type=text],input[type=email],input[type=password],input[type=number],select,.filters input[type=date],.hday input[type=time]{border:0;background:var(--tile);border-radius:14px;padding:10px 14px}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.tabs{background:var(--tile);border-radius:999px;padding:4px;gap:2px;flex-wrap:wrap}.tabs button{background:transparent;padding:8px 16px;min-height:38px}.prow,.srow,.gcard,.hrow,.ticket{background:var(--tile);border:0;border-radius:var(--radius)}.ticket{border-left:0;padding:18px}.prow.dirty{outline:2px solid var(--ink)}.thumb{border:0;background:var(--bg);border-radius:16px}.col h2{letter-spacing:.06em}.login{margin:12vh auto;gap:14px}.login .logo{margin-bottom:8px}
