.xq-cart-page{
    margin-top:0;
}
.xq-cart-card{
    border:0;
    border-radius:10px;
    box-shadow:0 1px 2px rgba(15,23,42,.05);
}
.xq-cart-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:14px;
}
.xq-cart-title{
    margin:0;
    font-size:22px;
    font-weight:800;
    color:#111827;
}
.xq-cart-subtitle{
    margin-top:4px;
    color:#64748b;
    font-size:13px;
    line-height:1.55;
}
.xq-cart-empty{
    text-align:center;
    padding:36px 12px;
}
.xq-cart-empty-title{
    font-size:18px;
    font-weight:800;
    color:#111827;
}
.xq-cart-empty-desc{
    margin-top:6px;
    color:#64748b;
}
.xq-cart-list{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.xq-cart-item{
    display:grid;
    grid-template-columns:120px minmax(0,1fr) 130px 220px;
    gap:12px;
    align-items:center;
    padding:12px;
    border:1px solid #e5e7eb;
    border-radius:9px;
    background:#fff;
    cursor:default;
}
.xq-cart-thumb{
    width:120px;
    aspect-ratio:533/300;
    border-radius:7px;
    background:#f8fafc;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
}
.xq-cart-thumb img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
}
.xq-cart-info{
    min-width:0;
    pointer-events:none;
}
.xq-cart-info .xq-cart-goods-title{
    display:inline !important;
    width:auto !important;
    max-width:none !important;
    pointer-events:auto;
}
.xq-cart-goods-title{
    color:#111827;
    font-size:15px;
    font-weight:800;
    line-height:1.45;
    text-decoration:none;
}
.xq-cart-goods-title:hover{
    color:#0f766e;
    text-decoration:none;
}
.xq-cart-mobile-meta{
    display:none;
}
.xq-cart-tags{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    margin-top:6px;
    pointer-events:auto;
}
.xq-cart-tags span,
.xq-cart-mobile-meta span{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    border-radius:999px;
    padding:2px 8px;
    font-size:12px;
    font-weight:700;
    line-height:1.35;
}
.xq-cart-mobile-meta .xq-cart-mobile-total{
    color:#f04422;
    background:#fff7ed;
}
.xq-cart-manual-info{
    margin:7px 0 0;
    padding:7px 9px;
    border:1px dashed #dbe3ea;
    border-radius:7px;
    background:#f8fafc;
    color:#475569;
    font-size:12px;
    line-height:1.55;
    white-space:pre-wrap;
    pointer-events:auto;
}
.xq-cart-price{
    text-align:right;
}
.xq-cart-price-main{
    font-size:16px;
    font-weight:900;
    color:#f04422;
    white-space:nowrap;
}
.xq-cart-price-sub{
    margin-top:3px;
    font-size:12px;
    color:#64748b;
    white-space:nowrap;
}
.xq-cart-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
    min-width:0;
}
.xq-cart-qty{
    min-width:0;
}
.xq-cart-qty-form{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:5px;
}
.xq-cart-qty-btn{
    width:30px;
    height:30px;
    border:1px solid #d1d5db;
    background:#f8fafc;
    color:#111827;
    border-radius:6px;
    font-weight:900;
    font-size:16px;
    line-height:1;
    cursor:pointer;
}
.xq-cart-qty-btn:disabled{
    opacity:.45;
    cursor:not-allowed;
}
.xq-cart-qty-input{
    width:58px;
    height:30px;
    border:1px solid #d1d5db;
    border-radius:6px;
    text-align:center;
}
.xq-cart-qty-note{
    text-align:right;
    font-size:12px;
    color:#94a3b8;
    margin-top:4px;
    white-space:nowrap;
}
.xq-cart-qty-note--auto{
    color:#64748b;
}
.xq-cart-remove-form{
    text-align:center;
    margin:0;
    flex:0 0 auto;
}
.xq-cart-remove-form .btn{
    font-size:13px;
    font-weight:700;
}
.xq-cart-bottom-grid{
    display:grid;
    grid-template-columns:minmax(260px,360px) minmax(0,1fr);
    gap:12px;
    margin-top:14px;
}
.xq-cart-summary-card,
.xq-cart-checkout-card{
    border:1px solid #e5e7eb;
    border-radius:10px;
    box-shadow:none;
}
.xq-cart-summary-card .card-body,
.xq-cart-checkout-card .card-body{
    padding:16px;
}
.xq-cart-section-title{
    margin:0 0 12px;
    font-size:16px;
    font-weight:800;
    color:#111827;
}
.xq-cart-summary-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:8px 0;
    border-bottom:1px solid #f1f5f9;
    color:#475569;
}
.xq-cart-summary-row strong{
    color:#111827;
}
.xq-cart-summary-row--total{
    border-bottom:0;
    font-size:16px;
}
.xq-cart-summary-row--total strong{
    font-size:18px;
    color:#f04422;
}
.xq-cart-summary-tip,
.xq-cart-checkout-tip{
    margin-top:10px;
    color:#64748b;
    font-size:12px;
    line-height:1.6;
}
.xq-cart-checkout-btn{
    font-weight:800;
    min-height:40px;
}
.xq-cart-checkout-card .form-group{
    margin-bottom:13px;
}
.xq-cart-checkout-card .form-group label{
    font-weight:700;
    color:#111827;
}
.xq-cart-checkout-card .xq-pay-options{
    margin-top:8px;
}
.xq-cart-checkout-card .xq-pay-options > .xq-pay-option{
    width:100%;
}
.xq-cart-checkout-card .pay-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    width:100%;
}
.xq-cart-checkout-card .xq-pay-option{
    margin:0;
}
.xq-cart-checkout-card .xq-pay-option__button{
    min-height:42px;
    padding:5px 6px;
}
.xq-cart-qty-form.is-loading{
    opacity:.78;
}
.xq-cart-qty-form.is-loading .xq-cart-qty-input{
    background:#fffdf7;
}
.xq-cart-qty-form.is-loading::after{
    content:'同步中';
    margin-left:6px;
    font-size:12px;
    color:#94a3b8;
    white-space:nowrap;
}
.xq-cart-pay-limit-alert{
    margin:8px 0 10px;
    padding:10px 12px;
    border:1px solid #fed7aa;
    border-radius:8px;
    background:#fff7ed;
    color:#7c2d12;
    font-size:12px;
    line-height:1.65;
}
.xq-cart-pay-limit-alert--danger{
    border-color:#fecaca;
    background:#fef2f2;
    color:#991b1b;
}
.xq-cart-pay-limit-title{
    font-size:13px;
    font-weight:800;
    color:inherit;
}
.xq-cart-pay-limit-desc{
    margin-top:3px;
    color:inherit;
    opacity:.88;
}
.xq-cart-pay-limit-list{
    margin:6px 0 0;
    padding-left:18px;
}
.xq-cart-pay-limit-list li + li{
    margin-top:3px;
}
.xq-cart-pay-limit-list strong{
    font-weight:800;
}
.xq-cart-no-payway-alert{
    margin-top:8px;
    margin-bottom:10px;
    font-size:13px;
    line-height:1.6;
}
.xq-cart-product-link{
    cursor:pointer;
}
@media(max-width:991.98px){
    .xq-cart-item{
        grid-template-columns:96px minmax(0,1fr);
        align-items:start;
    }
    .xq-cart-thumb{
        width:96px;
    }
    .xq-cart-price,
    .xq-cart-actions{
        grid-column:2/3;
        text-align:left;
    }
    .xq-cart-actions{
        justify-content:flex-start;
    }
    .xq-cart-qty-form{
        justify-content:flex-start;
    }
    .xq-cart-qty-note{
        text-align:left;
    }
    .xq-cart-bottom-grid{
        grid-template-columns:1fr;
    }
    .xq-cart-qty-form.is-loading::after{
        margin-left:4px;
    }
}
@media(max-width:575.98px){
    .xq-cart-card{
        padding:12px !important;
    }
    .xq-cart-head{
        flex-direction:row;
        align-items:center;
        margin-bottom:10px;
    }
    .xq-cart-title{
        font-size:20px;
    }
    .xq-cart-subtitle{
        display:none;
    }
    .xq-cart-list{
        gap:8px;
    }
    .xq-cart-item{
        grid-template-columns:58px minmax(0,1fr);
        gap:8px;
        align-items:center;
        padding:8px;
        border-radius:8px;
    }
    .xq-cart-thumb{
        width:58px;
        height:58px;
        aspect-ratio:auto;
        border-radius:8px;
    }
    .xq-cart-info{
        align-self:center;
    }
    .xq-cart-info .xq-cart-goods-title{
        display:-webkit-box !important;
        -webkit-line-clamp:1;
        -webkit-box-orient:vertical;
        overflow:hidden;
        font-size:14px;
        line-height:1.4;
        width:100% !important;
    }
    .xq-cart-mobile-meta{
        display:flex;
     /*   flex-wrap:wrap;*/
        gap:4px;
        margin-top:5px;
        pointer-events:auto;
    }
    .xq-cart-mobile-meta span{
        min-height:20px;
        padding:1px 6px;
        font-size:11px;
    }
    .xq-cart-tags,
    .xq-cart-price{
        display:none;
    }
    .xq-cart-manual-info{
        grid-column:1/-1;
        max-height:68px;
        overflow:auto;
        margin-top:6px;
        font-size:11px;
        padding:6px 7px;
    }
    .xq-cart-actions{
        grid-column:1/-1;
        display:flex;
        align-items:center;
        justify-content:center;
        gap:10px;
        padding-top:6px;
        border-top:1px dashed #eef2f7;
    }
    .xq-cart-qty{
        display:flex;
        align-items:center;
        justify-content:center;
        gap:7px;
    }
    .xq-cart-qty-form{
        justify-content:center;
    }
    .xq-cart-qty-note{
        display:none;
    }
    .xq-cart-qty-btn{
        width:29px;
        height:29px;
        border-radius:7px;
    }
    .xq-cart-qty-input{
        width:54px;
        height:29px;
    }
    .xq-cart-remove-form .btn{
        min-height:29px;
        padding:0 8px !important;
        border:1px solid #fecaca;
        border-radius:7px;
        text-decoration:none;
        background:#fff;
    }
    .xq-cart-summary-card .card-body,
    .xq-cart-checkout-card .card-body{
        padding:12px;
    }
    .xq-cart-bottom-grid{
        gap:10px;
        margin-top:10px;
    }
    .xq-cart-section-title{
        margin-bottom:9px;
        font-size:15px;
    }
    .xq-cart-summary-row{
        padding:6px 0;
        font-size:13px;
    }
    .xq-cart-summary-tip,
    .xq-cart-checkout-tip{
        margin-top:7px;
        font-size:11px;
    }
    .xq-cart-checkout-card .form-group{
        margin-bottom:10px;
    }
    .xq-cart-checkout-card .form-control{
        min-height:36px;
        font-size:13px;
    }
    .xq-cart-checkout-card .pay-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:7px;
    }
    .xq-cart-checkout-card .xq-pay-option__button{
        min-height:40px;
        padding:4px 4px;
        gap:5px;
        font-size:12px;
    }
    .xq-cart-checkout-card .xq-pay-option__icon{
        width:26px;
        height:26px;
        flex-basis:26px;
    }
    .xq-cart-checkout-card .xq-pay-option__icon img,
    .xq-cart-checkout-card .xq-pay-option__button img{
        width:26px;
        height:26px;
    }
    .xq-cart-checkout-card .xq-pay-option__text{
        line-height:1.25;
        word-break:break-word;
    }
    .xq-cart-checkout-btn{
        min-height:38px;
    }
}
@media(max-width:360px){
    .xq-cart-checkout-card .xq-pay-option__button{
        font-size:11px;
        gap:4px;
    }
    .xq-cart-mobile-meta span{
        font-size:10.5px;
        padding-left:5px;
        padding-right:5px;
    }
}

