/* Shared Kanges visual language. No credentials, queries or business actions. */
:root{--primary:#17664d;--primary-600:#17664d;--panel:#fff;--text:#20352a;--muted:#66796d;--radius:14px;--vendor-dock:70px}
body{margin:0;background:#f4f6f4!important;color:#20352a;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif!important;font-size:14px;line-height:1.5;padding-bottom:calc(var(--vendor-dock) + 90px + env(safe-area-inset-bottom))!important;-webkit-font-smoothing:antialiased}
*,*::before,*::after{box-sizing:border-box}
button,input,select,textarea{font-family:inherit!important}
button,a,[role=button]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b2dac6!important;outline-offset:2px}
input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important;max-width:100%;color:#20352a}
.header{padding:12px 14px!important;gap:10px;flex-wrap:wrap;background:#fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border-bottom:1px solid #e0e7e2;box-shadow:0 2px 12px #20352a05}
.header-title{font-size:17px;letter-spacing:-.025em;min-width:0;flex:1;gap:7px;color:#17664d;flex-wrap:wrap}
.header-title>a{margin:0!important;width:34px;height:36px;font-size:16px!important;flex-shrink:0;background:#f3f7f3!important;border-color:#e0e7e2!important}
.header-title>span[data-i18n=App]{display:none}
.header-title .lang-switch{transform:scale(.8);transform-origin:left center;margin-right:-12px}
.header-btn{min-height:40px;padding:7px 10px!important;border:1px solid #e0e7e2!important;border-radius:10px!important;background:#f8faf8!important;color:#5f7565;font-size:12px;box-shadow:none}
.header #logoutBtn{white-space:nowrap}
#notificationPermBtn{width:40px;padding:6px!important}
#connectionStatus{flex:0 0 8px;margin:0!important;outline:3px solid #f4f6f4}
#notifToast{top:auto!important;bottom:calc(var(--vendor-dock) + 82px + env(safe-area-inset-bottom))!important;min-width:0!important;max-width:calc(100vw - 28px);border-radius:12px!important;padding:10px 14px!important;font-size:12px;animation:none!important}
.container{width:100%;max-width:960px;padding:14px!important;margin:auto}
.nav-tabs{position:fixed!important;bottom:0!important;left:0;right:0;top:auto!important;z-index:1500!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:8px 14px calc(8px + env(safe-area-inset-bottom))!important;background:#fff!important;border-top:1px solid #e0e7e2;border-bottom:0;box-shadow:0 -4px 18px #20352a06}
.nav-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:50px;border:0!important;border-radius:11px;background:transparent;font-size:12px;font-weight:600;color:#64796b;cursor:pointer;padding:5px!important}
.nav-tab::before{display:block;font-size:18px;line-height:1.2;color:#64796b}
#tabCredit::before{content:'₹'}
#tabList::before{content:'☷'}
#tabOrders::before{content:'▤'}
.nav-tab.active{background:#e8f3ed!important;color:#17664d!important;border-bottom:0!important}
.nav-tab.active::before{color:#17664d}
#creditView>div:last-child{bottom:calc(var(--vendor-dock) + env(safe-area-inset-bottom))!important;z-index:1400!important;padding:10px 14px!important;border-color:#e0e7e2!important;box-shadow:0 -3px 12px #20352a06!important}
#creditView>div:last-child button{min-height:44px;border-radius:11px!important;padding:8px!important}
#appScreen:has(#vendorList[style*="display: none"]) .fab-container{display:none!important}
#vendorListDateToolbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;padding:14px!important;border-bottom:1px solid #e5ebe6!important;background:#f4f6f4!important;max-width:960px;margin:auto;align-items:center}
#vendorListDateToolbar[hidden]{display:none!important}
#vendorListDateToolbar>label{grid-column:1/-1;color:#6c7e71;font-size:11px;font-weight:600}
#vendorListDateToolbar input{width:100%;min-width:0;min-height:44px;padding:8px 11px;border-radius:11px!important;background:#fff!important;border:1px solid #dce5df!important}
#vendorListTodayBtn{min-height:44px!important;min-width:70px;border:1px solid #cce0d1!important;border-radius:11px!important;background:#e8f3ed!important;color:#17664d;font-size:13px;font-weight:650}
.vendor-order-group-title{margin:16px 0 0;padding:7px 10px;min-height:48px;background:#fff0ed;color:#9d443a;border:1px solid #efd6d1;border-radius:12px 12px 0 0;box-shadow:none;font-size:15px;letter-spacing:.015em}
.vendor-order-group-title::after{font-size:9px;letter-spacing:.06em;opacity:1}
.vendor-order-group-title.bag-packed{background:#e8f3ed;color:#17664d;border-color:#c9dfd0;box-shadow:none}
.vendor-order-group-title[data-group=Other]{background:#eef2f3;color:#556674;border-color:#dfe5e9}
.vendor-bag-check{width:32px;min-width:32px;height:32px;flex-basis:32px;border:1.5px solid currentColor;background:#fff;color:inherit}
.vendor-bag-check[aria-pressed=true]{background:#17664d;color:#fff;border-color:#17664d}
.item-card{min-height:68px;padding:10px 11px;gap:9px;border-color:#e2e9e3;border-radius:12px!important;box-shadow:0 1px 4px #20352a04;transition:background-color .1s,border-color .1s;overflow:visible}
.item-card.vendor-bag-item{margin:0;border:1px solid #e2e9e3;border-top:0!important;border-left:3px solid #d5e7da;border-radius:0!important;box-shadow:none}
.item-card.received{background:#eef7f0!important;border-color:#cee2d4!important}
.item-name{font-size:15px!important;font-weight:550;line-height:1.45;overflow-wrap:anywhere;min-width:0}
.price-input{width:76px!important;min-width:65px!important;min-height:42px!important;height:42px!important;border-radius:9px!important;border:1px solid #d9e5dc!important;background:#fbfcfb!important;font-size:16px!important;font-weight:650;padding:6px!important;text-align:right}
.price-input:focus{outline:2px solid #b2dac6!important;border-color:#17664d!important;background:#fff!important}
.action-btn{min-height:42px!important;min-width:36px!important;border-radius:9px!important;box-shadow:none!important}
.action-btn.tick{width:42px!important;border-color:#d6e4db!important}
#vendorSendBillBtn{min-height:54px!important;padding:12px!important;border-radius:12px!important;background:#17664d!important;color:#fff!important;box-shadow:none!important}
#vendorSendBillBtn:disabled{background:#8d9d93!important}
#vendorBillTotal{color:#17664d!important;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.fab-container{bottom:calc(var(--vendor-dock) + 12px + env(safe-area-inset-bottom))!important;right:14px!important;display:flex!important;flex-direction:row!important;gap:5px;padding:5px;border:1px solid #e0e7e2;border-radius:15px;background:white;box-shadow:0 3px 14px #20352a0d}
.fab-btn{width:42px!important;height:44px!important;min-width:42px;border-radius:10px!important;box-shadow:none!important;border:0!important;background:#f4f7f4!important;color:#44614e!important;font-size:18px}
.fab-btn.active,.fab-btn.green-active{background:#e2f0e6!important;color:#17664d!important}
#marketStatusFab{width:50px!important;height:50px!important;min-width:50px;bottom:calc(var(--vendor-dock) + 14px + env(safe-area-inset-bottom))!important;left:14px!important;border-radius:15px!important;box-shadow:0 3px 14px #20352a12!important;background:#17664d!important;color:white!important}
.v-tabs-container{position:static!important;background:#f4f6f4!important;backdrop-filter:none!important;border-color:#e0e7e2}
.tab-item.active{background:#17664d!important;border-color:#17664d!important;box-shadow:none!important}
#creditView .container>div:first-child{background:#17664d!important;text-align:left!important;box-shadow:none!important;border-radius:18px!important;padding:22px!important}
#detailBalance{font-variant-numeric:tabular-nums;letter-spacing:-.04em}
#loginScreen{background:#f1f5f1!important;padding:20px!important;overflow-y:auto}
.login-card{width:100%;max-width:390px;padding:30px 24px!important;border:1px solid #dfe8e1;border-radius:24px!important;background:#fff!important;box-shadow:0 12px 50px #20352a0b!important}
.login-card h2{color:#1e3829;font-size:25px!important;letter-spacing:-.03em;margin:10px 0 4px}
.login-card p{color:#6b7d70;font-size:13px}
.app-logo-img{width:64px!important;height:64px!important;margin-bottom:8px!important;box-shadow:none!important}
.vendor-input-label{align-self:stretch;text-align:left;color:#4d6657;font-size:12px;font-weight:600;margin-top:14px;margin-bottom:5px}
.login-input{width:100%;min-height:48px!important;padding:11px 13px!important;border:1px solid #dce5df!important;border-radius:11px!important;background:#fbfcfb!important;margin-top:0!important;text-align:left!important}
.login-btn{min-height:48px!important;background:#17664d!important;border-radius:11px!important;box-shadow:none!important;font-size:14px!important;font-weight:650}
#loginForm>button[type=button]{margin-top:10px;background:#f2f7f2!important;color:#466650!important;border:1px solid #dce5df}
.otp-box,.note-modal,.modal-content{border-radius:20px!important;box-shadow:0 16px 60px #20352a20!important;max-height:calc(100dvh - 32px);overflow-y:auto}
@media(max-width:480px){.header-title{flex-basis:100%;justify-content:flex-start}.header>div:last-child{margin-left:auto}.header-title .lang-switch{margin-left:auto}.item-card{gap:7px;padding:9px}.item-name{font-size:14px!important}.price-input{width:65px!important;min-width:58px!important}.action-btn{min-width:32px!important}.header{padding:10px 14px!important;gap:6px}}
@media(min-width:900px){.nav-tabs{left:50%;right:auto;transform:translateX(-50%);width:500px;border:1px solid #e0e7e2;border-radius:18px 18px 0 0}.header{padding-left:max(24px,calc((100vw - 960px)/2))!important;padding-right:max(24px,calc((100vw - 960px)/2))!important}.fab-container{right:24px!important}#marketStatusFab{left:24px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* Compact header and clear bill handoff on small delivery phones. */
#appScreen>.header{flex-wrap:nowrap;padding:6px 10px!important;gap:6px;min-height:56px}
#appScreen>.header .header-title{flex:1 1 auto;flex-basis:auto;flex-wrap:nowrap;font-size:14px;gap:4px}
#appScreen>.header>div:last-child{flex:0 0 auto;gap:4px!important;margin-left:0}
#appScreen>.header .header-btn{padding:6px!important;font-size:11px;min-height:44px}
#appScreen>.header .lang-switch{margin-left:0;transform:scale(.8);margin-right:-10px}
#vendorSendBillBtn{min-height:60px!important;border-radius:14px!important}
#appScreen:has(#vendorSendBillBtn) .fab-container{position:static!important;width:max-content;margin:12px 14px 12px auto}
