.auth{display:none;position:fixed;inset:0;background:#062a1fe8;z-index:20;place-items:center;padding:18px}.auth.open{display:grid}.authbox{position:relative;width:min(440px,100%);max-height:94vh;overflow:auto;background:#fff;border-radius:24px;padding:28px}.auth-close{position:absolute;right:17px;top:15px;border:0;background:#eef2ef;width:36px;height:36px;border-radius:50%;font-size:24px}.brand{font-size:26px;font-weight:900;color:#064c35}.brand b{color:#78ad12}.authbox h2{font-size:25px;margin:24px 0 8px}.authbox p{color:#66736c;line-height:1.45}.account-types{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.account-types button{border:2px solid #e0e7e2;background:#f8faf8;border-radius:16px;padding:15px 10px;color:#536159}.account-types button.selected{border-color:#064c35;background:#eaf5ef;color:#064c35}.account-types span,.account-types b,.account-types small{display:block}.account-types span{font-size:28px}.account-types b{margin:6px 0;font-size:16px}.account-types small{font-size:12px;margin:0;text-align:center}.phone{display:flex;border:1px solid #cdd8d2;border-radius:13px;height:54px;overflow:hidden;margin:20px 0}.phone span{display:grid;place-items:center;padding:0 13px;background:#f1f4f2;font-weight:800}.phone input,.otp input{border:0;outline:0;padding:0 14px;font-size:17px;min-width:0;width:100%}.primary,.checkoutbtn{width:100%;border:0;background:#064c35;color:#fff;padding:15px;border-radius:13px;font-weight:800}.authbox>small,.authbox #phoneStep>small,.authbox .otp>small{display:block;text-align:center;color:#7a8780;margin-top:13px}.otp{display:none}.otp.show{display:block}.otp input{height:54px;border:1px solid #cdd8d2;border-radius:13px;text-align:center;letter-spacing:8px;margin:18px 0}.checkoutbtn{margin-top:18px}.pay-note{background:#eef7e7;color:#31543f;border-radius:12px;padding:12px;margin-top:12px;font-size:13px}.customer-authbox{width:min(520px,100%)}.account-entry{display:block}.customer-priority{width:100%;min-height:92px;display:grid!important;grid-template-columns:52px 1fr auto;align-items:center;text-align:left;padding:18px!important;background:linear-gradient(135deg,#e7f8ee,#f8fff9)!important;border-color:#8fcbb0!important}.customer-priority span{font-size:38px}.customer-priority b{font-size:20px}.customer-priority small{text-align:left!important;font-size:13px}.customer-priority i{font-style:normal;font-weight:900}.secondary-roles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.secondary-roles button{min-height:88px}.customer-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.customer-fields label{display:block;font-size:13px;font-weight:800;color:#31483c}.customer-fields label>span{display:block;margin-bottom:7px}.customer-fields input{width:100%;height:50px;border:1px solid #cdd8d2;border-radius:12px;padding:0 13px;outline:0;font-size:16px}.customer-fields input:focus{border-color:#08764e;box-shadow:0 0 0 3px #08764e18}.customer-fields .wide{grid-column:1/-1}.customer-phone{margin:0;height:50px}.customer-phone em{display:grid;place-items:center;padding-left:13px;font-style:normal}.customer-phone input{border:0;box-shadow:none!important}.otp-message{min-height:20px;color:#08764e;text-align:center}.text-button{display:block;margin:12px auto 0;border:0;background:transparent;color:#064c35;font-weight:800;text-decoration:underline}@media(max-width:520px){.authbox.customer-authbox{padding:24px 20px}.customer-fields{grid-template-columns:1fr}.customer-fields .wide{grid-column:auto}.customer-priority{grid-template-columns:44px 1fr}.customer-priority i{display:none}.secondary-roles button{padding:12px 8px}.secondary-roles small{font-size:11px}}
.customer-authbox:has(#roleStep:not([hidden])){width:min(390px,100%);padding:24px}.customer-authbox:has(#roleStep:not([hidden])) h2{margin-top:18px}.customer-authbox [hidden]{display:none!important}.step-back{border:0;background:transparent;color:#08764e;font-weight:800;padding:3px 0}.portal-icon{width:68px;height:68px;border-radius:20px;background:#eaf5ef;display:grid;place-items:center;font-size:34px;margin:22px auto 4px}.portal-actions{display:grid;gap:10px;margin-top:20px}.portal-link,.secondary-link{display:block;text-align:center;text-decoration:none}.secondary-link{border:1px solid #bfd3c7;color:#064c35;padding:14px;border-radius:13px;font-weight:800}.customer-authbox #customerSignup>small{display:block;text-align:center;color:#7a8780;margin-top:10px}.customer-authbox #phoneStep h2{margin-top:12px}.customer-fields{gap:9px;margin:12px 0}.customer-fields input,.customer-phone{height:46px}.secondary-roles button{min-height:76px}@media(max-width:520px){.customer-authbox:has(#phoneStep:not([hidden])){max-height:92vh}.customer-fields{grid-template-columns:1fr 1fr}.customer-fields .wide{grid-column:1/-1}}
.customer-auth-actions{display:grid;gap:12px;margin-top:20px}.customer-auth-actions button{width:100%;display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:center;text-align:left;border-radius:15px;padding:16px 17px}.customer-auth-actions b{font-size:17px}.customer-auth-actions small{color:#68766f}.customer-auth-actions i{grid-column:2;grid-row:1/3;font-style:normal;font-size:25px}.customer-login-choice{border:0;background:#064c35;color:#fff}.customer-login-choice small{color:#d7e8df!important}.customer-register-choice{border:1px solid #bfcfc6;background:#f4faf6;color:#064c35}.login-phone-label{display:block;margin:20px 0 12px;font-weight:800;color:#31483c}.login-phone-label>span{display:block;margin-bottom:8px}.customer-authbox #customerLoginForm>small{display:block;text-align:center;color:#7a8780;margin-top:11px}.customer-authbox:has(#customerChoiceStep:not([hidden])),.customer-authbox:has(#customerLoginStep:not([hidden])){width:min(400px,100%)}
.portal-actions button{width:100%;font:inherit;cursor:pointer}.portal-actions .secondary-link{background:#fff}
.role-registration-form select{width:100%;height:46px;border:1px solid #cdd8d2;border-radius:12px;padding:0 12px;background:#fff;color:#20352b;font-size:16px}.role-code-input{width:100%;height:52px;border:1px solid #cdd8d2;border-radius:12px;padding:0 14px;text-align:center;font-size:18px;letter-spacing:7px;outline:0}.role-consent{display:flex!important;align-items:flex-start;gap:10px;font-weight:600!important;line-height:1.35}.role-consent input{flex:0 0 auto;width:20px!important;height:20px!important;margin:1px 0}.role-consent span{margin:0!important}.role-auth-message{min-height:20px;margin:12px 0 0!important;color:#08764e!important;text-align:center;font-weight:700;font-size:13px}.customer-authbox:has(#riderRegisterStep:not([hidden])){max-height:94vh}.customer-authbox:has(#riderLoginStep:not([hidden])),.customer-authbox:has(#riderPendingStep:not([hidden])){width:min(400px,100%)}
@media(max-width:719px){.auth:has(#riderRegisterStep:not([hidden])){z-index:180;padding:0;background:#fff;place-items:stretch}.auth:has(#riderRegisterStep:not([hidden])) .customer-authbox{box-sizing:border-box;width:100%;height:100dvh;max-height:none;border-radius:0;padding:18px 20px calc(34px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain}.auth:has(#riderRegisterStep:not([hidden])) .auth-brand-logo{max-width:125px;width:36%;margin-bottom:10px}.auth:has(#riderRegisterStep:not([hidden])) .auth-close{position:fixed;z-index:2;right:16px;top:calc(14px + env(safe-area-inset-top))}.auth:has(#riderRegisterStep:not([hidden])) #riderRegisterStep{max-width:560px;width:100%;margin:0 auto}.auth:has(#riderRegisterStep:not([hidden])) #riderRegisterStep>h2{margin-top:18px}.auth:has(#riderRegisterStep:not([hidden])) .role-registration-form{grid-template-columns:1fr!important;gap:13px;padding-bottom:8px}.auth:has(#riderRegisterStep:not([hidden])) .role-registration-form .wide{grid-column:auto}.auth:has(#riderRegisterStep:not([hidden])) .role-registration-form input,.auth:has(#riderRegisterStep:not([hidden])) .role-registration-form select{height:50px}.auth:has(#riderRegisterStep:not([hidden])) .role-registration-form>.primary{position:relative;z-index:1;min-height:52px;margin-top:3px;font-size:16px}}

@media(max-width:719px){.auth:has(#phoneStep:not([hidden])){z-index:180;padding:0;background:#fff;place-items:stretch}.auth:has(#phoneStep:not([hidden])) .customer-authbox{box-sizing:border-box;width:100%;height:100dvh;max-height:none;border-radius:0;padding:18px 20px calc(40px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain}.auth:has(#phoneStep:not([hidden])) .auth-brand-logo{max-width:145px;width:42%;margin-bottom:12px}.auth:has(#phoneStep:not([hidden])) .auth-close{position:fixed;z-index:2;right:16px;top:calc(14px + env(safe-area-inset-top))}.auth:has(#phoneStep:not([hidden])) #phoneStep{max-width:560px;width:100%;margin:0 auto}.auth:has(#phoneStep:not([hidden])) #phoneStep>h2{margin-top:18px}.auth:has(#phoneStep:not([hidden])) .customer-fields{grid-template-columns:1fr;gap:13px}.auth:has(#phoneStep:not([hidden])) .customer-fields .wide{grid-column:auto}.auth:has(#phoneStep:not([hidden])) .customer-fields input,.auth:has(#phoneStep:not([hidden])) .customer-phone{height:52px}.auth:has(#phoneStep:not([hidden])) #customerSignup>.primary{min-height:54px;margin-top:5px;font-size:16px}.auth:has(#phoneStep:not([hidden])) #customerSignup>small{padding-bottom:12px;line-height:1.45}}

.grengo-dialog-open{overflow:hidden}.grengo-system-dialog{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:#021d15b8;backdrop-filter:blur(3px)}.grengo-system-dialog[hidden]{display:none}.grengo-system-card{width:min(410px,100%);background:#fff;border-radius:24px;padding:26px;box-shadow:0 24px 70px #00170f66}.grengo-system-copy h2{margin:0 0 12px;color:#17251f;font-size:24px;line-height:1.15}.grengo-system-copy p{margin:0;color:#5f6e66;font-size:16px;line-height:1.5}.grengo-system-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.grengo-system-actions button{min-height:46px;border-radius:12px;padding:0 18px;font-weight:900}.grengo-system-cancel{border:1px solid #c9d5ce;background:#fff;color:#274137}.grengo-system-confirm{border:0;background:#07583d;color:#fff}@media(max-width:520px){.grengo-system-dialog{place-items:end center;padding:0}.grengo-system-card{border-radius:26px 26px 0 0;padding:26px 22px calc(24px + env(safe-area-inset-bottom))}.grengo-system-actions{display:grid;grid-template-columns:1fr 1.35fr}.grengo-system-actions button{width:100%}.grengo-system-cancel[hidden]+.grengo-system-confirm{grid-column:1/-1}}
.order-card .refund-notice{margin:12px 0;padding:12px 14px;border-radius:12px;background:#eaf7ef;color:#19543b;font-size:14px;line-height:1.45}
.refund-choice-overlay{position:fixed;inset:0;z-index:100020;background:rgba(10,28,18,.65);display:flex;align-items:center;justify-content:center;padding:20px}
.wallet-code-dialog{position:fixed;inset:0;z-index:100030;display:grid;place-items:center;padding:20px;background:rgba(3,30,21,.72);backdrop-filter:blur(5px)}.wallet-code-card{width:min(420px,100%);padding:30px;background:#fff;border-radius:26px;box-shadow:0 28px 80px #001c145c;color:#19362a}.wallet-code-icon{display:grid;place-items:center;width:55px;height:55px;border-radius:18px;background:#e8f6eb;color:#075b3d;font-size:28px;margin-bottom:18px}.wallet-code-card>small{font-size:12px;font-weight:900;letter-spacing:.12em;color:#237850}.wallet-code-card h2{font-size:25px;line-height:1.2;margin:8px 0 9px}.wallet-code-card p{font-size:16px;line-height:1.5;color:#5d7066;margin:0 0 24px}.wallet-code-card p strong{color:#19362a}.wallet-code-card label{display:block;font-size:14px;font-weight:800;margin-bottom:8px}.wallet-code-card input{display:block;width:100%;box-sizing:border-box;height:56px;padding:0 16px;border:1px solid #b9cbc0;border-radius:14px;font-size:20px;letter-spacing:.1em;color:#19362a;outline:0}.wallet-code-card input:focus{border-color:#087a51;box-shadow:0 0 0 3px #087a5126}.wallet-code-actions{display:flex;gap:10px;margin-top:22px}.wallet-code-actions button{min-height:50px;border-radius:13px;padding:0 16px;font-size:15px;font-weight:800}.wallet-code-cancel{flex:1;border:1px solid #cbd9d0;background:#fff;color:#294a38}.wallet-code-submit{flex:1.4;border:0;background:#08734b;color:#fff}@media(max-width:520px){.wallet-code-dialog{place-items:end center;padding:0}.wallet-code-card{box-sizing:border-box;width:100%;border-radius:26px 26px 0 0;padding:28px 22px calc(26px + env(safe-area-inset-bottom))}}
.refund-choice-card{width:min(420px,100%);max-height:85vh;overflow:auto;background:#fff;border-radius:20px;padding:24px;color:#173a26;box-shadow:0 15px 50px #0003}
.refund-choice-card h2{margin:0 0 12px}.refund-choice-card h1{margin:8px 0;color:#16834a}.refund-choice-card p{line-height:1.5}
.refund-choice-card button{display:block;width:100%;padding:13px;margin-top:9px;border:1px solid #158047;border-radius:11px;background:#fff;color:#17643d;font-weight:700;cursor:pointer}
.refund-choice-card button[data-choice="credit"],.refund-choice-card button:first-of-type{background:#158047;color:#fff}
.refund-choice-card{padding:28px;border-radius:24px}.refund-choice-card h2{font-size:25px;line-height:1.2;margin:0 0 12px}.refund-choice-card p{color:#5c7063;font-size:16px;line-height:1.45;margin:0 0 20px}.refund-choice-card button[data-choice]{min-height:50px;font-size:16px;font-weight:800;border-radius:13px}.refund-choice-card button[data-choice="original"]{background:#f5cb39;border-color:#f5cb39;color:#18351f}.refund-choice-card button[data-choice="credit"]{background:#08734b;border-color:#08734b;color:#fff}.refund-choice-card button[data-choice="exit"]{background:#fff;border:1px solid #cbd8d0;color:#2a4a39;margin-top:18px}.refund-choice-card>small{display:block;margin:6px 2px 13px;color:#67756b;font-size:13px;line-height:1.4}
.wallet-history{max-height:220px;overflow:auto;border-top:1px solid #ddd;margin-top:18px;padding-top:8px}
.checkout-confirm-credit{border:1px solid #16834a;background:#e9f8ee;color:#146b3d;border-radius:12px;padding:12px;font-weight:700;cursor:pointer}
.customer-order-tabs{display:flex;gap:8px;overflow-x:auto;padding:8px 0 16px;scrollbar-width:thin}
.customer-order-tabs button{flex:0 0 auto;border:1px solid #d7e6dc;background:#fff;color:#28563b;border-radius:99px;padding:10px 15px;font-size:14px;font-weight:700;cursor:pointer}
.customer-order-tabs button.active{background:#147e4d;border-color:#147e4d;color:#fff}
.order-history-card{margin-bottom:12px}.order-history-card .order-title span{max-width:65%}
.google-auth-option{margin:18px auto 0;padding-top:18px;border-top:1px solid #e3ece7;text-align:center}
.google-auth-option>div,.google-connect-button{display:flex;justify-content:center}
.google-auth-option p,.google-connect-card [role=status]{min-height:20px;margin:12px 0 0;color:#9e3932;font-size:13px}
.google-connect-overlay{position:fixed;inset:0;z-index:100050;display:grid;place-items:center;padding:20px;background:#001b13a8}
.google-connect-card{position:relative;width:min(390px,100%);box-sizing:border-box;border-radius:20px;padding:30px 22px;background:#fff;box-shadow:0 25px 80px #001b1355;text-align:center}
.google-connect-card h2{margin:8px 0 10px;color:#073f30;font-size:23px}
.google-connect-card>p:not([role=status]){margin:0 0 22px;color:#53635d;line-height:1.5}
.google-connect-close{position:absolute;top:10px;right:12px;border:0;background:transparent;color:#35574a;font-size:29px;cursor:pointer}
.customer-authbox #customerChoiceStep,.customer-authbox #portalStep{padding:3px 0 6px}
.customer-authbox #customerChoiceStep h2,.customer-authbox #portalStep h2{margin:20px 0 18px;font-size:22px;color:#20342e}
.customer-authbox #portalCopy{margin:0 0 10px;color:#5d6864;font-size:14px}
.customer-authbox #customerChoiceStep .google-auth-option,.customer-authbox #portalStep .google-auth-option{margin:0 0 14px;padding:0;border:0}
.customer-authbox .role-phone-choice{display:block;width:100%;min-height:49px;border:0;border-radius:8px;background:#09a945;color:white;font-size:15px;font-weight:800;cursor:pointer}
.customer-authbox .role-phone-choice:hover{background:#078d3b}
.customer-authbox .role-register-choice{text-align:center;margin:17px 0 4px;color:#4d5c57;font-size:14px}
.customer-authbox .role-register-choice button{padding:0;border:0;background:none;color:#087846;font-weight:800;cursor:pointer}
.native-google-choice{display:flex;align-items:center;justify-content:center;gap:12px;width:min(290px,100%);min-height:48px;padding:10px 14px;border:1px solid #747775;border-radius:8px;background:#fff;color:#1f1f1f;font-family:Arial,sans-serif;font-size:14px;font-weight:600;cursor:pointer}
.native-google-choice img{display:block;width:20px;height:20px;object-fit:contain;flex:none}
.customer-authbox .role-email-choice{display:block;width:100%;min-height:46px;margin-top:10px;border:1px solid #d0dfd8;border-radius:8px;background:#fff;color:#0b5339;font-size:15px;font-weight:750;cursor:pointer}
.customer-authbox .role-auth-help{margin:17px 0 4px;color:#61716b;text-align:center;font-size:13px;line-height:1.45}
.customer-authbox #customerChoiceStep .google-auth-option,.customer-authbox #portalStep .google-auth-option{margin:0 0 13px}
.customer-authbox .google-auth-option>div>div{max-width:100%}
.customer-authbox .role-register-choice{margin:17px 0 0;text-align:center;color:#53635d;font-size:14px}
.customer-authbox .role-register-choice button{font-size:14px}
.customer-authbox .native-google-choice{width:100%;min-height:46px}
.customer-authbox #emailAuthStatus{min-height:20px;margin:14px 0 0;color:#a33f35;font-size:13px}
.customer-authbox #emailAuthStep{padding:3px 0 6px}
.customer-authbox #emailAuthStep .login-phone-label{margin:20px 0 18px;font-size:14px;line-height:1.4}
.customer-authbox #emailAuthStep .login-phone-label>span{margin-bottom:9px}
.customer-authbox #emailAuthStep .login-phone-label>input{display:block;box-sizing:border-box;width:100%;min-width:0;height:52px;padding:0 15px;border:1px solid #cbd9d0;border-radius:12px;background:#fff;color:#20342e;font:inherit;font-size:16px;font-weight:500;outline:none;appearance:none;box-shadow:none}
.customer-authbox #emailAuthStep .login-phone-label>input::placeholder{color:#88968e;opacity:1}
.customer-authbox #emailAuthStep .login-phone-label>input:focus{border-color:#08764e;box-shadow:0 0 0 3px #08764e20}
.customer-authbox #emailAuthStep form>.primary{min-height:50px;cursor:pointer}
.customer-authbox #customerChoiceStep .google-auth-option,.customer-authbox #portalStep .google-auth-option{margin:0 0 13px}
.customer-authbox #googleLoginButton,.customer-authbox #roleGoogleLoginButton{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:0;border:0;background:transparent}
.customer-authbox .native-google-choice:hover{background:#f8f9fa}
.customer-authbox #googleLoginStatus:empty,.customer-authbox #roleGoogleLoginStatus:empty{display:none}
.customer-authbox #googleLoginStatus:not(:empty),.customer-authbox #roleGoogleLoginStatus:not(:empty){margin:9px 0 0;min-height:0;text-align:left;line-height:1.4}
