:root{--navy:#051c2c;--blue:#2251ff;--ink:#1a1a1a;--ink-2:#39434d;--ink-3:#5c6670;--rule:#d7dce2;--bg:#eef0f3;--bad:#c0392b;--good:#1e7145}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%}body{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:13px;color:var(--ink);background:var(--bg)}.appgrid{display:grid;grid-template-rows:48px 1fr;grid-template-columns:1fr 320px;grid-template-areas:"top top" "canvas side";height:100vh}.topbar{grid-area:top;display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--navy);color:#fff}.brand{letter-spacing:.04em;margin-right:4px}.topbar .name{background:rgba(255,255,255,.12);border:none;border-radius:4px;color:#fff;padding:5px 8px;width:160px}.topbar .tools{display:flex;gap:4px;margin-left:12px}.topbar .spacer{flex:1 1}.topbar button{background:rgba(255,255,255,.1);border:1px solid transparent;color:#dde3ea;border-radius:4px;padding:5px 10px;cursor:pointer;font-size:12.5px}.topbar button:hover{background:rgba(255,255,255,.2)}.topbar .tool.active{background:var(--blue);color:#fff}.topbar .danger{color:#ffb4a8}.ticon{font-size:14px}.canvaswrap{grid-area:canvas;position:relative;overflow:hidden}.sidebar{grid-area:side;background:#fff;border-left:1px solid var(--rule);overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:18px}.sidebar h3{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);margin-bottom:10px}.sidebar h4{font-size:12px;color:var(--navy);margin:14px 0 6px;border-top:1px solid var(--rule);padding-top:10px}.field{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.field span{color:var(--ink-2)}.field input:not([type]),.field input[type=number],.field input[type=text],.field select{width:130px;padding:4px 6px;border:1px solid var(--rule);border-radius:4px;font-size:13px}.field.check{justify-content:flex-start}.row{display:flex;gap:6px;margin-top:8px}.row .field{flex:1 1}.row .field input{width:100%}.calc button,.props button{padding:5px 10px;border:1px solid var(--rule);background:#f6f7f9;border-radius:4px;cursor:pointer}.calc button:hover,.props button:hover{background:#e9ecf1}button.danger{color:var(--bad)}button.mini{padding:0 7px;margin-left:auto}.hint{color:var(--ink-3);font-size:12px}.hint.ok{color:var(--good)}.stat{margin:8px 0;display:flex;flex-direction:column}.stat span{color:var(--ink-3);font-size:12px}.stat strong{font-size:20px;color:var(--navy)}.stat small{color:var(--ink-3)}.aisle{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:4px;margin-bottom:4px;background:#f6f7f9}.aisle.ok{background:#e6f2ea;color:var(--good)}.aisle.bad{background:#f9e8e5;color:var(--bad)}.aisle strong{margin-left:auto}.aisle.bad em,.aisle.ok em{font-style:normal;font-size:11.5px}.newpallet{display:grid;grid-template-columns:1fr 60px 60px auto;grid-gap:4px;gap:4px;margin-top:6px}.newpallet input{padding:4px 6px;border:1px solid var(--rule);border-radius:4px;min-width:0}