/*
Theme Name: El Padrino Motors
Description: Diseño Corporativo EPM v1.0 - Estructura Profesional
*/

/* =========================================================
   1. IDENTIDAD CORPORATIVA Y GLOBAL (EL PADRINO MOTORS)
   ========================================================= */
body, .site { 
    background-color: #ebebeb !important; 
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important; 
}

/* COLORES BASE EPM */
:root {
    --azul-padrino: #144C81;
    --azul-oscuro: #0d355c;
    --rojo-motors: #D02928;
    --verde-precio: #00a650;
}

/* =========================================================
   2. CABECERA MAESTRA (HEADER) - EL PADRINO MOTORS
   ========================================================= */
#masthead {
    background-color: #ffffff !important;
    border-bottom: 4px solid var(--azul-padrino) !important;
    padding: 0 !important;
}

.site-header .col-full {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

/* Ocultar absolutamente toda la basura nativa de Storefront */
.site-search, 
.header-widget-region, 
.storefront-secondary-navigation,
.site-branding,
.storefront-product-search {
    display: none !important;
}

/* El contenedor del nuevo Logo inyectado desde PHP */
.custom-logo-epm {
    flex: 0 0 auto !important;
    padding: 15px 0 !important;
}

.custom-logo-epm img {
    max-height: 90px !important; 
    width: auto !important;
    display: block !important;
}

/* Menú Principal a la derecha */
.storefront-primary-navigation, .main-navigation {
    flex: 1 !important;
    display: flex !important;
    justify-content: flex-end !important;
    margin: 0 !important;
    width: auto !important;
}

.main-navigation ul.menu {
    display: flex !important;
    justify-content: flex-end !important;
    margin: 0 !important;
}

.main-navigation ul.menu > li > a {
    color: var(--azul-padrino) !important;
    font-weight: 600 !important;
    text-transform: uppercase;
}

.main-navigation ul.menu > li > a:hover {
    color: var(--rojo-motors) !important;
}

/* =========================================================
   3. CATÁLOGO DE PRODUCTOS (LA TIENDA)
   ========================================================= */
.site-main { max-width: 1200px !important; margin: 40px auto !important; padding: 0 20px !important; }

ul.products {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important;
    gap: 24px !important;
}

ul.products::before, ul.products::after { display: none !important; }

ul.products li.product {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    background: #ffffff !important;
    border-radius: 8px !important;
    padding: 20px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1) !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    border: none !important;
    box-sizing: border-box !important;
}

ul.products li.product img { 
    width: 100% !important; 
    height: 200px !important; 
    object-fit: contain !important; 
    margin-bottom: 15px !important; 
}

ul.products li.product .woocommerce-loop-product__title { 
    font-size: 16px !important; 
    color: #333 !important; 
    font-weight: 400 !important; 
}

/* PRECIO CATÁLOGO */
.price .woocommerce-Price-amount { 
    font-size: 24px !important; 
    font-weight: 300 !important; 
    color: #333 !important; 
}

.price .woocommerce-Price-currencySymbol { 
    font-size: 14px !important; 
    vertical-align: top !important; 
    margin-top: 4px !important;
    display: inline-block;
}

.price > span:last-child { 
    display: block !important; 
    font-size: 14px !important; 
    color: var(--verde-precio) !important; 
}

/* BOTÓN CATÁLOGO (ESTILO EPM) */
ul.products li.product .button {
    margin-top: auto !important;
    background-color: rgba(20, 76, 129, 0.1) !important; 
    color: var(--azul-padrino) !important;
    border-radius: 6px !important;
    padding: 12px !important;
    font-weight: 600 !important;
    text-align: center !important;
    width: 100% !important;
    display: block !important;
}

ul.products li.product .button:hover { 
    background-color: var(--azul-padrino) !important;
    color: #ffffff !important;
}

/* =========================================================
   4. PÁGINA DE PRODUCTO INDIVIDUAL (MODERNIZADA)
   ========================================================= */
.single-product .site-main { 
    background: #ffffff !important; 
    border-radius: 8px !important; 
    box-shadow: 0 1px 3px 0 rgba(0,0,0,.08) !important; 
    padding: 40px !important; 
    border: 1px solid #ededed !important;
}

.single-product div.product { 
    display: flex !important; 
    flex-wrap: wrap !important; 
    gap: 40px !important; 
    background: transparent !important; 
}

/* Área de la Imagen */
.single-product .woocommerce-product-gallery {
    width: calc(65% - 40px) !important;
    border: 1px solid #ededed !important;
    border-radius: 8px !important;
    padding: 20px !important;
}

/* La Caja de Compra (Con sombra y flotante) */
.single-product .summary { 
    width: 35% !important; 
    border: 1px solid #ededed !important; 
    border-radius: 8px !important; 
    padding: 32px !important; 
    align-self: flex-start !important; 
    box-shadow: 0 4px 16px rgba(0,0,0,.04) !important;
}

/* Botón de Compra */
.single-product .summary .button {
    background-color: #3483fa !important; 
    color: #ffffff !important;
    border-radius: 6px !important;
    padding: 16px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    width: 100% !important;
    transition: all 0.2s ease !important;
}

