﻿blockquote::before {
  content: none !important;
}

/* === Primario dinámico desde Website Settings / Document colors === */
:root {
  --club-oima-primary: var(--o-color-1, var(--bs-primary, #de6528));
  --club-oima-primary-rgb: var(--o-color-1-rgb, var(--bs-primary-rgb, 222, 101, 40));
  --club-oima-primary-hover: color-mix(in srgb, var(--club-oima-primary) 86%, #000000);
  --club-oima-primary-soft: rgba(var(--club-oima-primary-rgb), 0.15);
  --club-oima-primary-track: rgba(var(--club-oima-primary-rgb), 0.25);
}
.o_wizard_circle_progress {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative;
    text-align: center;
}

.my_cart_quantity.badge.bg-primary,
.my_cart_quantity.badge.bg-primary * {
    color: #ffffff !important;
}

.s_dynamic_snippet_content.bg-white {
    border-radius: 12px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

#o_wevent_event_main,
#o_wevent_event_main .container,
#o_wevent_event_main .row,
#o_wevent_event_main .col,
#o_wevent_event_main .o_wevent_event_main_sidebar {
    background-color: #f8f7f3 !important;
}

/* Formulario sin bordes ni sombras */
.oe_login_form {
    background: white !important;
    border: none !important;
    box-shadow: none !important;
    padding: 2rem !important;
    border-radius: 0 !important;
}

/* Entradas (gris â†’ primario) */
.oe_login_form .form-control {
    border: 1px solid var(--club-oima-primary) !important;
    box-shadow: none !important;
    border-radius: 0.25rem !important;
}

/* Botones con apariencia sencilla */
.oe_login_buttons .btn {
    border-radius: 0.25rem !important;
    box-shadow: none !important;
}

/* Elimina mÃ¡rgenes internos extra */
.oe_login_form .mb-3,
.oe_login_form .pt-3,
.oe_login_form .gap-1,
.oe_login_buttons {
    margin: 0 !important;
    padding: 0.5rem 0 !important;
}

/* Contenedor principal centrado y con fondo blanco */
.oe_website_login_container {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2rem 1rem;
    background-color: white;
    min-height: 100vh; /* centra verticalmente tambiÃ©n */
    box-sizing: border-box;
    overflow-x: hidden;
}

/* Formulario limpio, centrado, sin bordes ni sombras */
.oe_signup_form {
    width: 100% !important;
    max-width: 420px;
    background-color: white !important;
    border: none !important;
    box-shadow: none !important;
    padding: 1.5rem !important;
    margin: 0 auto !important;
    box-sizing: border-box;
}

/* Campos individuales bien espaciados */
.oe_signup_form .form-group,
.oe_signup_form .field-login,
.oe_signup_form .field-name,
.oe_signup_form .field-password,
.oe_signup_form .field-confirm_password {
    margin-bottom: 1rem !important;
}

/* Inputs (gris â†’ primario) */
.oe_signup_form input {
    width: 100% !important;
    padding: 0.6rem !important;
    font-size: 1rem !important;
    border: 1px solid var(--club-oima-primary) !important;
    border-radius: 0.25rem !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    background-color: white !important;
}

/* Botones del registro */
.oe_signup_form .btn {
    width: 100% !important;
    border-radius: 0.25rem !important;
    box-shadow: none !important;
    font-size: 1rem !important;
}

/* No sobrescribas con media queries innecesarias */
@media screen and (max-width: 576px) {
    .oe_signup_form { padding: 1rem !important; }
    .oe_signup_form input, .oe_signup_form .btn { font-size: 1rem !important; }
}

.oe_website_login_container {
    display: block !important;
    padding-top: 0.5rem !important;
    margin-top: 0 !important;
    min-height: auto !important;
}

/* Oculta completamente el botÃ³n de wishlist en cualquier vista */
.o_add_wishlist_dyn {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}

/* PÃ­ldoras (gris â†’ primario) */
.o_variant_pills {
    border-radius: 6px !important;
    padding: 8px 16px !important;
    border: 1px solid var(--club-oima-primary) !important;
    background-color: white !important;
    color: var(--club-oima-primary) !important;
    box-shadow: none !important;
    font-weight: 500 !important;
}
.o_variant_pills.active,
.o_variant_pills:hover {
    background-color: var(--club-oima-primary) !important;
    border-color: var(--club-oima-primary) !important;
    color: #000 !important;
}

/* Ocultar botÃ³n con Ã­cono de corazÃ³n */
button.o_add_wishlist, a.o_add_wishlist { display: none !important; }

/* Sidebar card spacing (unchanged) */
#sidebar_content.card { padding: 1.5rem; border-radius: 8px; }

/* Price container */
.o_amount_total {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 0.25rem;
    font-size: 1.75rem;
    font-weight: 600;
    margin-bottom: 1rem;
    white-space: nowrap;
}
.o_amount_total .o_currency_symbol,
.o_amount_total .o_currency_value { font-size: inherit; font-weight: inherit; }

#sale_order_sidebar_button { margin-top: 1rem; margin-bottom: 1rem; }

/* General spacing para otros elementos */
.row.o_portal_sale_sidebar .list-group-item,
.row.o_portal_sale_sidebar h6,
.row.o_portal_sale_sidebar small,
.row.o_portal_sale_sidebar p {
    margin-left: 0.25rem;
    margin-right: 0.25rem;
}

/* General layout */
.o_amount_total {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 0.25rem;
    font-weight: 600;
    margin-bottom: 1rem;
    white-space: nowrap;
    font-size: 1.5rem;
}
@media (max-width: 576px) {
    .o_amount_total { font-size: 1.75rem; }
}
.o_amount_total .o_currency_symbol,
.o_amount_total .o_currency_value { font-size: inherit; font-weight: inherit; }

/* Total */
h2[data-id="total_amount"] {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 0.25rem;
    font-size: 1.5rem;
    font-weight: 600;
    white-space: nowrap;
    margin-bottom: 1rem;
}
@media (max-width: 576px) {
    h2[data-id="total_amount"] { font-size: 1.75rem; }
}

/* Carrusel productos */
.s_products_carousel .swiper-slide {
    width: auto !important;
    max-width: 45% !important;
    flex: 0 0 auto;
    scroll-snap-align: start;
}
@media (min-width: 576px) { .s_products_carousel .swiper-slide { max-width: 33.33% !important; } }
@media (min-width: 992px) { .s_products_carousel .swiper-slide { max-width: 25% !important; } }

@media (max-width: 767.98px) {
    .o_wevent_sponsor_wrapper.d-none.d-md-block { display: block !important; }
}

/* Elimina lÃ­nea horizontal no deseada en el formulario */
.oe_signup_form hr,
.oe_signup_form::after,
.oe_signup_form .form-control::after,
.oe_signup_form .form-control:after {
    display: none !important;
    content: none !important;
    border: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
.oe_signup_form .field-password {
    border-bottom: none !important;
    box-shadow: none !important;
    background-image: none !important;
}

/* Oculta completamente el progreso visual de fortaleza de contraseÃ±a */
.oe_signup_form progress#progress {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* (verde â†’ primario) */
main { background-color: var(--club-oima-primary) !important; }

/* Atributos alineados a la izquierda */
ul.js_attribute_value,
ul.js_attribute_value li,
ul.js_attribute_value li label,
ul.js_attribute_value li label * {
    text-align: left !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
}
.o_variant_pills.btn, .o_variant_pills_input_value {
    text-align: left !important;
    justify-content: flex-start !important;
}

body[data-main-object="product.template"] .o_searchbar_form { display: none !important; }
.o_wsale_product_page .o_searchbar_form { display: none !important; }

/* PÃ­ldoras: texto largo */
label.o_variant_pills_input_value {
    justify-content: flex-start !important;
    text-align: left !important;
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: break-word;
    width: 100% !important;
}

/* Padding horizontal en el resumen del carrito */
.o_total_card.card { padding-left: 1rem !important; padding-right: 1rem !important; }
@media (max-width: 768px) {
    #o_wsale_total_accordion_item { padding-left: 1rem; padding-right: 1rem; }
}

/* Tarjeta del resumen */
#o_wsale_total_accordion {
    border-radius: 0.75rem;
    margin-bottom: 2rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
#o_wsale_total_accordion .accordion-item { border-radius: 0.75rem !important; overflow: hidden !important; }

/* (verde â†’ primario) */
#o_wsale_total_accordion {
    background-color: var(--club-oima-primary) !important;
    border-radius: 10px;
    box-shadow: none !important;
    padding: 1.25rem !important;
    margin-bottom: 1.5rem !important;
    border: none !important;
}

/* Popup (verde â†’ primario) */
.modal-body { background-color: var(--club-oima-primary) !important; }
.modal-body, .modal-body * { color: #000 !important; }

/* BotÃ³n de acompaÃ±amiento (sin selecciÃ³n) â€“ verde â†’ primario */
label.btn-outline-secondary {
    background-color: var(--club-oima-primary) !important;
    border: 2px solid var(--club-oima-primary);
    color: #000 !important;
    margin-bottom: 0.5rem;
    border-radius: 10px;
    padding: 0.6rem 1rem;
    font-size: 1rem;
    width: 100%;
    text-align: left;
}
/* BotÃ³n seleccionado â€“ verde â†’ primario */
label.btn-outline-secondary.active,
label.btn-outline-secondary:has(input:checked) {
    background-color: var(--club-oima-primary) !important;
    color: #000 !important;
    font-weight: bold;
}

/* Oculta el campo CÃ³digo Postal (zip) */
#div_zip { display: none !important; }

/* NÃºmero del carrito en blanco sobre primario */
header#top .o_wsale_my_cart sup.my_cart_quantity.badge.bg-primary {
  --bs-badge-color: #fff !important;
  color: #fff !important;
}

/* Video YouTube sin barras negras (forzar 16:9) */
.media_iframe_video {
  position: relative !important;
  width: 100% !important;
  /* truco 16:9 */
  padding-top: 56.25% !important; /* 9/16 = 0.5625 */
  height: 0 !important;
  overflow: hidden !important;
}

.media_iframe_video iframe {
  position: absolute !important;
  top: 0; left: 0;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  border: 0 !important;
}

/* Borde redondeado para el video */
.media_iframe_video {
  border-radius: 4px !important;
  overflow: hidden !important;
}

.media_iframe_video iframe {
  border-radius: 4px !important;
}

element.style {
    background-image: linear-gradient(120deg, var(--club-oima-primary), var(--club-oima-primary));
    position: relative;
}

.o_wslides_gradient {
    background-image: linear-gradient(120deg, var(--club-oima-primary), var(--club-oima-primary)) !important;
}

.o_wprofile_gradient {
    background-image: linear-gradient(120deg, var(--club-oima-primary), var(--club-oima-primary)) !important;
}

.o_wslides_js_course_join_link{
    background-color: var(--club-oima-primary);
}

.text-black-25{
    color: #ffffff!important;
}

.o_wslides_course_main .o_wslides_nav_tabs .nav-link:hover {
    background: var(--club-oima-primary) !important;
    border-color: var(--club-oima-primary) !important;
}

.o_wslides_course_main .o_wslides_nav_tabs .nav-link.active {
    color: color-mix(in srgb, var(--club-oima-primary) 62%, #ffffff);
    background: color-mix(in srgb, var(--club-oima-primary) 62%, #ffffff);
    border-color: var(--club-oima-primary);
}

.o_wslides_course_main .o_wslides_nav_tabs .text-o-color-1 {
    color: var(--club-oima-primary) !important;
}

.o_wprofile_nav_tabs .nav-link:hover {
    background: var(--club-oima-primary) !important;
}

.o_wslides_quiz_modal .tooltip > .tooltip-inner {
    background-color: var(--club-oima-primary);
}

.o_wslides_quiz_modal .tooltip > .arrow {
    border-top: 5px solid var(--club-oima-primary);
}

.o_wprofile_wrap table {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    display: block;
}

.o_wprofile_wrap img {
    max-width: 100%;
    height: auto;
}

/* BotÃ³n primario en Oima (ahora primario) */
button.btn.btn-primary.w-100,
a.btn.btn-primary.w-100 {
  background-color: var(--club-oima-primary) !important; /* relleno */
  color: #ffffff !important;            /* texto blanco */
  border: none !important;              /* sin borde */
}

/* Efecto hover (cuando el mouse pasa encima) */
button.btn.btn-primary.w-100:hover,
a.btn.btn-primary.w-100:hover {
  background-color: var(--club-oima-primary) !important;
  color: var(--club-oima-primary) !important;
}

/* Redondear el recuadro del evento (cover) en Odoo Website Event */
.o_record_cover_container,
.o_record_cover_component.o_record_cover_filter.oe_black,
.o_record_cover_component.o_record_cover_filter.oe_black::before {
  border-radius: 6px !important;
  overflow: hidden !important;
}

/* Si el fondo es una imagen inline con background-image */
.o_record_cover_component.o_record_cover_filter.oe_black[style*="background-image"] {
  border-radius: 6px !important;
  background-clip: padding-box !important;
  overflow: hidden !important;
}

/* === Forzar texto blanco en estados "seleccionado/activo/marcado" === */
/* Aplica a clases comunes, atributos accesibles y controles marcados */
:where(
  .active,
  .selected,
  [aria-selected="true"],
  [aria-pressed="true"],
  [role="tab"][aria-selected="true"],
  .nav-link.active,
  .nav-link:active,
  .o_variant_pills.active,
  .o_variant_pills:focus,
  .o_variant_pills:hover,
  .btn.active,
  button.active,
  .badge.active,
  .selected-item,
  .is-selected
) {
  color: #ffffff !important;
  /* para iconos SVG incrustados */
  fill: #ffffff !important;
  stroke: #ffffff !important;
  /* en caso de badges/boostrap custom properties */
  --bs-badge-color: #ffffff !important;
}

/* Controles de input (radio/checkbox) con label colindante */
input[type="radio"]:checked + label,
input[type="checkbox"]:checked + label,
input[type="radio"]:checked ~ label,
input[type="checkbox"]:checked ~ label {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}

/* Etiquetas que contienen inputs marcados (fallback wide selectors) */
label:has(input:checked),
li:has(.active),
[aria-checked="true"],
[aria-current="true"] {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}

/* Forzar en estados de foco / teclado para accesibilidad */
:where(.active, .selected, [aria-selected="true"], [aria-pressed="true"]) :focus,
:where(.active, .selected, [aria-selected="true"], [aria-pressed="true"]) :focus-visible,
:where(.active, .selected, [aria-selected="true"], [aria-pressed="true"]):focus,
:where(.active, .selected, [aria-selected="true"], [aria-pressed="true"]):focus-visible {
  color: #ffffff !important;
  outline-color: #ffffff !important;
}

/* Aumentar especificidad para tabs y navs de Odoo */
.o_wslides_nav_tabs .nav-link.active,
.o_wprofile_nav_tabs .nav-link.active,
.o_sale_product_configurator_ptav_pills .o_variant_pills.active {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
  --bs-badge-color: #ffffff !important;
}

/* Botones primarios que estÃ©n "selected/active" */
button.btn.btn-primary.active,
a.btn.btn-primary.active,
button.btn.btn-primary:active,
a.btn.btn-primary:active {
  color: #ffffff !important;
}

/* Si algÃºn elemento tiene color por herencia dentro del elemento activo, forzamos tambiÃ©n a todos sus hijos */
:where(.active, .selected, [aria-selected="true"], [aria-pressed="true"]) * {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}


.o_wslides_js_channel_tag_add.badge.text-bg-primary.fw-normal.m-1.o_not_editable {
    background-color: var(--club-oima-primary) !important;
    color: #ffffff !important;
    --bs-badge-bg: var(--club-oima-primary) !important;
    --bs-badge-color: #ffffff !important;
}

/* Bordes redondeados para la barra de navegaciÃ³n */
.o_slides_nav_navbar_right .navbar,
.navbar.o_slides_nav_navbar_right {
    border-radius: 4px !important;
    overflow: hidden; /* evita que el contenido sobresalga */
}

/* Contenedor de la barra de navegaciÃ³n */
.container.mt16.o_wslides_home_nav .navbar {
    border-radius: 4px !important;
    background-color: #ffffff !important;
    padding: 8px !important;
    overflow: hidden !important;
}

/* Input group completo (input + botÃ³n) */
.container.mt16.o_wslides_home_nav .input-group {
    border-radius: 4px !important;
    overflow: hidden !important;
}

/* Input del buscador */
.container.mt16.o_wslides_home_nav .search-query {
    border-radius: 0 !important; /* se controla desde el input-group */
    padding-left: 12px !important;
    padding-right: 12px !important;
}

/* BotÃ³n */
.container.mt16.o_wslides_home_nav .btn.o_search_button {
    border-radius: 0 !important; /* lo controla el input-group */
}

/* Forzar texto e Ã­conos negros dentro de los items de la lista de slides */
li.o_wslides_slides_list_slide.o_wslides_js_list_item {
    color: #000000 !important;
}

li.o_wslides_slides_list_slide.o_wslides_js_list_item * {
    color: #000000 !important;
    fill: #000000 !important; /* para SVGs si los hubiera */
}


/* Sidebar de contenido del curso â€“ forzar todo a negro */
ul.list-unstyled.collapse.show li,
ul.list-unstyled.collapse.show li * {
    color: #000000 !important;
    fill: #000000 !important; /* para SVGs */
}

/* BotÃ³n de marcar como hecho */
ul.list-unstyled.collapse.show .o_wslides_button_complete {
    color: #000000 !important;
    border-color: #000000 !important;
    background-color: transparent !important;
}

/* Ãconos dentro del sidebar */
ul.list-unstyled.collapse.show i.fa {
    color: #ffffff !important;
}

/* Quitar borde del botÃ³n del Ã­cono */
.o_wslides_sidebar_done_button .o_wslides_button_complete {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Quitar borde del Ã­cono dentro del botÃ³n */
.o_wslides_sidebar_done_button .o_wslides_button_complete i {
    border: none !important;
    outline: none !important;
}

/* Estilo de la pestaÃ±a activa en el perfil */
.o_wprofile_nav_tabs .nav-link.active {
    background-color: var(--club-oima-primary) !important;
    color: #ffffff !important;
    border-color: var(--club-oima-primary) !important;
}

/* Para que el texto dentro (incluye spans o contadores) tambiÃ©n sea blanco */
.o_wprofile_nav_tabs .nav-link.active * {
    color: #ffffff !important;
}

/* Opcional: quitar el fondo azul/gris automÃ¡tico de Bootstrap */
.o_wprofile_nav_tabs .nav-link {
    background-color: transparent !important;
    color: var(--club-oima-primary) !important;
}

/* Hover mÃ¡s visible */
.o_wprofile_nav_tabs .nav-link:hover {
    background-color: rgba(var(--club-oima-primary-rgb), 0.15) !important;
    color: var(--club-oima-primary) !important;
}

/* Forzar texto negro en todas las pestaÃ±as del perfil */
.o_wprofile_tabs_content,
.o_wprofile_tabs_content * {
    color: #000 !important;
}

/* AÃ±adir un pequeÃ±o espacio entre la lÃ­nea horizontal y las tarjetas */
#profile_about_badge .row.mx-n1 > div {
    margin-top: 10px !important;
}

/* Si tambiÃ©n quieres espacio en "Cursos en progreso" */
#profile_tab_content_about .card,
#profile_about_badge .card {
    margin-top: 10px !important;
}

/* Aplica separaciÃ³n a TODAS las tarjetas dentro del perfil */
.o_wforum_profile_tab .card {
    margin-top: 12px !important; /* separa la tarjeta del tÃ­tulo */
}

/* Opcional: reducir separaciÃ³n inferior excesiva */
.o_wforum_profile_tab .card:last-child {
    margin-bottom: 8px !important;
}

.o_card_people_name {
    margin-top: 20px !important;
}


.tab-content, 
.tab-content * {
    color: #222 !important;
}

/* Forzar color de texto global en zonas donde estÃ¡ saliendo blanco */
.o_wslides_lesson_nav,
.o_wslides_lesson_nav * {
    color: #333 !important;
}

/* Corregir tabs activos (nav-link active) */
.nav-link.active,
.nav-link.active * {
    color: #333 !important;
}

/* Corregir texto dentro de tab-content (donde aparece blanco) */
.tab-content,
.tab-content * {
    color: #333 !important;
}

.btn-primary,
.oe_unremovable.btn_cta {
    background-color: var(--club-oima-primary) !important;
    border-color: var(--club-oima-primary) !important;
    color: #ffffff !important;
}

/* Forzar la flecha a blanco */
.fa-angle-right {
    color: #fff !important;
}

/* Forzar el texto del botÃ³n a blanco */
a.btn-custom .text-o-color-4,
a.btn-custom,
a.btn-custom * {
    color: #fff !important;
}

.nav-link .fa-home {
    color: white !important;
}

.tooltip.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: var(--club-oima-primary) !important;
}

.tooltip.bs-tooltip-bottom .tooltip-arrow::before {
    border-bottom-color: var(--club-oima-primary) !important;
}

.tooltip.bs-tooltip-start .tooltip-arrow::before {
    border-left-color: var(--club-oima-primary) !important;
}

.tooltip.bs-tooltip-end .tooltip-arrow::before {
    border-right-color: var(--club-oima-primary) !important;
}


.tooltip-inner {
    background-color: var(--club-oima-primary) !important;
    color: #fff !important; /* (opcional) si quieres que el texto sea blanco */
}

button.btn.btn-primary.w-100,
a.btn.btn-primary.w-100 {
  background-color: var(--club-oima-primary) !important;
  color: #ffffff !important; /* âœ” texto blanco */
  border: none !important;
}

/* Ãšltimo Ã­tem del breadcrumb en naranja */
.breadcrumb-item.active,
.breadcrumb-item.active span {
    color: var(--club-oima-primary) !important;
}

/* Mantener el texto blanco en hover, focus y active */
button.btn.btn-primary.w-100:hover,
button.btn.btn-primary.w-100:focus,
button.btn.btn-primary.w-100:active,
a.btn.btn-primary.w-100:hover,
a.btn.btn-primary.w-100:focus,
a.btn.btn-primary.w-100:active {
    color: #ffffff !important; /* texto blanco siempre */
}

button.o_wslides_button_complete.btn.btn-sm > i.o_wslides_slide_completed.fa-check-circle,
button.o_wslides_button_complete.btn.btn-sm > i.o_wslides_slide_completed.fa-check-circle::before {
  color: var(--club-oima-primary) !important;
  /* asegÃºrate tambiÃ©n del color de texto heredado */
  -webkit-text-fill-color: var(--club-oima-primary) !important;
  text-fill-color: var(--club-oima-primary) !important;
}

/* Solo bordes redondeados para imÃ¡genes de producto (Odoo 18 CE) */
#product_detail .o_wsale_product_images img,
#product_detail .o_carousel_product_outer img,
#product_detail .o_product_configurator_image img,
#product_detail img.img-fluid.oe_unmovable.product_detail_img.w-100 {
  border-radius: 12px !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}

/* Asegurar que el contenedor recorte la imagen para que el border-radius sea efectivo */
#product_detail .o_wsale_product_images,
#product_detail .o_carousel_product_outer,
#product_detail .o_product_configurator_image {
  overflow: hidden !important;
  border-radius: 4px !important;
}

/* Estados disabled (mantener color naranja visible, pero indicar disabled) */
button.o_wslides_button_complete[disabled],
button.o_wslides_button_uncompleted[disabled] {
  opacity: 100 !important;
  cursor: default !important;
}
button.o_wslides_button_complete[disabled] i,
button.o_wslides_button_uncompleted[disabled] i {
  color: var(--club-oima-primary) !important;
  opacity: 100 !important;
}

.fa-file-text-o,
.fa-file-text-o::before {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: var(--club-oima-primary) !important;
    content: "\f0f6" !important; /* este es el Ã­cono file-text-o */
}

/* SOLO ESTO QUEDA (NO TOCA MODALES / NO TOCA PRODUCT CONFIGURATOR) */

/* Fondo general blanco (sitio) */
#wrapwrap,
main,
body {
  background-color: #ffffff !important;
}

/* Redondear imagen de producto en pÃ¡gina de producto (NO modal) */
#product_detail .o_wsale_product_images {
  border-radius: 4px !important;
  overflow: hidden !important;
}

