:root{--dark: #fcfafa;--deep: #56597b;--green: #04580f;--page: #f4f0f0;--panel: #e9e2e2;--muted: #9a9cb2;--muted2: #56597b;--ink: #3d3f5c;--slate: #56597b;--line: #d8d0d0;--card: #fcfafa;--orange: #b4791f;--green-tint: rgba(4, 88, 15, .1);--amber-tint: rgba(180, 121, 31, .12);--mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--page);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}#root{max-width:520px;margin:0 auto;min-height:100vh}@media (min-width: 760px){#root{max-width:1000px}}@media (min-width: 1200px){#root{max-width:1680px}}button{font-family:inherit;cursor:pointer;border:none;background:none}input,select{font-family:inherit}.screen{min-height:100vh;background:var(--page);display:flex;flex-direction:column}.app-header{display:flex;align-items:center;justify-content:space-between;padding:calc(env(safe-area-inset-top,0px) + 12px) 16px 12px;background:var(--dark);color:var(--slate);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.app-title{font-size:17px;font-weight:900;letter-spacing:-.01em;text-transform:uppercase;color:var(--ink)}.who{font-size:11px;color:var(--slate);font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-top:3px;opacity:.75}.brandmark{display:flex;align-items:center;gap:9px}.brandmark .logo{width:24px;height:24px;display:block;flex:none}.app-header .back,.podhdr .back{font-size:22px;line-height:1;color:var(--slate);padding:2px 8px 2px 0}.search-ic{width:16px;height:16px;fill:none;stroke:var(--slate);stroke-width:2;stroke-linecap:round;opacity:.55;flex:none}.header-icons{display:flex;gap:6px}.icon-btn{color:var(--slate);font-size:18px;width:38px;height:38px;border:1px solid var(--line);background:var(--card);display:flex;align-items:center;justify-content:center}.icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.icon-btn:active{background:var(--panel)}.searchwrap{padding:10px 12px 6px;background:var(--card)}.search{display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);padding:0 12px;color:var(--slate)}.search input{border:none;background:transparent;outline:none;padding:11px 0;width:100%;font-size:15px;color:var(--ink)}.filterrow{display:flex;justify-content:space-between;align-items:center;padding:4px 12px 12px;background:var(--card)}.filterbtn{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:8px 12px;border:1px solid var(--line);background:var(--card);color:var(--slate);display:flex;align-items:center;gap:7px}.filterbtn .cnt{background:var(--green);color:#fff;font-size:11px;font-weight:800;padding:0 6px;min-width:16px;text-align:center}.sortlink{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:8px 12px;border:1px solid var(--line);background:var(--card);color:var(--slate)}.sortlink.on{background:var(--slate);color:var(--card);border-color:var(--slate)}.listhdr{padding:12px 16px 6px;font-size:11px;font-weight:800;color:var(--slate);letter-spacing:.12em;text-transform:uppercase}.cards{padding-bottom:24px}.board-scroll{display:flex;gap:10px;overflow-x:auto;padding:4px 4% 16px;scroll-snap-type:x mandatory;scroll-padding-inline:4%;-webkit-overflow-scrolling:touch}.board-col{flex:0 0 92%;max-width:440px;scroll-snap-align:center}.colhead{display:flex;align-items:center;gap:8px;margin:2px 2px 8px;font-weight:800;font-size:13px;letter-spacing:.04em;color:var(--green);text-transform:uppercase}.colcount{background:var(--green);color:#fff;padding:1px 9px;font-size:12px;font-variant-numeric:tabular-nums}.col-empty{opacity:.5;font-size:13px;padding:8px 2px}@media (min-width: 760px){.board-scroll{scroll-snap-type:none;padding:4px 16px 22px;gap:14px}.board-col{flex:0 0 320px;max-width:320px}.board-col .card{margin-left:0;margin-right:0}}@media (min-width: 1200px){.board-col{flex:0 0 360px;max-width:360px}}.card{background:var(--card);margin:0 11px 12px;border:1px solid var(--line);padding:12px 13px}.card:active{transform:scale(.997)}.card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.biz{font-size:14px;font-weight:800;color:var(--ink);line-height:1.2}.badge{font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;padding:3px 6px;border:1px solid;white-space:nowrap}.b-full{background:var(--panel);color:var(--slate);border-color:var(--line)}.b-return{background:var(--amber-tint);color:var(--orange);border-color:#b4791f66}.b-respot,.b-delivery{background:var(--green-tint);color:var(--green);border-color:#04580f59}.rows{margin:11px 0 3px;display:flex;flex-direction:column;gap:7px}.row{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.row .k{font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--slate);opacity:.6;white-space:nowrap;flex-shrink:0}.row .v{font-size:13px;color:var(--ink);text-align:right}.row .v.mono{font-family:var(--mono);font-weight:700;letter-spacing:.01em}.row .v.strong{font-weight:800;color:var(--ink)}.nextbar{margin-top:12px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--green);color:#fff;border:1px solid var(--green);padding:9px 12px;font-weight:800;font-size:13px;text-align:left}.nextbar .lead{display:flex;align-items:center;gap:10px}.nextbar .lead svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.nextbar-text{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;line-height:1.2}.nextbar.photo{background:var(--green);border-color:var(--green)}.nextbar.return{background:var(--slate);border-color:var(--slate)}.nextbar.done{background:var(--panel);color:var(--slate);border-color:var(--line);justify-content:center}.nextbar:disabled{opacity:.7}.nextbar .small{font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.8;display:block;margin-bottom:1px}.nextbar .chev{font-size:16px}.card-error,.list-error{color:#b3261e;font-size:12.5px;margin:8px 12px 0}.list-error{background:#fde8e6;padding:10px 12px;border-radius:10px}.empty{color:var(--muted2);font-size:13.5px;text-align:center;padding:24px 20px}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#10241f66;display:flex;align-items:flex-end;justify-content:center;z-index:30}.sheet{background:var(--card);width:100%;max-width:480px;border-radius:20px 20px 0 0;padding:10px 18px calc(env(safe-area-inset-bottom,0px) + 20px);animation:sheet-up .18s ease-out}@keyframes sheet-up{0%{transform:translateY(30px);opacity:.4}to{transform:translateY(0);opacity:1}}.sheet-grip{width:38px;height:4px;border-radius:2px;background:var(--line);margin:4px auto 10px}.sheet h3{margin:0 0 12px;font-size:17px;color:var(--deep)}.sheet-actions{display:flex;gap:10px;margin-top:16px}.sheet-actions .btn-primary{flex:1}.field{display:block;margin-bottom:12px}.field>span{display:block;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--slate);opacity:.7;margin-bottom:6px}.field input,.field select{width:100%;padding:12px;border:1px solid var(--line);font-size:15px;background:var(--card);color:var(--ink);outline:none}.field input:focus,.field select:focus{border-color:var(--green)}.btn-primary{width:100%;background:var(--green);color:#fff;border:1px solid var(--green);padding:14px;font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.btn-primary:disabled{opacity:.6}.btn-ghost{background:#eef4f1;color:var(--green);border-radius:12px;padding:14px 20px;font-weight:800;font-size:15px}.login{min-height:100vh;background:var(--page);color:var(--slate);display:flex;flex-direction:column;justify-content:center;padding:24px;max-width:420px;margin:0 auto}.login-brand{text-align:center;margin-bottom:22px}.login-logo{width:52px;height:52px;display:block;margin:0 auto 10px}.login-word{font-size:13px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--slate);opacity:.75}.login-brand h1{margin:4px 0 6px;font-size:30px;font-weight:900;letter-spacing:-.02em;text-transform:uppercase;color:var(--ink)}.login-brand p{margin:0;color:var(--slate);font-size:13px;font-weight:600}.login-card{background:var(--card);color:var(--ink);border:1px solid var(--line);padding:20px;box-shadow:12px 14px #56597b1a}.form-error{background:var(--red-tint, rgba(239, 67, 67, .1));color:#b3261e;border:1px solid rgba(239,67,67,.35);padding:10px 12px;font-size:13px;margin-bottom:12px}.detail{background:var(--page)}.jhdr{background:var(--card);padding:calc(env(safe-area-inset-top,0px) + 10px) 14px 12px;display:flex;align-items:flex-start;gap:10px;position:sticky;top:0;z-index:5;border-bottom:1px solid var(--line)}.jhdr .back{font-size:22px;color:var(--slate);line-height:1;padding:2px 4px}.jhdr .biz{font-size:16px;font-weight:800;color:var(--ink);line-height:1.2}.jhdr .badge{margin-top:4px;display:inline-block}.body{padding:12px;flex:1}.cardx{background:var(--card);border:1px solid var(--line);padding:13px 14px;margin-bottom:11px}.clabel{font-size:10px;font-weight:800;letter-spacing:.09em;color:var(--slate);opacity:.65;text-transform:uppercase;margin-bottom:10px}.summary{font-size:13px;color:var(--ink);line-height:1.5}.crow{display:flex;align-items:center;gap:10px;margin-bottom:11px}.crow:last-child{margin-bottom:0}.crow .ic{width:18px;color:var(--green);text-align:center;font-size:14px}.crow .ic svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;display:block;margin:0 auto}.crow .val{flex:1;font-size:14px;color:var(--ink);text-decoration:none;word-break:break-word}.crow .val.lk{color:var(--green);font-weight:600}.copy{background:var(--green-tint);color:var(--green);padding:7px 10px;font-size:12px;font-weight:700;white-space:nowrap}.copy.done{background:var(--green);color:#fff}.photos{display:flex;gap:10px}.pslot{flex:1;padding:10px;text-align:center;display:flex;flex-direction:column}.pslot.done{background:var(--green-tint);border:1px solid var(--green)}.pslot.pending{background:var(--amber-tint);border:1px dashed var(--amber)}.pslot .pt{font-size:10.5px;font-weight:800;color:var(--slate);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.thumb{height:76px;overflow:hidden;margin-bottom:6px;position:relative;background:#cfe3d8}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb .chk{position:absolute;right:5px;bottom:5px;background:var(--green);color:#fff;border-radius:50%;width:20px;height:20px;font-size:12px;display:flex;align-items:center;justify-content:center}.thumb-empty{display:flex;align-items:center;justify-content:center}.pmeta{font-size:10.5px;color:var(--muted2)}.pmeta.sent{color:var(--green);font-weight:700;margin-top:2px}.capbtn{background:var(--green);color:#fff;padding:10px;font-weight:800;font-size:12px;letter-spacing:.05em;text-transform:uppercase;margin:6px 0 8px}.capbtn:disabled{opacity:.55}.step{display:flex;gap:11px}.rail{display:flex;flex-direction:column;align-items:center}.dot{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;flex-shrink:0}.dot.done{background:var(--green)}.dot.cur{background:var(--slate);box-shadow:0 0 0 4px var(--green-tint)}.dot.future{background:var(--line);color:var(--muted)}.line{width:2px;flex:1;min-height:14px;background:var(--line);margin:2px 0}.line.done{background:var(--green)}.stbody{padding-bottom:12px}.stname{font-size:14px;font-weight:700;color:var(--ink)}.stname.future{color:#9aa8a3;font-weight:600}.stmeta{font-size:10.5px;color:var(--muted);margin-top:1px}.stmeta.req{color:var(--orange);font-weight:700}.actionbar{position:sticky;bottom:0;background:var(--card);border-top:1px solid var(--line);padding:12px 14px calc(env(safe-area-inset-bottom,0px) + 12px)}.bigbtn{width:100%;background:var(--green);color:#fff;border:1px solid var(--green);padding:15px;text-align:center;font-weight:800;font-size:13px;letter-spacing:.06em;text-transform:uppercase}.bigbtn.stage{background:var(--green);border-color:var(--green)}.bigbtn.done{background:var(--panel);color:var(--slate);border-color:var(--line)}.bigbtn:disabled{opacity:.55}.bigbtn .sm{display:block;font-size:10px;font-weight:600;opacity:.85;margin-bottom:3px}.sigpad{width:100%;height:180px;background:var(--card);border:1px dashed var(--muted2);touch-action:none;display:block}.podscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--page);display:flex;flex-direction:column}.podhdr{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--card);border-bottom:1px solid var(--line)}.podtitle{font-weight:900;font-size:1rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink)}.podbody{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px}.podf{display:flex;flex-direction:column;gap:6px}.podf>span{font-size:.72rem;font-weight:800;color:var(--slate);text-transform:uppercase;letter-spacing:.06em}.podf input,.podf select{padding:12px;font-size:1rem;border:1px solid var(--line);background:var(--card);color:var(--ink)}.podf input:disabled{background:var(--panel);color:var(--muted2)}.condtoggle{display:flex;gap:10px}.condtoggle button{flex:1;padding:12px;border:1px solid var(--line);background:var(--card);font-weight:700;color:var(--ink)}.condtoggle button.on{background:var(--green);color:#fff;border-color:var(--green)}.condtoggle button.on.damaged{background:var(--red);border-color:var(--red)}.sigclear{align-self:flex-start;margin-top:6px;padding:8px 12px;border:1px solid var(--line);background:var(--card);font-size:.85rem;color:var(--slate)}.podbar{padding:12px 16px;background:var(--card);border-top:1px solid var(--line)}.poddone{text-align:center;padding:24px 8px}.poddoc{font-weight:700;margin-top:8px}.podwarn{color:var(--red);margin-top:12px;font-size:.9rem}.sheet-head{display:flex;align-items:center;gap:10px;margin:2px 0 8px}.sheet-head h3{margin:0}.capture-sheet{text-align:center}.capbig{display:block;width:100%;padding:16px;margin:8px 0;border:1px solid var(--green);font-weight:800;font-size:.95rem;letter-spacing:.04em;text-transform:uppercase;background:var(--green);color:#fff}.capbig.alt{background:var(--slate);border-color:var(--slate)}.capcancel{display:block;width:100%;margin-top:4px;padding:12px;background:transparent;border:none;color:#666;font-weight:600}.billing-customers,.billing-jobs{padding:10px 12px;display:flex;flex-direction:column;gap:9px;overflow-y:auto}.custrow{display:flex;justify-content:space-between;align-items:center;padding:14px;border:1px solid var(--line);background:var(--card);font-weight:700;color:var(--ink)}.custcount{background:var(--green);color:#fff;padding:1px 10px;font-size:13px;font-weight:800;font-variant-numeric:tabular-nums}.daterange{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:1px solid var(--line);padding:7px 30px 7px 12px;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--green);background:var(--card) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2304580f' stroke-width='3'><path d='M6 9l6 6 6-6'/></svg>") no-repeat right 9px center;cursor:pointer}.billcard{text-align:left;width:100%;border:1px solid var(--line);background:var(--card);padding:12px}.billcard.sel{border-color:var(--green);background:var(--green-tint)}.billcard.billed{opacity:.55}.billcard-top{display:flex;justify-content:space-between;align-items:center}.bc-container{font-family:var(--mono);font-weight:700;font-size:14px;color:var(--ink)}.bc-check{color:var(--green);font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.bc-add{color:var(--slate);opacity:.55;font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.billcard-status{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-top:9px}.billcard-status .ok{color:var(--green);font-weight:700}.billcard-status .warn{color:var(--orange);font-weight:700}.billed-tag,.unbilled-tag{font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 7px;border:1px solid var(--line);background:var(--panel);color:var(--slate)}.billbar{padding:12px 14px;border-top:1px solid var(--line);background:var(--card);display:flex;flex-direction:column;gap:9px}.billprice{display:flex;align-items:center;border:1px solid var(--slate);background:var(--page)}.billprice span{padding:0 10px;font-weight:800;color:var(--slate)}.billprice input{flex:1;border:none;padding:12px 6px;font-size:15px;color:var(--ink);background:transparent;outline:none}.podtoggle{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--slate)}
