/* ===== Carrusel Categorías ===== */
.portal-carousel { padding: 1rem 0; }
.carousel-track-outer { overflow: hidden; }
.carousel-track { display: flex; gap: 16px; transition: transform 0.4s ease; }
.cat-card { min-width: 280px; max-width: 280px; background: #fff; border: 1px solid #e0e0e0; border-radius: 12px; padding: 36px 24px 32px; display: flex; flex-direction: column; align-items: center; gap: 16px; cursor: pointer; text-decoration: none; transition: border-color 0.2s, background 0.2s; }cursor: pointer; text-decoration: none; transition: border-color 0.2s, background 0.2s; }
.cat-card:hover { border-color: #aaa; background: #f9f9f9; }
.cat-icon { width: 88px; height: 88px; border-radius: 16px; display: flex; align-items: center; justify-content: center; }
..cat-label { font-size: 16px; font-weight: 500; color: #222; text-align: center; }
.carousel-btn { background: #fff; border: 1px solid #ccc; border-radius: 50%; width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 16px; flex-shrink: 0; }
.carousel-btn:hover { background: #f0f0f0; }
.carousel-nav { display: flex; justify-content: center; gap: 8px; margin-top: 14px; }
.cdot { width: 6px; height: 6px; border-radius: 50%; background: #ccc; cursor: pointer; }
.cdot.active { background: #555; }

/* Ocultar solo el módulo de login en artículos */
.com_content.view-article .container-sidebar-right .moduletable:has(#login-form-148) {
    display: none;
}

/* ===== HEADER / NAVBAR ===== */
.container-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 20px !important;
    background: #1e2a3a !important;
    min-height: 60px !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

.container-header .grid-child {
    order: 1 !important;
    flex-shrink: 0 !important;
}

.navbar-brand img {
    height: 28px !important;
    width: auto !important;
}

.container-header .container-topbar {
    order: 2 !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    padding: 0 0 0 20px !important;
}

.container-topbar .moduletable {
    display: flex !important;
    align-items: center !important;
}

#menu-header {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
}

#menu-header .nav-item {
    white-space: nowrap !important;
}

#menu-header .nav-link {
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    padding: 6px 8px !important;
}

#menu-header .nav-link:hover,
#menu-header .nav-item.active .nav-link {
    color: #3a8fd4 !important;
}

body {
    overflow-x: hidden !important;
}

.wrapper-fluid {
    max-width: 100% !important;
    padding: 0 !important;
}

.site-grid {
    max-width: 100% !important;
}

/* Dropdown Mi cuenta */
.nav-item.item-164 {
    position: relative !important;
    cursor: pointer !important;
}

.nav-item.item-164 > .mod-menu__heading {
    color: #ffffff !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    padding: 6px 8px !important;
    cursor: pointer !important;
}

.nav-item.item-164 > .mod-menu__heading::after {
    content: ' ▾' !important;
}

.nav-item.item-164 .mod-menu__sub {
    display: none !important;
    position: absolute !important;
    right: 0 !important;
    top: 100% !important;
    background: #1e2a3a !important;
    border: 1px solid #2e3f52 !important;
    border-radius: 6px !important;
    padding: 8px 0 !important;
    min-width: 160px !important;
    z-index: 9999 !important;
    list-style: none !important;
}

.nav-item.item-164:hover .mod-menu__sub {
    display: block !important;
}

.nav-item.item-164 .mod-menu__sub .nav-item a {
    display: block !important;
    padding: 8px 16px !important;
    color: #aab8c5 !important;
    font-size: 0.85rem !important;
    text-decoration: none !important;
}
/* ===== BANNER CENTRADO + AZUL MÁS OSCURO ===== */

#mod-custom144 {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

#mod-custom144 > div {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

/* TÍTULO */
#mod-custom144 h2 {
    color: #2b6cb0 !important; /* azul más oscuro */
    font-weight: 700;
    font-size: 2.2rem;
}

/* SUBTÍTULO */
#mod-custom144 p {
    color: #3b82c4 !important; /* azul intermedio */
    font-size: 1.1rem;
}

/* ===== OCULTAR BOTÓN EDITAR EN TODO EL SITIO ===== */

.icon-edit,
.btn-edit,
a[href*="task=article.edit"],
a[href*="task=form.edit"],
a[href*="layout=edit"] {
    display: none !important;
}

/*===== FOOTER ===== */
footer.footer {
    background: #1e2a3a !important;
    color: #cdd6e0 !important;
    padding: 40px 20px 20px !important;
    border-top: none !important;
}

footer.footer a {
    color: #aab8c5 !important;
    text-decoration: none !important;
    font-size: 0.875rem !important;
    line-height: 2 !important;
}

footer.footer a:hover {
    color: #3a8fd4 !important;
}

footer .footer-cols {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 30px !important;
    width: 100% !important;
}

footer .footer-col {
    flex: 1 1 0 !important;
    min-width: 0 !important;
}

footer .footer-col h4 {
    color: #ffffff !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    border-bottom: 2px solid #3a8fd4 !important;
    padding-bottom: 8px !important;
    margin-bottom: 12px !important;
}

footer .footer-col ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

footer .footer-col ul li::before {
    content: none !important;
}

footer .footer-col ul li a {
    color: #aab8c5 !important;
    text-decoration: none !important;
    font-size: 0.85rem !important;
    line-height: 2 !important;
    display: block !important;
}

footer .footer-col ul li a:hover {
    color: #3a8fd4 !important;
    padding-left: 5px !important;
    transition: all 0.2s !important;
}

/* Footer bottom bar */
.footer-bottom {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    border-top: 1px solid #2e3f52 !important;
    margin-top: 30px !important;
    padding-top: 20px !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
}

.footer-bottom-copy {
    color: #6b7f92 !important;
    font-size: 0.8rem !important;
}

.footer-bottom-links a {
    color: #6b7f92 !important;
    font-size: 0.8rem !important;
    margin-left: 15px !important;
    text-decoration: none !important;
}

.footer-bottom-links a:hover {
    color: #3a8fd4 !important;
}

/* Footer logo pequeño */
.footer-bottom img {
    height: 35px !important;
    width: auto !important;
}
/* ===== RESULTADOS DE BÚSQUEDA ===== */

/* Ocultar URL larga y términos de búsqueda */
.com-finder__results .result__url {
    display: none !important;
}

.com-finder__search-legend,
#search-query-explained {
    display: none !important;
}