/* Si tu tema usa esta clase en la pÃ¡gina (NO modal) */
#product_detail img.img-fluid.oe_unmovable.product_detail_img.w-100 {
  border-radius: 15px !important;
}

#modal_attendees_registration .modal-content,
#modal_attendees_registration .modal-header,
#modal_attendees_registration .modal-body,
#modal_attendees_registration .modal-footer,
#modal_attendees_registration .modal-body .row,
#modal_attendees_registration .modal-body [class*="col-"]{
  background-color:#ffffff !important;
}

/* âœ… Odoo Event Registration popup: fondo blanco (mobile + desktop) */
#modal_ticket_registration .modal-content,
#modal_ticket_registration .modal-body,
#modal_ticket_registration .modal-body.row,
#modal_ticket_registration #_o_wevent_tickets,
#modal_ticket_registration .o_wevent_js_ticket_details,
#modal_ticket_registration .o_wevent_registration_single,
#modal_ticket_registration .shadow-sm {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

.modal-content.sale-combo-configurator-dialog,
.modal-content.sale-product-configurator-dialog,
.modal-content.sale-combo-configurator-dialog .modal-body,
.modal-content.sale-product-configurator-dialog .modal-body,
.modal-content.sale-combo-configurator-dialog main.modal-body,
.modal-content.sale-product-configurator-dialog main.modal-body {
  background-color: #ffffff !important;
}

