:root{--navy: #0b1f3a;--blue: #1f6feb;--blue-soft: #e8f0fd;--bg: #f4f6f9;--white: #ffffff;--grey: #6b7280;--line: #e5e7eb;--ink: #111827;--green: #15803d;--green-soft: #e7f6ec;--amber: #b45309;--amber-soft: #fef3c7;--red: #b91c1c;--red-soft: #fdecec;--radius: 16px;--shadow: 0 1px 2px rgba(11, 31, 58, .06), 0 4px 12px rgba(11, 31, 58, .06)}*{box-sizing:border-box}html,body{margin:0;background:#dde3ec;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);-webkit-tap-highlight-color:transparent}#app{min-height:100dvh}.shell{max-width:480px;min-height:100dvh;margin:0 auto;background:var(--bg);display:flex;flex-direction:column;position:relative;box-shadow:0 0 40px #00000014}@media (max-width: 480px){.shell{box-shadow:none}}.appbar{background:var(--navy);color:#fff;padding:calc(env(safe-area-inset-top,0px) + 14px) 16px 14px;display:flex;justify-content:space-between;align-items:center;gap:8px;position:sticky;top:0;z-index:5}.appbar .t{font-size:18px;font-weight:700}.appbar .s{font-size:12px;opacity:.78;margin-top:2px}.content{flex:1;padding:14px 14px 96px;display:flex;flex-direction:column;gap:12px}.card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px}.row{display:flex;justify-content:space-between;align-items:center;gap:8px}.list{display:flex;flex-direction:column;gap:6px}.muted{color:var(--grey);font-size:12px}.small{font-size:12px}.money{font-weight:700;color:var(--navy);white-space:nowrap}.h{font-size:13px;font-weight:700;color:var(--navy)}.sync{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.pill{display:inline-block;font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;white-space:nowrap}.p-blue{background:var(--blue-soft);color:var(--blue)}.p-green{background:var(--green-soft);color:var(--green)}.p-amber{background:var(--amber-soft);color:var(--amber)}.p-red{background:var(--red-soft);color:var(--red)}.p-grey{background:#eef0f3;color:var(--grey)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:var(--blue);color:#fff;border-radius:14px;padding:13px 14px;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;text-align:center}.btn:disabled{opacity:.5;cursor:default}.btn.navy{background:var(--navy)}.btn.ghost{background:var(--white);color:var(--navy);border:1px solid var(--line)}.btn.danger{background:var(--white);color:var(--red);border:1px solid #f3c4c4}.btn.sm{padding:7px 11px;font-size:12px;border-radius:11px}.btn.block{width:100%}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.input{width:100%;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:12px 13px;font-size:15px;font-family:inherit;color:var(--ink)}.input:focus{outline:2px solid var(--blue);border-color:transparent}.num{width:84px;text-align:center;font-weight:700;font-size:16px;padding:10px 6px}.qty{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.qty label{font-size:11px;color:var(--grey);display:flex;flex-direction:column;gap:4px}.chips{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--white);border-radius:999px;padding:6px 12px;font-size:12px;white-space:nowrap;font-family:inherit;color:var(--ink);cursor:pointer}.chip.on{background:var(--navy);color:#fff;border-color:var(--navy)}.stat{background:var(--white);border-radius:14px;padding:12px;box-shadow:var(--shadow)}.stat .n{font-size:18px;font-weight:700;color:var(--navy)}.stat .l{font-size:11px;color:var(--grey);margin-top:2px}.bnav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;background:var(--white);border-top:1px solid var(--line);display:flex;justify-content:space-around;padding:6px 4px calc(env(safe-area-inset-bottom,0px) + 8px);z-index:6}.bnav button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;font:inherit;font-size:11px;color:var(--grey);flex:1;padding:6px 0;cursor:pointer}.bnav button.on{color:var(--blue);font-weight:700}.bnav .ic{display:block;width:22px;height:22px;margin:0 auto 3px;border-radius:7px;background:#e5e7eb}.bnav button.on .ic{background:var(--blue)}.toast{position:fixed;left:50%;bottom:86px;transform:translate(-50%);background:var(--navy);color:#fff;padding:11px 16px;border-radius:12px;font-size:13px;box-shadow:0 8px 24px #00000040;z-index:20;max-width:90vw}.err{background:var(--red-soft);color:var(--red);border-radius:12px;padding:10px 12px;font-size:13px}.warn{background:var(--amber-soft);color:#7c4a03;border-radius:12px;padding:10px 12px;font-size:13px}.total{background:var(--navy);color:#fff;border-radius:16px;padding:12px 14px}.total .amt{font-size:22px;font-weight:700;margin:2px 0 6px}.lrow{display:flex;justify-content:space-between;font-size:12px;padding:2px 0}.login{min-height:100dvh;background:var(--navy);display:flex;flex-direction:column}.brand{padding:56px 24px 28px;text-align:center;color:#fff}.logo{width:60px;height:60px;border-radius:18px;background:var(--blue);margin:0 auto 12px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:24px;color:#fff}.sheet-wrap{background:var(--bg);flex:1;border-radius:24px 24px 0 0;padding:24px 20px calc(env(safe-area-inset-bottom,0px) + 24px);display:flex;flex-direction:column;gap:10px}
