/* =========================================================
   Glow Giveaway & Rewards — Frontend UI
   ========================================================= */

.ggr-progress-card{
    width:min(100%,920px);
    box-sizing:border-box;
    margin:0 auto 22px;
    padding:20px 22px;
    border:1px solid #e2ebe4;
    border-radius:18px;
    background:linear-gradient(145deg,#ffffff 0%,#f8fcf9 100%);
    box-shadow:0 10px 30px rgba(18,61,39,.07);
    color:#173d2b;
    overflow:hidden;
}

.ggr-progress-top{
    display:grid;
    grid-template-columns:48px minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
}

.ggr-progress-icon{
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:15px;
    background:#edf8f0;
    color:#247346;
    font-size:22px;
    font-weight:800;
}

.ggr-progress-copy{
    min-width:0;
    text-align:left;
}

.ggr-progress-kicker{
    display:block;
    margin-bottom:3px;
    color:#5b7865;
    font-size:9px;
    font-weight:800;
    letter-spacing:1.6px;
}

.ggr-progress-copy h3{
    margin:0 0 3px;
    color:#163a29;
    font-size:15px;
    line-height:1.25;
    font-weight:800;
}

.ggr-progress-message{
    margin:0;
    color:#66746b;
    font-size:12px;
    line-height:1.45;
}

.ggr-progress-message strong{
    color:#d14942;
    font-weight:800;
}

.ggr-progress-percent{
    min-width:48px;
    padding:6px 9px;
    border:1px solid #d8e9dc;
    border-radius:999px;
    background:#f0f8f2;
    color:#267143;
    font-size:11px;
    font-weight:800;
    text-align:center;
}

.ggr-progress-track{
    width:100%;
    height:8px;
    margin:16px 0 9px;
    border-radius:999px;
    overflow:hidden;
    background:#e8eee9;
}

.ggr-progress-bar{
    display:block;
    height:100%;
    min-width:0;
    border-radius:inherit;
    background:linear-gradient(90deg,#176d43,#56aa6d);
    box-shadow:0 0 10px rgba(46,139,76,.15);
    transition:width .35s ease;
}

.ggr-progress-bottom{
    display:flex;
    justify-content:space-between;
    gap:12px;
    color:#7b867e;
    font-size:10px;
}

.ggr-progress-bottom strong{
    color:#34443a;
    font-weight:800;
}

.ggr-unlocked{
    border-color:#cbe5d1;
    background:linear-gradient(145deg,#fbfffc,#eff9f1);
}

.ggr-unlocked .ggr-progress-icon{
    background:#e2f4e7;
    color:#1f7a45;
}

.ggr-unlocked .ggr-progress-percent{
    color:#1f7a45;
    background:#e9f7ec;
    border-color:#cbe5d1;
}

/* Side cart giveaway offer — rendered directly by Modern Cart after totals. */
.ggr-side-cart-offer{
    width:100%;
    box-sizing:border-box;
    margin:10px 0 12px;
    padding:13px 14px 12px;
    border:1px solid #dce9df;
    border-radius:14px;
    background:linear-gradient(145deg,#fbfefb 0%,#f3faf4 100%);
    box-shadow:0 6px 18px rgba(18,61,39,.06);
    color:#173d2b;
}
.ggr-side-cart-offer__head{
    display:grid;
    grid-template-columns:34px minmax(0,1fr) auto;
    align-items:center;
    gap:9px;
}
.ggr-side-cart-offer__icon{
    width:34px;height:34px;display:flex;align-items:center;justify-content:center;
    border-radius:10px;background:#e8f5eb;font-size:16px;font-weight:800;color:#217343;
}
.ggr-side-cart-offer__copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.ggr-side-cart-offer__eyebrow{
    color:#5b7865;font-size:7px;font-weight:800;letter-spacing:1.2px;line-height:1.1;
}
.ggr-side-cart-offer__copy>strong{color:#173d2b;font-size:11px;line-height:1.2;font-weight:800}
.ggr-side-cart-offer__message{color:#727d76;font-size:9px;line-height:1.35}
.ggr-side-cart-offer__message strong{color:#d14942;font-weight:800}
.ggr-side-cart-offer__percent{
    min-width:37px;padding:4px 6px;border-radius:999px;background:#e8f5eb;border:1px solid #d0e6d5;
    color:#237043;font-size:8px;font-weight:800;text-align:center;
}
.ggr-side-cart-offer__track{height:5px;margin:10px 0 7px;border-radius:999px;background:#e2eae4;overflow:hidden}
.ggr-side-cart-offer__track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#176d43,#56aa6d);transition:width .3s ease}
.ggr-side-cart-offer__bottom{display:flex;justify-content:space-between;gap:10px;color:#7b867e;font-size:8px;line-height:1.2}
.ggr-side-cart-offer__bottom strong{color:#35443a;font-weight:800}
.ggr-side-cart-offer--unlocked{border-color:#c8e2ce;background:linear-gradient(145deg,#fbfffc,#edf8f0)}
.ggr-side-cart-offer--unlocked .ggr-side-cart-offer__icon{background:#dff2e4;color:#1d7541}
.ggr-side-cart-offer--unlocked .ggr-side-cart-offer__percent{background:#e1f4e6;color:#1d7541}

/* Popup */
body.ggr-modal-open{overflow:hidden}

.ggr-popup-backdrop{
    position:fixed;
    inset:0;
    z-index:999999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px;
    background:rgba(13,20,16,.62);
    backdrop-filter:blur(8px);
    opacity:0;
    visibility:hidden;
    transition:opacity .25s ease,visibility .25s ease;
}

.ggr-popup-backdrop.is-visible{
    opacity:1;
    visibility:visible;
}

.ggr-popup{
    position:relative;
    width:min(100%,500px);
    box-sizing:border-box;
    padding:34px;
    border-radius:24px;
    background:#fff;
    box-shadow:0 30px 90px rgba(0,0,0,.22);
    text-align:center;
    transform:translateY(18px) scale(.98);
    transition:transform .3s ease;
}

.ggr-popup-backdrop.is-visible .ggr-popup{transform:translateY(0) scale(1)}

.ggr-popup-close{
    position:absolute;
    top:13px;
    right:13px;
    width:34px;
    height:34px;
    border:0;
    border-radius:50%;
    background:#f3f5f4;
    color:#333;
    font-size:23px;
    line-height:1;
    cursor:pointer;
}

.ggr-popup-icon{
    width:62px;
    height:62px;
    margin:0 auto 14px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:18px;
    background:#edf7ef;
    font-size:29px;
}

.ggr-eyebrow{
    display:inline-block;
    margin-bottom:8px;
    color:#4d7659;
    font-size:10px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
}

.ggr-popup h2{margin:0 0 10px;font-size:26px;line-height:1.15}
.ggr-popup p{margin:0 auto 16px;color:#66716a;line-height:1.6;font-size:14px}

.ggr-popup-token{
    margin:22px 0 12px;
    padding:18px;
    border:1px dashed #b7cdbd;
    border-radius:16px;
    background:#f7fbf7;
}

.ggr-popup-token small{display:block;margin-bottom:7px;color:#758078;font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}
.ggr-popup-token strong{display:block;color:#173d28;font-size:25px;letter-spacing:2px}

.ggr-popup-date{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:12px 14px;
    border-radius:12px;
    background:#f6f7f6;
    font-size:12px;
}

.ggr-popup-date span{color:#7b837e}
.ggr-popup-date strong{color:#26352b}
.ggr-popup-prize{margin-top:14px!important}

.ggr-popup-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 20px;
    border-radius:12px;
    background:#1f6f3e;
    color:#fff!important;
    text-decoration:none!important;
    font-size:13px;
    font-weight:700;
}

.ggr-popup-button:hover{background:#185c33}

/* Account */
.ggr-account{max-width:100%}
.ggr-account-hero{margin-bottom:22px}
.ggr-account-hero h2{margin:3px 0 7px;font-size:28px}
.ggr-account-hero p{margin:0;color:#68726c}
.ggr-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ggr-entry-card{padding:20px;border:1px solid #e6ebe7;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(23,61,40,.05)}
.ggr-entry-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ggr-token-label{font-size:9px;font-weight:800;letter-spacing:1.5px;color:#79827c}
.ggr-status{padding:4px 8px;border-radius:999px;background:#edf5ee;color:#2a7744;font-size:9px;font-weight:800;text-transform:uppercase}
.ggr-status.winner{background:#fff4d9;color:#9a6810}
.ggr-token{margin:13px 0 18px;font-size:23px;font-weight:800;letter-spacing:2px;color:#173d28}
.ggr-entry-info{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ggr-entry-info div:last-child{grid-column:1/-1}
.ggr-entry-info small{display:block;margin-bottom:3px;color:#7c857f;font-size:10px}
.ggr-entry-info strong{display:block;font-size:12px}
.ggr-empty{padding:45px 20px;border:1px dashed #d6ded8;border-radius:18px;text-align:center}
.ggr-empty-icon{font-size:32px;margin-bottom:10px}

@media(max-width:700px){
    .ggr-progress-card{padding:15px;border-radius:15px}
    .ggr-progress-top{grid-template-columns:40px minmax(0,1fr) auto;gap:10px}
    .ggr-progress-icon{width:40px;height:40px;border-radius:12px}
    .ggr-progress-copy h3{font-size:13px}
    .ggr-progress-message{font-size:11px}
    .ggr-progress-percent{min-width:40px;font-size:9px}
    .ggr-entry-grid{grid-template-columns:1fr}
    .ggr-popup{padding:28px 20px;border-radius:20px}
    .ggr-popup h2{font-size:23px}
    .ggr-popup-token strong{font-size:20px}
}

/* Token celebration */
.ggr-popup-token{position:relative;overflow:visible;isolation:isolate}
.ggr-popup-token > small,.ggr-popup-token > strong{position:relative;z-index:4}
.ggr-token-confetti{position:absolute;inset:-32px -18px -24px;z-index:1;pointer-events:none;overflow:visible}
.ggr-confetti-piece{position:absolute;left:50%;top:50%;width:7px;height:12px;border-radius:2px;opacity:0;transform:translate(-50%,-50%) rotate(0deg);animation:ggr-confetti-pop 1.9s cubic-bezier(.18,.8,.25,1) forwards}
.ggr-confetti-0{background:#ef5b6d;--x:-125px;--y:-55px;--r:-25deg;animation-delay:.02s}
.ggr-confetti-1{background:#f2b94b;--x:-92px;--y:-92px;--r:38deg;animation-delay:.05s}
.ggr-confetti-2{background:#4f9d69;--x:-40px;--y:-115px;--r:-55deg;animation-delay:.08s}
.ggr-confetti-3{background:#6a7bd8;--x:12px;--y:-100px;--r:50deg;animation-delay:.11s}
.ggr-confetti-4{background:#e97a3f;--x:65px;--y:-105px;--r:-35deg;animation-delay:.14s}
.ggr-confetti-5{background:#d85bb7;--x:110px;--y:-68px;--r:45deg;animation-delay:.17s}
.ggr-confetti-6{background:#55a9c8;--x:132px;--y:-28px;--r:-20deg;animation-delay:.20s}
.ggr-confetti-7{background:#8a9f55;--x:-135px;--y:-22px;--r:55deg;animation-delay:.23s}
.ggr-confetti-piece:nth-child(8n+1){--x:-115px;--y:-58px}
.ggr-confetti-piece:nth-child(8n+2){--x:-78px;--y:-92px}
.ggr-confetti-piece:nth-child(8n+3){--x:-35px;--y:-112px}
.ggr-confetti-piece:nth-child(8n+4){--x:8px;--y:-96px}
.ggr-confetti-piece:nth-child(8n+5){--x:50px;--y:-108px}
.ggr-confetti-piece:nth-child(8n+6){--x:88px;--y:-88px}
.ggr-confetti-piece:nth-child(8n+7){--x:124px;--y:-50px}
.ggr-confetti-piece:nth-child(8n+8){--x:-132px;--y:-35px}
.ggr-confetti-piece:nth-child(2n){width:5px;height:9px;border-radius:1px}
.ggr-confetti-piece:nth-child(3n){width:9px;height:5px}
.ggr-popper{position:absolute;z-index:2;font-size:29px;line-height:1;filter:drop-shadow(0 7px 8px rgba(0,0,0,.12));animation:ggr-popper-pop .8s cubic-bezier(.2,.85,.3,1.2) both}
.ggr-popper-left{left:-22px;top:-28px;transform:rotate(-22deg);animation-delay:.05s}
.ggr-popper-right{right:-22px;top:-28px;transform:scaleX(-1) rotate(-22deg);animation-delay:.16s}
@keyframes ggr-confetti-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(0)}18%{opacity:1}100%{opacity:.9;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--r))}}
@keyframes ggr-popper-pop{0%{opacity:0;transform:scale(.25) rotate(-35deg)}60%{opacity:1}100%{opacity:1;transform:scale(1) rotate(-8deg)}}
.ggr-popper-right{animation-name:ggr-popper-pop-right}
@keyframes ggr-popper-pop-right{0%{opacity:0;transform:scaleX(-1) scale(.25) rotate(-35deg)}60%{opacity:1}100%{opacity:1;transform:scaleX(-1) scale(1) rotate(-8deg)}}
@media(prefers-reduced-motion:reduce){.ggr-confetti-piece,.ggr-popper{animation:none;opacity:1}.ggr-confetti-piece{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--r))}}

/* Multiple simultaneous giveaways */
.ggr-multi-progress{display:flex;flex-direction:column;gap:0}
.ggr-side-cart-offers{display:flex;flex-direction:column;gap:0;width:100%}
.ggr-popup--multi{max-height:88vh;overflow:auto}
.ggr-popup-entry-list{display:flex;flex-direction:column;gap:12px;margin:18px 0;text-align:left}
.ggr-popup-entry{padding:14px;border:1px solid #e0e9e2;border-radius:15px;background:#f8fbf8}
.ggr-popup-entry-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}
.ggr-popup-entry-head strong{color:#173d2b;font-size:13px}
.ggr-popup-entry-head span{color:#6b766f;font-size:11px;text-align:right}
.ggr-popup-entry .ggr-popup-token{margin:0 0 10px;padding:13px 12px}
.ggr-popup-entry .ggr-popup-token strong{font-size:20px}
@media(max-width:600px){.ggr-popup-entry-head{flex-direction:column}.ggr-popup-entry-head span{text-align:left}.ggr-multi-progress .ggr-progress-card{margin-bottom:12px}.ggr-side-cart-offers{gap:0}}

/* =========================================================
   v1.3.2 — Compact single-row giveaway selector
   ========================================================= */
.ggr-side-cart-offers{
    display:flex;
    flex-direction:row;
    align-items:stretch;
    gap:8px;
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    padding:2px 1px 5px;
    margin:7px 0 10px;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
}
.ggr-side-cart-offers::-webkit-scrollbar{height:3px}
.ggr-side-cart-offers::-webkit-scrollbar-thumb{background:#c9d8ce;border-radius:99px}
.ggr-side-cart-offer{
    position:relative;
    flex:0 0 158px;
    width:158px;
    min-height:104px;
    box-sizing:border-box;
    margin:0;
    padding:9px 9px 8px;
    border-radius:11px;
    box-shadow:none;
    scroll-snap-align:start;
    overflow:hidden;
}
.ggr-side-cart-offer__head{
    grid-template-columns:25px minmax(0,1fr) auto;
    gap:6px;
    align-items:start;
}
.ggr-side-cart-offer__icon{
    width:25px;height:25px;border-radius:7px;font-size:12px;
}
.ggr-side-cart-offer__copy{gap:1px;padding-right:1px}
.ggr-side-cart-offer__eyebrow{
    font-size:6px;
    letter-spacing:.8px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.ggr-side-cart-offer__copy>strong{
    font-size:8.5px;
    line-height:1.15;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.ggr-side-cart-offer__message{
    font-size:7.5px;
    line-height:1.2;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.ggr-side-cart-offer__percent{
    min-width:29px;
    padding:3px 4px;
    font-size:7px;
}
.ggr-side-cart-offer__track{height:3px;margin:7px 0 5px}
.ggr-side-cart-offer__bottom{font-size:6.5px;gap:5px}
.ggr-side-cart-offer__bottom span:last-child{white-space:nowrap}
.ggr-side-cart-offer__select{
    position:absolute;
    top:7px;
    right:7px;
    z-index:5;
    width:18px;
    height:18px;
    padding:0;
    border:1px solid #bcd4c3;
    border-radius:50%;
    background:#fff;
    color:#176d43;
    font-size:11px;
    font-weight:900;
    line-height:16px;
    text-align:center;
    cursor:pointer;
    box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.ggr-side-cart-offer__select:disabled{display:none}
.ggr-side-cart-offer--selected{
    border-color:#2d8753;
    background:linear-gradient(145deg,#f8fff9,#eaf7ee);
    box-shadow:0 0 0 1px rgba(45,135,83,.08),0 5px 14px rgba(18,61,39,.07);
}
.ggr-side-cart-offer--selected .ggr-side-cart-offer__select{
    background:#176d43;
    border-color:#176d43;
    color:#fff;
}
.ggr-side-cart-selection-note{
    flex:0 0 auto;
    width:130px;
    box-sizing:border-box;
    align-self:center;
    padding:7px 8px;
    border-radius:9px;
    background:#f6faf7;
    border:1px dashed #d1dfd5;
    color:#52665a;
}
.ggr-side-cart-selection-note span{font-size:12px;display:block;line-height:1}
.ggr-side-cart-selection-note strong{display:block;margin-top:3px;font-size:8px;color:#173d2b}
.ggr-side-cart-selection-note small{display:block;margin-top:2px;font-size:6.5px;line-height:1.25;color:#7a857e}

/* Keep the regular Cart / Checkout cards compact and in one horizontal row too. */
.ggr-multi-progress{
    display:flex;
    flex-direction:row;
    align-items:stretch;
    gap:10px;
    width:100%;
    overflow-x:auto;
    padding:2px 2px 7px;
    box-sizing:border-box;
    -webkit-overflow-scrolling:touch;
}
.ggr-multi-progress .ggr-progress-card{
    flex:0 0 min(300px,82vw);
    width:min(300px,82vw);
    margin:0;
    padding:13px;
    border-radius:14px;
    box-shadow:0 5px 16px rgba(18,61,39,.05);
}
.ggr-multi-progress .ggr-progress-top{grid-template-columns:34px minmax(0,1fr) auto;gap:8px}
.ggr-multi-progress .ggr-progress-icon{width:34px;height:34px;border-radius:10px;font-size:16px}
.ggr-multi-progress .ggr-progress-kicker{font-size:7px;letter-spacing:1px}
.ggr-multi-progress .ggr-progress-copy h3{font-size:11px}
.ggr-multi-progress .ggr-progress-message{font-size:9px}
.ggr-multi-progress .ggr-progress-percent{min-width:34px;padding:4px 5px;font-size:8px}
.ggr-multi-progress .ggr-progress-track{height:5px;margin:9px 0 6px}
.ggr-multi-progress .ggr-progress-bottom{font-size:8px}

@media(max-width:600px){
    .ggr-side-cart-offer{flex-basis:150px;width:150px;min-height:101px}
    .ggr-side-cart-selection-note{width:116px}
}

/* =========================================================
   v1.3.3 — Compact stacked giveaway strips + checkout selector
   ========================================================= */
.ggr-side-cart-offers{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:5px !important;
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
    padding:1px 0 3px !important;
    margin:6px 0 8px !important;
}
.ggr-side-cart-selection-note{
    width:100% !important;
    flex:0 0 auto !important;
    display:flex;
    align-items:center;
    gap:7px;
    box-sizing:border-box;
    padding:5px 7px !important;
    margin:0 0 1px;
    border-radius:8px !important;
}
.ggr-side-cart-selection-note span{font-size:12px !important;flex:0 0 auto}
.ggr-side-cart-selection-note strong{margin:0 !important;font-size:8px !important;line-height:1.1}
.ggr-side-cart-selection-note small{margin:1px 0 0 !important;font-size:6.5px !important;line-height:1.15}
.ggr-side-cart-offer{
    position:relative;
    flex:0 0 auto !important;
    width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    height:68px;
    box-sizing:border-box;
    margin:0 !important;
    padding:7px 8px !important;
    border-radius:9px !important;
    box-shadow:none !important;
    overflow:hidden;
}
.ggr-side-cart-offer__head{
    display:grid !important;
    grid-template-columns:27px minmax(0,1fr) 30px !important;
    gap:6px !important;
    align-items:center !important;
}
.ggr-side-cart-offer__icon{width:27px !important;height:27px !important;border-radius:8px !important;font-size:13px !important}
.ggr-side-cart-offer__copy{gap:1px !important;padding-right:19px !important;min-width:0}
.ggr-side-cart-offer__eyebrow{font-size:6px !important;letter-spacing:.7px !important;line-height:1 !important}
.ggr-side-cart-offer__copy>strong{font-size:8px !important;line-height:1.05 !important}
.ggr-side-cart-offer__message{font-size:6.8px !important;line-height:1.1 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ggr-side-cart-offer__percent{min-width:28px !important;padding:3px 3px !important;font-size:6.5px !important}
.ggr-side-cart-offer__track{height:3px !important;margin:4px 0 3px !important}
.ggr-side-cart-offer__bottom{font-size:6px !important;line-height:1 !important;gap:5px !important}
.ggr-side-cart-offer__select{top:6px !important;right:6px !important;width:16px !important;height:16px !important;font-size:9px !important;line-height:14px !important}
.ggr-side-cart-offer--selected{box-shadow:inset 0 0 0 1px rgba(45,135,83,.55) !important}

/* Cart / checkout giveaway progress is also one compact strip per row. */
.ggr-multi-progress{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:5px !important;
    width:100% !important;
    overflow:visible !important;
    padding:1px 0 5px !important;
    box-sizing:border-box;
}
.ggr-multi-progress .ggr-progress-card{
    flex:0 0 auto !important;
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    height:70px;
    margin:0 !important;
    padding:7px 8px !important;
    border-radius:9px !important;
    box-shadow:none !important;
    box-sizing:border-box;
}
.ggr-multi-progress .ggr-progress-top{
    grid-template-columns:27px minmax(0,1fr) auto !important;
    gap:6px !important;
    align-items:center !important;
}
.ggr-multi-progress .ggr-progress-icon{width:27px !important;height:27px !important;border-radius:8px !important;font-size:13px !important}
.ggr-multi-progress .ggr-progress-kicker{font-size:6px !important;letter-spacing:.8px !important;margin-bottom:1px !important}
.ggr-multi-progress .ggr-progress-copy h3{font-size:8.5px !important;line-height:1.05 !important;margin:0 0 1px !important}
.ggr-multi-progress .ggr-progress-message{font-size:6.8px !important;line-height:1.1 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ggr-multi-progress .ggr-progress-percent{min-width:28px !important;padding:3px 3px !important;font-size:6.5px !important}
.ggr-multi-progress .ggr-progress-track{height:3px !important;margin:4px 0 3px !important}
.ggr-multi-progress .ggr-progress-bottom{font-size:6px !important;line-height:1 !important}
.ggr-progress-actions{display:flex;align-items:center;gap:4px;position:relative}
.ggr-checkout-giveaway-select{
    border:1px solid #bfd7c6;
    background:#fff;
    color:#176d43;
    border-radius:999px;
    padding:3px 5px;
    font-size:6px;
    font-weight:800;
    line-height:1;
    white-space:nowrap;
    cursor:pointer;
}
.ggr-checkout-giveaway-select.is-selected{background:#176d43;color:#fff;border-color:#176d43}
.ggr-progress-card--selected{border-color:#2d8753 !important;background:linear-gradient(145deg,#f8fff9,#eaf7ee) !important;box-shadow:inset 0 0 0 1px rgba(45,135,83,.45) !important}
.ggr-checkout-selection-note{
    display:flex;
    align-items:center;
    gap:7px;
    width:100%;
    box-sizing:border-box;
    padding:5px 7px;
    border:1px dashed #d1dfd5;
    border-radius:8px;
    background:#f6faf7;
    color:#52665a;
}
.ggr-checkout-selection-note>span{font-size:12px;line-height:1}
.ggr-checkout-selection-note strong{display:block;font-size:8px;line-height:1.1;color:#173d2b}
.ggr-checkout-selection-note small{display:block;margin-top:1px;font-size:6.5px;line-height:1.15;color:#7a857e}

/* =========================================================
   v1.3.4 — Responsive giveaway strip layout
   Layout: Heading/Title → Progress Bar → Percentage
           Amount Spent → Amount Left
   ========================================================= */
.ggr-side-cart-offer,
.ggr-multi-progress .ggr-progress-card{
    height:auto !important;
    min-height:72px !important;
    padding:9px 10px !important;
    border-radius:10px !important;
}

.ggr-side-cart-offer__head,
.ggr-multi-progress .ggr-progress-top{
    display:grid !important;
    grid-template-columns:clamp(27px,8%,34px) minmax(82px,1fr) minmax(55px,1.25fr) auto !important;
    align-items:center !important;
    gap:clamp(6px,1.6vw,10px) !important;
    width:100%;
}

.ggr-side-cart-offer__icon,
.ggr-multi-progress .ggr-progress-icon{
    width:clamp(27px,8vw,34px) !important;
    height:clamp(27px,8vw,34px) !important;
    border-radius:9px !important;
    font-size:clamp(13px,3.2vw,16px) !important;
}

.ggr-side-cart-offer__copy,
.ggr-multi-progress .ggr-progress-copy{
    min-width:0 !important;
    padding:0 !important;
    gap:1px !important;
}

.ggr-side-cart-offer__eyebrow,
.ggr-multi-progress .ggr-progress-kicker{
    font-size:clamp(8px,2vw,10px) !important;
    line-height:1.05 !important;
    letter-spacing:.65px !important;
    margin:0 0 2px !important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.ggr-side-cart-offer__copy>strong,
.ggr-multi-progress .ggr-progress-copy h3{
    font-size:clamp(10px,2.5vw,13px) !important;
    line-height:1.12 !important;
    margin:0 !important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* The progress bar sits on the same row as the giveaway title. */
.ggr-side-cart-offer__inline-track,
.ggr-progress-inline-track{
    width:100%;
    height:clamp(5px,1.5vw,7px);
    border-radius:999px;
    overflow:hidden;
    background:#dfe9e2;
    box-sizing:border-box;
}

.ggr-side-cart-offer__inline-track span,
.ggr-progress-inline-track .ggr-progress-bar{
    display:block;
    width:0;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,#176d43,#56aa6d);
    transition:width .3s ease;
}

.ggr-side-cart-offer__percent,
.ggr-multi-progress .ggr-progress-percent{
    min-width:clamp(34px,9vw,44px) !important;
    padding:clamp(5px,1.4vw,7px) clamp(5px,1.5vw,8px) !important;
    border-radius:999px;
    font-size:clamp(9px,2.2vw,11px) !important;
    line-height:1 !important;
    font-weight:800;
    box-sizing:border-box;
}

.ggr-side-cart-offer__bottom,
.ggr-multi-progress .ggr-progress-bottom{
    display:flex !important;
    justify-content:space-between !important;
    align-items:baseline !important;
    gap:10px !important;
    margin-top:7px !important;
    color:#6d7971 !important;
    font-size:clamp(8px,2vw,10px) !important;
    line-height:1.05 !important;
}

.ggr-side-cart-offer__bottom > span,
.ggr-multi-progress .ggr-progress-bottom > span{
    min-width:0;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.ggr-side-cart-offer__bottom > span:last-child,
.ggr-multi-progress .ggr-progress-bottom > span:last-child{
    text-align:right;
}

.ggr-side-cart-offer__bottom strong,
.ggr-multi-progress .ggr-progress-bottom strong{
    color:#173d2b !important;
    font-size:clamp(11px,2.8vw,14px) !important;
    font-weight:800 !important;
}

.ggr-side-cart-offer__bottom em,
.ggr-multi-progress .ggr-progress-bottom em{
    color:#7b867e;
    font-style:normal;
    font-size:clamp(8px,1.9vw,10px);
    font-weight:600;
}

/* Checkout selection control stays available without changing the strip layout. */
.ggr-progress-actions{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:4px !important;
    min-width:0;
}

.ggr-checkout-giveaway-select{
    font-size:clamp(7px,1.8vw,9px) !important;
    padding:4px 6px !important;
    min-height:22px;
    max-width:70px;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* The title/progress/percentage row must remain usable even on very narrow side carts. */
@media (max-width:360px){
    .ggr-side-cart-offer__head,
    .ggr-multi-progress .ggr-progress-top{
        grid-template-columns:27px minmax(72px,1fr) minmax(42px,.8fr) auto !important;
        gap:5px !important;
    }
    .ggr-side-cart-offer,
    .ggr-multi-progress .ggr-progress-card{
        padding-left:8px !important;
        padding-right:8px !important;
    }
    .ggr-checkout-giveaway-select{max-width:56px !important;padding:3px 4px !important}
}

@media (min-width:700px){
    .ggr-side-cart-offer,
    .ggr-multi-progress .ggr-progress-card{
        min-height:76px !important;
    }
}

/* =========================================================
   v1.3.5 — Minimal adaptive giveaway strip
   Layout: 🎁 Title — Progress — Percentage
           Amount left / status
   ========================================================= */
.ggr-side-cart-offer,
.ggr-multi-progress .ggr-progress-card{
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:8px 10px !important;
    border-radius:9px !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
}

.ggr-side-cart-offer__head,
.ggr-multi-progress .ggr-progress-top{
    display:grid !important;
    grid-template-columns:auto minmax(92px, max-content) minmax(45px, 1fr) auto !important;
    align-items:center !important;
    gap:clamp(5px,1.6vw,9px) !important;
    width:100% !important;
    min-width:0 !important;
}

.ggr-side-cart-offer__icon,
.ggr-multi-progress .ggr-progress-icon{
    width:clamp(24px,6vw,30px) !important;
    height:clamp(24px,6vw,30px) !important;
    border-radius:8px !important;
    font-size:clamp(12px,3vw,15px) !important;
    flex:none !important;
}

.ggr-side-cart-offer__title,
.ggr-progress-title{
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    color:#173d2b !important;
    font-size:clamp(10px,2.7vw,13px) !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}

.ggr-side-cart-offer__inline-track,
.ggr-progress-inline-track{
    min-width:45px !important;
    width:100% !important;
    height:clamp(4px,1.2vw,6px) !important;
    margin:0 !important;
    border-radius:999px !important;
    background:#dfe9e2 !important;
    overflow:hidden !important;
}

.ggr-side-cart-offer__percent,
.ggr-multi-progress .ggr-progress-percent{
    min-width:clamp(31px,8vw,42px) !important;
    padding:clamp(5px,1.2vw,7px) clamp(5px,1.4vw,8px) !important;
    border-radius:999px !important;
    font-size:clamp(8px,2.1vw,10px) !important;
    line-height:1 !important;
    text-align:center !important;
    white-space:nowrap !important;
}

.ggr-side-cart-offer__message,
.ggr-multi-progress .ggr-progress-message{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    margin:3px 0 0 !important;
    padding-left:calc(clamp(24px,6vw,30px) + clamp(5px,1.6vw,9px)) !important;
    color:#66766c !important;
    font-size:clamp(9px,2.3vw,11px) !important;
    line-height:1.15 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}
.ggr-side-cart-offer__message strong,
.ggr-multi-progress .ggr-progress-message strong{color:#173d2b !important;font-weight:800 !important}

.ggr-side-cart-offer__bottom,
.ggr-progress-bottom,
.ggr-side-cart-offer__eyebrow,
.ggr-progress-kicker,
.ggr-progress-copy,
.ggr-progress-copy h3{display:none !important}

.ggr-side-cart-offer__select{
    top:4px !important;
    right:4px !important;
    width:16px !important;
    height:16px !important;
    font-size:9px !important;
    line-height:14px !important;
    z-index:5 !important;
}

.ggr-progress-actions{display:flex !important;align-items:center !important;gap:4px !important;min-width:0 !important}
.ggr-checkout-giveaway-select{
    width:18px !important;height:18px !important;padding:0 !important;
    border-radius:50% !important;font-size:10px !important;line-height:16px !important;
}

@media (max-width:380px){
    .ggr-side-cart-offer,
    .ggr-multi-progress .ggr-progress-card{padding:7px 8px !important}
    .ggr-side-cart-offer__head,
    .ggr-multi-progress .ggr-progress-top{grid-template-columns:auto minmax(78px,max-content) minmax(35px,1fr) auto !important;gap:5px !important}
    .ggr-side-cart-offer__title,
    .ggr-progress-title{font-size:10px !important}
    .ggr-side-cart-offer__message,
    .ggr-multi-progress .ggr-progress-message{font-size:9px !important}
}

/* =========================================================
   v1.3.6 — Final responsive giveaway strip
   Layout:
   🎁 UNLOCK (Giveaway Name)  ━━━━━━━━━  75%   ○
      (Giveaway Description)
      ₹377 more to unlock
   ========================================================= */
.ggr-side-cart-offers{
    display:flex !important;
    flex-direction:column !important;
    gap:6px !important;
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
    padding:0 !important;
    margin:7px 0 10px !important;
}
.ggr-side-cart-offer,
.ggr-multi-progress .ggr-progress-card{
    position:relative !important;
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    height:auto !important;
    box-sizing:border-box !important;
    padding:10px 11px 9px !important;
    margin:0 !important;
    border-radius:10px !important;
    overflow:hidden !important;
}
.ggr-side-cart-offer__head,
.ggr-multi-progress .ggr-progress-top{
    display:grid !important;
    grid-template-columns:27px minmax(0,1.15fr) minmax(45px,1.35fr) auto 22px !important;
    align-items:center !important;
    gap:7px !important;
    width:100% !important;
    box-sizing:border-box !important;
}
.ggr-side-cart-offer__icon,
.ggr-multi-progress .ggr-progress-icon{
    width:27px !important;
    height:27px !important;
    min-width:27px !important;
    border-radius:8px !important;
    font-size:14px !important;
    line-height:27px !important;
    text-align:center !important;
}
.ggr-side-cart-offer__title,
.ggr-multi-progress .ggr-progress-title{
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    color:#173d2b !important;
    font-size:12px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}
.ggr-side-cart-offer__inline-track,
.ggr-progress-inline-track{
    width:100% !important;
    min-width:0 !important;
    height:5px !important;
    margin:0 !important;
    border-radius:999px !important;
    background:#dfe9e2 !important;
    overflow:hidden !important;
}
.ggr-side-cart-offer__inline-track span,
.ggr-progress-inline-track .ggr-progress-bar{
    display:block !important;
    height:100% !important;
    border-radius:inherit !important;
    background:linear-gradient(90deg,#176d43,#56aa6d) !important;
    transition:width .3s ease !important;
}
.ggr-side-cart-offer__percent,
.ggr-multi-progress .ggr-progress-percent{
    min-width:34px !important;
    padding:4px 5px !important;
    margin:0 !important;
    border-radius:999px !important;
    font-size:10px !important;
    line-height:1 !important;
    font-weight:800 !important;
    text-align:center !important;
    box-sizing:border-box !important;
}
.ggr-side-cart-offer__description,
.ggr-multi-progress .ggr-progress-description{
    display:block !important;
    margin:5px 29px 0 34px !important;
    color:#59685f !important;
    font-size:10px !important;
    line-height:1.25 !important;
    font-weight:500 !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
}
.ggr-side-cart-offer__message,
.ggr-multi-progress .ggr-progress-message{
    display:block !important;
    margin:5px 29px 0 34px !important;
    padding:0 !important;
    color:#173d2b !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}
.ggr-side-cart-offer__message strong,
.ggr-multi-progress .ggr-progress-message strong{
    color:#173d2b !important;
    font-weight:800 !important;
}
.ggr-side-cart-offer__select,
.ggr-checkout-giveaway-select{
    position:absolute !important;
    top:8px !important;
    right:7px !important;
    z-index:8 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:20px !important;
    height:20px !important;
    min-width:20px !important;
    padding:0 !important;
    margin:0 !important;
    border:1.5px solid #a9c9b3 !important;
    border-radius:50% !important;
    background:#fff !important;
    color:#176d43 !important;
    font-size:12px !important;
    line-height:18px !important;
    font-weight:900 !important;
    cursor:pointer !important;
    box-shadow:0 1px 3px rgba(0,0,0,.06) !important;
}
.ggr-side-cart-offer__select:disabled,
.ggr-checkout-giveaway-select:disabled{display:none !important}
.ggr-side-cart-offer__select[aria-pressed="true"],
.ggr-checkout-giveaway-select.is-selected{
    background:#176d43 !important;
    border-color:#176d43 !important;
    color:#fff !important;
}
.ggr-side-cart-offer--selected,
.ggr-progress-card--selected{
    border-color:#2d8753 !important;
    background:linear-gradient(145deg,#f8fff9,#eaf7ee) !important;
    box-shadow:inset 0 0 0 1px rgba(45,135,83,.38) !important;
}
.ggr-progress-actions{
    display:block !important;
    position:static !important;
    min-width:0 !important;
}
.ggr-progress-actions .ggr-checkout-giveaway-select{
    display:flex !important;
}
.ggr-checkout-selection-note,
.ggr-side-cart-selection-note{
    display:none !important;
}
@media (max-width:420px){
    .ggr-side-cart-offer,
    .ggr-multi-progress .ggr-progress-card{padding:9px 9px 8px !important}
    .ggr-side-cart-offer__head,
    .ggr-multi-progress .ggr-progress-top{grid-template-columns:25px minmax(0,1.05fr) minmax(38px,1.2fr) auto 20px !important;gap:5px !important}
    .ggr-side-cart-offer__icon,
    .ggr-multi-progress .ggr-progress-icon{width:25px !important;height:25px !important;min-width:25px !important;line-height:25px !important;font-size:13px !important}
    .ggr-side-cart-offer__title,
    .ggr-multi-progress .ggr-progress-title{font-size:11px !important}
    .ggr-side-cart-offer__description,
    .ggr-multi-progress .ggr-progress-description{font-size:9px !important;margin-left:30px !important;margin-right:27px !important}
    .ggr-side-cart-offer__message,
    .ggr-multi-progress .ggr-progress-message{font-size:10px !important;margin-left:30px !important;margin-right:27px !important}
}