@media (max-width: 768px) {

  .modal-content.sale-combo-configurator-dialog .modal-footer,
  .modal-content.sale-product-configurator-dialog .modal-footer {
    background-color: #ffffff !important;
    padding-right: 90px !important;
    padding-bottom: 16px !important;
  }

  .modal-content.sale-combo-configurator-dialog .modal-footer button[name="website_sale_combo_configurator_continue_button"],
  .modal-content.sale-combo-configurator-dialog .modal-footer button[name="website_sale_combo_configurator_checkout_button"] {
    width: 48% !important;
    max-width: 48% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    padding: 10px 12px !important;
  }

  .modal-content.sale-combo-configurator-dialog .modal-footer button[name="website_sale_combo_configurator_continue_button"] {
    font-size: 0 !important;
  }
  .modal-content.sale-combo-configurator-dialog .modal-footer button[name="website_sale_combo_configurator_continue_button"]:after {
    content: "Volver" !important;
    font-size: 14px !important;
  }

  .modal-content.sale-combo-configurator-dialog .modal-footer .input-group.css_quantity,
  .modal-content.sale-combo-configurator-dialog .modal-footer .quantity_buttons_wrapper {
    width: 180px !important;
    max-width: 180px !important;
    margin-right: 8px !important;
  }

  .modal-content.sale-combo-configurator-dialog .modal-footer input[name="sale_quantity"],
  .modal-content.sale-combo-configurator-dialog .modal-footer input.form-control.quantity {
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    text-align: center !important;
  }

  .modal-content.sale-combo-configurator-dialog .modal-footer button[name="sale_quantity_button_minus"],
  .modal-content.sale-combo-configurator-dialog .modal-footer button[name="sale_quantity_button_plus"],
  .modal-content.sale-combo-configurator-dialog .modal-footer .input-group.css_quantity .btn {
    width: 42px !important;
    min-width: 42px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  
}

/* PERFIL > BIOGRAFÃA (modo ediciÃ³n) â€” separar el form/editor de la lÃ­nea de arriba */
#wrap form.o_forum_profile_bio_form {
  margin-top: 16px !important;     /* ðŸ‘ˆ este es el gap real */
  padding-top: 0 !important;
}