/* 2026-05-07 v1: 购物车移动端产品列表更紧凑，标签背景色参考分类页移动端 */
.xq-cart-thumb img{
    border-radius:inherit;
}
.xq-cart-tags .xq-cart-pill,
.xq-cart-mobile-meta .xq-cart-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:22px;
    border-radius:999px;
    padding:2px 8px;
    font-size:12px;
    font-weight:800;
    line-height:1.35;
    white-space:nowrap;
}
.xq-cart-pill--auto{
    background:#34c38f !important;
    color:#fff !important;
}
.xq-cart-pill--manual{
    background:#f59e0b !important;
    color:#fff !important;
}
.xq-cart-pill--unit{
    background:#3b82f6 !important;
    color:#fff !important;
}
.xq-cart-pill--total{
    background:#ff6b6b !important;
    color:#fff !important;
}
.xq-cart-pill--selected{
    background:#8b5cf6 !important;
    color:#fff !important;
}
.xq-cart-pill--info{
    background:#64748b !important;
    color:#fff !important;
}
.xq-cart-checkout-card .xq-pay-options{
    display:flex;
    flex-direction:column;
    gap:8px;
}
.xq-cart-checkout-card .xq-pay-options > .xq-pay-option{
    width:100%;
}
.xq-cart-checkout-card .pay-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    width:100%;
}
@media(max-width:575.98px){
    .xq-cart-thumb,
    .xq-cart-thumb img{
        border-radius:10px;
    }
    .xq-cart-info .xq-cart-goods-title{
        display:block !important;
        -webkit-line-clamp:unset;
        -webkit-box-orient:unset;
        overflow:visible;
        white-space:normal;
        word-break:break-word;
        overflow-wrap:anywhere;
        font-size:14px;
        line-height:1.42;
        width:100% !important;
    }
    .xq-cart-mobile-meta{
        gap:5px;
        margin-top:6px;
    }
    .xq-cart-mobile-meta .xq-cart-pill{
        min-height:22px;
        padding:2px 7px;
        font-size:11px;
    }
    .xq-cart-actions{
        margin-top:2px;
    }
}
@media(max-width:360px){
    .xq-cart-mobile-meta .xq-cart-pill{
        font-size:10.5px;
        padding-left:6px;
        padding-right:6px;
    }
}


