*{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0a0a;--card: #1c1c1e;--card2: #2a2a2e;--border: #3a3a3e;--orange: #f97316;--orange-dark: #c2570b;--text: #f5f5f5;--muted: #a8a8ad;--accent: #eab308;--green: #4ade80;--red: #f87171;--blue: #60a5fa}html,body{height:100%}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-tap-highlight-color:transparent}#root{min-height:100vh;display:flex;flex-direction:column}.header{position:sticky;top:0;z-index:50;background:#000;border-bottom:2px solid var(--orange);padding:12px 14px;display:flex;align-items:center;gap:10px}.header h1{font-size:1.05rem;font-weight:800;letter-spacing:.3px;flex:1}.header .langBtn,.header .iconBtn{background:var(--card2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:7px 10px;font-size:.8rem;font-weight:700;cursor:pointer}.page{flex:1;padding:14px;max-width:640px;width:100%;margin:0 auto}.pageTitle{font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin:14px 0 8px}.bigBtn{display:flex;align-items:center;gap:14px;width:100%;padding:20px 18px;margin-bottom:12px;border-radius:16px;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;text-align:left}.bigBtn .ico{width:46px;height:46px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.bigBtn .tit{font-size:1.15rem;font-weight:800}.bigBtn .sub{font-size:.85rem;color:var(--muted);margin-top:2px}.bigBtn.prep{background:linear-gradient(135deg,#7c4a03,#b45309);border-color:var(--accent)}.bigBtn.prep .ico{background:#00000040}.bigBtn.prep .sub{color:#fde68a}.bigBtn.cant{background:linear-gradient(135deg,#7c2d12,#9a3412);border-color:var(--orange)}.bigBtn.cant .ico{background:#00000040}.bigBtn.cant .sub{color:#fed7aa}.card{background:var(--card);border:2px solid var(--orange-dark);border-radius:14px;padding:14px;margin-bottom:10px}.card.tap{cursor:pointer}.card.tap:active{border-color:var(--orange);background:var(--card2)}.card.soft{border:1px solid var(--border)}.card .titolo{font-size:1.02rem;font-weight:800}.card .sotto{font-size:.85rem;color:var(--muted);margin-top:4px}.badge{display:inline-block;font-size:.74rem;font-weight:800;border-radius:999px;padding:3px 11px;margin-top:7px}.badge.colore{color:#000;background:var(--accent)}.badge.ro{color:var(--muted);border:1px solid var(--border)}.badge.verde{color:#04310f;background:var(--green)}.badge.grigio{color:var(--muted);border:1px dashed var(--border)}.appCard{border:1px solid var(--border);border-radius:14px;margin-bottom:10px;background:var(--card);overflow:hidden}.appCard.micro{border:2px solid var(--orange)}.appHead{display:flex;align-items:center;gap:10px;padding:14px;cursor:pointer;-webkit-user-select:none;user-select:none}.appHead .nome{flex:1;font-size:.98rem;font-weight:800}.appCard.micro .appHead .nome{color:#fdba74}.appHead .chev{font-size:1.1rem;color:var(--muted);transition:transform .15s}.appHead .chev.open{transform:rotate(90deg)}.appBody{padding:0 14px 14px;border-top:1px solid var(--border)}.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;border:none;border-radius:12px;font-size:1rem;font-weight:800;cursor:pointer;background:var(--orange);color:#fff}.btn:disabled{opacity:.45}.btn.giallo{background:var(--accent);color:#000}.btn.secondario{background:var(--card2);color:var(--text);border:1px solid var(--border)}.btn.piccolo{width:auto;padding:10px 14px;font-size:.85rem;border-radius:10px}.btn.rosso{background:transparent;color:var(--red);border:1px solid rgba(248,113,113,.5)}.input,select.input{width:100%;padding:13px;border-radius:10px;background:var(--card2);color:var(--text);border:1px solid var(--border);font-size:1rem}.input:focus{outline:none;border-color:var(--orange)}label.lbl{display:block;font-size:.8rem;font-weight:700;color:var(--muted);margin:12px 0 5px}.matRow{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--border)}.matRow:last-child{border-bottom:none}.matRow .nome{flex:1;font-size:.94rem;font-weight:700}.matRow .nome .warn{display:block;font-size:.72rem;color:var(--red);font-weight:600}.matRow .qta{text-align:right;white-space:nowrap}.matRow .qta .big{font-size:1.05rem;font-weight:800;color:var(--accent)}.matRow .qta .small{display:block;font-size:.74rem;color:var(--muted)}.litriCircle{width:150px;height:110px;margin:14px auto;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center}.litriCircle input{width:110px;background:transparent;border:none;outline:none;font-size:2.6rem;font-weight:900;color:#000;text-align:center}.litriLabel{text-align:center;font-size:1.3rem;font-weight:900;margin-top:-6px}.pigRow{display:flex;align-items:center;gap:12px;border-radius:12px;margin-bottom:10px;overflow:hidden;border:1px solid var(--border);background:var(--card)}.pigRow .blocco{flex:1;padding:16px 14px;font-size:1.05rem;font-weight:900;letter-spacing:.5px}.pigRow .grammi{padding:0 16px;font-size:1.5rem;font-weight:900;color:var(--text);white-space:nowrap}.chipRow{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.chip{padding:11px 14px;border-radius:10px;font-size:.9rem;font-weight:800;background:var(--card2);color:var(--text);border:1px solid var(--border);cursor:pointer}.chip.on{background:var(--orange);border-color:var(--orange);color:#fff}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000bf;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:640px;max-height:92vh;overflow-y:auto;background:var(--bg);border-top:3px solid var(--orange);border-radius:18px 18px 0 0;padding:16px}.sheet h3{font-size:1.05rem;font-weight:900;margin-bottom:4px}.msgErr{background:#f871711f;border:1px solid rgba(248,113,113,.4);color:var(--red);border-radius:10px;padding:10px 12px;font-size:.88rem;margin:10px 0}.msgOk{background:#4ade801a;border:1px solid rgba(74,222,128,.4);color:var(--green);border-radius:10px;padding:10px 12px;font-size:.92rem;font-weight:700;margin:10px 0}.loading{text-align:center;color:var(--muted);padding:40px 0}.loginWrap{flex:1;display:flex;align-items:center;justify-content:center;padding:20px}.loginBox{width:100%;max-width:360px}.loginBox .logo{text-align:center;font-size:2.2rem;margin-bottom:6px}.loginBox h2{text-align:center;font-size:1.2rem;margin-bottom:22px}.loginBox .input{margin-bottom:12px}.ordBtn{background:var(--card2);border:1px solid var(--border);color:var(--text);border-radius:8px;width:34px;height:34px;font-size:1rem;cursor:pointer;flex-shrink:0}.dragHandle{touch-action:none;background:var(--card2);border:1px solid var(--border);color:var(--muted);border-radius:8px;width:40px;height:40px;font-size:1.2rem;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:grab}.appCard.dragging{opacity:.92;z-index:20;position:relative;box-shadow:0 8px 24px #0009;border-color:var(--accent)}.appHeadWrap{position:relative;overflow:hidden}.delBehind{position:absolute;top:0;right:0;bottom:0;width:96px;background:#b91c1c;color:#fff;border:none;font-weight:800;font-size:.85rem;display:flex;align-items:center;justify-content:center;cursor:pointer}.appHead.swiped{transform:translate(-96px)}.appHead{position:relative;transition:transform .15s ease;background:var(--card)}