/* Backup: si el row/gutters te â€œcomenâ€ el espacio, empuja el primer bloque interno */
#wrap form.o_forum_profile_bio_form > .col,
#wrap form.o_forum_profile_bio_form .mb-1.col-12 {
  padding-top: 16px !important;
}

/* Asegurar que el editor tambiÃ©n respete el espacio (por si hay estilos raros del theme) */
#wrap form.o_forum_profile_bio_form .o_wysiwyg_textarea_wrapper,
#wrap form.o_forum_profile_bio_form .note-editor {
  margin-top: 0 !important; /* el espacio lo controla el form */
}

/* Slides: modal "Agregar contenido" â€” SOLO fondo del contenedor (no texto/Ã­conos) */
.modal .o_w_slide_upload_modal_container,
.modal .o_w_slide_upload_modal_container::before,
.modal .o_w_slide_upload_modal_container::after{
  background: #ffffff !important;
  background-image: none !important;
}

/* âœ… SOLO este modal de Slides (Agregar contenido) â€” fondo 100% blanco */
.modal .modal-content.o_w_slide_upload_dialog_content,
.modal .modal-content.o_w_slide_upload_dialog_content::before,
.modal .modal-content.o_w_slide_upload_dialog_content::after,
.modal .modal-content.o_w_slide_upload_dialog_content .modal-header,
.modal .modal-content.o_w_slide_upload_dialog_content .modal-header::before,
.modal .modal-content.o_w_slide_upload_dialog_content .modal-header::after,
.modal .modal-content.o_w_slide_upload_dialog_content .modal-body,
.modal .modal-content.o_w_slide_upload_dialog_content .modal-body::before,
.modal .modal-content.o_w_slide_upload_dialog_content .modal-body::after,
.modal .modal-content.o_w_slide_upload_dialog_content .modal-footer,
.modal .modal-content.o_w_slide_upload_dialog_content .modal-footer::before,
.modal .modal-content.o_w_slide_upload_dialog_content .modal-footer::after,
.modal .modal-content.o_w_slide_upload_dialog_content .o_w_slide_upload_modal_container,
.modal .modal-content.o_w_slide_upload_dialog_content .o_w_slide_upload_modal_container::before,
.modal .modal-content.o_w_slide_upload_dialog_content .o_w_slide_upload_modal_container::after {
  background: #ffffff !important;
  background-image: none !important;
}