/* 2026-05-07 v2: 购物车移动端商品图片比例与产品分类页移动端保持一致 */
@media(max-width:575.98px){
    .xq-cart-item{
        grid-template-columns:96px minmax(0,1fr);
        gap:10px;
        align-items:center;
    }
    .xq-cart-thumb{
        flex:0 0 var(--xq-product-thumb-mobile-width,96px);
        width:var(--xq-product-thumb-mobile-width,96px) !important;
        max-width:var(--xq-product-thumb-mobile-width,96px) !important;
        height:auto !important;
        aspect-ratio:var(--xq-product-image-ratio,533 / 300) !important;
        border-radius:var(--xq-product-thumb-radius,8px) !important;
        background:var(--xq-product-image-bg,#f8f9fa);
        overflow:hidden;
        display:flex;
        align-items:center;
        justify-content:center;
    }
    .xq-cart-thumb img{
        width:100% !important;
        height:100% !important;
        aspect-ratio:var(--xq-product-image-ratio,533 / 300) !important;
        object-fit:contain;
        object-position:center center;
        border-radius:var(--xq-product-thumb-radius,8px) !important;
        background:var(--xq-product-image-bg,#f8f9fa);
    }
}

/* 2026-05-08 v2: 购物车多规格商品显示规格信息 */
.xq-cart-spec-name{
    margin-top:3px;
    font-size:12px;
    line-height:1.35;
    color:#64748b;
    font-weight:700;
}
.xq-cart-pill--spec{
    background:#0ea5e9 !important;
    color:#fff !important;
}