.single-product .summary .button:hover {
    background-color: #2968c8 !important;
}

/* =========================================================
   5. REFINAMIENTO DE CUADRO DE COMPRA (CLON ML)
   ========================================================= */
/* Meta (Marca y Condición) */
.epm-ml-meta { margin-bottom: 8px !important; font-size: 14px !important; }
.epm-ml-brand { color: #3483fa !important; text-decoration: none !important; font-weight: 400 !important; display: block !important; margin-bottom: 5px !important; }
.epm-ml-condition { color: #999 !important; font-size: 14px !important; }

/* Título */
.epm-ml-title { font-size: 22px !important; font-weight: 600 !important; color: #333 !important; line-height: 1.25 !important; margin: 0 0 20px 0 !important; }

/* Precios */
.epm-ml-price-block { margin-bottom: 25px !important; }
.epm-ml-old-price { font-size: 14px !important; color: #999 !important; text-decoration: line-through !important; margin-bottom: 2px !important; }
.epm-ml-price-row { display: flex !important; align-items: center !important; gap: 10px !important; margin-bottom: 5px !important; }
.epm-ml-current-price { font-size: 36px !important; font-weight: 300 !important; color: #333 !important; line-height: 1 !important; }
.epm-ml-discount { font-size: 14px !important; color: #00a650 !important; font-weight: 400 !important; }
.epm-ml-price-bs { font-size: 16px !important; color: #333 !important; margin-bottom: 8px !important; }

/* Enlaces Azules ML */
.epm-ml-link { color: #3483fa !important; text-decoration: none !important; font-size: 14px !important; font-weight: 400 !important; transition: 0.2s !important; display: inline-block; margin-top: 5px;}
.epm-ml-link:hover { color: #2968c8 !important; }

/* Información de Envío */
.epm-ml-shipping { margin-bottom: 25px !important; }
.epm-ml-shipping-title { font-weight: 600 !important; color: #333 !important; margin: 0 0 2px 0 !important; font-size: 15px !important; }

/* Estado del Stock */
.epm-ml-stock { margin-bottom: 20px !important; }
.epm-ml-in-stock { font-weight: 600 !important; color: #333 !important; font-size: 16px !important; margin: 0 0 10px 0 !important; }

/* Ocultar selector de cantidad por defecto de WooCommerce */
.woocommerce-variation-add-to-cart .quantity, div.product form.cart .quantity { display: none !important; } 
.single-product .summary form.cart { margin-bottom: 0 !important; }

/* Modal de Medios de Pago */
.epm-payment-item {
    padding: 15px 0;
    border-bottom: 1px solid #eee;
    display: flex;
    flex-direction: column;
}
.epm-payment-item strong {
    color: #333;
    font-size: 16px;
    margin-bottom: 4px;
}
.epm-payment-item span {
    color: #666;
    font-size: 14px;
}

/* =========================================================
   6. SECCIONES APILADAS (CARACTERÍSTICAS, DESC, PREGUNTAS)
   ========================================================= */
.epm-seccion-producto {
    width: 100% !important; 
    border-top: 1px solid #ededed !important;
    padding: 40px 0 0 0 !important;
    margin-top: 10px !important;
    clear: both !important;
    order: 10 !important; 
}

.epm-titulo-seccion {
    font-size: 22px !important;
    font-weight: 400 !important;
    color: #333 !important;
    margin-bottom: 25px !important;
}

.epm-grid-caracteristicas {
    display: flex !important;
    gap: 40px !important;
    flex-wrap: wrap !important;
}

.epm-columna-caracteristicas {
    flex: 1 !important;
    min-width: 300px !important;
}

.epm-columna-caracteristicas h3 {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #333 !important;
    margin-bottom: 15px !important;
}

.epm-tabla-caracteristicas {
    width: 100% !important;
    border-collapse: collapse !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    border: 1px solid #ededed !important;
    margin-bottom: 20px !important;
}

.epm-tabla-caracteristicas th,
.epm-tabla-caracteristicas td {
    padding: 16px 20px !important;
    text-align: left !important;
    font-size: 14px !important;
    border-bottom: 1px solid #ededed !important;
}

.epm-tabla-caracteristicas th {
    background-color: #f5f5f5 !important;
    color: #000 !important;
    font-weight: 600 !important;
    width: 40% !important;
}

.epm-tabla-caracteristicas td { background-color: #ffffff !important; color: #333 !important; }
.epm-tabla-caracteristicas tr:nth-child(even) th { background-color: #ebebeb !important; }
.epm-tabla-caracteristicas tr:nth-child(even) td { background-color: #f9f9f9 !important; }
.epm-tabla-caracteristicas tr:last-child th, .epm-tabla-caracteristicas tr:last-child td { border-bottom: none !important; }

.epm-contenido-descripcion { 
    font-size: 20px !important; 
    color: #666 !important; 
    line-height: 1.6 !important; 
    font-weight: 300 !important;
}

.epm-caja-preguntas { 
    background: #f5f5f5 !important; 
    padding: 24px !important; 
    border-radius: 8px !important; 
    border: 1px solid #eee !important; 
}

/* Limpieza final y Opiniones */
.widget-area, #secondary, #tertiary, .storefront-sorting { display: none !important; }
#reviews h2 { display: none !important; } 
#reviews .commentlist { padding-left: 0 !important; }
#reviews .commentlist li { list-style: none !important; border-bottom: 1px solid #eee !important; padding: 20px 0 !important; }
#reviews .comment-text { background: #f9f9f9 !important; padding: 15px !important; border-radius: 8px !important; border: 1px solid #eee !important; margin-top: 10px !important;}


/* =========================================================
   7. DISEÑO PÁGINA DE LOGIN Y REGISTRO (ESTILO EPM)
   ========================================================= */
.woocommerce-account:not(.logged-in) .site-main { max-width: 900px !important; margin: 60px auto !important; }
.woocommerce-account:not(.logged-in) .woocommerce { display: flex !important; flex-wrap: wrap !important; justify-content: center !important; gap: 40px !important; }
.woocommerce-account:not(.logged-in) .u-column1, .woocommerce-account:not(.logged-in) .u-column2 { background: #ffffff !important; padding: 40px !important; border-radius: 8px !important; box-shadow: 0 1px 3px rgba(0,0,0,0.1) !important; width: 100% !important; max-width: 400px !important; border: 1px solid #e5e5e5 !important; float: none !important; }
.woocommerce-account:not(.logged-in) h2 { font-size: 24px !important; font-weight: 600 !important; margin-bottom: 25px !important; color: #333 !important; text-align: center !important; }
.woocommerce-account:not(.logged-in) .woocommerce-Input { width: 100% !important; padding: 12px 15px !important; border: 1px solid #ccc !important; border-radius: 6px !important; margin-bottom: 20px !important; }
.woocommerce-account:not(.logged-in) .woocommerce-Button { width: 100% !important; background-color: var(--azul-padrino) !important; color: #fff !important; border: none !important; padding: 15px !important; border-radius: 6px !important; font-weight: 600 !important; }
.woocommerce-account:not(.logged-in) .woocommerce-Button:hover { background-color: var(--azul-oscuro) !important; }

/* =========================================================
   8. DASHBOARD / MI CUENTA (ESTILO MERCADOLIBRE)
   ========================================================= */
.woocommerce-account .site-main { max-width: 1200px !important; margin: 40px auto !important; padding: 0 20px !important; }
.woocommerce-account .woocommerce { display: flex !important; gap: 30px !important; align-items: flex-start !important; flex-wrap: nowrap !important; }
.woocommerce-MyAccount-navigation { width: 250px !important; flex-shrink: 0 !important; }
.woocommerce-MyAccount-navigation ul { list-style: none !important; padding: 0 !important; margin: 0 !important; background: transparent !important; }
.woocommerce-MyAccount-navigation ul li { border: none !important; margin-bottom: 5px !important; }
.woocommerce-MyAccount-navigation ul li a { display: block !important; padding: 12px 15px !important; color: #666 !important; text-decoration: none !important; font-size: 15px !important; border-radius: 6px !important; transition: 0.2s !important; }
.woocommerce-MyAccount-navigation ul li a:hover { background: rgba(20, 76, 129, 0.1) !important; color: #144C81 !important; }
.woocommerce-MyAccount-navigation ul li.is-active a { background: #fff !important; color: #144C81 !important; font-weight: 600 !important; box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important; border-left: 4px solid #144C81 !important; }
.woocommerce-MyAccount-content { flex-grow: 1 !important; background: #fff !important; border-radius: 8px !important; border: 1px solid #e5e5e5 !important; padding: 30px !important; min-height: 400px !important; width: 100% !important; }
.woocommerce-MyAccount-content > p, .woocommerce-MyAccount-content > .woocommerce-notices-wrapper, .woocommerce-MyAccount-content > .woocommerce-info { display: none !important; }

/* Centrar el ojo de la contraseña en el Login/Registro */
.woocommerce form .show-password-input {
    top: 50% !important;
    transform: translateY(-100%) !important; 
    right: 15px !important;
}

/* Estilo moderno para los errores de WooCommerce */
.woocommerce-error {
    background-color: #fff0f0 !important;
    border-left: 5px solid #D02928 !important; /* Rojo Motors */
    color: #333 !important;
    border-radius: 8px !important;
    padding: 20px !important;
    box-shadow: 0 4px 12px rgba(208, 41, 40, 0.1) !important;
    list-style: none !important;
    margin-bottom: 30px !important;
}

.woocommerce-error li {
    padding-left: 10px !important;
}

.woocommerce-error li strong {
    color: #D02928 !important;
}

/* Forzar que el mensaje de error sea lo primero que se vea */
.woocommerce-error, .woocommerce-message {
    scroll-margin-top: 150px; /* Crea un espacio virtual para que el scroll no lo pegue al techo */
    position: relative !important;
    z-index: 999 !important;
}