/* Cambiar el fondo naranja a blanco solo en el contenedor del editor de mensajes */
.o_portal_chatter_composer_input {
    background-color: #ffffff !important;
    border: 1px solid #dee2e6 !important; /* AÃ±ade un borde gris suave para que no se pierda el fondo */
    color: #333333 !important; /* Asegura que el texto sea legible */
}

/* Ajustar el color de los iconos y botones dentro para que contrasten con el blanco */
.o_portal_chatter_composer_input .btn-link, 
.o_portal_chatter_composer_input i {
    color: #666666 !important;
}

/* 1. Forzar el fondo del contenedor principal a blanco */
.modal-content .o_portal_chatter_composer_body {
    background-color: #ffffff !important;
}

/* 2. Quitar el color naranja del Ã¡rea de texto y asegurar el blanco */
.modal-content .o_portal_chatter_composer_input {
    background-color: #ffffff !important;
    border: 1px solid #dee2e6 !important;
    color: #333333 !important;
}

/* 3. Asegurar que el modal-body no herede el naranja del tema */
#o_wslides_lesson_content .modal-body,
.modal-dialog .modal-content .modal-body {
    background-color: #ffffff !important;
}

/* 4. Cambiar el color del texto de "Escriba un mensaje..." (placeholder) */
.modal-content .o_portal_chatter_composer_input textarea::placeholder {
    color: #999999 !important;
}

/* 1. ELIMINAR TODOS LOS BORDES DEL MODAL (Exterior y lÃ­neas extra) */
/* Esto hace que todo el marco exterior sea invisible */
.modal-content:has(.o_portal_chatter_composer) *, 
.modal-content:has(.o_portal_chatter_composer) {
    border: 0 !important;
    border-top: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}

/* 2. RECONSTRUIR ÃšNICAMENTE EL CUADRO DE TEXTO INTERNO */
/* Usamos el selector especÃ­fico que vimos en tu inspector (div.rounded-3) */
.modal-content:has(.o_portal_chatter_composer) div.d-flex.flex-column.flex-grow-1.rounded-3 {
    border: 1px solid #dee2e6 !important; /* El Ãºnico borde visible */
    border-radius: 8px !important;
    padding: 12px !important;
    background-color: #ffffff !important;
    margin: 10px 0 !important;
}

/* 3. LIMPIEZA FINAL */
/* Aseguramos que el fondo del modal sea blanco y el textarea no tenga bordes propios */
.modal-content:has(.o_portal_chatter_composer),
.modal-content:has(.o_portal_chatter_composer) .modal-body {
    background-color: #ffffff !important;
}

.modal-content:has(.o_portal_chatter_composer) textarea {
    background: transparent !important;
    border: 0 !important;
    padding: 5px !important;
}

/* 4. AJUSTE DEL BOTÃ“N ENVIAR */
.modal-content:has(.o_portal_chatter_composer) .btn-primary {
    margin-top: 5px !important;
}

.o_wslides_fs_main .o_wslides_slide_fs_header .o_comment_popup_composer .d-flex.flex-wrap.align-items-center > button:not([data-bs-target="#commentpopupcomposer"]) {
    display: none !important;
}

/* =========================================================
   OIMA MARKETPLACE - RESPONSIVE SELLER PAGE FIX V6
   Pegar al final del <style> dentro de oima_marketplace.seller_product
   Reemplaza cualquier CSS correctivo anterior
   ========================================================= */

/* Evita que el <center> rompa alineaciones */
.container.my-5 > center {
    display: block !important;
    text-align: left !important;
}

/* Todos los bloques principales usan el mismo ancho exterior */
#seller + #customer + .card,
.seller_tabs_container {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

/* =========================
   BANNER SUPERIOR VENDEDOR
   ========================= */

#seller + #customer + .card {
    border-radius: 16px !important;
    background: #ffffff !important;
    box-shadow: none !important; /* Eliminada la sombra */
    border: 1px solid rgba(0,0,0,0.08) !important;
    padding: 2rem !important;
}

/* Elimina separador debajo del nombre / zona derecha */
#seller + #customer + .card .border-top,
#seller + #customer + .card .col-12.col-md-auto {
    border-top: 0 !important;
    padding-top: 0 !important;
}

/* Foto arriba, nombre debajo */
#seller + #customer + .card > .row {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 1rem !important;
}

#seller + #customer + .card .col-auto {
    width: auto !important;
    max-width: none !important;
}

#seller + #customer + .card .seller_avatar_box {
    width: 150px !important;
    height: 150px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: #f8f9fa !important;
}

#seller + #customer + .card .seller_avatar_box img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* Nombre debajo de la foto */
#seller + #customer + .card .col {
    width: 100% !important;
    flex: 0 0 auto !important;
    max-width: 100% !important;
    text-align: left !important;
}

#seller + #customer + .card .col h2 {
    display: block !important;
    color: #243c64 !important;
    font-size: 1.8rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    text-align: left !important;
}

#seller + #customer + .card .col .d-flex {
    margin-top: 1rem !important;
}

/* =========================
   CONTENEDOR DE TABS
   ========================= */

