/* Order flow: coupon box, My Orders, Order details, the order-placed page and
   the cart/checkout summary boxes. Loaded only on the pages that use them —
   it was 20KB of render-blocking CSS on every article and category page. */
/* ---- Coupon box ---- */
.gg-coupon{display:flex;gap:16px;align-items:flex-start;max-width:760px;margin:0 0 22px;padding:18px 20px;border:2px dashed var(--gg-cta,#E2701A);border-radius:14px;background:linear-gradient(135deg,#FFF6EC 0%,#FFFFFF 70%)}
.gg-coupon.has-coupon{border:2px solid var(--gg-verified,#0B7A56);background:linear-gradient(135deg,#E6F4EE 0%,#FFFFFF 70%)}
.gg-coupon__icon{flex:none;color:var(--gg-cta,#E2701A);line-height:0;margin-top:2px}
.gg-coupon.has-coupon .gg-coupon__icon{color:var(--gg-verified,#0B7A56)}
.gg-coupon__main{flex:1;min-width:0}
.gg-coupon__title{margin:0;font-size:18px;font-weight:700;color:var(--gg-ink,#16211D);line-height:1.35}
.gg-coupon__title .gg-hi{display:inline-block;margin-left:4px;font-size:17px}
.gg-coupon__help{margin:4px 0 12px;font-size:14px;color:var(--gg-body,#2B3833)}
.gg-coupon__help .gg-hi{display:block}
.gg-coupon__form{display:flex;gap:10px;flex-wrap:wrap}
.gg-coupon__form input{flex:1 1 180px;min-height:52px;padding:0 16px;font-size:18px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:2px solid var(--gg-line-3,#C3CDC8);border-radius:10px;background:#fff;color:var(--gg-ink,#16211D);font-family:var(--gg-font-mono)}
.gg-coupon__form input::placeholder{letter-spacing:.06em;font-weight:500;color:#9AA7A1}
.gg-coupon__form input:focus{outline:0;border-color:var(--gg-cta,#E2701A);box-shadow:0 0 0 4px rgba(226,112,26,.18)}
.gg-coupon__btn{min-height:52px;padding:0 26px;border:0;border-radius:10px;background:var(--gg-cta,#E2701A);color:var(--gg-cta-ink,#16211D);font-size:17px;font-weight:800;cursor:pointer}
.gg-coupon__btn:hover{background:#C9620F}
.gg-coupon__btn span,.gg-coupon__remove span{font-weight:600}
.gg-coupon__done{margin:0}
.gg-coupon__tick{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:6px;border-radius:50%;background:var(--gg-verified,#0B7A56);color:#fff;font-size:14px;vertical-align:-3px}
.gg-coupon__code{font-family:var(--gg-font-mono);background:#fff;border:1px dashed var(--gg-verified,#0B7A56);padding:1px 8px;border-radius:6px;letter-spacing:.06em}
.gg-coupon__save{margin:6px 0 0;font-size:16px;color:var(--gg-verified,#0B7A56)}
.gg-coupon__remove{margin:8px 0 0}
.gg-coupon__remove button{background:none;border:0;padding:4px 0;color:var(--gg-muted,#5F706A);text-decoration:underline;cursor:pointer;font-size:14px}
.gg-coupon__msg{margin:10px 0 0;padding:8px 12px;border-radius:8px;font-size:14px}
.gg-coupon__msg .gg-hi{display:block}
.gg-coupon__msg.is-error{background:#FBEDEB;color:var(--gg-alert,#A82A1E)}
.gg-coupon__msg.is-info{background:var(--gg-surface-2,#EEF1EF);color:var(--gg-body,#2B3833)}
.gg-coupon__msg.is-success{background:#E6F4EE;color:var(--gg-verified,#0B7A56)}
@media (max-width:560px){.gg-coupon{padding:14px}.gg-coupon__icon{display:none}.gg-coupon__btn{flex:1 1 100%}}
/* our box replaces the checkout block's small "Add coupons" link */
.wp-block-woocommerce-checkout-order-summary-coupon-form-block,.wc-block-components-totals-coupon{display:none!important}

/* ---- Coupon share-link banner ---- */
.gg-cbar{position:relative;z-index:1000;display:flex;align-items:center;justify-content:center;gap:10px;padding:9px 44px 9px 14px;background:var(--gg-verified,#0B7A56);color:#fff;font-size:14px;line-height:1.4;text-align:center}
.gg-cbar.is-bad{background:var(--gg-alert,#A82A1E)}
.gg-cbar strong{font-family:var(--gg-font-mono);background:rgba(255,255,255,.18);padding:1px 8px;border-radius:5px;letter-spacing:.05em}
.gg-cbar__x{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;font-size:20px;line-height:1;cursor:pointer}

/* ---- My Orders ---- */
.gg-mytrack{max-width:760px}
.gg-mytrack__mine{margin:0 0 30px}
.entry-content .gg-mytrack .gg-mytrack__h{margin:0 0 12px;font-size:20px}
.gg-mytrack__h .gg-hi{display:block;font-size:14px;font-weight:500;color:var(--gg-muted,#5F706A);margin-top:2px}
.gg-find{padding:18px;border:1px solid var(--gg-line,#E2E7E4);border-radius:14px;background:var(--gg-surface,#fff)}
.gg-find label{display:block;font-weight:700;color:var(--gg-ink,#16211D);margin:0 0 10px}
.gg-find label .gg-hi{display:block;font-weight:500;font-size:14px;margin-top:2px}
.gg-find__row,.gg-verify__row{display:flex;gap:10px;flex-wrap:wrap}
.gg-find__row input,.gg-verify__row input{flex:1 1 220px;min-height:52px;padding:0 14px;font-size:17px;border:2px solid var(--gg-line-3,#C3CDC8);border-radius:10px;background:#fff;color:var(--gg-ink,#16211D);box-sizing:border-box}
.gg-find__row input:focus,.gg-verify__row input:focus{outline:0;border-color:var(--gg-brand,#0B5C48);box-shadow:0 0 0 4px rgba(11,92,72,.15)}
.gg-find__btn,.gg-verify__btn{min-height:52px;padding:0 26px;font-size:17px;border-radius:10px;border:0;background:var(--gg-cta,#E2701A);color:var(--gg-cta-ink,#16211D);font-weight:800;cursor:pointer}
.gg-find__msg{margin:14px 0 0;padding:10px 14px;border-radius:10px;font-size:14px}
.gg-find__msg.is-error{background:#FBEDEB;color:var(--gg-alert,#A82A1E)}
.gg-find__msg.is-ok{background:#E6F4EE;color:var(--gg-verified,#0B7A56)}
.gg-olist{display:grid;gap:10px;margin:14px 0 0}
.gg-ocard{display:grid;grid-template-columns:76px 1fr auto;gap:14px;align-items:center;padding:12px;border:1px solid var(--gg-line,#E2E7E4);border-radius:14px;background:var(--gg-surface,#fff);color:inherit;text-decoration:none!important;transition:border-color .15s,box-shadow .15s,transform .15s}
a.gg-ocard:hover{border-color:var(--gg-brand,#0B5C48);box-shadow:0 6px 18px rgba(22,33,29,.08);transform:translateY(-1px)}
.gg-ocard.is-limited{grid-template-columns:76px 1fr}
.gg-ocard__img{display:block;width:76px;height:76px;border-radius:10px;background:var(--gg-paper,#F3F5F4);overflow:hidden}
.gg-ocard__img img{width:100%;height:100%;object-fit:contain}
.gg-ocard__body{display:block;min-width:0}
.gg-ocard__name{display:block;margin:0 0 6px;font-weight:700;color:var(--gg-ink,#16211D);font-size:15px;line-height:1.35}
.gg-ocard__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0;font-size:13px;color:var(--gg-muted,#5F706A)}
.gg-ocard__go{font-size:28px;color:var(--gg-muted,#5F706A);padding:0 6px}
.gg-ocard__more{margin-top:10px}
.gg-ocard__more summary{cursor:pointer;color:var(--gg-brand,#0B5C48);font-weight:700;font-size:14px}
.gg-verify{margin-top:10px}
.gg-verify label{display:block;font-size:13px;color:var(--gg-body,#2B3833);margin:0 0 8px}
.gg-verify--mail{margin-top:6px}
.gg-verify__link{background:none;border:0;padding:4px 0;color:var(--gg-brand,#0B5C48);text-decoration:underline;font-weight:600;cursor:pointer}
@media (max-width:560px){.gg-ocard,.gg-ocard.is-limited{grid-template-columns:60px 1fr}.gg-ocard__img{width:60px;height:60px}.gg-ocard__go{display:none}.gg-find__btn,.gg-verify__btn{flex:1 1 100%}}

/* ---- Order details ---- */
.gg-od{max-width:860px;display:grid;gap:14px}
.gg-od__back{margin:0}
.gg-od__back a{color:var(--gg-brand,#0B5C48);font-weight:600;text-decoration:none}
.gg-od__head{display:grid;grid-template-columns:1fr auto;gap:10px 20px;align-items:start}
.gg-od__kicker{margin:0 0 8px;font-family:var(--gg-font-mono);font-size:12px;color:var(--gg-muted,#5F706A)}
.entry-content .gg-od .gg-od__status{margin:0;font-size:inherit}
.gg-od__explain{margin:8px 0 0;color:var(--gg-body,#2B3833)}
.gg-od__total{text-align:right}
.gg-od__total span{display:block;font-size:12px;color:var(--gg-muted,#5F706A)}
.gg-od__total strong{font-size:22px;color:var(--gg-ink,#16211D);font-family:var(--gg-font-mono)}
.gg-od h3,.gg-ty__h2{margin:0 0 12px!important;font-size:17px!important;color:var(--gg-ink,#16211D)}
.gg-od__dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0 0 12px}
.gg-od__dl dt{color:var(--gg-muted,#5F706A)}
.gg-od__dl dd{margin:0;font-weight:600}
.gg-od__list{list-style:none;margin:0;padding:0}
.gg-od__item{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--gg-line,#E2E7E4)}
.gg-od__img{display:block;width:64px;height:64px;border-radius:10px;background:var(--gg-paper,#F3F5F4);overflow:hidden}
.gg-od__img img{width:100%;height:100%;object-fit:contain}
.gg-od__info{min-width:0;display:block}
.gg-od__info > a,.gg-od__info > span{display:block;font-weight:600;color:var(--gg-ink,#16211D);text-decoration:none;line-height:1.35}
.gg-od__info small{display:block;color:var(--gg-muted,#5F706A);margin-top:3px}
.gg-od__price{font-family:var(--gg-font-mono);font-weight:600;white-space:nowrap}
.gg-od__sum{display:grid;grid-template-columns:1fr auto;gap:6px 16px;margin:12px 0 0}
.gg-od__sum dt{color:var(--gg-body,#2B3833)}
.gg-od__sum dd{margin:0;text-align:right;font-family:var(--gg-font-mono)}
.gg-od__sum .is-free{color:var(--gg-verified,#0B7A56);font-weight:800}
.gg-od__sum .is-save{color:var(--gg-verified,#0B7A56);font-weight:700}
.gg-od__sum .is-total{padding-top:8px;border-top:1px solid var(--gg-line,#E2E7E4);font-weight:800;font-size:17px;color:var(--gg-ink,#16211D)}
.gg-od__two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gg-od__addr{font-style:normal;line-height:1.6;margin:0 0 8px}
.gg-od__contact,.gg-od__muted{color:var(--gg-muted,#5F706A);margin:0}
.gg-od__warn{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#FFF6EC;color:#7A3E0C;font-size:13.5px}
.gg-od-missing{max-width:560px}
@media (max-width:640px){.gg-od__head{grid-template-columns:1fr}.gg-od__total{text-align:left}.gg-od__two{grid-template-columns:1fr}.gg-od__item{grid-template-columns:52px 1fr}.gg-od__img{width:52px;height:52px}.gg-od__price{grid-column:2}}

/* timeline */
.gg-tl{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,1fr);list-style:none;margin:14px 0 0;padding:0;counter-reset:none}
.gg-tl__i{position:relative;text-align:center;font-size:12.5px;color:var(--gg-muted,#5F706A)}
.gg-tl__i::before{content:"";position:absolute;top:10px;left:-50%;width:100%;height:4px;background:var(--gg-line-2,#D6DCD9);z-index:0}
.gg-tl__i:first-child::before{display:none}
.gg-tl__i.is-done::before,.gg-tl__i.is-current::before{background:var(--gg-verified,#0B7A56)}
.gg-tl__dot{position:relative;z-index:1;display:block;width:24px;height:24px;margin:0 auto 6px;border-radius:50%;background:#fff;border:3px solid var(--gg-line-2,#D6DCD9);box-sizing:border-box}
.gg-tl__i.is-done .gg-tl__dot{background:var(--gg-verified,#0B7A56);border-color:var(--gg-verified,#0B7A56)}
.gg-tl__i.is-done .gg-tl__dot::after{content:"";position:absolute;left:6px;top:3px;width:6px;height:10px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.gg-tl__i.is-current{color:var(--gg-ink,#16211D);font-weight:700}
.gg-tl__i.is-current .gg-tl__dot{border-color:var(--gg-verified,#0B7A56);background:#fff}
.gg-tl__i.is-current .gg-tl__dot::after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--gg-verified,#0B7A56)}
.gg-tl.is-problem .gg-tl__i:not(:first-child){opacity:.45}
@media (prefers-reduced-motion:no-preference){.gg-tl__i.is-current .gg-tl__dot{animation:gg-pulse 1.8s ease-out infinite}}
@keyframes gg-pulse{0%{box-shadow:0 0 0 0 rgba(11,122,86,.45)}70%{box-shadow:0 0 0 12px rgba(11,122,86,0)}100%{box-shadow:0 0 0 0 rgba(11,122,86,0)}}

/* ---- Order placed ---- */
.woocommerce-order-received .hero-section,.woocommerce-order-received .entry-header{display:none!important}
.gg-ty{max-width:900px;margin:0 auto;display:grid;gap:16px}
.gg-ty__hero{position:relative;text-align:center;padding:34px 16px 26px;border-radius:20px;background:radial-gradient(120% 90% at 50% 0%,#E6F4EE 0%,#F3F5F4 55%,#FFFFFF 100%);overflow:hidden}
.gg-ty__check{display:block;margin:0 auto 12px;overflow:visible}
.gg-ty__ring{stroke:var(--gg-verified,#0B7A56)}
.gg-ty__tick{stroke:var(--gg-verified,#0B7A56)}
.entry-content .gg-ty .gg-ty__h,.gg-ty__h{margin:0;font-size:clamp(26px,5vw,38px);line-height:1.15;color:var(--gg-ink,#16211D);letter-spacing:-.02em}
.gg-ty__hi{margin:6px 0 0;font-size:18px;font-weight:600;color:var(--gg-brand,#0B5C48)}
.gg-ty__lede{max-width:520px;margin:10px auto 0;color:var(--gg-body,#2B3833)}
.gg-ty__burst{position:absolute;left:50%;top:82px;width:0;height:0;pointer-events:none}
.gg-ty__burst i{position:absolute;left:-4px;top:-7px;width:8px;height:14px;border-radius:2px;background:var(--c);opacity:0;transform:translate(0,0) rotate(0)}
.gg-ty__burst i.is-dot{width:9px;height:9px;border-radius:50%}
.gg-ty__summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 18px;align-items:end}
.gg-ty__stat span{display:block;font-size:12.5px;color:var(--gg-muted,#5F706A)}
.gg-ty__stat strong{display:inline-block;font-size:20px;color:var(--gg-ink,#16211D);font-family:var(--gg-font-mono)}
.gg-ty__stat.is-pay strong{color:var(--gg-brand,#0B5C48);font-size:24px}
.gg-ty__num{font-size:24px!important}
.gg-ty__copy{margin-left:8px;padding:3px 10px;border:1px solid var(--gg-line-3,#C3CDC8);border-radius:6px;background:#fff;color:var(--gg-body,#2B3833);font-size:12px;cursor:pointer;vertical-align:4px}
.gg-ty__chips{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding-top:12px;border-top:1px solid var(--gg-line,#E2E7E4)}
.gg-chip-ok{display:inline-flex;padding:4px 12px;border-radius:999px;background:var(--gg-brand-soft,#E6F0EC);color:var(--gg-brand,#0B5C48);font-weight:800;font-size:13px}
.gg-ty__mail{font-size:13px;color:var(--gg-muted,#5F706A)}
.gg-ty__grid{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;align-items:start}
.gg-steps-next{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.gg-steps-next li{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start;position:relative;padding:8px 0}
.gg-steps-next li:not(:last-child)::after{content:"";position:absolute;left:19px;top:46px;bottom:-8px;width:2px;background:var(--gg-line-2,#D6DCD9)}
.gg-steps-next__n{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--gg-brand-soft,#E6F0EC);color:var(--gg-brand,#0B5C48)}
.gg-steps-next li:first-child .gg-steps-next__n{background:var(--gg-brand,#0B5C48);color:#fff}
.gg-steps-next strong{display:block;color:var(--gg-ink,#16211D);margin-top:2px}
.gg-steps-next p{margin:2px 0 0;font-size:14px;color:var(--gg-body,#2B3833)}
.gg-ty__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 22px;padding:8px 0 4px}
.gg-ty__actions .gg-od-btn{min-height:54px;padding:0 34px;font-size:17px}
.gg-ty__shop{color:var(--gg-brand,#0B5C48);font-weight:700}
@media (max-width:760px){.gg-ty__summary{grid-template-columns:1fr 1fr}.gg-ty__stat.is-pay{grid-column:1/-1}.gg-ty__grid{grid-template-columns:1fr}.gg-ty__actions .gg-od-btn{width:100%}}

@media (prefers-reduced-motion:no-preference){
  .gg-ty__ring{stroke-dasharray:252;stroke-dashoffset:252;animation:gg-draw .7s cubic-bezier(.65,0,.45,1) .1s forwards}
  .gg-ty__tick{stroke-dasharray:60;stroke-dashoffset:60;animation:gg-draw .45s cubic-bezier(.65,0,.45,1) .7s forwards}
  .gg-ty__check{animation:gg-pop .5s cubic-bezier(.34,1.56,.64,1) .65s both}
  .gg-ty__burst i{animation:gg-confetti 1.25s cubic-bezier(.15,.7,.35,1) calc(.75s + var(--d)) both}
  .gg-ty__h,.gg-ty__hi,.gg-ty__lede{animation:gg-rise-kf .55s ease .85s both}
  .gg-ty__hi{animation-delay:.95s}.gg-ty__lede{animation-delay:1.05s}
  .gg-rise{animation:gg-rise-kf .55s ease both;animation-delay:calc(1.1s + var(--i,0) * 110ms)}
  .gg-steps-next li{animation:gg-rise-kf .5s ease both;animation-delay:calc(1.6s + var(--i,0) * 120ms)}
}
@keyframes gg-draw{to{stroke-dashoffset:0}}
@keyframes gg-pop{0%{transform:scale(.9)}100%{transform:scale(1)}}
@keyframes gg-rise-kf{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes gg-confetti{0%{opacity:0;transform:translate(0,0) rotate(0) scale(.6)}12%{opacity:1}100%{opacity:0;transform:translate(var(--x),calc(var(--y) + 40px)) rotate(calc(var(--r) + 540deg)) scale(1)}}
.gg-od__total strong,.gg-ty__stat strong,.gg-od__price,.gg-od__sum dd{white-space:nowrap}
/* the theme stacks ₹ above the figure for product cards; keep it inline in these components */
:is(.gg-ty,.gg-od,.gg-coupon,.gg-ocard,.gg-mytrack) :is(.amount,.woocommerce-Price-currencySymbol,bdi){display:inline!important}
:is(.gg-ty__stat strong,.gg-od__total strong,.gg-od__sum dd,.gg-od__price,.gg-coupon__save strong) .amount{font-size:inherit!important;font-weight:inherit!important;color:inherit!important}
.gg-od__sum{column-gap:0}
.gg-od__sum dd{padding-left:16px}
:is(.gg-ty,.gg-od,.gg-coupon,.gg-ocard) .woocommerce-Price-currencySymbol{font-size:inherit!important;vertical-align:baseline!important}
/* coupons are removed from our box only, so the box never shows a coupon the block has dropped */
.wc-block-components-totals-discount__coupon-list .wc-block-components-chip__remove{display:none!important}
.gg-cbar.is-note{background:#7A3E0C}

/* ---- Cart / checkout summary boxes: inner spacing on phones ----
   WooCommerce's own CSS zeroes the sidebar padding below 700px
   (.wc-block-components-sidebar-layout .wc-block-components-sidebar, 0,2,0),
   which beat the theme's card padding and left the text touching the border.
   The coupon wrapper we hide also left an empty bordered strip at the top. */
.wp-block-woocommerce-cart-order-summary-coupon-form-block,
.wp-block-woocommerce-checkout-order-summary-coupon-form-block,
.wc-block-components-totals-wrapper:has(> .wc-block-components-totals-coupon){display:none!important}
/* the cart box shows only the total, so its row needs no divider above it */
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block > .wc-block-components-totals-wrapper:has(> .wc-block-components-totals-footer-item){border-top:0!important;padding-top:0!important}
.wc-block-cart__sidebar .wc-block-components-notices,.wc-block-checkout__sidebar .wc-block-components-notices{margin:0!important}
@media (max-width:699.98px){
  .wc-block-components-sidebar-layout .wc-block-components-sidebar.wc-block-cart__sidebar{padding:16px!important}
  .wc-block-components-sidebar-layout .wc-block-components-sidebar.wc-block-checkout__sidebar{padding:0 16px!important}
  .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title{border-top:0!important;margin-top:0!important;padding:18px 0!important}
  .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title:not(.is-open){border-bottom:0!important}
  .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__content.is-open{border-bottom:0!important;padding-bottom:4px!important}
}

/* Brand-new stock: the badge has to read as a statement of fact, not a sale tag */
.gg-newbadge{display:inline-block;background:#1B4D8F;color:#fff;font-size:12px;font-weight:700;
  letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:4px;white-space:nowrap}
.gg-newbadge--card{position:absolute;top:10px;left:10px;z-index:3}
.woocommerce ul.products li.product{position:relative}
.gg-newline{display:flex;gap:10px;align-items:flex-start;margin:0 0 12px;font-size:14px;color:var(--gg-secondary)}
.gg-newwarranty{font-size:14px;color:var(--gg-secondary);background:var(--gg-surface-2);
  border:1px solid var(--gg-line);border-radius:var(--gg-r-ctl);padding:12px 14px;margin:0 0 16px}
.gg-step__empty{color:var(--gg-muted);font-size:15px;background:var(--gg-surface-2);border:1px dashed var(--gg-line);
  border-radius:var(--gg-r-ctl);padding:16px;margin:0 0 20px}

