:root{--o: #f97316;--o-d: #c2570c;--o-l: #fff3e8;--ink: #2b2c33;--mut: #6f7180;--line: #ececf1;--bg: #f7f7f9;--good: #15803d;--warn: #b45309;--bad: #b91c1c;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink)}*{box-sizing:border-box}html,body{margin:0;background:var(--bg)}h1{font-size:22px;margin:0}h2{font-size:15px;margin:0 0 8px}h3{font-size:14px;margin:0 0 6px}small{color:var(--mut);font-size:12px;display:block}em{font-style:normal;font-size:.55em;font-weight:500}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}button:disabled{cursor:not-allowed;opacity:.55}input,select,textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;min-height:42px}input:focus,select:focus,textarea:focus{outline:2px solid var(--o);outline-offset:-1px}fieldset{border:0;padding:0;margin:0;min-width:0}.primary{background:var(--o);color:#fff;font-weight:600;padding:10px 16px;border-radius:10px;min-height:42px;white-space:nowrap}.primary:hover:not(:disabled){background:var(--o-d)}.ghost{color:var(--o-d);font-weight:600;padding:8px 12px;border-radius:10px;border:1px solid var(--line);background:#fff;white-space:nowrap}.ghost:hover:not(:disabled){background:var(--o-l)}.icon{padding:4px 10px;font-size:18px;line-height:1}.muted{color:var(--mut);font-size:13px;margin:0 0 10px}.splash,.empty{padding:28px 16px;text-align:center;color:var(--mut);font-size:14px}.brand{display:flex;gap:10px;align-items:center}.brand img{width:36px;height:36px;flex:none;object-fit:contain}.brand.small img{width:28px;height:28px}.auth{min-height:100dvh;display:grid;place-items:center;padding:16px}.auth .card{width:min(380px,100%);display:grid;gap:14px}.shell{display:flex;min-height:100dvh}.side{width:236px;flex:none;background:#fff;border-right:1px solid var(--line);padding:16px 12px;display:flex;flex-direction:column;gap:16px;position:sticky;top:0;height:100dvh}.side nav{display:grid;gap:2px;flex:1;align-content:start}.side nav a{display:flex;gap:10px;padding:10px 12px;border-radius:10px;color:var(--ink);text-decoration:none;font-size:14px}.side nav a:hover{background:var(--bg)}.side nav a.on{background:var(--o-l);color:var(--o-d);font-weight:600}.me{border-top:1px solid var(--line);padding-top:12px;display:grid;gap:4px;font-size:14px}.me button{margin-top:6px}.main{flex:1;min-width:0;padding:20px;display:grid;gap:14px;align-content:start}.topbar,.tabs{display:none}.head{display:flex;justify-content:space-between;align-items:center;gap:10px}.head select{width:auto}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;min-width:0}.card.alert{border-color:#f5c2c2}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px}.stat b{font-size:24px}.stat.warn b{color:var(--warn)}.stat.bad b{color:var(--bad)}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.list{list-style:none;margin:0;padding:0}.row{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);width:100%;text-align:left;font-size:14px}.list li:last-child .row,.list>.row:last-child{border-bottom:0}.row.off{opacity:.55}.grow{flex:1;min-width:0;overflow-wrap:anywhere}.end{text-align:right;flex:none}.plus{color:var(--good)}.minus{color:var(--bad)}.pill{font-size:12px;font-weight:600;padding:3px 9px;border-radius:99px;background:var(--bg);white-space:nowrap}.pill.warn{background:#fef3c7;color:var(--warn)}.pill.bad{background:#fee2e2;color:var(--bad)}.pill.good{background:#dcfce7;color:var(--good)}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters>*{flex:1 1 150px;width:auto}.filters .search{flex:3 1 240px}.search.big{min-height:48px;font-size:16px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.item{background:#fff;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;min-width:0}.item-main{padding:12px 14px 8px;text-align:left;flex:1;display:grid;gap:3px;align-content:start;overflow-wrap:anywhere}.qty{font-size:22px;font-weight:700}.qty.good{color:var(--good)}.qty.warn{color:var(--warn)}.qty.bad{color:var(--bad)}.item-actions{display:flex;gap:6px;padding:0 10px 10px}.item-actions button{flex:1;padding:6px;font-size:13px}.pager{display:flex;justify-content:center;align-items:center;gap:12px;font-size:13px}.banner{padding:10px 12px;border-radius:10px;font-size:13px;background:#fee2e2;color:var(--bad)}.banner.ok{background:#dcfce7;color:var(--good)}.banner.warn{background:#fef3c7;color:var(--warn)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e1e2866;display:grid;place-items:center;padding:16px;z-index:20}.modal{background:#fff;border-radius:16px;width:min(520px,100%);max-height:calc(100dvh - 32px);display:flex;flex-direction:column}.modal header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}.modal h2{margin:0;overflow-wrap:anywhere}.modal-body{padding:14px 16px;overflow-y:auto}.form{display:grid;gap:12px}.field{display:grid;gap:4px;min-width:0}.field>span,.label{font-size:13px;font-weight:600;display:block;margin-bottom:2px}.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.inline{display:flex;gap:6px;align-items:center}.check{display:flex;gap:8px;align-items:center;font-size:13px}.check input{width:18px;min-height:18px;accent-color:var(--o)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:8px 14px;border-radius:99px;border:1px solid var(--line);background:#fff;font-weight:600;font-size:14px;min-height:38px}.chip.on{background:var(--o);border-color:var(--o);color:#fff}.title-line{overflow-wrap:anywhere}.plan{background:var(--o-l);border-radius:12px;padding:12px}.plan ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.plan li{display:flex;justify-content:space-between;gap:10px;font-size:14px}.plan li>div:first-child{min-width:0;overflow-wrap:anywhere}.plan li.short b{color:var(--bad)}.problem{color:var(--bad);font-size:13px;margin:8px 0 0}.picker{position:relative}.picker ul{position:absolute;z-index:5;inset:100% 0 auto;margin:4px 0 0;padding:4px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:10px;max-height:220px;overflow-y:auto;box-shadow:0 8px 20px #0000001a}.picker li button{width:100%;text-align:left;padding:8px;border-radius:8px;font-size:14px}.picker li button:hover{background:var(--o-l)}.picker .none{padding:8px;color:var(--mut);font-size:13px}.picked{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:6px 8px 6px 12px;font-size:14px;overflow-wrap:anywhere}.bottle{display:grid;grid-template-columns:80px 1fr auto;gap:6px;align-items:center}.sku-list{padding:0 14px}@media(max-width:1023px){.side{display:none}.main{padding:16px 16px calc(76px + env(safe-area-inset-bottom))}.topbar{display:flex;justify-content:space-between;align-items:center;gap:8px}.tabs{display:grid;grid-template-columns:repeat(6,1fr);position:fixed;inset:auto 0 0;background:#fff;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:10}.tabs a,.tabs button{display:grid;justify-items:center;align-content:center;gap:1px;padding:8px 0;font-size:11px;color:var(--mut);text-decoration:none;min-width:0}.tabs span{font-size:17px;line-height:1.2}.tabs .on{color:var(--o-d);font-weight:700}}@media(max-width:719px){.two{grid-template-columns:1fr}}@media(max-width:639px){h1{font-size:20px}.main{padding:12px 12px calc(76px + env(safe-area-inset-bottom));gap:12px}.stats{grid-template-columns:1fr 1fr}.stat b{font-size:20px}.filters .search{flex-basis:100%}.filters>*{flex-basis:40%}.grid{grid-template-columns:1fr}.item-main{grid-template-columns:minmax(0,1fr) auto;column-gap:10px}.item-main>*{grid-column:1}.item-main .qty{grid-column:2;grid-row:1 / span 3;align-self:center;text-align:right}.row.wrap{flex-wrap:wrap}.row.wrap .inline{width:100%;justify-content:flex-end}.bottle{grid-template-columns:1fr auto}.bottle>:nth-child(2){grid-column:1 / -1;order:3}.overlay{padding:0;place-items:end stretch}.modal{width:100%;border-radius:16px 16px 0 0;max-height:92dvh}input,select,textarea{font-size:16px}}