.seller_tabs_container {
    text-align: left !important;
    padding: 2rem !important;
    overflow: hidden !important;
    background: #ffffff !important; /* Cambiado a blanco siempre */
    box-shadow: none !important; /* Sin sombra */
    border: 1px solid rgba(0,0,0,0.08) !important;
    border-radius: 12px !important;
    min-height: 600px !important;
}

/* Nav alineada */
.seller_tabs_container .s_tabs_nav {
    margin: 0 0 1.5rem 0 !important;
}

.seller_tabs_container .nav-pills {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0.75rem !important;
}

.seller_tabs_container .nav-link {
    border-radius: 8px !important;
    color: var(--club-oima-primary-hover) !important;
    background: transparent !important;
    padding: 0.65rem 1rem !important;
    border: 0 !important;
}

.seller_tabs_container .nav-link.active {
    background: var(--club-oima-primary) !important;
    color: #ffffff !important;
}

/* Oculta Contacto en mobile y desktop */
#seller_contact1,
#seller_contact2 {
    display: none !important;
}

.seller_tabs_container .nav-item:has(#seller_contact1) {
    display: none !important;
}

/* Corrige activo visual cuando el HTML viejo deja Contacto active */
.seller_tabs_container:has(#all_product2.show.active) #all_product1,
.seller_tabs_container:has(#recently_add_product2.show.active) #recently_add_product1,
.seller_tabs_container:has(#nav_tabs_content_3.show.active) #nav_tabs_link_3,
.seller_tabs_container:has(#return_policy2.show.active) #return_policy1,
.seller_tabs_container:has(#shipping_policy2.show.active) #shipping_policy1 {
    background: var(--club-oima-primary) !important;
    color: #ffffff !important;
}

#bla,
.tab-content,
.tab-pane {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    text-align: left !important;
}

/* =========================
   PRODUCT GRID
   ========================= */

.product_grid {
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* =========================
   RESEÃ‘AS - ANCHO ALINEADO AL BLOQUE SUPERIOR
   ========================= */

#nav_tabs_content_3 {
    width: 100% !important;
    text-align: left !important;
}

#nav_tabs_content_3 .rating_review_container {
    display: block !important;
    width: 100% !important;      /* Corregido: ya no rompe los mÃ¡rgenes */
    max-width: 100% !important;  /* Corregido */
    margin-left: 0 !important;   /* Corregido */
    margin-right: 0 !important;  /* Corregido */
    padding: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
}

/* Cards internas alineadas de forma limpia */
#nav_tabs_content_3 .rating_card,
#nav_tabs_content_3 .rating_review_container > .mt-5 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    background: #ffffff !important;
    border: 0 !important;
    border-radius: 12px !important;
    box-shadow: none !important; /* Sin sombra */
    padding: 2rem 0 !important;  /* Ajustado para alineaciÃ³n simÃ©trica perfecta */
    margin-bottom: 1.5rem !important;
    text-align: left !important;
    box-sizing: border-box !important;
}

/* TÃ­tulo principal: reemplaza Average Review & Recommendation por ReseÃ±as */
#nav_tabs_content_3 .rating_card:first-child > h3 {
    font-size: 0 !important;
    margin: 0 0 1.5rem 0 !important;
    text-align: left !important;
}

#nav_tabs_content_3 .rating_card:first-child > h3::after {
    content: "ReseÃ±as";
    display: block;
    font-size: 2rem;
    line-height: 1.2;
    font-weight: 800;
    color: #243c64;
    text-align: left;
}

/* Promedio + puntuaciÃ³n desktop */
#nav_tabs_content_3 .o_website_rating_card_container {
    display: grid !important;
    grid-template-columns: minmax(260px, 0.9fr) minmax(420px, 1.6fr) !important;
    gap: 3rem !important;
    align-items: start !important;
    justify-content: stretch !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

#nav_tabs_content_3 .o_website_rating_card_container > .col-lg-5,
#nav_tabs_content_3 .o_website_rating_card_container > .col-lg-7 {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding: 0 !important;
    text-align: left !important;
}

/* Average -> Promedio */
#nav_tabs_content_3 .o_website_rating_card_container > .col-lg-5 > p {
    text-align: left !important;
    margin-bottom: 0.35rem !important;
}

#nav_tabs_content_3 .o_website_rating_card_container > .col-lg-5 > p strong {
    font-size: 0 !important;
}

#nav_tabs_content_3 .o_website_rating_card_container > .col-lg-5 > p strong::after {
    content: "Promedio";
    font-size: 1rem;
    font-weight: 700;
    color: #243c64;
}

#nav_tabs_content_3 .o_website_rating_avg {
    text-align: left !important;
}

#nav_tabs_content_3 .o_website_rating_avg h1 {
    margin: 0 0 0.4rem 0 !important;
    text-align: left !important;
}

#nav_tabs_content_3 .o_website_rating_avg h1 span {
    font-size: 3.2rem !important;
    font-weight: 600 !important;
    color: #343a40 !important;
    line-height: 1 !important;
}

/* =========================
   COLOR DE ESTRELLAS
   ========================= */

/* Estrellas de lectura: solo las activas en naranja */
#nav_tabs_content_3 .o_website_rating_static {
    text-align: left !important;
    margin-bottom: 0.35rem !important;
}

#nav_tabs_content_3 .o_website_rating_static .fa-star,
#nav_tabs_content_3 .o_website_rating_static .fa-star-half-o {
    color: var(--club-oima-primary) !important;
}

#nav_tabs_content_3 .o_website_rating_static .fa-star-o {
    color: #2f343a !important;
}

/* Widget viejo de selecciÃ³n de estrellas */
#nav_tabs_content_3 .starRating {
    margin-left: 0 !important;
    filter: none !important;
}

#nav_tabs_content_3 .starRating,
#nav_tabs_content_3 .starRating div {
    filter: none !important;
}

/* Solo estrella/segmento seleccionado en naranja Oima */
#nav_tabs_content_3 .starRating input:checked + label,
#nav_tabs_content_3 .starRating:hover input:checked:hover + label,
#nav_tabs_content_3 .starRating:hover input:hover + label {
    filter: sepia(1) saturate(7) hue-rotate(338deg) brightness(0.82) contrast(1.08) !important;
}

#nav_tabs_content_3 .starRating:hover input:checked + label {
    filter: none !important;
}

/* comments -> Comentarios */
#nav_tabs_content_3 .o_message_counter {
    font-size: 0 !important;
    color: #6c757d !important;
    text-align: left !important;
}

#nav_tabs_content_3 .o_message_counter .fa,
#nav_tabs_content_3 .o_message_counter .o_message_count {
    font-size: 0.95rem !important;
}

#nav_tabs_content_3 .o_message_counter::after {
    content: " Comentarios";
    font-size: 0.95rem;
}

/* Details -> PuntuaciÃ³n */
#nav_tabs_content_3 .o_website_rating_card_container > .col-lg-7 > p {
    text-align: left !important;
    margin: 0 0 0.65rem 0 !important;
}

#nav_tabs_content_3 .o_website_rating_card_container > .col-lg-7 > p strong {
    font-size: 0 !important;
}

#nav_tabs_content_3 .o_website_rating_card_container > .col-lg-7 > p strong::after {
    content: "PuntuaciÃ³n";
    font-size: 1rem;
    font-weight: 700;
    color: #243c64;
}