/* Ocultar label "Términos de búsqueda" */
.com-finder__search .me-2 {
    display: none !important;
}

/* Lista de resultados */
.com-finder__results-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 20px 0 !important;
}

/* Cada resultado como tarjeta */
.result__item {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
    padding: 20px !important;
    margin-bottom: 12px !important;
    transition: box-shadow 0.2s, border-color 0.2s !important;
}

.result__item:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.08) !important;
    border-color: #3a8fd4 !important;
}

/* Título */
.result__item .result__title {
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    margin-bottom: 6px !important;
}

.result__item .result__title a {
    color: #1e2a3a !important;
    text-decoration: none !important;
}

.result__item .result__title a:hover {
    color: #3a8fd4 !important;
}

/* Descripción */
.result__item .result__text {
    color: #6b7280 !important;
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
    margin: 8px 0 !important;
}

/* Metadatos como badges */
.result__item dl {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 10px 0 0 !important;
    padding: 10px 0 0 !important;
    border-top: 1px solid #f0f4fb !important;
}

.result__item dt {
    display: none !important;
}

.result__item dd {
    background: #f0f4fb !important;
    color: #4b5563 !important;
    font-size: 0.78rem !important;
    padding: 3px 10px !important;
    border-radius: 20px !important;
    margin: 0 !important;
}

/* Botón buscar */
.com-finder__search .btn-primary {
    background: #1e2a3a !important;
    border: none !important;
    border-radius: 8px !important;
}

.com-finder__search .btn-primary:hover {
    background: #3a8fd4 !important;
}

/* Ocultar URL, metadatos y dl completo */
.result__item .result__url {
    display: none !important;
}

.result__item dl {
    display: none !important;
}

.result__item .result__date {
    display: none !important;
}

/* Ocultar URL y taxonomía */
.result__title-url {
    display: none !important;
}

.result__taxonomy {
    display: none !important;
}

.com_content.view-article #sidebar-right,
.com_content.view-article .container-sidebar-right {
    display: none !important;
}
/* Ocultar navbar en página de login */
.itemid-162.view-featured .container-topbar {
    display: none !important;
}
/* Ocultar metadatos del artículo */
.com_content.view-article .article-info,
.com_content.view-article .items-leading .article-info,
.com_content.view-article dl.article-info {
    display: none !important;
}

/* Ocultar voting */
.com_content.view-article .content-vote {
    display: none !important;
}
/* Ocultar login en artículos */
.com_content.view-article .main-bottom {
    display: none !important;
}

/* ===== ESTILO ARTÍCULO ===== */
.com_content.view-article h1.page-header {
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    color: #1e2a3a !important;
    border-bottom: 3px solid #3a8fd4 !important;
    padding-bottom: 12px !important;
    margin-bottom: 24px !important;
}

.com_content.view-article .article-fulltext {
    font-size: 0.95rem !important;
    line-height: 1.8 !important;
    color: #374151 !important;
}

.com_content.view-article .article-fulltext h2 {
    font-size: 1.3rem !important;
    font-weight: 700 !important;
    color: #1e2a3a !important;
    margin-top: 30px !important;
    border-left: 4px solid #3a8fd4 !important;
    padding-left: 10px !important;
}

