:root{
  --green:#0c831f;--green-dark:#0a6b1a;--green-light:#e8f6ea;--yellow:#f8cb46;--yellow-light:#fff6d6;
  --bg:#f4f6f8;--card:#fff;--text:#1f1f1f;--muted:#6b7280;--border:#e5e7eb;--red:#dc2626;--blue:#2563eb;--orange:#f97316;
  --radius:14px;--shadow:0 1px 3px rgba(0,0,0,.08),0 4px 14px rgba(0,0,0,.05);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",sans-serif;font-size:15px;line-height:1.4}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none}
a{color:var(--green);text-decoration:none}
.hidden{display:none!important}
.muted{color:var(--muted)}.small{font-size:12px}.bold{font-weight:700}.center{text-align:center}
.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.grow{flex:1}.wrap{flex-wrap:wrap}
.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 18px;border-radius:10px;font-weight:600;background:var(--green);color:#fff;transition:.15s}
.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:default}
.btn.block{width:100%}.btn.sm{padding:7px 12px;font-size:13px;border-radius:8px}.btn.xs{padding:4px 9px;font-size:12px;border-radius:7px}
.btn.outline{background:#fff;color:var(--green);border:1.5px solid var(--green)}
.btn.light{background:var(--green-light);color:var(--green)}
.btn.ghost{background:transparent;color:var(--muted)}
.btn.danger{background:#fee2e2;color:var(--red)}.btn.yellow{background:var(--yellow);color:#222}.btn.blue{background:#dbeafe;color:var(--blue)}
.btn.dark{background:#1f1f1f;color:#fff}
.input,select.input,textarea.input{width:100%;padding:11px 12px;border:1.5px solid var(--border);border-radius:10px;background:#fff;outline:none;font-size:16px;-webkit-appearance:none;appearance:none;display:block;min-height:44px;line-height:1.3;margin:0}
input[type=date].input,input[type=month].input{-webkit-appearance:none;min-width:150px;text-align:left}
input[type=date].input::-webkit-date-and-time-value,input[type=month].input::-webkit-date-and-time-value{text-align:left;min-height:1.3em}
select.input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b7280' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}
input[type=checkbox],input[type=radio]{-webkit-appearance:checkbox;appearance:auto;width:18px;height:18px}
input[type=radio]{-webkit-appearance:radio}
input[type=file]{-webkit-appearance:none;font-size:14px}
.input:focus{border-color:var(--green)}
button{-webkit-appearance:none;appearance:none;margin:0;padding:0;touch-action:manipulation}
.safe-top{padding-top:env(safe-area-inset-top)}
label.lbl{display:block;font-size:12px;font-weight:600;color:var(--muted);margin:10px 0 5px;text-transform:uppercase;letter-spacing:.03em}
.chip{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:999px;background:#fff;border:1.5px solid var(--border);font-size:13px;font-weight:600;white-space:nowrap}
.chip.on{background:var(--green);color:#fff;border-color:var(--green)}
.badge{display:inline-block;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:700;text-transform:capitalize}
.b-placed{background:#dbeafe;color:#1d4ed8}.b-packed{background:#fef3c7;color:#b45309}.b-out_for_delivery{background:#ffedd5;color:#c2410c}
.b-delivered{background:#dcfce7;color:#15803d}.b-cancelled{background:#fee2e2;color:#b91c1c}.b-not_delivered{background:#fee2e2;color:#b91c1c}
.b-active{background:#dcfce7;color:#15803d}.b-paused{background:#fef3c7;color:#b45309}.b-paid{background:#dcfce7;color:#15803d}.b-pending{background:#fee2e2;color:#b91c1c}
.b-morning{background:#fff6d6;color:#92400e}.b-evening{background:#ede9fe;color:#5b21b6}
.b-subscription{background:#ede9fe;color:#5b21b6}.b-one_time{background:#e0f2fe;color:#0369a1}
.toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%) translateY(20px);background:#1f1f1f;color:#fff;padding:11px 18px;border-radius:10px;font-size:14px;z-index:999;opacity:0;transition:.25s;max-width:90vw;text-align:center;pointer-events:none}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.toast.err{background:var(--red)}
.sheet-bg{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:100;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s}
.sheet{background:#fff;width:100%;max-width:560px;border-radius:20px 20px 0 0;padding:18px 18px 28px;max-height:92vh;overflow:auto;animation:up .25s}
.sheet h3{margin:0 0 12px}
@keyframes fade{from{opacity:0}}@keyframes up{from{transform:translateY(40px)}}
.spin{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--green);border-radius:50%;animation:rot .8s linear infinite;margin:30px auto}
@keyframes rot{to{transform:rotate(360deg)}}
.empty{text-align:center;color:var(--muted);padding:50px 20px}.empty .ico{font-size:46px;margin-bottom:8px}
.qty{display:inline-flex;align-items:center;background:var(--green);color:#fff;border-radius:8px;overflow:hidden;font-weight:700}
.qty button{color:#fff;width:30px;height:32px;font-size:18px;line-height:1}.qty span{min-width:26px;text-align:center;font-size:14px}
.qty.lg button{width:36px;height:36px}.qty.lg span{min-width:32px}
table.tbl{width:100%;border-collapse:collapse;font-size:13.5px}
table.tbl th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:8px 10px;border-bottom:1px solid var(--border);white-space:nowrap}
table.tbl td{padding:9px 10px;border-bottom:1px solid #f1f3f5;vertical-align:middle}
table.tbl tr:last-child td{border-bottom:0}
.tbl-wrap{overflow:auto;-webkit-overflow-scrolling:touch}
.price{font-weight:700}.strike{text-decoration:line-through;color:var(--muted);font-weight:400;font-size:12px;margin-left:4px}
.ad-green{background:linear-gradient(135deg,#0c831f,#1aa534);color:#fff;border-radius:16px;padding:16px;position:relative;overflow:hidden}
.ad-green:after{content:"🥛";position:absolute;right:-6px;bottom:-14px;font-size:84px;opacity:.25;transform:rotate(-12deg)}
.login-wrap{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:28px 22px;max-width:420px;margin:auto}
.sheet{padding-bottom:calc(28px + env(safe-area-inset-bottom))}
.sheet-bg{-webkit-overflow-scrolling:touch}
.toast{bottom:calc(90px + env(safe-area-inset-bottom))}
.logo{font-size:30px;font-weight:800;color:var(--green);letter-spacing:-.02em}
.logo .brand{color:var(--yellow);background:#1f1f1f;border-radius:8px;padding:0 6px}
