/* ==========================
   PASIONGIFT SIDE CART
   Base Premium Layout
========================== */


/* ==========================
   Botón flotante
========================== */

#pgsc-cart-trigger {

    position: fixed;

    right: 20px;
    bottom: 90px;

    width: 58px;
    height: 58px;

    border-radius: 50%;

    background: #c6005b;

    color: #ffffff;

    border: none;

    font-size: 26px;

    cursor: pointer;

    z-index: 999999;

    display:flex;

    align-items:center;

    justify-content:center;

    box-shadow:
    0 10px 25px rgba(0,0,0,.25);

}



/* ==========================
   Overlay
========================== */

#pgsc-side-cart-overlay {

    position: fixed;

    inset:0;

    background:
    rgba(0,0,0,.45);


    opacity:0;

    visibility:hidden;


    transition:
    opacity .35s ease;


    z-index:99998;

}



#pgsc-side-cart-overlay.active {

    opacity:1;

    visibility:visible;

}



/* ==========================
   Panel lateral
========================== */

#pgsc-side-cart {

    position:fixed;


    top:0;

    right:0;


    width:420px;

    max-width:92%;


    height:100vh;


    background:#ffffff;


    z-index:99999;


    display:flex;

    flex-direction:column;


    transform:
    translateX(100%);


    transition:
    transform .35s cubic-bezier(.4,0,.2,1);


    box-shadow:
    -15px 0 40px rgba(0,0,0,.18);

}




#pgsc-side-cart.active {

    transform:
    translateX(0);

}



/* ==========================
   Header
========================== */

.pgsc-header {

    display:flex;

    align-items:center;

    justify-content:space-between;


    padding:
    22px;


    border-bottom:
    1px solid #f1f1f1;

}



.pgsc-header h3 {

    margin:0;


    font-size:22px;

    font-weight:600;

    color:#222;

}



/* Botón cerrar */

#pgsc-close-cart {


    width:36px;

    height:36px;


    border-radius:50%;


    border:none;


    background:#f7f7f7;


    font-size:24px;


    line-height:1;


    cursor:pointer;


    display:flex;

    align-items:center;

    justify-content:center;


}



/* ==========================
   Contenido
========================== */

.pgsc-content {


    flex:1;


    padding:24px;


    overflow-y:auto;


}



/* ==========================
   Mobile
========================== */

@media(max-width:480px){


    #pgsc-side-cart {


        width:100%;

        max-width:100%;

    }


}
/* Productos dentro del Side Cart */

/* ==========================
   Producto Side Cart
========================== */


.pgsc-product {

    display:flex;

    gap:15px;

    padding:20px 0;

    border-bottom:1px solid #eeeeee;

}



/* Imagen */

.pgsc-product-image img {

    width:70px;

    height:70px;

    object-fit:cover;

    border-radius:12px;

}



/* Información */

.pgsc-product-info {

    flex:1;

}



/* Nombre */

.pgsc-product-name {

    font-size:16px;

    font-weight:600;

    line-height:1.3;

    color:#222;

}



/* Cantidad */

.pgsc-product-quantity {

    margin-top:8px;

    font-size:14px;

    color:#666;

}



/* Precio */

.pgsc-product-price {

    margin-top:8px;

    font-size:16px;

    font-weight:700;

    color:#c6005b;

}
/* ==========================
   Controles producto
========================== */


.pgsc-product-actions {

    display:flex;

    align-items:center;

    gap:10px;

    margin-top:15px;

}



.pgsc-product-actions button {

    width:32px;

    height:32px;

    border-radius:50%;

    border:none;

    cursor:pointer;

    display:flex;

    align-items:center;

    justify-content:center;

}



.pgsc-qty-minus,
.pgsc-qty-plus {


    background:#f2f2f2;

    font-size:18px;

}



.pgsc-qty-value {

    min-width:25px;

    text-align:center;

    font-weight:600;

}



.pgsc-remove-product {

    margin-left:auto;

    background:#ffe5ec;

    font-size:16px;

}
/* CONTENEDOR PRODUCTO */

.pgsc-product {

    display:flex;

    gap:15px;

    padding:20px 0;

    border-bottom:1px solid #eee;

}


/* IMAGEN */

.pgsc-product-image img {

    width:75px;

    height:75px;

    object-fit:cover;

    border-radius:12px;

}



/* INFORMACION */

.pgsc-product-info {

    flex:1;

}


/* NOMBRE */

.pgsc-product-name {

    font-size:16px;

    font-weight:600;

    line-height:1.3;

}



/* CANTIDAD */

.pgsc-product-quantity {

    margin-top:8px;

    color:#666;

    font-size:14px;

}



/* PRECIO */

.pgsc-product-price {

    margin-top:8px;

    font-weight:700;

}
.pgsc-product-controls {

    display:flex;

    align-items:center;

    gap:10px;

    margin-top:15px;

}



.pgsc-product-controls button {

    width:32px;

    height:32px;

    border-radius:50%;

    border:none;

    cursor:pointer;

}



.pgsc-quantity {

    min-width:25px;

    text-align:center;

    font-weight:600;

}