/* Tabla de puntuaciÃ³n compacta */
#nav_tabs_content_3 .o_website_rating_table {
    width: 100% !important;
    margin: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 0.45rem !important;
}

#nav_tabs_content_3 .o_website_rating_table td {
    padding: 0.1rem 0.35rem !important;
    vertical-align: middle !important;
}

#nav_tabs_content_3 .o_website_rating_table_star_num {
    width: 90px !important;
    min-width: 90px !important;
    font-size: 0 !important;
    color: #343a40 !important;
}

#nav_tabs_content_3 .o_website_rating_table_star_num[data-star="5"]::after { content: "5 estrellas"; font-size: 0.9rem; }
#nav_tabs_content_3 .o_website_rating_table_star_num[data-star="4"]::after { content: "4 estrellas"; font-size: 0.9rem; }
#nav_tabs_content_3 .o_website_rating_table_star_num[data-star="3"]::after { content: "3 estrellas"; font-size: 0.9rem; }
#nav_tabs_content_3 .o_website_rating_table_star_num[data-star="2"]::after { content: "2 estrellas"; font-size: 0.9rem; }
#nav_tabs_content_3 .o_website_rating_table_star_num[data-star="1"]::after { content: "1 estrella"; font-size: 0.9rem; }

#nav_tabs_content_3 .o_website_rating_table_progress {
    width: auto !important;
}

#nav_tabs_content_3 .o_website_rating_table .progress {
    height: 12px !important;
    border-radius: 20px !important;
    background-color: #e9ecef !important;
}

/* Barra de puntuaciÃ³n tambiÃ©n en naranja Oima */
#nav_tabs_content_3 .o_rating_progressbar {
    background-color: var(--club-oima-primary) !important;
    border-radius: 20px !important;
}

#nav_tabs_content_3 .o_website_rating_table_percent {
    width: 45px !important;
    min-width: 45px !important;
    text-align: right !important;
    color: #343a40 !important;
}

#nav_tabs_content_3 .o_website_rating_table_reset {
    display: none !important;
}

/* =========================
   RECOMENDACIÃ“N RESPONSIVE
   ========================= */

#nav_tabs_content_3 .rating_card:first-child hr {
    margin: 1.75rem 0 !important;
}

#nav_tabs_content_3 .rating_card:first-child hr + div {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0.75rem !important;
    width: 100% !important;
    text-align: left !important;
    font-size: 0 !important;
    line-height: 1.35 !important;
}

#nav_tabs_content_3 .rating_card:first-child hr + div::before {
    content: "Â¿QuerÃ©s recomendar a este vendedor?";
    display: block !important;
    flex: 1 1 280px !important;
    min-width: 220px !important;
    max-width: 100% !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #343a40 !important;
    line-height: 1.35 !important;
}

#nav_tabs_content_3 .rating_card:first-child hr + div form {
    margin: 0 !important;
    display: block !important;
    flex: 0 0 auto !important;
}

#nav_tabs_content_3 .rating_card:first-child hr + div form button {
    font-size: 1rem !important;
    min-width: 76px !important;
    min-height: 46px !important;
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
}

/* =========================
   ESCRIBÃ TU RESEÃ‘A
   ========================= */

#nav_tabs_content_3 .rating_card:nth-of-type(2) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-top: 1px solid rgba(0,0,0,0.08) !important;
    padding: 2rem 0 !important; /* Corregido alineaciÃ³n horizontal */
    box-sizing: border-box !important;
}

#nav_tabs_content_3 .rating_card:nth-of-type(2) > div,
#nav_tabs_content_3 .rating_card:nth-of-type(2) .o_portal_chatter_header,
#nav_tabs_content_3 .rating_card:nth-of-type(2) .o_website_rating_card_container,
#nav_tabs_content_3 .rating_card:nth-of-type(2) .o_portal_chatter_composer_body,
#nav_tabs_content_3 .rating_card:nth-of-type(2) .oima_seller_review_form {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

#nav_tabs_content_3 .rating_card:nth-of-type(2) .row {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#nav_tabs_content_3 .rating_card:nth-of-type(2) [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#nav_tabs_content_3 .rating_card:nth-of-type(2) h4 {
    text-align: left !important;
    margin: 0 0 1rem 0 !important;
}

#nav_tabs_content_3 .rating_card:nth-of-type(2) h4 b {
    color: #243c64 !important;
    font-size: 1.65rem !important;
    font-weight: 800 !important;
}

#nav_tabs_content_3 .rating_card:nth-of-type(2) .col-lg-5 {
    margin-bottom: 0.75rem !important;
}

#nav_tabs_content_3 .oima_seller_review_form {
    width: 100% !important;
    text-align: left !important;
}

#nav_tabs_content_3 .oima_seller_review_form label {
    display: block !important;
    text-align: left !important;
    margin-bottom: 0.4rem !important;
}

#nav_tabs_content_3 .oima_seller_review_form textarea,
#nav_tabs_content_3 .rating_card:nth-of-type(2) textarea {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 130px !important;
    text-align: left !important;
    box-sizing: border-box !important;
}

#nav_tabs_content_3 .oima_seller_review_form button {
    margin-top: 1rem !important;
}

/* =========================
   COMENTARIOS DE CLIENTES
   ========================= */

#nav_tabs_content_3 .rating_review_container > .mt-5 {
    border-top: 1px solid rgba(0,0,0,0.08) !important;
    padding-top: 2rem !important;
    margin-top: 2rem !important;
}

#nav_tabs_content_3 .rating_review_container > .mt-5 > h4 {
    font-size: 0 !important;
    margin: 0 0 1.5rem 0 !important;
    text-align: left !important;
}

#nav_tabs_content_3 .rating_review_container > .mt-5 > h4::after {
    content: "Comentarios";
    font-size: 1.65rem;
    font-weight: 800;
    color: #243c64;
}

#nav_tabs_content_3 .rating_review_container > .mt-5 .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
}

#nav_tabs_content_3 .rating_review_container > .mt-5 .col-lg-6 {
    width: 100% !important;
    max-width: 640px !important;
    flex: 0 0 auto !important;
    padding-left: 0 !important;
}

/* Card de cada review individual */
#nav_tabs_content_3 .rating_review_container > .mt-5 .card {
    position: relative !important;
    min-height: 120px !important;
    padding: 1rem 1rem 1rem 6.5rem !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    box-shadow: none !important; /* Sombra eliminada */
    border: 1px solid rgba(0,0,0,0.08) !important; /* Borde suave sustituto */
    text-align: left !important;
}

#nav_tabs_content_3 .rating_review_container > .mt-5 .card > .d-flex {
    display: block !important;
    position: static !important;
}

/* Foto a la izquierda */
#nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-shrink-0 {
    position: absolute !important;
    left: 1rem !important;
    top: 1rem !important;
    width: 72px !important;
    text-align: center !important;
}

#nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-shrink-0 > div {
    width: 60px !important;
    height: 60px !important;
    margin: 0 auto !important;
}

/* Nombre debajo de la foto */
#nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-grow-1 > .d-flex {
    position: absolute !important;
    left: 0.5rem !important;
    top: 4.9rem !important;
    width: 88px !important;
    display: block !important;
    text-align: center !important;
}

#nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-grow-1 > .d-flex h6 {
    font-size: 0.8rem !important;
    line-height: 1.15 !important;
    color: #243c64 !important;
    margin: 0 !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: break-word !important;
}

/* Rating y texto a la derecha */
#nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-grow-1 {
    display: block !important;
    width: 100% !important;
}

#nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-grow-1 .o_website_rating_static {
    margin-bottom: 0.5rem !important;
}

#nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-grow-1 p {
    max-height: none !important;
    overflow: visible !important;
    line-height: 1.5 !important;
}

/* =========================
   MOBILE
   ========================= */

@media (max-width: 767.98px) {
    .container.my-5 {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    #seller + #customer + .card {
        padding: 1rem !important;
    }

    #seller + #customer + .card .seller_avatar_box {
        width: 120px !important;
        height: 120px !important;
    }

    #seller + #customer + .card .col h2 {
        font-size: 1.45rem !important;
    }

    .seller_tabs_container {
        padding: 1rem !important;
    }

    .seller_tabs_container .s_tabs_nav {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        margin: 0 0 1rem 0 !important;
        padding-bottom: 0.45rem !important;
        scrollbar-color: var(--club-oima-primary) var(--club-oima-primary-track) !important;
        scrollbar-width: thin !important;
    }

    .seller_tabs_container .s_tabs_nav::-webkit-scrollbar {
        height: 8px !important;
    }

    .seller_tabs_container .s_tabs_nav::-webkit-scrollbar-track {
        background: var(--club-oima-primary-track) !important;
        border-radius: 999px !important;
    }

    .seller_tabs_container .s_tabs_nav::-webkit-scrollbar-thumb {
        background: var(--club-oima-primary) !important;
        border-radius: 999px !important;
    }

    .seller_tabs_container .s_tabs_nav::-webkit-scrollbar-thumb:hover {
        background: var(--club-oima-primary-hover) !important;
    }

    .seller_tabs_container .nav-pills {
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
        min-width: max-content !important;
    }

    .product_grid {
        grid-template-columns: repeat(auto-fill, minmax(145px, 1fr)) !important;
        padding: 1rem 0 !important;
    }

    /* Mantiene reseÃ±as del mismo ancho limpio en Mobile */
    #nav_tabs_content_3 .rating_review_container {
        width: 100% !important;     /* Corregido */
        max-width: 100% !important; /* Corregido */
        margin-left: 0 !important;  /* Corregido */
        margin-right: 0 !important; /* Corregido */
    }

    #nav_tabs_content_3 .rating_card,
    #nav_tabs_content_3 .rating_review_container > .mt-5 {
        padding: 1.25rem 0 !important; /* Corregido */
        border-radius: 12px !important;
    }

    #nav_tabs_content_3 .o_website_rating_card_container {
        display: block !important;
    }

    #nav_tabs_content_3 .o_website_rating_card_container > .col-lg-5 {
        margin-bottom: 1.5rem !important;
    }

    #nav_tabs_content_3 .o_website_rating_avg h1 span {
        font-size: 2.5rem !important;
    }

    #nav_tabs_content_3 .o_website_rating_table_star_num {
        width: 78px !important;
        min-width: 78px !important;
    }

    #nav_tabs_content_3 .o_website_rating_table_star_num[data-star]::after {
        font-size: 0.8rem !important;
    }

    #nav_tabs_content_3 .o_website_rating_table_percent {
        width: 38px !important;
        min-width: 38px !important;
        font-size: 0.8rem !important;
    }

    /* RecomendaciÃ³n responsive real en mobile */
    #nav_tabs_content_3 .rating_card:first-child hr + div {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 0.75rem !important;
        align-items: stretch !important;
        width: 100% !important;
    }

    #nav_tabs_content_3 .rating_card:first-child hr + div::before {
        grid-column: 1 / -1 !important;
        min-width: 0 !important;
        width: 100% !important;
        font-size: 1rem !important;
        line-height: 1.35 !important;
    }

    #nav_tabs_content_3 .rating_card:first-child hr + div form {
        width: 100% !important;
        margin: 0 !important;
        display: block !important;
    }

    #nav_tabs_content_3 .rating_card:first-child hr + div form button {
        width: 100% !important;
        min-height: 46px !important;
        font-size: 1rem !important;
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
    }

    /* EscribÃ­ tu reseÃ±a full-width en mobile */
    #nav_tabs_content_3 .rating_card:nth-of-type(2) {
        width: 100% !important;
        max-width: 100% !important;
        padding: 1.25rem 0 !important;
    }

    #nav_tabs_content_3 .rating_card:nth-of-type(2) textarea {
        width: 100% !important;
        max-width: 100% !important;
    }

    #nav_tabs_content_3 .rating_review_container > .mt-5 .col-lg-6 {
        max-width: 100% !important;
    }

    #nav_tabs_content_3 .rating_review_container > .mt-5 .card {
        padding-left: 5.8rem !important;
    }

    #nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-shrink-0 {
        width: 64px !important;
    }

    #nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-shrink-0 > div {
        width: 52px !important;
        height: 52px !important;
    }

    #nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-grow-1 > .d-flex {
        width: 76px !important;
        top: 4.3rem !important;
    }

    #nav_tabs_content_3 .rating_review_container > .mt-5 .card .flex-grow-1 > .d-flex h6 {
        font-size: 0.72rem !important;
    }
}

/* RecomendaciÃ³n responsive corregida en mobile (Botones alineados lado a lado) */
    #nav_tabs_content_3 .rating_card:first-child hr + div {
        display: flex !important;
        flex-wrap: wrap !important;
        flex-direction: row !important;
        gap: 0.75rem !important;
        width: 100% !important;
    }

    #nav_tabs_content_3 .rating_card:first-child hr + div::before {
        grid-column: auto !important; /* Limpia selectores grid anteriores */
        flex: 0 0 100% !important;   /* Obliga al texto a ocupar toda la lÃ­nea superior */
        width: 100% !important;
        font-size: 1.1rem !important;
        line-height: 1.35 !important;
        margin-bottom: 0.4rem !important;
    }

    #nav_tabs_content_3 .rating_card:first-child hr + div form {
        flex: 1 1 0% !important;      /* Ambos formularios dividen el espacio equitativamente (50% c/u) */
        width: auto !important;
        margin: 0 !important;
        display: block !important;
    }

    #nav_tabs_content_3 .rating_card:first-child hr + div form button {
        width: 100% !important;       /* El botÃ³n se expande a la totalidad de su formulario */
        min-height: 46px !important;
        font-size: 1rem !important;
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }
    
    /* Cambiar el sombreado/borde azul a naranja al pasar el cursor */
.product_grid .product_card.prod_redirect:hover {
    border-color: var(--club-oima-primary) !important;
    box-shadow: 0 0 8px rgba(var(--club-oima-primary-rgb), 0.6) !important;
}

/* Cambiar el sombreado/borde azul a naranja al pasar el cursor (Para todas las pestaÃ±as) */
.product_grid .product_card:hover {
    border-color: var(--club-oima-primary) !important;
    box-shadow: 0 0 8px rgba(var(--club-oima-primary-rgb), 0.6) !important;
}