.com_content.view-article .article-fulltext h3 {
    font-size: 1.1rem !important;
    font-weight: 600 !important;
    color: #1e2a3a !important;
    margin-top: 20px !important;
}

.com_content.view-article .article-fulltext pre,
.com_content.view-article .article-fulltext code {
    background: #1e2a3a !important;
    color: #e2e8f0 !important;
    border-radius: 6px !important;
    padding: 2px 6px !important;
    font-size: 0.875rem !important;
}

.com_content.view-article .article-fulltext pre {
    padding: 16px !important;
    overflow-x: auto !important;
    line-height: 1.6 !important;
}

/* ===== CONTENIDO DEL ARTÍCULO ===== */
.com_content.view-article .container-component {
    max-width: 900px !important;
    margin: 0 auto !important;
    padding: 20px 30px !important;
}

/* Título principal */
.com_content.view-article h1 {
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    color: #1e2a3a !important;
    border-bottom: 3px solid #3a8fd4 !important;
    padding-bottom: 12px !important;
    margin-bottom: 24px !important;
}

/* Tags */
.com_content.view-article .tags-list .label {
    background: #3a8fd4 !important;
    color: white !important;
    border-radius: 20px !important;
    padding: 4px 12px !important;
    font-size: 0.8rem !important;
    margin-right: 5px !important;
    text-decoration: none !important;
    display: inline-block !important;
    margin-bottom: 15px !important;
}

/* Subtítulos h2 */
.com_content.view-article .article-fulltext h2,
.com_content.view-article h2 {
    font-size: 1.3rem !important;
    font-weight: 700 !important;
    color: #1e2a3a !important;
    margin-top: 30px !important;
    border-left: 4px solid #3a8fd4 !important;
    padding-left: 10px !important;
    margin-bottom: 10px !important;
}

/* Subtítulos h3 */
.com_content.view-article .article-fulltext h3,
.com_content.view-article h3 {
    font-size: 1.1rem !important;
    font-weight: 600 !important;
    color: #1e2a3a !important;
    margin-top: 20px !important;
    margin-bottom: 8px !important;
}

/* Párrafos */
.com_content.view-article p {
    font-size: 0.95rem !important;
    line-height: 1.8 !important;
    color: #374151 !important;
    margin-bottom: 12px !important;
}

/* Código inline */
.com_content.view-article code {
    background: #1e2a3a !important;
    color: #e2e8f0 !important;
    border-radius: 4px !important;
    padding: 2px 6px !important;
    font-size: 0.875rem !important;
}

/* Bloques de código */
.com_content.view-article pre {
    background: #1e2a3a !important;
    color: #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 16px !important;
    overflow-x: auto !important;
    line-height: 1.6 !important;
    margin: 15px 0 !important;
}

/* Listas */
.com_content.view-article ul,
.com_content.view-article ol {
    padding-left: 20px !important;
    margin-bottom: 15px !important;
    line-height: 1.8 !important;
}




/*mensaje de error */

.com_users.view-login .alert {
    display: none !important;
}
/* Ocultar formulario duplicado */
./* Ocultar el componente de login nativo (solo usar el módulo) */
.com_users.view-login .com-users-login {
    display: none !important;
}
}

/* Centrar tu módulo */
.mod-login {
    position: relative;
    z-index: 2;
}

/* ===== LOGIN PAGE ===== */
.com-users-login.login {
  max-width: 480px;
  width: 100%;
  margin: 60px auto;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 12px;
  padding: 48px 40px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.08);
}

/* Inputs */
.com-users-login.login .form-control {
  height: 48px;
  font-size: 1rem;
  border-radius: 8px;
  border: 1px solid #d0d0d0;
  padding: 10px 16px;
  width: 100%;
  margin-bottom: 8px;
}

.com-users-login.login .form-control:focus {
  border-color: #1a73e8;
  outline: none;
  box-shadow: 0 0 0 3px rgba(26,115,232,0.15);
}

/* Botón */
.com-users-login.login .btn-primary {
  width: 100%;
  height: 48px;
  font-size: 1rem;
  font-weight: 600;
  border-radius: 8px;
  background-color: #1e2d3d;
  border: none;
  margin-top: 8px;
}

.com-users-login.login .btn-primary:hover {
  background-color: #2a3d52;
}

/* Links olvidé contraseña y recordar usuario */
.com-users-login__options.list-group {
  margin-top: 20px;
  border: none;
}

.com-users-login__options.list-group .list-group-item {
  border: none;
  text-align: center;
  padding: 6px 0;
  font-size: 0.9rem;
  background: transparent;
}

.com-users-login__options.list-group a {
  color: #1a73e8;
  text-decoration: none;
}

.com-users-login__options.list-group a:hover {
  text-decoration: underline;
}


a[href*="task=article.add"],
a[href*="task=category.add"] {
    display: none !important;
}
