/* =========================================
   CARRITO METAL CONCEPT
========================================= */
.carrito{
    width:90%;
    max-width:1400px;
    margin:170px auto 100px;
}

.carrito h2{
    font-size:42px;
    margin-bottom:40px;
    color:#222;
    font-family:'Times New Roman', serif;
    font-weight:600;
}

/* layout */
.carrito-layout{
    display:grid;
    grid-template-columns: 2fr 1fr;
    gap:35px;
    align-items:start;
}

/* ITEMS */
.carrito-items{
    background:#fff;
    border-radius:28px;
    padding:30px;
    box-shadow:0 10px 35px rgba(0,0,0,0.06);
    border:1px solid #ece8df;
    min-height:400px;
}

/* cada item que JS pinte */
.cart-item{
    display:flex;
    gap:20px;
    align-items:center;
    padding:20px 0;
    border-bottom:1px solid #eee;
}

.cart-item:last-child{
    border-bottom:none;
}

.cart-item img{
    width:110px;
    height:110px;
    object-fit:cover;
    border-radius:18px;
}

.cart-info{
    flex:1;
}

.cart-info h4{
    margin:0 0 8px;
    font-size:20px;
    color:#222;
}

.cart-info p{
    margin:0;
    color:#777;
    font-size:14px;
}

/* cantidad */
.cart-cantidad{
    display:flex;
    align-items:center;
    gap:10px;
    background:#f7f5ef;
    border-radius:30px;
    padding:8px 14px;
}

.cart-cantidad button{
    width:28px;
    height:28px;
    border:none;
    background:#6f7f46;
    color:#fff;
    border-radius:50%;
    cursor:pointer;
    font-weight:bold;
}

.cart-precio{
    font-size:20px;
    font-weight:700;
    color:#6f7f46;
    min-width:110px;
    text-align:right;
}

/* RESUMEN */
.carrito-resumen{
    background:#fff;
    border-radius:28px;
    padding:35px 30px;
    box-shadow:0 15px 40px rgba(0,0,0,0.08);
    border:1px solid #ece8df;
    position:sticky;
    top:160px;
}

.carrito-resumen h3{
    margin-top:0;
    margin-bottom:25px;
    font-size:28px;
    color:#222;
    font-family:'Times New Roman', serif;
}

.resumen-line,
.resumen-total{
    display:flex;
    justify-content:space-between;
    padding:14px 0;
    border-bottom:1px solid #eee;
    font-size:15px;
    color:#555;
}

.resumen-total{
    font-size:20px;
    font-weight:700;
    color:#222;
    border-bottom:none;
    margin-top:10px;
}

/* BOTON */
.btn-checkout{
    width:100%;
    margin-top:25px;
    background:#6f7f46;
    color:#fff;
    border:none;
    padding:16px;
    border-radius:35px;
    font-size:16px;
    font-weight:600;
    cursor:pointer;
    box-shadow:0 12px 25px rgba(111,127,70,0.2);
    transition:.3s;
}

.btn-checkout:hover{
    background:#5c6a39;
    transform:translateY(-3px);
}

/* carrito vacio */
.carrito-vacio{
    text-align:center;
    padding:90px 20px;
    color:#777;
    font-size:18px;
}

/* RESPONSIVE */
@media(max-width:992px){

    .carrito-layout{
        grid-template-columns:1fr;
    }

    .carrito-resumen{
        position:relative;
        top:0;
    }

    .cart-item{
        flex-direction:column;
        align-items:flex-start;
    }

    .cart-precio{
        text-align:left;
    }
}

.cart-icon{
    position:relative;
    display:inline-block;
}

#cart-count{
    position:absolute;
    top:-8px;
    right:-10px;

    min-width:20px;
    height:20px;

    background:#6f7f46;
    color:#fff;

    border-radius:50px;

    display:none;
    align-items:center;
    justify-content:center;

    font-size:11px;
    font-weight:700;
    line-height:1;

    box-shadow:0 4px 10px rgba(0,0,0,0.18);
}