:root{
    --pink:#e03a8c;
    --pink-dark:#c8167d;
    --text:#111;
    --muted:#888;
    --line:#eee;
    --bg:#f7f7f7;
    --card:#fff;
    --radius:10px;
    --safe-bottom:env(safe-area-inset-bottom,0px);
  }

  *,
  *::before,
  *::after{box-sizing:border-box}
 
  .page{
    max-width:750px;
    width:100%;
    margin:0 auto;
    padding-bottom:calc(112px + var(--safe-bottom));
    background:#fff;
    overflow-x:hidden;
  }
  button{font:inherit;border:0;background:none;cursor:pointer}
  /* ===== Gallery (Swiper 主图 + 缩略图) ===== */
  .gallery{position:relative;background:#f3f3f3;padding-bottom:10px;overflow:hidden}
  .gallery-main{position:relative;width:100%;background:#ececec;overflow:hidden}
  .gallery-main .swiper-slide{
    position:relative;
    aspect-ratio:3/4;
    background:#ececec;
  }
  .gallery-main .swiper-slide > img{
    display:block;width:100%;height:100%;object-fit:cover;
  }
  .gallery-badge{
    position:absolute;left:12px;top:12px;z-index:3;
    background:var(--pink);color:#fff;font-size:12px;font-weight:700;
    padding:4px 8px;border-radius:4px;
  }
  .gallery-fraction{
    position:absolute;right:12px;bottom:12px;z-index:3;
    background:rgba(0,0,0,.45);color:#fff;font-size:12px;
    padding:3px 10px;border-radius:999px;pointer-events:none;
  }
  .gallery-thumbs{
    margin-top:8px;padding:0 8px;box-sizing:border-box;
  }
  .gallery-thumbs .swiper-slide{
    width:18%;
    aspect-ratio:1/1;
    border:1px solid transparent;
    border-radius:4px;
    overflow:hidden;
    opacity:.65;
    box-sizing:border-box;
  }
  .gallery-thumbs .swiper-slide-active,
  .gallery-thumbs .swiper-slide.is-active{
    border-color:var(--pink);
    opacity:1;
  }
  .gallery-thumbs .swiper-slide img{
    display:block;width:100%;height:100%;object-fit:cover;
  }
  #J_playVideo{
    display:none;width:68px;height:68px;
    background:url(../images/video/detail1.png) no-repeat center/contain;
    position:absolute;left:50%;top:50%;margin:-34px 0 0 -34px;cursor:pointer;z-index:5;
  }
  #js_videoCon_1{
    display:none;position:absolute;left:0;top:0;width:100%;height:100%;
    background:#000;z-index:6;
  }
  #js_videoCon_1 video{
    display:block;width:100%;height:100%;object-fit:contain;background:#000;
  }
  .close_1{
    display:none;position:absolute;top:8px;right:8px;z-index:7;
    width:36px;height:36px;cursor:pointer;border:0;
  }
  
  /* ===== Info ===== */
  .section{padding:14px 14px 0}
  .reviews-teaser{
    display:flex;align-items:center;gap:8px;padding:10px 14px;
    background:linear-gradient(90deg,#fff5fa,#fff);
    border-bottom:1px solid #f5e6ee;
    font-size:13px;
  }
  .reviews-teaser strong{color:var(--pink)}
  .reviews-avatars{display:flex}
  .reviews-avatars span{
    width:22px;height:22px;border-radius:50%;border:2px solid #fff;margin-left:-6px;
    background-size:cover;background-position:center;
  }
  .reviews-avatars span:first-child{margin-left:0}
  
  .title-row{padding:12px 14px 6px}
  .badges{display:flex;gap:6px;margin-bottom:6px}
  .badge{
    font-size:11px;font-weight:700;padding:2px 6px;border-radius:3px;color:#fff;
  }
  .badge-new{background:#111}
  .badge-hot{background:var(--pink)}
  .product-bonus{
    display:inline-block;
    margin:0 0 8px;
    padding:4px 10px;
    border-radius:4px;
    background:#fff0f6;
    border:1px solid #f5c2d8;
    color:var(--pink);
    font-size:12px;
    font-weight:700;
    line-height:1.4;
  }
  .product-title{font-size:16px;line-height:1.35;font-weight:600}
  
  .meta-row{
    display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;
    padding:0 14px 10px;font-size:13px;color:#555;
  }
  .stars{color:#f5a623;letter-spacing:1px}
  .meta-row .link{color:var(--pink);text-decoration:underline}
  
  .price-box{padding:4px 14px 12px}
  .price-main{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
  .price-now{font-size:26px;font-weight:800;color:var(--pink);line-height:1.1}
  .price-old{font-size:14px;color:#999;text-decoration:line-through}
  .paylater{
    margin-top:10px;padding:10px 12px;border-radius:8px;background:#f6f7fb;
    font-size:13px;color:#333;display:flex;align-items:center;gap:6px;flex-wrap:wrap;
    cursor:pointer;
  }
  .paylater img.pay-img{height:16px;width:auto}
  .paylater strong{color:#003087}
  .paylater-info{flex:0 0 auto;margin-left:2px}
  #paypal-modal-overlay{
    display:none;position:fixed;left:0;top:0;width:100%;height:100%;
    background:rgba(0,0,0,.5);z-index:9999;
  }
  #paypal-modal{
    display:none;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);
    z-index:10000;background:#fff;width:92vw;max-width:760px;border-radius:6px;overflow:hidden;
  }
  #paypal-modal-close{
    position:absolute;right:10px;top:10px;width:36px;height:36px;border:none;border-radius:18px;
    background:#c63175;color:#fff;cursor:pointer;font-size:20px;line-height:36px;padding:0;z-index:10001;
  }
  #paypal-modal-img{display:block;width:100%;height:auto;max-height:80vh;object-fit:contain}
  
  .promo-strip{
    margin:0 14px 10px;padding:10px 12px;border-radius:8px;
    background:#111;color:#fff;display:flex;justify-content:space-between;align-items:center;
    font-size:12px;
  }
  .promo-strip .timer{font-variant-numeric:tabular-nums;font-weight:700;color:#ffd86b}
  .coupon-row{display:flex;gap:8px;padding:0 14px 12px;overflow-x:auto}
  .coupon{
    flex:0 0 auto;min-width:70%;padding:10px 12px;border-radius:8px;
    border:1px dashed var(--pink);background:#fff7fb;font-size:12px;color:#333;
  }
  .coupon strong{color:var(--pink)}
  
  /* ===== Options / Specs ===== */
  .opt-block{padding:4px 14px 12px;border-top:8px solid var(--bg)}
  .gd-option{
    display:flex;flex-wrap:wrap;align-items:flex-start;
    margin:0 -5px;
  }
  .gd-option__item{
    width:50%;box-sizing:border-box;padding:0 5px;margin:0 0 12px;
  }
  .gd-option__item--check,
  .gd-option__remarks{
    width:100%;
  }
  .gd-option__head{
    display:flex;justify-content:space-between;align-items:center;
    padding:4px 0 6px;gap:4px;min-width:0;
  }
  .gd-option__label{
    font-size:13px;font-weight:700;color:#222;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;
  }
  .gd-option__required{color:var(--pink);margin-right:2px}
  .gd-option__help{flex:0 0 auto;color:#888;font-size:15px;line-height:1}
  .gd-option__help:active{color:var(--pink)}
  .gd-option__select-wrap{width:100%;min-width:0}
  .gd-option select.product-custom-option,
  .gd-option select{
    width:100%;max-width:100%;height:40px;margin:0;box-sizing:border-box;
    border:1px solid #ddd;border-radius:8px;padding:0 28px 0 10px;
    font-size:13px;color:#222;background-color:#fff;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23666' d='M1.4.6L6 5.2 10.6.6 12 2 6 8 0 2z'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:right 10px center;background-size:10px 7px;
    -webkit-appearance:none;-moz-appearance:none;appearance:none;
  }
  .gd-option select:focus{
    outline:none;border-color:var(--pink);box-shadow:0 0 0 3px rgba(224,58,140,.12);
  }
  .gd-option__item--check .gd-option__check{
    display:flex;align-items:center;gap:8px;padding:8px 0;font-size:13px;color:#333;
  }
  .gd-option__remarks{margin-top:4px;padding:0 5px;box-sizing:border-box}
  .gd-option__remarks label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
  .gd-option__remarks textarea{
    width:100%;min-height:72px;box-sizing:border-box;border:1px solid #ddd;border-radius:8px;
    padding:10px 12px;font-size:13px;resize:vertical;color:#333;
  }

  .qty-row{
    display:flex;align-items:center;justify-content:space-between;
    padding:12px 14px;border-top:1px solid var(--line);
  }
  .qty-row .label{font-size:14px;font-weight:700}
  .stepper{display:flex;align-items:center;border:1px solid #e5e5e5;border-radius:6px;overflow:hidden}
  .stepper button{width:36px;height:34px;font-size:18px;background:#f7f7f7;color:#333}
  .stepper input{
    width:44px;height:34px;border:0;border-left:1px solid #e5e5e5;border-right:1px solid #e5e5e5;
    text-align:center;font-size:14px;
  }

  .gd-paypal{
    padding:10px 14px 14px;background:#fff;
  }
  .gd-paypal #paypal-button-container{max-width:100%}

  .gd-soldout{padding:16px 14px;text-align:center}
  .gd-soldout img{display:block;margin:0 auto;max-width:200px;height:auto}

  .cart-bottom{
    display:flex;flex-direction:column;gap:10px;
    padding:12px 14px 16px;background:#fff;
  }
  .cart-bottom a{
    display:block;height:44px;line-height:44px;
    font-size:15px;font-weight:700;text-align:center;text-decoration:none;
    border-radius:22px;
  }
  .cart-bottom .a1{background:var(--pink);color:#fff}
  .cart-bottom .a2{
    border:1px solid var(--pink);color:var(--pink);background:#fff;
  }
  .cart-bottom .a2 .fa{margin-right:6px}

  /* Cart / Buy Now loading */
  .gd-cart-loading{
    position:fixed;left:0;top:0;right:0;bottom:0;z-index:20010;
    display:none;align-items:center;justify-content:center;
    background:transparent;pointer-events:auto;
  }
  .gd-cart-loading.is-open{display:flex}
  .gd-cart-loading__box{
    width:110px;height:110px;box-sizing:border-box;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    background:rgba(50,50,50,.82);border-radius:12px;
    box-shadow:0 8px 24px rgba(0,0,0,.2);
  }
  .gd-cart-loading__spinner{
    width:36px;height:36px;
    border:3px solid rgba(255,255,255,.25);
    border-top-color:#fff;
    border-radius:50%;
    animation:gd-cart-spin .7s linear infinite;
  }
  .gd-cart-loading__text{
    margin-top:12px;font-size:13px;font-weight:700;color:#fff;letter-spacing:.2px;
  }
  @keyframes gd-cart-spin{
    to{transform:rotate(360deg)}
  }

  /* Add-to-cart success popup */
  #after-loading-success-message{
    position:fixed;top:0;left:0;z-index:20002;
    display:none;width:100%;height:100%;text-align:center;
  }
  #after-loading-success-message .background-overlay{
    position:absolute;top:0;left:0;width:100%;height:100%;
    background:rgba(0,0,0,.45);
  }
  #success-message-container{
    position:relative;top:28%;z-index:1000;margin:0 auto;
    padding:16px 14px 18px;width:86%;max-width:320px;box-sizing:border-box;
    background:#fff;border-radius:10px;border-top:4px solid var(--pink);
    box-shadow:0 8px 28px rgba(0,0,0,.18);text-align:center;line-height:1.4;
  }
  #success-message-container .msg{display:block;margin-bottom:8px;font-size:13px;color:#333}
  #success-message-container .product-name{margin:6px 0 8px;font-size:14px;font-weight:700;color:var(--pink)}
  #success-message-container .timer{display:none}
  #success-message-container img.product-image{
    display:inline-block;width:30%;max-width:96px;height:auto;border-radius:6px;
  }
  #success-message-container button{
    display:block;width:100%;margin-top:10px;height:40px;border-radius:20px;
    border:1px solid var(--pink);background:#fff;color:var(--pink);
    font-size:14px;font-weight:700;cursor:pointer;
  }
  #success-message-container #finish_and_checkout{
    background:var(--pink);color:#fff;
  }

  .gd-promo{
    margin:0 14px 8px;padding:12px 14px;
    border:1px solid #ffd0e8;border-radius:8px;
    background:linear-gradient(180deg,#fff7fb,#fff);
  }
  .gd-promo__body{font-size:13px;color:#333;line-height:1.55;white-space:pre-line}
  .gd-promo__body img{max-width:100%;height:auto;display:block}
  
  /* ===== Sticky buy bar ===== */
  .buybar-wrap{
    position:fixed;left:0;right:0;bottom:0;z-index:8198;
    max-width:750px;width:100%;margin:0 auto;
    background:#fff;
    box-shadow:0 -4px 16px rgba(0,0,0,.06);
    box-sizing:border-box;
    overflow:hidden;
  }
  .buybar-price{
    width:100%;display:flex;justify-content:space-between;align-items:center;
    padding:10px 14px;gap:10px;box-sizing:border-box;
    background:#fff;border:0;border-top:1px solid #eee;
    text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;
  }
  .deal_discount_amount{
    color:var(--pink);
  }
  .buybar-price__saved{
    font-size:14px;font-weight:600;color:var(--pink);flex:0 1 auto;min-width:0;
  }
  .buybar-price__saved strong{font-weight:700}
  .buybar-price__total{
    display:inline-flex;align-items:center;gap:4px;
    font-size:14px;font-weight:600;color:#111;flex:0 1 auto;min-width:0;
  }
  .buybar-price__total strong{font-weight:700}
  .buybar-price__arrow{
    display:inline-block;width:7px;height:7px;margin-left:2px;
    border-right:2px solid #111;border-bottom:2px solid #111;
    transform:rotate(45deg);position:relative;top:-1px;flex:0 0 auto;
  }
  .buybar{
    display:flex;gap:8px;align-items:center;
    padding:8px 12px calc(8px + var(--safe-bottom));
    background:#fff;border-top:1px solid #eee;
    box-sizing:border-box;width:100%;min-width:0;
  }
  .buybar .wish{
    width:40px;height:44px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;
  }
  .buybar .wish .favorite_add{
    display:flex;align-items:center;justify-content:center;
    width:40px;height:44px;font-size:20px;color:#666;text-decoration:none;
  }
  .buybar .wish .favorite_add span{display:none}
  .buybar .wish .favorite_add.active{color:var(--pink)}
  .buybar .btn{
    flex:1 1 0;min-width:0;height:44px;border-radius:22px;font-size:15px;font-weight:700;
  }
  .btn-cart{background:#fff;color:var(--pink)}
  .btn-buy{background:var(--pink);color:#fff}

  /* Deal price modal — bottom sheet */
  .deal-price-mask{
    position:fixed;left:0;top:0;right:0;bottom:0;
    background:rgba(0,0,0,.45);z-index:80;
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .25s ease,visibility .25s ease;
  }
  .deal-price-mask.is-open{
    opacity:1;visibility:visible;pointer-events:auto;
  }
  .deal-price-modal{
    position:fixed;left:50%;bottom:0;z-index:8199;
    width:100%;max-width:750px;box-sizing:border-box;
    margin:0;padding:20px 18px calc(20px + var(--safe-bottom));
    background:#fff;border-radius:16px 16px 0 0;
    box-shadow:0 -8px 28px rgba(0,0,0,.12);
    transform:translate(-50%,100%);
    transition:transform .3s ease;
    visibility:hidden;pointer-events:none;
  }
  .deal-price-modal.is-open{
    transform:translate(-50%,0);
    visibility:visible;pointer-events:auto;
  }
  .deal-price-modal__close{
    position:absolute;right:10px;top:8px;width:32px;height:32px;
    font-size:24px;line-height:32px;color:#bbb;padding:0;
  }
  .deal-price-modal__title{
    margin:0 0 18px;text-align:center;font-size:17px;font-weight:700;color:#111;
  }
  .deal-price-formula{
    display:flex;align-items:flex-start;justify-content:space-between;
    gap:4px;text-align:center;margin-bottom:16px;
  }
  .deal-price-formula__col{flex:1;min-width:0}
  .deal-price-formula__val{
    display:block;font-size:16px;font-weight:700;color:#111;line-height:1.2;
  }
  .deal-price-formula__val--pink{color:var(--pink);font-size:18px}
  .deal-price-formula__lab{
    display:block;margin-top:6px;font-size:11px;color:#999;line-height:1.3;
  }
  .deal-price-formula__op{
    flex:0 0 auto;padding-top:2px;font-size:15px;font-weight:700;color:#222;
  }
  .deal-price-coupon{
    display:flex;justify-content:space-between;align-items:center;gap:10px;
    padding:12px 14px;border-radius:8px;background:#fff0f6;
    font-size:13px;color:#333;
  }
  .deal-price-coupon em{font-style:normal;font-weight:700;color:var(--pink)}
  .deal-price-coupon__code{flex:0 0 auto;white-space:nowrap}
  body.deal-price-open{overflow:hidden}
  
  /* ===== Features / accordion ===== */
  .block{margin-top:0px;background:var(--bg);padding-top:0px}
  .block-inner{background:#fff}
  .block-title{
    padding:14px;font-size:16px;font-weight:700;border-bottom:1px solid var(--line);
  }
  .feature-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px;
  }
  .feature-item{
    padding:12px;border-radius:8px;background:#fafafa;border:1px solid #f0f0f0;
  }
  .feature-item h4{font-size:13px;margin-bottom:4px}
  .feature-item p{font-size:12px;color:#666;line-height:1.4}
  
  .acc-item{border-bottom:1px solid var(--line)}
  .acc-head{
    width:100%;display:flex;justify-content:space-between;align-items:center;
    padding:14px;font-size:14px;font-weight:700;text-align:left;
  }
  .acc-head .arrow{
    width:8px;height:8px;border-right:2px solid #333;border-bottom:2px solid #333;
    transform:rotate(45deg);transition:transform .2s;
  }
  .acc-item.is-open .acc-head .arrow{transform:rotate(-135deg)}
  .acc-body{display:none;padding:0 14px 14px;font-size:13px;line-height:1.6;color:#555}
  .acc-item.is-open .acc-body{display:block}
  .acc-body ol{padding-left:18px;margin-top:6px}
  .acc-body li{margin-bottom:6px}

  /* ===== FAQ list + modal ===== */
  .gd-faq-list{background:#fff}
  .gd-faq-row{
    width:100%;display:flex;align-items:center;justify-content:space-between;
    gap:12px;padding:14px;box-sizing:border-box;
    border:0;border-top:1px solid var(--line);background:#fff;
    text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;
  }
  .gd-faq-row:first-child{border-top:1px solid var(--line)}
  .gd-faq-row__title{
    flex:1;min-width:0;font-size:14px;font-weight:600;color:#111;line-height:1.4;
  }
  .gd-faq-row__arrow{
    flex:0 0 auto;width:8px;height:8px;
    border-right:2px solid #ccc;border-bottom:2px solid #ccc;
    transform:rotate(-45deg);
  }
  .gd-faq-html{display:none}
  .faq-mask{
    display:none;position:fixed;left:0;top:0;right:0;bottom:0;
    background:rgba(0,0,0,.45);z-index:80;
  }
  .faq-mask.is-open{display:block}
  .faq-modal{
    display:none;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);
    width:88vw;max-width:360px;max-height:70vh;box-sizing:border-box;
    background:#fff;border-radius:12px;padding:22px 18px 18px;
    z-index:81;box-shadow:0 12px 40px rgba(0,0,0,.18);
    overflow:auto;-webkit-overflow-scrolling:touch;
  }
  .faq-modal.is-open{display:block}
  .faq-modal__close{
    position:absolute;right:10px;top:8px;width:32px;height:32px;
    font-size:24px;line-height:32px;color:#bbb;padding:0;
  }
  .faq-modal__title{
    margin:0 28px 12px 0;font-size:16px;font-weight:700;color:#111;line-height:1.35;
  }
  .faq-modal__body{
    font-size:13px;color:#555;line-height:1.6;word-break:break-word;
  }
  .faq-modal__body p{margin:0 0 8px}
  .faq-modal__body img{max-width:100%;height:auto}
  body.faq-modal-open{overflow:hidden}
  
  /* ===== Recommend ===== */
  .rec-scroll{
    display:flex;gap:10px;padding:0 14px 16px;overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  .rec-card{flex:0 0 42%;}
  .rec-card .pic{aspect-ratio:3/4;border-radius:8px;overflow:hidden;background:#eee}
  .rec-card .pic img{width:100%;height:100%;object-fit:cover}
  .rec-card .name{
    margin-top:8px;font-size:12px;line-height:1.35;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }
  .rec-card .price{margin-top:4px;font-size:13px;font-weight:700;color:var(--pink)}
  .rec-card .old{font-size:11px;color:#999;font-weight:400;text-decoration:line-through;margin-left:4px}
  
  /* ===== Tabs (Reviews / Details / Q&A) ===== */
  .gd-tabs-wrap{margin-top:8px;background:var(--bg);padding-top:8px}
  .gd-tabs{
    position:sticky;top:0;z-index:40;
    display:flex;align-items:stretch;justify-content:flex-start;
    margin:0;padding:0;list-style:none;
    background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;
  }
  .gd-tabs::-webkit-scrollbar{display:none}
  .gd-tabs .tab-item{flex:0 0 auto;text-align:center}
  .gd-tabs .tab-item a{
    display:block;padding:12px 14px 10px;white-space:nowrap;
    font-size:14px;font-weight:600;color:#111;text-decoration:none;
    border-bottom:2px solid transparent;line-height:1.2;
    position:relative;
  }
  .gd-tabs .tab-item.active a{
    color:var(--pink);border-bottom-color:transparent;
  }
  .gd-tabs .tab-item.active a::after{
    content:"";position:absolute;left:50%;bottom:0;
    width:24px;height:2px;margin-left:-12px;
    background:var(--pink);border-radius:1px;
  }
  .gd-tabs-wrap .tab-content{background:#fff}
  .gd-tabs-wrap .goods-section-block{
    scroll-margin-top:48px;padding-bottom:8px;
  }
  .gd-desc,
  .gd-qa-content{
    padding:14px;font-size:13px;line-height:1.6;color:#333;word-break:break-word;
    overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;
  }
  .gd-desc img,
  .gd-qa-content img,
  .gd-desc video,
  .gd-qa-content video{max-width:100%;height:auto}
  .gd-section-tit{margin:0 0 10px;font-size:14px}
  .gd-section-tit + .zs_inner,
  .gd-section-tit + .zs_inner + .gd-section-tit{margin-top:14px}
  .product-page-videos__item{
    position:relative;width:100%;padding-bottom:56.25%;height:0;overflow:hidden;margin-bottom:15px;
    background:#111;
  }
  .product-page-videos__item iframe{
    position:absolute;top:0;left:0;width:100%;height:100%;border:0;
  }
  /* YouTube: 封面 + 播放图标，点击弹窗播放 */
  .gd-yt-facade{cursor:pointer;-webkit-tap-highlight-color:transparent}
  .gd-yt-facade__thumb{
    position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block;border:0;
  }
  .gd-yt-facade__play{
    position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;
    border-radius:50%;background:rgba(209,45,134,.92);
    box-shadow:0 2px 10px rgba(0,0,0,.28);
    transition:transform .15s ease, background .15s ease;
  }
  .gd-yt-facade__play:before{
    content:"";position:absolute;left:50%;top:50%;
    margin:-10px 0 0 -6px;border-style:solid;
    border-width:10px 0 10px 16px;
    border-color:transparent transparent transparent #fff;
  }
  .gd-yt-facade:hover .gd-yt-facade__play,
  .gd-yt-facade:focus .gd-yt-facade__play{transform:scale(1.06);background:#d12d86}
  body.gd-yt-modal-open{overflow:hidden}
  .gd-yt-modal[hidden]{display:none!important}
  .gd-yt-modal{
    position:fixed;inset:0;z-index:10050;display:-webkit-box;display:-webkit-flex;display:flex;
    -webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;
    padding:16px;
  }
  .gd-yt-modal__mask{
    position:absolute;inset:0;background:rgba(0,0,0,.78);
  }
  .gd-yt-modal__dialog{
    position:relative;z-index:1;width:100%;max-width:720px;
    background:#000;border-radius:8px;overflow:hidden;
    box-shadow:0 12px 40px rgba(0,0,0,.45);
  }
  .gd-yt-modal__close{
    position:absolute;right:8px;top:6px;z-index:2;
    width:36px;height:36px;line-height:34px;padding:0;
    border:0;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;
    font-size:28px;cursor:pointer;
  }
  .gd-yt-modal__frame{position:relative;width:100%;padding-bottom:56.25%;height:0;background:#000}
  .gd-yt-modal__frame iframe{
    position:absolute;top:0;left:0;width:100%;height:100%;border:0;
  }

  /* ===== Reviews ===== */
  .gd-reviews{background:#fff}
  .review-summary{
    display:flex;align-items:center;gap:12px;padding:14px;flex-wrap:wrap;
  }
  .review-score{font-size:36px;font-weight:800;line-height:1;color:var(--pink)}
  .review-summary .stars{color:#f5a623;font-size:14px;letter-spacing:1px}
  .review-summary .sub{font-size:12px;color:#666;margin-top:2px}
  .btn-write-review{
    margin-left:auto;padding:8px 12px;border-radius:16px;
    border:1px solid var(--pink);color:var(--pink);font-size:12px;font-weight:700;
    background:#fff;
  }
  .gd-review-form{padding:0 14px 14px;border-top:1px solid var(--line)}
  .gd-review-form__inner{padding-top:12px}
  .gd-review-form__title{font-size:15px;font-weight:700;margin:0 0 10px}
  .gd-review-form label{display:block;font-size:13px;font-weight:600;margin:10px 0 6px}
  .gd-review-form .form-input,
  .gd-review-form textarea{
    width:100%;box-sizing:border-box;border:1px solid #ddd;border-radius:8px;
    padding:10px 12px;font-size:13px;
  }
  .gd-review-form__hint{font-size:12px;color:#888;margin:6px 0 10px}
  .gd-review-form .submitBtn{
    width:100%;height:42px;border-radius:22px;background:var(--pink);color:#fff;
    font-size:15px;font-weight:700;border:0;
  }
  .gd-review-form .requied{color:var(--pink)}
  .review-filters{display:flex;gap:8px;padding:0 14px 10px;overflow-x:auto}
  .filter-chip{
    flex:0 0 auto;padding:6px 12px;border-radius:999px;border:1px solid #ddd;
    font-size:12px;background:#fff;
  }
  .filter-chip.is-active{border-color:var(--pink);color:var(--pink);background:#fff5fa}
  .review-card{padding:12px 14px;border-top:1px solid var(--line)}
  .review-card .who{display:flex;justify-content:space-between;font-size:13px;margin-bottom:4px;gap:8px}
  .review-card .who .name{font-weight:700}
  .review-card .who .verified{color:#999;font-size:11px;flex:0 0 auto}
  .review-card .stars{font-size:12px;margin-bottom:6px;color:#f5a623;letter-spacing:1px}
  .review-card .txt{font-size:13px;line-height:1.5;color:#333;margin:0;white-space:pre-wrap;word-break:break-word}
  .review-card .photos{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
  .review-card .photos a{display:block}
  .review-card .photos img{width:64px;height:64px;object-fit:cover;border-radius:6px}
  .review-reply{
    margin-top:8px;padding:8px 10px;background:#fafafa;border-radius:6px;
    font-size:12px;color:#555;line-height:1.45;
  }
  .review-empty{padding:20px 14px;text-align:center;color:#888;font-size:13px}
  .gd-review-pager{
    display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap;
    padding:12px 14px 16px;
  }
  .gd-review-pager a{
    min-width:32px;height:32px;line-height:32px;text-align:center;
    border:1px solid #eee;border-radius:6px;padding:0 8px;
    font-size:13px;color:#333;text-decoration:none;
  }
  .gd-review-pager a.zs_curr,
  .gd-review-pager a.no{border-color:var(--pink);color:var(--pink)}
  .gd-review-pager a.no{opacity:.45;pointer-events:none}
  .more-link{
    display:block;text-align:center;padding:14px;font-size:13px;color:var(--pink);font-weight:600;
  }

  /* Write-review star rank (from product.css) */
  #sendComment .cmtRank{
    float:left;width:95px;height:19px;margin-right:10px;
    background:url(../images/xingxing.png) -4px -7px no-repeat;background-size:auto;
  }
  #sendComment .fen1{background-position:-4px -7px}
  #sendComment .fen2{background-position:-4px -44px}
  #sendComment .fen3{background-position:-4px -82px}
  #sendComment .fen4{background-position:-4px -219px}
  #sendComment .fen5{background-position:-4px -256px}
  #sendComment dd.cmtRankBox{height:23px;margin:0;overflow:hidden}
  #sendComment dd .cmtRank span{width:19px;height:19px;float:left;cursor:pointer}
  #sendComment #Rank{color:#333;font-size:12px;line-height:19px;margin-left:6px}
  
  .howto{
    display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 14px 14px;
  }
  .howto-step{
    background:#fafafa;border-radius:8px;padding:10px;text-align:center;font-size:12px;
  }
  .howto-step .n{
    width:22px;height:22px;line-height:22px;margin:0 auto 6px;border-radius:50%;
    background:var(--pink);color:#fff;font-weight:700;font-size:11px;
  }

  /* ===== Banner + Style Gallery ===== */
  .gd-banner .block-inner{padding:0}
  .gd-banner img{display:block;width:100%;height:auto}
  .gd-gallery .block-title a{color:inherit;text-decoration:underline}
  .gd-gallery-swiper{position:relative;padding:0 14px 16px}
  .gd-gallery-swiper .swiper-slide{position:relative}
  .gd-gallery-swiper img{
    display:block;width:100%;height:auto;border-radius:8px;
  }
  .gd-gallery-more{
    position:absolute;left:0;right:0;bottom:0;text-align:center;
  }
  .gd-gallery-more a{
    display:block;padding:12px 10px;background:rgba(0,0,0,.5);
    color:#fff;font-size:13px;font-weight:700;text-decoration:none;
    border-radius:0 0 8px 8px;
  }
  .gd-gallery-swiper .swiper-button-next,
  .gd-gallery-swiper .swiper-button-prev{
    width:28px;height:28px;margin-top:-14px;background-size:18px 28px;
  }