/* Greeen Basket app button + install dialog. Replaces the old auto popup: nothing opens by itself, the visitor decides. */

/* ---------- Floating "Get the app" button (sits above the theme button) ---------- */
.gbpwa-fab{
position:fixed;right:16px;bottom:132px;z-index:99970;
width:48px;height:48px;padding:0;margin:0;box-sizing:border-box;
display:flex;align-items:center;justify-content:center;
border:1.5px solid #6BD82D;border-radius:999px;
background:#fff;color:#13201D;
box-shadow:0 4px 14px rgba(16,44,7,.16);
cursor:pointer;-webkit-tap-highlight-color:transparent;
transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease,background-color .2s ease;
}
.gbpwa-fab svg{display:block;overflow:visible}
@media (hover:hover){.gbpwa-fab:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(16,44,7,.22)}}
.gbpwa-fab:active{transform:scale(.92)}
.gbpwa-fab:focus-visible{outline:3px solid #102C07;outline-offset:3px}
html[data-theme="dark"] .gbpwa-fab{background:#0F1714;color:#E2ECE7}
html[data-theme="dark"] .gbpwa-fab:focus-visible{outline-color:#E2ECE7}

/* Click animation: ring pulse, arrow winds up and drops into the tray, then the dialog grows out of the button */
.gbpwa-fab::after{content:"";position:absolute;inset:-1.5px;border:2px solid #6BD82D;border-radius:inherit;opacity:0;pointer-events:none}
.gbpwa-tap::after{animation:gbpwa-ring .75s cubic-bezier(.2,.7,.2,1)!important}
.gbpwa-tap .gbpwa-arrow{animation:gbpwa-arrow .7s cubic-bezier(.34,1.3,.64,1)!important}
.gbpwa-tap .gbpwa-tray{animation:gbpwa-tray .7s ease!important}
.gbpwa-pop{animation:gbpwa-pop .45s cubic-bezier(.34,1.56,.64,1)!important}
@keyframes gbpwa-ring{0%{opacity:.8;transform:scale(1)}100%{opacity:0;transform:scale(1.9)}}
@keyframes gbpwa-arrow{0%{transform:translateY(0)}28%{transform:translateY(-5px)}58%{transform:translateY(5px)}78%{transform:translateY(-1px)}100%{transform:translateY(0)}}
@keyframes gbpwa-tray{0%,50%{transform:translateY(0)}65%{transform:translateY(1.5px)}100%{transform:translateY(0)}}
@keyframes gbpwa-pop{0%{transform:scale(1)}40%{transform:scale(1.14)}100%{transform:scale(1)}}

/* ---------- Install dialog (grows out of the button, same look as the delivery-location dialog) ---------- */
.gbd{
position:fixed;inset:0;z-index:100002;
display:flex;align-items:center;justify-content:center;
padding:16px;box-sizing:border-box;
font-family:Rubik,"Noto Sans Devanagari",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
pointer-events:none;
}
.gbd[hidden]{display:none}
.gbd.gbd-open{pointer-events:auto}
.gbd *{box-sizing:border-box}
.gbd-bg{position:absolute;inset:0;background:rgba(19,32,29,.45);touch-action:none}
.gbd-card{
position:relative;width:min(400px,100%);
max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;
padding:32px 28px 22px;border-radius:16px;text-align:center;outline:0;
background:#fff;color:#13201D;
box-shadow:0 10px 15px -3px rgba(16,44,7,.1),0 4px 6px -4px rgba(16,44,7,.1);
}
.gbd-x{
position:absolute;top:16px;right:16px;width:40px;height:40px;padding:0;
display:flex;align-items:center;justify-content:center;
border:1px solid #E4F2D3;border-radius:999px;background:#fff;color:#13201D;cursor:pointer;
transition:background-color .16s ease-out,transform .1s ease-out;
}
.gbd-x:hover{background:#F4F8EF}
.gbd-x:active{transform:scale(.92)}
.gbd-ic{width:56px;height:56px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:#F4F8EF;color:#528A1D}
.gbd h2{margin:0 0 8px;font-size:22px;line-height:28px;font-weight:500;color:inherit}
.gbd-sub{margin:0 auto;max-width:300px;font-size:14px;line-height:20px;color:#2A4413}
.gbd-actions{margin-top:20px}
.gbd-actions[hidden],.gbd-hint[hidden],.gbd-yes[hidden]{display:none}
.gbd-yes{
display:block;width:100%;min-height:48px;padding:0 18px;border:0;border-radius:999px;
background:#66A626;color:#0F1715;font:inherit;font-size:16px;font-weight:600;cursor:pointer;
transition:background-color .16s ease-out,transform .1s ease-out;
}
.gbd-yes:hover{background:#84BF45}
.gbd-yes:active{transform:scale(.97)}
.gbd-no{
display:block;width:100%;min-height:44px;margin-top:6px;padding:0 18px;border:0;border-radius:999px;
background:transparent;color:#2A4413;font:inherit;font-size:14px;font-weight:600;cursor:pointer;
transition:background-color .16s ease-out;
}
.gbd-no:hover{background:#F4F8EF}
.gbd-hint{margin:16px 0 0;padding:12px 14px;border-radius:12px;background:#F4F8EF;color:#13201D;font-size:14px;line-height:20px;text-align:left}
.gbd-inline{vertical-align:-4px;color:#1a73e8}
.gbd-free{margin:12px 0 0;font-size:12px;line-height:16px;color:#566964}
.gbd button:focus-visible{outline:3px solid #102C07;outline-offset:2px}

html[data-theme="dark"] .gbd-card{background:#111A18;color:#E6EBE9;box-shadow:0 10px 24px rgba(0,0,0,.5)}
html[data-theme="dark"] .gbd-x{background:#1B2724;border-color:#2A3A35;color:#E6EBE9}
html[data-theme="dark"] .gbd-x:hover{background:#22302C}
html[data-theme="dark"] .gbd-ic{background:#1B2724;color:#84BF45}
html[data-theme="dark"] .gbd-sub{color:#A9B6B1}
html[data-theme="dark"] .gbd-no{color:#A9B6B1}
html[data-theme="dark"] .gbd-no:hover{background:#1B2724}
html[data-theme="dark"] .gbd-hint{background:#1B2724;color:#E6EBE9}
html[data-theme="dark"] .gbd-free{color:#9BABA6}
html[data-theme="dark"] .gbd button:focus-visible{outline-color:#E6EBE9}

