:root{--green: #2f7d32;--green-d: #1f5c23;--leaf: #e8f3e5;--cream: #fbf8f1;--ink: #1d2a1f;--muted: #6b776d;--line: #e3e0d6;--red: #c0392b;--amber: #e0a21a;--r: 14px}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--cream);color:var(--ink)}h1,h2,h3{font-family:Fraunces,Georgia,serif;margin:.2em 0 .5em}a{color:var(--green-d)}code{background:var(--leaf);padding:1px 5px;border-radius:4px}.topbar{position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:space-between;align-items:center;padding:.7rem 1rem;background:#fff;border-bottom:1px solid var(--line)}.brand{font-family:Fraunces,serif;font-weight:700;font-size:1.25rem;text-decoration:none;color:var(--green-d);white-space:nowrap}.topbar nav{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap}.topbar nav a{text-decoration:none;font-weight:500}.cartbtn{background:var(--green);color:#fff!important;padding:.4rem .8rem;border-radius:999px}.badge{background:#fff;color:var(--green-d);border-radius:999px;padding:0 .45rem;margin-left:.4rem;font-size:.8rem}.container{max-width:1050px;margin:0 auto;padding:1rem 1rem 5rem}.center{text-align:center;padding:2rem 1rem}.muted{color:var(--muted)}.error{color:var(--red);font-weight:500}.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1rem;margin-bottom:1rem}.hero{background:linear-gradient(135deg,var(--leaf),#fff)}.hero h1{font-size:1.6rem}label{display:block;font-size:.9rem;font-weight:500;margin-bottom:.7rem}.lbl{display:block;font-size:.9rem;font-weight:500;margin-bottom:.3rem}label.inline{display:inline-flex;gap:.4rem;align-items:center;margin:0}input,select,textarea{width:100%;padding:.6rem .7rem;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff;margin-top:.25rem}input[type=checkbox]{width:auto;margin:0}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.grid5{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr 2fr auto;gap:.5rem;align-items:center}.grid5 input,.grid5 select{margin:0}button{font:inherit;cursor:pointer;border-radius:10px;border:1px solid var(--line);background:#fff;padding:.55rem .9rem}button:disabled{opacity:.6;cursor:wait}button.primary,.primary{background:var(--green);color:#fff;border-color:var(--green);font-weight:600;text-decoration:none}button.primary:hover,.primary:hover{background:var(--green-d)}button.danger{background:#fff;color:var(--red);border-color:var(--red)}button.link{border:none;background:none;color:var(--green-d);text-decoration:underline;padding:.2rem}button.big,.big{width:100%;padding:.85rem;font-size:1.05rem;margin-top:.5rem}.btn{display:inline-block;padding:.6rem 1rem;border:1px solid var(--line);border-radius:10px;text-decoration:none}.seg{display:inline-flex;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:.8rem;flex-wrap:wrap}.seg button{border:none;border-radius:0;background:#fff}.seg button.on{background:var(--green);color:#fff}.chips{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.5rem}.chips button{border-radius:999px;padding:.35rem .8rem}.chips button.on{background:var(--green);color:#fff;border-color:var(--green)}.filters{margin:.5rem 0 1rem;display:flex;flex-direction:column;gap:.5rem}.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem}.product{display:flex;flex-direction:column;margin:0;padding:.8rem}.product img,.noimg{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:var(--leaf)}.noimg{display:grid;place-items:center;font-size:2.5rem}.product h3{margin:.6rem 0 .2rem;font-size:1.05rem}.product p{margin:0 0 .4rem;font-size:.85rem}.row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-top:auto}.floatcart{white-space:nowrap;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);padding:.85rem 1.4rem;border-radius:999px;box-shadow:0 6px 20px #0003;z-index:20}.checkout{display:grid;grid-template-columns:1.2fr 1fr;gap:1rem;align-items:start}.lines{list-style:none;padding:0;margin:0}.lines li{display:grid;grid-template-columns:1fr auto 80px auto;gap:.5rem;align-items:center;padding:.6rem 0;border-bottom:1px solid var(--line)}.qty{display:flex;align-items:center;gap:.4rem}.qty button{padding:.2rem .6rem}.amt{text-align:right;font-weight:600}.totals{margin-top:.8rem}.totals div{display:flex;justify-content:space-between;padding:.2rem 0}.grand{font-size:1.2rem;font-weight:700;border-top:2px solid var(--line);margin-top:.3rem;padding-top:.5rem!important}.timeline{list-style:none;padding:0;margin:1rem 0}.timeline li{padding:.5rem 0 .5rem 2rem;position:relative;color:var(--muted)}.timeline li:before{content:"";position:absolute;left:.3rem;top:.65rem;width:14px;height:14px;border-radius:50%;border:2px solid var(--line);background:#fff}.timeline li.done{color:var(--ink);font-weight:600}.timeline li.done:before{background:var(--green);border-color:var(--green)}.orders{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.order header{display:flex;justify-content:space-between;align-items:center}.order p{margin:.35rem 0}.mini{margin:.4rem 0;padding-left:1.1rem;font-size:.92rem}.actions{display:flex;gap:.5rem;flex-wrap:wrap}.pill{padding:.15rem .6rem;border-radius:999px;font-size:.8rem;background:var(--leaf);color:var(--green-d);font-weight:600}.pill.pending{background:#fff1d6;color:#8a5a00}.pill.out_for_delivery{background:#dbeafe;color:#1e4fa3}.pill.cancelled{background:#fde4e1;color:var(--red)}.tablewrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:var(--r)}table{width:100%;border-collapse:collapse}th,td{padding:.55rem .7rem;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}tr.off{opacity:.5}input.price{width:90px;margin:0}@media (max-width: 760px){.grid2,.checkout{grid-template-columns:1fr}.grid5{grid-template-columns:1fr 1fr}.lines li{grid-template-columns:1fr auto}.amt{text-align:left}.topbar{padding:.5rem .8rem}.topbar nav{gap:.4rem .8rem;font-size:.95rem}}.drv-shell{max-width:560px;margin:0 auto;min-height:100vh;background:#f3f1ea;padding-bottom:6.5rem}.drv{position:relative}.drv-pad{padding:0 1rem}.small{font-size:.82rem}.drv-bar{position:sticky;top:0;z-index:15;display:flex;justify-content:space-between;align-items:center;padding:.9rem 1rem;background:var(--green-d);color:#fff}.drv-hello{font-family:Fraunces,Georgia,serif;font-size:1.3rem;font-weight:700}.drv-branch{display:flex;align-items:center;gap:.4rem;font-size:.85rem;opacity:.9}.drv-dot{width:8px;height:8px;border-radius:50%;background:#7ee081;box-shadow:0 0 0 3px #7ee08140}.drv-dot.off{background:#f39c8f;box-shadow:none}.drv-bar-actions{display:flex;gap:.4rem}.drv-icon{display:grid;place-items:center;width:40px;height:40px;padding:0;border-radius:12px;font-size:1.1rem;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:#fff;text-decoration:none}.drv-icon.on{background:#ffffff40}.drv-exit{width:auto;padding:0 .8rem;font-size:.88rem;font-weight:600}.drv-chips{padding:.7rem 1rem 0;margin:0}.drv-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;padding:.9rem 1rem .4rem}.drv-stats div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:.6rem .7rem}.drv-stats b{display:block;font-size:1.05rem}.drv-stats span{font-size:.75rem;color:var(--muted)}.drv-stats .hot{background:#fff6e0;border-color:#f1d48b}.drv-soundtip{display:block;width:calc(100% - 2rem);margin:.4rem 1rem;padding:.65rem;border-radius:12px;background:#fff6e0;border:1px dashed #e0a21a;color:#7a5300;font-size:.88rem}.drv-h{font-family:Inter,system-ui,sans-serif;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:1.1rem 0 .5rem}.drv-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem;margin-bottom:.8rem;box-shadow:0 2px 10px #1d2a1f0d}.drv-num{font-weight:700;font-size:1.1rem}.drv-offer.new{border-color:var(--green);box-shadow:0 0 0 3px #2f7d3240;animation:drvPulse 1.2s ease-in-out 3}@keyframes drvPulse{50%{box-shadow:0 0 0 8px #2f7d321f}}.drv-offer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.drv-tag{display:inline-block;font-size:.75rem;font-weight:600;color:var(--green-d);background:var(--leaf);padding:.15rem .55rem;border-radius:999px;margin-bottom:.3rem}.drv-cash{text-align:right}.drv-cash small{display:block;font-size:.72rem;color:var(--muted)}.drv-cash b{font-size:1.45rem}.drv-route{list-style:none;margin:.8rem 0 .4rem;padding:0;position:relative}.drv-route:before{content:"";position:absolute;left:6px;top:16px;bottom:26px;border-left:2px dashed var(--line)}.drv-route li{display:flex;gap:.75rem;padding:.35rem 0}.drv-route li div{display:flex;flex-direction:column;min-width:0}.drv-route small{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.drv-route .muted{font-size:.85rem}.drv-pin{flex:none;width:14px;height:14px;margin-top:.3rem;border-radius:50%;position:relative;z-index:1}.drv-pin.a{background:#fff;border:3px solid var(--green)}.drv-pin.b{background:var(--ink);border-radius:3px}.drv-note{background:#fff6e0;border-radius:10px;padding:.5rem .7rem;margin:.5rem 0;font-size:.92rem}.drv-more{border:none;background:none;padding:.3rem 0;color:var(--green-d);font-weight:600;font-size:.9rem}.drv-items{list-style:none;margin:.3rem 0 .6rem;padding:0}.drv-items li{display:flex;align-items:center;gap:.6rem;padding:.5rem 0;border-bottom:1px solid #f0ede4}.drv-items li:last-child{border-bottom:none}.drv-active .drv-items li{cursor:pointer}.drv-items li.ok .drv-pn{text-decoration:line-through;color:var(--muted)}.drv-check{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:7px;border:2px solid var(--line);color:#fff;font-weight:700;font-size:.85rem}.drv-items li.ok .drv-check{background:var(--green);border-color:var(--green)}.drv-q{flex:none;min-width:84px;font-weight:700}.drv-active{padding:0;overflow:hidden;border-color:#bcd7bd}.drv-map{position:relative;height:170px;background:linear-gradient(135deg,#dfeedd,#eef3e6 60%,#e3ecf3)}.drv-map iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.drv-map-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:2.2rem;background-image:linear-gradient(rgba(255,255,255,.55) 2px,transparent 2px),linear-gradient(90deg,rgba(255,255,255,.55) 2px,transparent 2px);background-size:34px 34px}.drv-active-body{padding:1rem}.drv-steps{display:flex;gap:.3rem;margin-bottom:.8rem}.drv-steps span{flex:1;font-size:.72rem;color:var(--muted);padding-top:.4rem;border-top:4px solid var(--line)}.drv-steps span.done{border-color:var(--green);color:var(--green-d);font-weight:600}.drv-addr{font-size:1.15rem;font-weight:600;margin:.15rem 0 .7rem}.drv-btns{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.drv-btn{display:block;text-align:center;padding:.7rem;border-radius:12px;border:1px solid var(--line);text-decoration:none;font-weight:600;color:var(--ink);background:#fff}.drv-btn.primary{background:var(--green);border-color:var(--green);color:#fff}.drv-client{display:flex;align-items:center;gap:.7rem;margin:.9rem 0 .4rem;padding:.7rem;border-radius:14px;background:#f7f6f1}.drv-avatar{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--leaf);color:var(--green-d);font-weight:700;font-size:1.1rem}.drv-client-name{flex:1;display:flex;flex-direction:column;min-width:0}.drv-client-name .muted{font-size:.85rem}.drv-round{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--line);text-decoration:none;font-size:1.15rem}.drv-round.wa{background:#e3f7e8;border-color:#b6e3c1}.drv-checkhead{display:flex;justify-content:space-between;margin-top:.9rem}.drv-collect{display:flex;flex-direction:column;align-items:center;margin:.6rem 0 .2rem;padding:.8rem;border-radius:14px;background:#fff6e0;border:1px solid #f1d48b}.drv-collect span{font-size:.82rem;font-weight:600;color:#7a5300;text-transform:uppercase;letter-spacing:.05em}.drv-collect b{font-size:2rem;line-height:1.2}.drv-collect small{color:var(--muted)}.drv-list{padding:.2rem 1rem}.drv-row{display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:.7rem 0;border-bottom:1px solid #f0ede4}.drv-row:last-child{border-bottom:none}.pill.preparing,.pill.confirmed{background:#fff1d6;color:#8a5a00}.drv-summary{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:1rem}.drv-summary small{display:block;color:var(--muted);font-size:.78rem}.drv-summary b{font-size:1.4rem}.drv-empty{text-align:center;padding:3rem 1.5rem}.drv-empty-ico{font-size:3rem;width:96px;height:96px;margin:0 auto 1rem;display:grid;place-items:center;background:#fff;border-radius:50%;border:1px solid var(--line)}.swipe{position:relative;height:56px;margin-top:.8rem;border-radius:999px;background:var(--green-d);overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:pan-y}.swipe-fill{position:absolute;left:0;top:0;bottom:0;background:var(--green);border-radius:999px}.swipe-label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding-left:50px;color:#fff;font-weight:600;pointer-events:none}.swipe-thumb{position:absolute;left:4px;top:4px;width:48px;height:48px;padding:0;border:none;border-radius:50%;background:#fff;color:var(--green-d);font-size:1.3rem;font-weight:700;touch-action:none;box-shadow:0 2px 8px #0003}.swipe-thumb:disabled{cursor:wait;opacity:1}.swipe.busy{opacity:.7}.drv-toast{position:fixed;left:50%;bottom:5.4rem;transform:translate(-50%);z-index:30;width:min(92vw,520px);padding:.85rem 1rem;border-radius:14px;border:none;background:var(--ink);color:#fff;font-size:.95rem;box-shadow:0 8px 24px #00000040;animation:drvUp .3s ease-out}@keyframes drvUp{0%{transform:translate(-50%,20px);opacity:0}}.drv-tabs{position:fixed;left:50%;bottom:0;transform:translate(-50%);z-index:20;width:100%;max-width:560px;display:grid;grid-template-columns:1fr 1fr;background:#fff;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.drv-tabs button{position:relative;display:flex;flex-direction:column;align-items:center;gap:.1rem;border:none;border-radius:0;background:none;padding:.55rem 0 .65rem;font-size:.8rem;color:var(--muted);font-weight:600}.drv-tabs button span{font-size:1.3rem;filter:grayscale(1);opacity:.6}.drv-tabs button.on{color:var(--green-d)}.drv-tabs button.on span{filter:none;opacity:1}.drv-tabs i{position:absolute;top:.35rem;left:calc(50% + 10px);font-style:normal;background:var(--red);color:#fff;font-size:.7rem;min-width:18px;padding:0 .3rem;border-radius:999px}.soundbtn{border-radius:999px;padding:.45rem .9rem;font-size:.9rem;align-self:flex-start}.soundbtn.on{background:var(--leaf);border-color:#bcd7bd;color:var(--green-d);font-weight:600}.newbar{background:#fff6e0;border:1px solid #f1d48b;color:#7a5300;border-radius:12px;padding:.6rem .9rem;font-weight:600}.order.fresh{border-color:var(--green);box-shadow:0 0 0 3px #2f7d3233}.newtag{margin-left:.5rem;background:var(--green);color:#fff;font-size:.72rem;padding:.1rem .5rem;border-radius:999px;vertical-align:middle}.okmsg{color:var(--green-d);font-weight:600}.branches{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.branch header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem}.branch.off{opacity:.75}.branch .grid2 label{margin-bottom:.4rem}.myorders{max-width:640px;margin:0 auto}.mylist{padding:.2rem 1rem}.myrow{display:flex;align-items:center;gap:.5rem;border-bottom:1px solid #f0ede4}.myrow:last-child{border-bottom:none}.mylink{flex:1;display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:.8rem 0;text-decoration:none;color:inherit;min-width:0}.pill.delivered{background:var(--leaf);color:var(--green-d)}.pill.ready{background:#e3f7e8;color:#1f6b33}.authlinks{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;margin:.6rem 0}.testbar{background:#fff1c2;color:#6b4a00;text-align:center;font-size:.85rem;font-weight:600;padding:.4rem 1rem;border-bottom:1px solid #f1d48b}@media (max-width: 560px){.products{grid-template-columns:1fr 1fr;gap:.6rem}.product{padding:.55rem}.product img,.noimg{aspect-ratio:4 / 3}.noimg{font-size:2.3rem}.product h3{font-size:.98rem;margin:.45rem 0 .15rem}.product p{font-size:.78rem}.product .row{flex-direction:column;align-items:stretch;gap:.35rem}.product .row strong{font-size:.95rem}.product .row button{width:100%;padding:.5rem}}button.primary.added{background:var(--leaf);color:var(--green-d);border-color:#bcd7bd}button.primary.added:hover{background:#d9ecd5}
