/* EcoFlow Product Sticky Bar */
:root{
  --ecfsb-desktop-bottom:0px;
  --ecfsb-mobile-bottom:0px;
  --ecfsb-green:#00ac2c;
  --ecfsb-text:#171717;
  --ecfsb-muted:#666;
  --ecfsb-line:#ececec;
}
#ecoflow-product-sticky-bar,
#ecoflow-product-sticky-bar *{box-sizing:border-box;}
#ecoflow-product-sticky-bar{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;}
.ecfsb{position:fixed;left:0;right:0;bottom:var(--ecfsb-desktop-bottom);z-index:99980;padding:0;pointer-events:none;width:100%;}
.ecfsb__inner{width:100%;margin:0;background:rgba(255,255,255,.98);backdrop-filter:saturate(180%) blur(12px);border-top:1px solid rgba(0,0,0,.08);box-shadow:0 -8px 28px rgba(0,0,0,.14);border-radius:18px 18px 0 0;display:flex;align-items:center;gap:18px;padding:12px 22px calc(12px + env(safe-area-inset-bottom));pointer-events:auto;animation:ecfsb-in .24s ease-out both;}
@keyframes ecfsb-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.ecfsb__product{display:flex;align-items:center;gap:12px;min-width:0;flex:1;text-decoration:none!important;color:var(--ecfsb-text)!important;}
.ecfsb__image-wrap{width:62px;height:62px;border-radius:14px;background:#f6f6f6;border:1px solid var(--ecfsb-line);display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 auto;}
.ecfsb__image{width:100%;height:100%;object-fit:contain;display:block;padding:4px;}
.ecfsb__info{display:flex;flex-direction:column;min-width:0;gap:2px;}
.ecfsb__name{font-size:14.5px;line-height:1.28;font-weight:800;color:var(--ecfsb-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:640px;}
.ecfsb__price{font-size:14px;line-height:1.25;font-weight:800;color:#111;display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.ecfsb__price del{font-size:12px;color:#888;font-weight:500;}
.ecfsb__price ins{text-decoration:none;color:#111;}
.ecfsb__price-muted{color:#666;font-weight:700;}
.ecfsb__trust{font-size:11.5px;line-height:1.3;color:var(--ecfsb-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:640px;}
.ecfsb__actions{display:flex;align-items:center;gap:10px;flex:0 0 auto;}
.ecfsb__btn{height:46px;border-radius:14px;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none!important;font-size:14px;font-weight:800;line-height:1;white-space:nowrap;border:1px solid transparent;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,opacity .16s ease;}
.ecfsb__btn:hover{transform:translateY(-1px);text-decoration:none!important;}
.ecfsb__btn.is-loading{opacity:.72;pointer-events:none;}
.ecfsb__btn--buy{background:#111;color:#fff!important;box-shadow:0 5px 16px rgba(0,0,0,.18);}
.ecfsb__btn--buy:hover{background:#000;color:#fff!important;}
.ecfsb__btn--whatsapp{display:none!important;background:var(--ecfsb-green);color:#fff!important;box-shadow:0 5px 16px rgba(0,172,44,.24);}
.ecfsb__btn--whatsapp:hover{background:#009925;color:#fff!important;}
.ecfsb__btn svg{flex:0 0 auto;}
.ecfsb__notice{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%);background:#111;color:#fff;padding:10px 14px;border-radius:12px;font-size:13px;font-weight:700;box-shadow:0 12px 30px rgba(0,0,0,.22);max-width:min(520px,calc(100vw - 28px));text-align:center;z-index:99982;animation:ecfsb-notice-in .18s ease-out both;}
@keyframes ecfsb-notice-in{from{opacity:0;transform:translateX(-50%) translateY(6px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}

.ecfsb-modal{position:fixed!important;inset:0!important;z-index:2147483000!important;display:none;align-items:center;justify-content:center;padding:16px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;}
.ecfsb-modal.is-open{display:flex!important;}
.ecfsb-modal__overlay{position:absolute;inset:0;background:rgba(0,0,0,.48);animation:ecfsb-fade-in .18s ease-out both;z-index:1;}
.ecfsb-modal__card{position:relative;z-index:2;width:min(440px,100%);max-width:440px;max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:24px;padding:26px 24px 22px;box-shadow:0 24px 80px rgba(0,0,0,.30);text-align:center;animation:ecfsb-modal-in .22s cubic-bezier(.2,.8,.2,1) both;border:1px solid rgba(0,0,0,.06);}
.ecfsb-modal__close{position:absolute;right:14px;top:14px;width:38px;height:38px;border:0;border-radius:999px;background:#f1f1f1;color:#555;font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;}
.ecfsb-modal__icon{width:48px;height:48px;border-radius:999px;background:#eaffef;color:var(--ecfsb-green);display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:900;margin:0 auto 14px;border:1px solid rgba(0,172,44,.14);}
.ecfsb-modal__eyebrow{margin:0 0 4px;font-size:11px;line-height:1.2;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#777;}.ecfsb-modal__title{margin:0 0 6px;font-size:20px;line-height:1.25;font-weight:900;color:#111;}
.ecfsb-modal__product{margin:0 0 8px;font-size:14px;line-height:1.35;color:#333;font-weight:800;}
.ecfsb-modal__message{margin:0 0 18px;font-size:14px;line-height:1.5;color:#555;}
.ecfsb-modal__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.ecfsb-modal__btn{height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;text-decoration:none!important;font-size:14px;font-weight:900;border:1px solid transparent;cursor:pointer;}
.ecfsb-modal__btn--checkout{grid-column:1/-1;background:var(--ecfsb-green);color:#fff!important;box-shadow:0 8px 18px rgba(0,172,44,.24);}
.ecfsb-modal__btn--cart{background:#111;color:#fff!important;}
.ecfsb-modal__btn--continue{background:#fff;color:#222;border-color:#ddd;}
@keyframes ecfsb-fade-in{from{opacity:0}to{opacity:1}}
@keyframes ecfsb-modal-in{from{opacity:0;transform:translate(-50%,-46%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}

@media (max-width:900px){.ecfsb__name,.ecfsb__trust{max-width:360px}.ecfsb__btn{padding:0 14px}}
@media (max-width:768px){
  .ecfsb{bottom:var(--ecfsb-mobile-bottom);}
  .ecfsb__inner{border-radius:16px 16px 0 0;padding:10px 10px calc(10px + env(safe-area-inset-bottom));gap:10px;align-items:stretch;flex-direction:column;}
  .ecfsb__product{gap:10px;}
  .ecfsb__image-wrap{width:52px;height:52px;border-radius:12px;}
  .ecfsb__name{font-size:13.5px;max-width:calc(100vw - 100px);}
  .ecfsb__price{font-size:13.5px;}
  .ecfsb__trust{font-size:11px;max-width:calc(100vw - 100px);}
  .ecfsb__actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  .ecfsb__btn{height:44px;border-radius:13px;padding:0 10px;font-size:13px;}
  .ecfsb__btn--whatsapp{display:none!important;}
  .ecfsb__actions{grid-template-columns:1fr;}
  .ecfsb-modal{padding:10px;}.ecfsb-modal__card{width:min(420px,calc(100vw - 20px));max-width:100%;max-height:calc(100vh - 20px);border-radius:22px;padding:26px 18px calc(18px + env(safe-area-inset-bottom));animation:ecfsb-sheet-in .22s cubic-bezier(.2,.8,.2,1) both;}.ecfsb-modal__close{top:12px;right:12px;}
  @keyframes ecfsb-sheet-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
}
@media (max-width:380px){
  .ecfsb__btn{font-size:12.2px;gap:6px;}
  .ecfsb__actions{gap:7px;}
  .ecfsb-modal__btn{font-size:13px;}
}
@media (prefers-reduced-motion:reduce){.ecfsb__inner,.ecfsb-modal__overlay,.ecfsb-modal__card{animation:none}.ecfsb__btn{transition:none}.ecfsb__btn:hover{transform:none}}
html.ecfsb-modal-lock,body.ecfsb-modal-lock{overflow:hidden!important;}
.ecfsb-hide-woo-notice{display:none!important;}
.ecfsb-modal--error .ecfsb-modal__icon{background:#fff5f5;color:#d62929;border-color:rgba(214,41,41,.18);}
.ecfsb-modal--warning .ecfsb-modal__icon{background:#fff8e6;color:#a96400;border-color:rgba(169,100,0,.18);}
.ecfsb-modal--error .ecfsb-modal__btn--checkout,
.ecfsb-modal--warning .ecfsb-modal__btn--checkout{background:#111;box-shadow:0 8px 18px rgba(0,0,0,.18);}
.ecfsb-modal--error .ecfsb-modal__btn--cart,
.ecfsb-modal--warning .ecfsb-modal__btn--cart{background:var(--ecfsb-green);color:#fff!important;}

.ecfsb-modal__btn.is-loading,.ecfsb-modal__btn.is-loading:hover{opacity:.82;pointer-events:none;transform:none;position:relative;}
.ecfsb-modal__btn.is-loading:after{content:"";width:15px;height:15px;border:2px solid rgba(255,255,255,.55);border-top-color:#fff;border-radius:50%;animation:ecfsbSpin .65s linear infinite;margin-left:8px;}
@keyframes ecfsbSpin{to{transform:rotate(360deg)}}
