﻿
/* ----- IMAGEN CESTA ----- */
.img_cesta {
    width: 150px;
}

@media (min-width:1024px) {
    .img_cesta {
        width: 200px;
    }
}

@media (max-width:768px) {
    .img_cesta {
        width: 60px;
    }
}

.img-cesta {
    width: 120px;
    height: auto;
    object-fit: contain;
    display: block;
    border-radius: 8px;
    background: var(--color-white);
    padding: 6px;
    border: 1px solid var(--color-borde, #154aed40);
    box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}

@media (min-width:1024px) {
    .img-cesta {
        width: 160px;
    }
}

@media (max-width:768px) {
    .img-cesta {
        width: 65px;
    }
}

/* ----- CAJA GENÉRICA ----- */
.caja_generica {
    border: 1px solid var(--color-borde, #154aed);
    color: var(--color-black, #333333);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11px;
}

/* ----- BUSCADOR RÁPIDO ----- */
.caja_buscador_rapido {
    border: 1px solid var(--color-white);
    background-color: var(--color-white);
    font-family: 'Arial';
    font-size: 12px;
    color: var(--color-black);
}

/* ----- TABLAS ----- */
.RowStyle td, .AltRowStyle td, .SelectedRowStyle td, .EditRowStyle td {
    padding: 5px;
    border-right: solid 1px var(--color-panel, #EBEBEB);
}

.RowStyle td {
    background-color: var(--color-white);
}

.AltRowStyle td {
    background-color: var(--color-white);
}

.SelectedRowStyle td {
    background-color: #ffff66;
}

/* ----- TABLA PRECIOS SKIN ----- */
.GridCompras {
    border: 0;
    font-size: 1.1em;
    table-layout: auto;
    border-collapse: collapse;
}

    .GridCompras .HeaderStyle, .PagerStyle {
        border-style: none;
        background-color: var(--color-white);
        height: 25px;
    }

        .GridCompras .HeaderStyle th {
            border-style: none;
            padding: 20px;
            color: var(--color-white);
            background-color: var(--color-black);
            height: 25px;
        }

        .GridCompras .HeaderStyle a {
            text-decoration: none;
            color: var(--color-white);
            display: block;
            text-align: left;
            font-weight: normal;
        }

    .GridCompras .PagerStyle table {
        text-align: center;
        margin: auto;
    }

        .GridCompras .PagerStyle table td {
            border: 0;
            padding: 5px;
        }

    .GridCompras .PagerStyle td {
        border-top: var(--color-black) 0px solid;
    }

    .GridCompras .PagerStyle a {
        color: var(--color-black);
        text-decoration: none;
        padding: 2px 10px 2px 10px;
        border-top: solid 1px #777777;
        border-right: solid 1px #333333;
        border-bottom: solid 1px #333333;
        border-left: solid 1px #777777;
    }

    .GridCompras .PagerStyle span {
        font-weight: bold;
        color: var(--color-black);
        text-decoration: none;
        padding: 2px 10px 2px 10px;
    }

    .GridCompras .RowStyle td, .AltRowStyle td, .SelectedRowStyle td, .EditRowStyle td {
        height: 30px;
        border-width: 0px;
    }

    .GridCompras .RowStyle td {
        background-color: var(--color-panel);
        padding-left: 3px;
        height: 30px;
    }

    .GridCompras .AltRowStyle td {
        background-color: var(--color-white);
        padding-left: 3px;
        background: url("productos/fnd_modelo_alt.png");
    }

    .GridCompras .SelectedRowStyle td {
        background-color: #ffff66;
    }

    .GridCompras a {
        font-size: 1.1em;
        color: var(--color-black);
        text-decoration: none;
    }

        .GridCompras a:hover {
            color: #154aed;
        }

    .GridCompras img {
        height: 150px;
        max-width: 300px;
    }

/* ----- PANEL RESUMEN CESTA ----- */
.panel_resumen_cesta {
    background-color: var(--color-panel, #f5f5f5) !important;
    padding: 0 10px;
    font-size: 18px;
    font-family: samspro;
    font-variant: all-petite-caps;
    min-height: 130px;
    border: 2px solid var(--color-borde, #154aed) !important;
    border-radius: 14px !important;
    box-shadow: 0 3px 8px rgba(0,0,0,0.08);
}

    .panel_resumen_cesta .titulo {
        width: 100%;
        height: 50px;
        font-weight: bold;
        font-size: 22px;
        color: var(--color-black, #181715);
        margin-bottom: 15px;
        text-align: center;
    }

.total-pagar {
    font-size: 26px !important;
    font-weight: bold !important;
    color: var(--color-black, #000);
}

/* ----- CESTA PREMIUM ----- */
.GridCesta {
    border: 0;
    font-family: samspro;
    font-size: 18px;
    table-layout: auto;
    font-variant: all-petite-caps;
    border-collapse: collapse;
    width: 100%;
}

    .GridCesta .HeaderStyle, .PagerStyle {
        border-style: none;
        background-color: var(--color-white);
        height: 50px;
    }

        .GridCesta .HeaderStyle th {
            border-style: none;
            padding: 5px;
            color: var(--color-black, #181715);
            background-color: var(--color-panel, #f5f5f5);
            height: 35px;
            text-align: left;
            font-weight: normal;
        }

        .GridCesta .HeaderStyle a {
            text-decoration: none;
            color: var(--color-white);
            display: block;
            text-align: left;
            font-weight: normal;
        }

    .GridCesta .PagerStyle table {
        text-align: center;
        margin: auto;
    }

        .GridCesta .PagerStyle table td {
            border: 0;
            padding: 5px;
        }

    .GridCesta .PagerStyle td {
        border-top: #154aed 3px solid;
    }

    .GridCesta .PagerStyle a {
        color: var(--color-white);
        text-decoration: none;
        padding: 2px 10px 2px 10px;
        border-top: solid 1px #777777;
        border-right: solid 1px #333333;
        border-bottom: solid 1px #333333;
        border-left: solid 1px #777777;
    }

    .GridCesta .PagerStyle span {
        font-weight: bold;
        color: var(--color-white);
        text-decoration: none;
        padding: 2px 10px 2px 10px;
    }

    .GridCesta .RowStyle td, .AltRowStyle td, .SelectedRowStyle td, .EditRowStyle td {
        height: 30px;
        border-width: 0px;
        color: var(--color-black, #000000);
    }

    .GridCesta .RowStyle td {
        background-color: var(--color-white);
        padding-left: 3px;
        height: 30px;
        color: var(--color-black, #000000);
        font-size: 18px;
    }

    .GridCesta .AltRowStyle td {
        background-color: var(--color-white);
        padding-left: 3px;
        color: #2d2232;
    }

    .GridCesta .SelectedRowStyle td {
        background-color: #ffff66;
    }

    .GridCesta img {
        object-fit: contain !important;
        width: 100%;
        height: 100%;
    }

    /* Bloque moderno cesta premium */
    .GridCesta .grid-item {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        padding: 18px 10px;
        border-bottom: 1px solid var(--color-borde, #154aed40);
        background: var(--color-panel, #f5f5f5);
        border-radius: 12px;
        margin-bottom: 12px;
        transition: all .2s ease;
    }

        .GridCesta .grid-item:hover {
            background: var(--color-panel, #e6f0ff);
        }

.cesta-nombre {
    font-family: samspro;
    font-size: 20px;
    font-weight: bold;
    color: var(--color-black, #181715);
    display: block;
}

.cesta-ref {
    font-family: samspro;
    font-size: 14px;
    color: #6d6b68;
    display: block;
    margin-top: 4px;
}

.cesta-eliminar {
    display: inline-block;
    margin-top: 8px;
    font-size: 14px;
    font-weight: bold;
    color: #b30000 !important;
    cursor: pointer;
    text-decoration: none;
}

    .cesta-eliminar:hover {
        color: #ff1010 !important;
    }

.precio-normal {
    font-size: 14px;
    text-decoration: line-through;
    color: #8a8884;
}

.precio-final {
    display: block;
    margin-top: 4px;
    font-size: 20px;
    font-weight: bold;
    color: var(--color-black, #181715);
}

/* ---- BOTONES ---- */
.button, a.button, input[type=submit], input[type=button], button {
    background: linear-gradient(90deg, var(--color-gold), var(--color-gold-dark)) !important;
    color: var(--color-white) !important;
    border: none !important;
    font-family: samspro !important;
    padding: 14px 28px !important;
    border-radius: 12px !important;
    font-size: 16px !important;
    font-weight: bold !important;
    letter-spacing: 1px;
    width: 100%;
    text-align: center;
    cursor: pointer;
    margin-top: 10px;
    transition: .3s ease;
}

    .button:hover {
        background: linear-gradient(90deg, var(--color-hover), var(--color-gold-dark)) !important;
        transform: scale(1.03);
    }

/* ---- PANEL CUPÓN ---- */
#panelCupon {
    background: var(--color-panel, #f5f5f5) !important;
    border: 2px solid var(--color-borde, #154aed) !important;
    border-radius: 14px !important;
    padding: 20px !important;
    margin-top: 25px;
}

    #panelCupon .titulo {
        font-size: 20px;
        margin-bottom: 12px;
        font-weight: bold;
    }

#txtCodigoDescuento {
    width: 100%;
    padding: 12px;
    font-size: 18px;
    font-family: samspro;
    border: 1px solid var(--color-borde, #154aed) !important;
    border-radius: 8px;
    background: var(--color-white);
    margin-bottom: 12px;
}

#btnValidarCupon {
    background: linear-gradient(90deg, var(--color-gold), var(--color-gold-dark)) !important;
    color: var(--color-white) !important;
    border-radius: 10px !important;
    padding: 12px 20px !important;
    font-family: samspro;
    font-size: 16px;
    font-weight: bold;
    width: 100%;
}

#lMensajeCupon {
    margin-top: 10px;
    font-size: 15px;
    font-family: samspro;
}
