/* coupon-popup.css */
.cpc-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:100002;background:rgba(0,0,0,0);display:flex;align-items:center;justify-content:center;visibility:hidden;opacity:0;pointer-events:none;transition:background .25s ease,opacity .22s ease,visibility 0s linear .25s;}
.cpc-overlay.show{background:rgba(0,0,0,0.42);visibility:visible;opacity:1;pointer-events:auto;transition:background .25s ease,opacity .22s ease,visibility 0s linear 0s;}
.cpc-card{position:relative;width:auto;max-width:min(420px,82vw);background:transparent;border-radius:0.37rem;padding:0.52rem 0.42rem 0.37rem;box-sizing:border-box;transform:scale(0.3);opacity:0;transition:transform .28s cubic-bezier(.18,.89,.32,1.28),opacity .22s ease;margin-top:2.61rem;}
.cpc-rabbit{position:absolute;left:50%;top:-2.61rem;transform:translateX(-50%);width:4.13rem;height:3.19rem;pointer-events:none;filter:drop-shadow(0 0.05rem 0.16rem rgba(255,255,255,0.55));}
.cpc-rabbit svg{width:100%;height:100%;display:block;overflow:visible;}
.cpc-ear{transform-box:fill-box;transform-origin:50% 100%;animation:cpcEarWagL 2.4s ease-in-out infinite;}
.cpc-ear.cpc-ear-r{animation-name:cpcEarWagR;animation-delay:0.3s;}
@keyframes cpcEarWagL{0%,60%,100%{transform:rotate(0deg);}30%{transform:rotate(-10deg);}}
@keyframes cpcEarWagR{0%,60%,100%{transform:rotate(0deg);}30%{transform:rotate(10deg);}}
.cpc-eye{transform-box:fill-box;transform-origin:50% 50%;animation:cpcBlink 4s ease-in-out infinite;}
@keyframes cpcBlink{0%,92%,100%{transform:scaleY(1);}94%,98%{transform:scaleY(0.1);}}
.cpc-overlay.show .cpc-card{transform:scale(1) translateY(0);opacity:1;animation:cpcCardFloat 2.6s ease-in-out 0.3s infinite;}
.cpc-overlay.closing{background:rgba(0,0,0,0) !important;opacity:0 !important;}
.cpc-overlay.closing .cpc-card{transform:scale(0.3) !important;opacity:0 !important;animation:none !important;transition:transform .22s ease-in,opacity .2s ease-in;}
@keyframes cpcCardFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-0.21rem);}}
.cpc-close{display:none;}
.cpc-title{text-align:center;color:#fff;font-size:0.57rem;font-weight:200;line-height:1.2;margin-bottom:0.16rem;letter-spacing:0.03rem;}
.cpc-title b{font-weight:700;}
.cpc-title .cpc-count{display:inline-flex;align-items:baseline;margin-left:0.21rem;padding:0.08rem 0.31rem;border-radius:9999px;background:rgba(255,255,255,0.10);border:0.03rem solid rgba(255,255,255,0.22);backdrop-filter:blur(0.08rem);-webkit-backdrop-filter:blur(0.08rem);font-size:0.34rem;font-weight:500;color:#fff;line-height:1;letter-spacing:0;vertical-align:middle;}
.cpc-title .cpc-count em{font-style:normal;color:rgba(255,179,0,1);font-size:0.47rem;font-weight:800;margin:0 0.05rem;}
.cpc-sub{text-align:center;color:#fff;font-size:0.37rem;font-weight:400;line-height:1.2;margin-bottom:0.37rem;}
.cpc-sub em{font-style:normal;color:rgba(255,179,0,1);font-size:0.47rem;font-weight:800;margin:0 0.08rem;}
.cpc-list{display:flex;flex-direction:column;max-height:60vh;overflow:auto;}
.cpc-list>*+*{margin-top:0.31rem;}
.cpc-item{background:#fff;border-radius:0.26rem;padding:0.31rem 0.31rem;box-shadow:0 0.05rem 0.16rem rgba(0,0,0,0.06);}
.cpc-row{display:flex;align-items:center;}
.cpc-row>*+*{margin-left:0.31rem;}
.cpc-mid{flex:1;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;}
.cpc-mid>*+*{margin-top:0.13rem;}
.cpc-amt{display:flex;align-items:baseline;}
.cpc-amt>*+*{margin-left:0.21rem;}
.cpc-amt .v{color:#1976d2;font-size:0.63rem;font-weight:800;line-height:1;}
.cpc-amt .t{color:#666;font-size:0.31rem;white-space:nowrap;}
.cpc-meta{color:#999;font-size:0.31rem;}
.cpc-tag{flex:0 0 auto;align-self:center;color:#fff;font-size:0.31rem;font-weight:600;border-radius:0.37rem;padding:0.08rem 0.26rem;line-height:1.2;}
.cpc-tag.generic{background:#1976d2;}
.cpc-tag.product{background:#ff9800;}
.cpc-btns{margin-top:0.78rem;display:flex;flex-direction:column;justify-content:center;align-items:center;}
.cpc-btns>*+*{margin-top:0.94rem;}
.cpc-btn{border:none;color:#fff;font-size:0.42rem;font-weight:800;padding:0.47rem 0.57rem;line-height:1;cursor:pointer;border-radius:9999px;box-shadow:0 0.1rem 0.31rem rgba(0,0,0,0.12);}
.cpc-btn.primary{min-width:2.7rem;padding:0.34rem 0.6rem;font-size:0.38rem;background:rgb(33,150,243);box-shadow:0 0.1rem 0.37rem rgba(33,150,243,0.36);transition:background .12s,min-width .25s ease,padding .25s ease;white-space:nowrap;}
.cpc-btn.primary:active{background:rgb(100,181,246);transform:none;}
.cpc-btn.primary[disabled]{background:rgb(100,181,246);opacity:1;}
.cpc-xbtn{width:0.5rem;height:0.5rem;border-radius:50%;background:rgba(255,255,255,0.18);border:0.03rem solid rgba(255,255,255,0.45);display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(0.05rem);-webkit-backdrop-filter:blur(0.05rem);transition:background .15s,transform .15s,opacity .15s;-webkit-tap-highlight-color:transparent;user-select:none;}
.cpc-xbtn:hover{background:rgba(255,255,255,0.28);}
.cpc-xbtn:active{transform:scale(0.9);background:rgba(255,255,255,0.34);}
.cpc-xbtn svg{width:0.24rem;height:0.24rem;display:block;}
.cpc-xbtn.cpc-close-txt{width:auto;height:auto;border-radius:9999px;background:transparent;padding:0.22rem 0.46rem;font-size:0.34rem;color:#fff;border-color:rgba(255,255,255,0.55);}
.cpc-xbtn.cpc-close-txt svg{display:none;}
.cpc-btn[disabled],.cpc-xbtn[disabled]{cursor:not-allowed;pointer-events:none;}
.cpc-confirm{position:fixed;top:0;left:0;right:0;bottom:0;z-index:100003;background:rgba(0,0,0,0);display:flex;align-items:center;justify-content:center;visibility:hidden;opacity:0;transition:background .2s ease,opacity .18s ease,visibility 0s linear .2s;}
.cpc-confirm.show{background:rgba(0,0,0,0.45);visibility:visible;opacity:1;transition:background .2s ease,opacity .18s ease,visibility 0s linear 0s;}
.cpc-confirm-card{width:min(320px,78vw);background:#fff;border-radius:0.31rem;padding:0.57rem 0.52rem 0.42rem;box-sizing:border-box;box-shadow:0 0.26rem 0.78rem rgba(0,0,0,0.25);transform:scale(0.85);opacity:0;transition:transform .2s cubic-bezier(.18,.89,.32,1.28),opacity .18s ease;}
.cpc-confirm.show .cpc-confirm-card{transform:scale(1);opacity:1;}
.cpc-confirm-title{font-size:0.42rem;font-weight:700;color:#222;text-align:center;margin-bottom:0.26rem;}
.cpc-confirm-msg{font-size:0.31rem;color:#555;text-align:center;line-height:1.5;margin-bottom:0.47rem;}
.cpc-confirm-btns{display:flex;}
.cpc-confirm-btns>*+*{margin-left:0.26rem;}
.cpc-confirm-btns button{flex:1;border:none;font-size:0.32rem;font-weight:600;padding:0.2rem 0;border-radius:50px;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.cpc-confirm-btns .cpc-cf-cancel{background:#f2f2f2;color:#333;}
.cpc-confirm-btns .cpc-cf-cancel:active{background:#e6e6e6;}
.cpc-confirm-btns .cpc-cf-ok{background:rgb(33,150,243);color:#fff;}
.cpc-confirm-btns .cpc-cf-ok:active{background:#1565c0;}