/* CottonSweetShop Side Cart Minimal Core v1.0.6 - fixed production skin */
.xoo-wsc-container,.xoo-wsc-slider{width:95%;max-width:350px;right:-350px;top:0;bottom:0;font-family:Arial,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft JhengHei",sans-serif;background:#fff;z-index:999999}
.xoo-wsc-cart-active .xoo-wsc-container,.xoo-wsc-slider-active .xoo-wsc-slider{right:0}
.xoo-wsc-cart-active .xoo-wsc-basket{right:350px}
.xoo-wsc-header,.xoo-wsc-sl-heading{background:#8db8ba;color:#303030;border-bottom:2px solid #eee;padding:15px 15px}
.xoo-wsch-text,.xoo-wsc-sl-heading{font-size:20px}.xoo-wsch-icon{font-size:26px}
.xoo-wsc-body{background:#fbfaf6;color:#3d3d3d;font-size:15px}.xoo-wsc-body a,.xoo-wsc-body .amount{color:#3d3d3d;font-size:15px}
.xoo-wsc-footer{background:#fbfaf6;color:#303030;padding:0 2px 3px 2px;font-size:16px;box-shadow:none}.xoo-wsc-footer a,.xoo-wsc-footer .amount{font-size:16px}
.xoo-wsc-product{background:#fbfaf6;padding:10px 10px 5px 0;margin:3px 10px;border-radius:5px;box-shadow:0 2px 2px #00000005;border-bottom:0;align-items:flex-start}
.xoo-wsc-img-col{width:23%;flex:0 0 23%}.xoo-wsc-img-col img{width:100%;height:auto;display:block}.xoo-wsc-sum-col{flex:1;min-width:0;padding-left:10px}
.xoo-wsc-sm-info{align-items:flex-start}.xoo-wsc-pname{font-weight:500;line-height:1.35}.xoo-wsc-smr-ptotal{font-weight:600;white-space:nowrap}
.xoo-wsc-del-cont{font-size:16px}.xoo-wsc-smr-del{cursor:pointer}
.xoo-wsc-qty-box{width:90px;height:25px;background:#d9eaec;color:#606060;border:1px solid #c9c9c9;border-radius:999px;display:flex;align-items:center;overflow:hidden;margin-top:6px}
.xoo-wsc-qty-box .xoo-wsc-chng{width:20px;height:20px;line-height:20px;text-align:center;cursor:pointer;flex:0 0 20px}.xoo-wsc-qty-box input.xoo-wsc-qty{height:23px;min-height:23px;padding:0;border:1px solid #c9c9c9;border-top:0;border-bottom:0;border-radius:0;background:#fff;color:#000;text-align:center;box-shadow:none;-moz-appearance:textfield}
.xoo-wsc-qty-box input.xoo-wsc-qty::-webkit-outer-spin-button,.xoo-wsc-qty-box input.xoo-wsc-qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.xoo-wsc-basket{right:3px;bottom:3px;width:53px;height:53px;background:#8db8ba;color:#fff;box-shadow:none;border-radius:14px;display:none}.xoo-wsc-bki{font-size:28px}.xoo-wsc-items-count,.xoo-wsch-items-count{background:#e3cf9b;color:#2b2b2b}.xoo-wsc-items-count{top:-10px;left:-10px}
body.css-sidecart-has-items .xoo-wsc-basket,html.css-sidecart-has-items .xoo-wsc-basket{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
.xoo-wsch-top{display:grid;grid-template-columns:1fr auto 1fr}.xoo-wsch-sec-left{display:flex;align-items:center;gap:10px}.xoo-wsch-sec-right{display:flex;justify-content:flex-end;align-items:center}.xoo-wsch-close{cursor:pointer}
.xoo-wsc-ft-buttons-cont{display:grid;grid-template-columns:2fr 2fr;gap:5px;padding:3px 5px}.xoo-wsc-ft-btn,.xoo-wsc-btn{display:flex;align-items:center;justify-content:center;min-height:47px;padding:10px 20px;background:#3d4142;color:#fff!important;border:1px solid #dde6ed;border-radius:5px;font-weight:500;font-size:15px;text-transform:capitalize;text-align:center}.xoo-wsc-ft-btn:hover,.xoo-wsc-btn:hover{color:#fff!important;border-color:#27374d}.xoo-wsc-empty-cart a.xoo-wsc-btn{background:#dde6ed;color:#27374d!important;border:2px solid #27374d}.xoo-wsc-empty-cart a.xoo-wsc-btn:hover{background:#27374d;color:#dde6ed!important;border-color:#dde6ed}
.xoo-wsc-sl-apply-coupon .xoo-wsc-btn,.xoo-wsc-slider button[name="calc_shipping"]{min-height:auto;height:auto;padding:8px 15px;font-size:14px}
.xoo-wsc-ft-totals{padding:4px 10px}.xoo-wsc-ft-amt{display:flex;justify-content:space-between;gap:10px}.xoo-wsc-ft-amt-value{text-align:right}.xoo-wsc-ecl{display:inline-block;margin:4px 10px;cursor:pointer;text-decoration:underline;font-size:13px}
.xoo-wsc-ftx-row{padding:6px 10px}.xoo-wsc-ftx-coupon{display:flex;align-items:center;gap:7px}.xoo-wsc-toggle-slider{cursor:pointer}.xoo-wsc-ftx-icon{font-size:18px}
.xoo-wsc-slider{background:#fbfaf6}.xoo-wsc-sl-body{overflow-y:auto;padding:12px 15px;background:#fbfaf6;flex:1}.xoo-wsc-slider-close{cursor:pointer;margin-right:8px}.xoo-wsc-sl-content{display:none;height:100%;flex-direction:column}.xoo-wsc-slider[data-slider="coupon"] .xoo-wsc-sl-coupon,.xoo-wsc-slider[data-slider="shipping"] .xoo-wsc-sl-shipping{display:flex}
.xoo-wsc-sl-apply-coupon{display:flex;gap:6px}.xoo-wsc-sl-apply-coupon input{min-width:0;flex:1}.xoo-wsc-sl-applied{margin-top:10px}.xoo-wsc-sl-applied>div{display:flex;justify-content:space-between;gap:10px;padding:5px 0}
.xoo-wsc-shipping-methods{list-style:none;margin:10px 0;padding:0}.xoo-wsc-shipping-methods li{margin:6px 0}.xoo-wsc-shipping-destination{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:8px}
.xoo-wsc-fly-animating{border-radius:8px;object-fit:cover;pointer-events:none}
.xoo-wsc-notice-container{z-index:20}.xoo-wsc-markup-notices{position:fixed;top:15px;left:50%;transform:translateX(-50%);z-index:10000000;max-width:min(92vw,520px);opacity:0;visibility:hidden;transition:.2s}.xoo-wsc-markup-notices.xoo-wsc-active{opacity:1;visibility:visible}
.xoo-wsc-loader-icon{font-family:'Woo-Side-Cart'!important}.single_add_to_cart_button.yds-cart-locked{opacity:.65;pointer-events:none;cursor:wait}
@media(max-width:600px){.xoo-wsc-container,.xoo-wsc-slider{width:min(350px,100vw);max-width:100%;right:-100vw}.xoo-wsc-cart-active .xoo-wsc-basket{right:min(350px,100vw)}.xoo-wsc-basket{display:none}.css-sidecart-has-items .xoo-wsc-basket{display:flex!important}.xoo-wsc-product{margin:3px 7px;padding:9px 8px 5px 0}.xoo-wsc-footer{padding-bottom:max(3px,env(safe-area-inset-bottom))}.xoo-wsc-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.xoo-wsc-qty-box input.xoo-wsc-qty{font-size:16px}}

/* v1.0.1 Screenshot layout fix */
.xoo-wsc-product{
    padding:12px 10px 10px 0!important;
    margin:0 10px!important;
    border-radius:0!important;
    border-bottom:1px solid #eee!important;
    box-shadow:none!important;
    align-items:flex-start!important;
}
.xoo-wsc-img-col{
    width:88px!important;
    flex:0 0 88px!important;
    align-self:flex-start!important;
}
.xoo-wsc-img-col img{
    border-radius:10px!important;
    display:block!important;
}
.xoo-wsc-sum-col{
    padding-left:12px!important;
    min-width:0!important;
}
.xoo-wsc-sm-info{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 70px!important;
    gap:8px!important;
    align-items:stretch!important;
    min-height:88px!important;
}
.xoo-wsc-sm-left{
    min-width:0!important;
    justify-content:flex-start!important;
}
.xoo-wsc-pname,.xoo-wsc-pname a{
    display:block!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    word-break:normal!important;
    font-weight:500!important;
    line-height:1.4!important;
}
.xoo-wsc-sm-right{
    min-width:70px!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
}
.xoo-wsc-sm-right-tools{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    min-height:26px!important;
}
button.xoo-wsc-smr-del{
    appearance:none!important;
    -webkit-appearance:none!important;
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:6px!important;
    background:transparent!important;
    color:#555!important;
    font-family:'Woo-Side-Cart'!important;
    font-size:18px!important;
    line-height:28px!important;
    text-align:center!important;
    cursor:pointer!important;
    box-shadow:none!important;
}
button.xoo-wsc-smr-del:hover{background:#f0efea!important;color:#222!important}
.xoo-wsc-smr-ptotal{
    display:block!important;
    margin-top:auto!important;
    font-size:16px!important;
    font-weight:700!important;
    line-height:1.25!important;
    white-space:nowrap!important;
}
.xoo-wsc-qty-box{margin-top:10px!important}

.xoo-wsc-footer{
    border-top:1px solid #e7e3da!important;
    padding:5px 7px max(8px,env(safe-area-inset-bottom))!important;
}
.xoo-wsc-ecl{
    margin:2px 6px 4px!important;
    color:#7b7b76!important;
    text-decoration:none!important;
    font-size:12px!important;
}
.xoo-wsc-ft-extras{border-bottom:1px dashed #ddd8cd!important}
.xoo-wsc-ft-totals{margin:0!important;padding:5px 4px!important}
.xoo-wsc-ft-amt{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    gap:10px!important;
    padding:7px 7px!important;
    line-height:1.45!important;
}
.xoo-wsc-ft-amt-label{
    min-width:0!important;
    padding-right:0!important;
    font-weight:400!important;
    overflow-wrap:anywhere!important;
}
.xoo-wsc-ft-amt-value{
    min-width:54px!important;
    text-align:right!important;
    font-weight:600!important;
    white-space:nowrap!important;
}
.xoo-wsc-ft-amt-total{
    margin-top:3px!important;
    padding-top:9px!important;
    border-top:1px dashed #9e9e9e!important;
}
.xoo-wsc-ft-amt-total .xoo-wsc-ft-amt-label,
.xoo-wsc-ft-amt-total .xoo-wsc-ft-amt-value{font-size:18px!important;font-weight:700!important}
.xoo-wsc-ft-buttons-cont{padding:7px 5px 4px!important;gap:7px!important}
.xoo-wsc-ft-btn{min-height:52px!important}
.xoo-wsc-toggle-slider span,.xoo-wsc-ft-amt-label span,.xoo-wsc-ft-amt-value span{max-width:100%}
.xoo-wsc-fly-animating{will-change:top,left,width,height,opacity!important}

@media(max-width:600px){
    .xoo-wsc-container,.xoo-wsc-slider{
        width:min(350px,100vw)!important;
        max-width:100vw!important;
    }
    .xoo-wsc-product{margin:0 8px!important;padding:10px 8px 9px 0!important}
    .xoo-wsc-img-col{width:82px!important;flex-basis:82px!important}
    .xoo-wsc-sum-col{padding-left:10px!important}
    .xoo-wsc-sm-info{grid-template-columns:minmax(0,1fr) 66px!important;min-height:82px!important}
    .xoo-wsc-sm-right{min-width:66px!important}
    .xoo-wsc-body{font-size:15px!important}
    .xoo-wsc-footer{font-size:15px!important}
    .xoo-wsc-ft-amt{padding:6px 6px!important;gap:8px!important}
    .xoo-wsc-ft-buttons-cont{grid-template-columns:1fr 1.35fr!important}
}


/* =========================================================
 * v1.0.2 Footer Compact + Button Ratio
 * ======================================================= */
.xoo-wsc-footer{
    padding:3px 6px max(5px,env(safe-area-inset-bottom))!important;
}
.xoo-wsc-ecl{
    margin:1px 5px 2px!important;
    line-height:1.2!important;
}
.xoo-wsc-ftx-row{
    padding:4px 7px!important;
    line-height:1.3!important;
}
.xoo-wsc-ft-totals{
    padding:2px 3px!important;
}
.xoo-wsc-ft-amt{
    padding:4px 6px!important;
    line-height:1.32!important;
}
.xoo-wsc-ft-amt-total{
    margin-top:1px!important;
    padding-top:6px!important;
}
.xoo-wsc-ft-buttons-cont{
    grid-template-columns:minmax(72px,28fr) minmax(0,72fr)!important;
    gap:7px!important;
    padding:5px 4px 2px!important;
}
.xoo-wsc-ft-btn{
    min-height:46px!important;
    height:46px!important;
    padding:6px 10px!important;
}
.xoo-wsc-ft-btn-continue{
    background:#e7efed!important;
    color:#3d4b4b!important;
    border:1px solid #cddfdc!important;
    font-size:20px!important;
}
.xoo-wsc-ft-btn-continue:hover{
    background:#d9e8e6!important;
    color:#303b3b!important;
    border-color:#b8cfcc!important;
}
.xoo-wsc-ft-btn-checkout{
    background:#8db8ba!important;
    color:#fff!important;
    border:1px solid #8db8ba!important;
    font-weight:600!important;
    letter-spacing:.08em!important;
}
.xoo-wsc-ft-btn-checkout:hover{
    background:#769fa1!important;
    color:#fff!important;
    border-color:#769fa1!important;
}
@media(max-width:600px){
    .xoo-wsc-footer{padding:3px 6px max(5px,env(safe-area-inset-bottom))!important}
    .xoo-wsc-ft-amt{padding:4px 5px!important}
    .xoo-wsc-ft-buttons-cont{grid-template-columns:minmax(68px,27fr) minmax(0,73fr)!important}
    .xoo-wsc-ft-btn{height:44px!important;min-height:44px!important}
}


/* =========================================================
 * v1.0.4 | YDS Member Product Tools Side Cart Favorite bridge
 * The member plugin intentionally hides .vht-sidecart-fav-wrap until its
 * placement JS adds .is-positioned. Minimal Core already places the hook
 * inside .xoo-wsc-sm-right-tools, so keep it visible immediately.
 * ======================================================= */
.xoo-wsc-sm-right-tools > .vht-sidecart-fav-wrap,
.xoo-wsc-sm-right-tools > .vht-sidecart-fav-wrap.is-positioned {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    order: -100 !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 9px 0 0 !important;
    padding: 0 !important;
}
.xoo-wsc-sm-right-tools button.vht-sidecart-fav-btn {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 22px !important;
    min-height: 22px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #626a6b !important;
    -webkit-text-fill-color: #626a6b !important;
    font-size: 17px !important;
    line-height: 1 !important;
    cursor: pointer !important;
}
.xoo-wsc-sm-right-tools .vht-sidecart-fav-icon {
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    font-size: inherit !important;
    line-height: 1 !important;
    pointer-events: none !important;
}
.xoo-wsc-sm-right-tools button.vht-sidecart-fav-btn.is-loading {
    opacity: .45 !important;
    pointer-events: none !important;
}

/* v1.0.5 Favorite icon glyph restore: member tools uses Side Cart original heart1 icon. */
.xoo-wsc-icon-heart1:before{content:"\e92d"!important;}

/* =========================================================
 * v1.0.6 | RUCSS-proof controls + faster shipping sub-view
 * Critical delete/checkout/continue visuals are also emitted inline by PHP,
 * so AJAX-only selectors cannot lose their essential appearance after RUCSS.
 * ======================================================= */
.xoo-wsc-slider{transition:right .18s ease-out!important;}
.xoo-wsc-smr-del .yds-wsc-trash-svg{display:block!important;width:20px!important;height:20px!important;}
.xoo-wsc-ft-buttons-cont{grid-template-columns:minmax(68px,28fr) minmax(0,72fr)!important;}
.xoo-wsc-ft-btn-continue{background:#e7efed!important;color:#3d4b4b!important;border-color:#cddfdc!important;}
.xoo-wsc-ft-btn-checkout{background:#8db8ba!important;color:#fff!important;border-color:#8db8ba!important;}


/* =========================================================
 * v1.0.7 | Requested UI-only adjustments
 * - Footer buttons: 12px radius.
 * - Shipping/Coupon back header: entire row is interactive.
 * ======================================================= */
.xoo-wsc-ft-btn-continue,.xoo-wsc-ft-btn-checkout{border-radius:12px!important;}
.yds-wsc-slider-back-row{cursor:pointer!important;}
.yds-wsc-slider-back-row:focus-visible{outline:2px solid #8db8ba!important;outline-offset:-3px!important;}


/* v1.0.10 Coupon form layout safe
 * 固定折價券輸入框與應用按鈕比例，避免 The7 / 全站 CSS / RUCSS 重新產生後擠壓跑版。
 */
.xoo-wsc-slider form.xoo-wsc-sl-apply-coupon{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 110px!important;
    align-items:stretch!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    margin:18px 0 22px!important;
    padding:0!important;
    box-sizing:border-box!important;
    flex-wrap:nowrap!important;
}
.xoo-wsc-slider form.xoo-wsc-sl-apply-coupon .xoo-wsc-slcf-input{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:0 12px!important;
    box-sizing:border-box!important;
    border:1px solid #cddfdc!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#303030!important;
    box-shadow:0 1px 3px rgba(48,48,48,.05)!important;
    font-size:16px!important;
    line-height:44px!important;
    outline:none!important;
}
.xoo-wsc-slider form.xoo-wsc-sl-apply-coupon .xoo-wsc-slcf-input:focus{
    border-color:#8db8ba!important;
    box-shadow:0 0 0 2px rgba(141,184,186,.16)!important;
}
.xoo-wsc-slider form.xoo-wsc-sl-apply-coupon .xoo-wsc-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    height:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:0 14px!important;
    box-sizing:border-box!important;
    border:1px solid #7faeb0!important;
    border-radius:12px!important;
    background:#8db8ba!important;
    color:#fff!important;
    box-shadow:0 2px 5px rgba(77,111,113,.16)!important;
    font-size:16px!important;
    font-weight:600!important;
    line-height:1!important;
    text-align:center!important;
    text-decoration:none!important;
    white-space:nowrap!important;
}
.xoo-wsc-slider form.xoo-wsc-sl-apply-coupon .xoo-wsc-btn:hover,
.xoo-wsc-slider form.xoo-wsc-sl-apply-coupon .xoo-wsc-btn:focus{
    background:#769fa1!important;
    border-color:#6f989b!important;
    color:#fff!important;
    box-shadow:0 3px 7px rgba(77,111,113,.22)!important;
}
.xoo-wsc-slider form.xoo-wsc-sl-apply-coupon .xoo-wsc-btn:active{
    transform:translateY(1px);
    box-shadow:0 1px 3px rgba(77,111,113,.16)!important;
}
@media(max-width:380px){
    .xoo-wsc-slider form.xoo-wsc-sl-apply-coupon{
        grid-template-columns:minmax(0,1fr) 100px!important;
        gap:7px!important;
    }
}
