/* GLOBALES */

/* TEMA CLARO */
body[data-theme="light"] .contacto .field__items > .field__item {
  backdrop-filter: contrast(1.1);
  -webkit-backdrop-filter: contrast(1.1);
}

/* TEMA OSCURO */
body[data-theme="dark"] .contacto .field__items > .field__item {
  backdrop-filter: saturate(1) brightness(1.3) contrast(1);
  -webkit-backdrop-filter: saturate(1) brightness(1.3) contrast(1);
}

.role-administrator .no-en,
.role-content_editor .no-en,
.role-administrator .no-en a,
.role-content_editor .no-en a {
  color: red;
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  cursor:default;
  font-size: 62.5%;
}
body {
  margin: 0;
  padding: 0;
  font-size: 1.6rem;
  font-family: var(--texto-normal);
  color: var(--color-oscuro);
  font-weight: 300;
  text-wrap: pretty;
}
body {
  background-color: var(--color-claro);
}

/* ENLACES */
a {
  text-decoration: none;
  color: var(--color-oscuro);
  transition: var(--transicion-hover); /* La entrada del cursor se anima con move-in, y la salida con este transition. */
}

/* Titulares */
#main-content h1 {
  font-family: var(--texto-marcador);
  font-weight: 500;
  font-size: 4.3rem;
  margin: 0 0 1rem;
  line-height: 5rem;
}
.site-branding__inner h1,
.site-branding__inner h2 {
  all: unset;
}
section h2:not(.sin_resultados h2),
#block-srefs-views-block-estilos-relacionados-block-1 h2 {
  font-family: var(--texto-marcador);
  margin: 0 0 3rem 0;
  padding: 0 0 0 1rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: 500;
}
.content-type-estilo h2:not(.sin_resultados h2) {
  margin-bottom: 0;
}
.descripcion-seccion {
  margin: 0 calc(1rem + 2px) 1em;
}
strong, b {
  font-weight: 600;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* LAYOUT */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

#main-content:has(.views-exposed-form) {
  padding-top: 5rem;
}
#main-content:has(.pager__items) {
  padding-bottom: 10rem;
}
.path-taxonomy .main-layout {
  margin-bottom: 5rem;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* HEADER */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

/* Site branding */
.site-branding__logo span {
 display: none;
}
.site-branding__logo svg {
  width: auto;
  fill: var(--color-oscuro);
}
.site-branding__logo svg,
.site-branding__logo a {
  display: inline-block;
}
.site-branding__logo svg {
  height: 2rem;
}
#main-sidebar .site-branding__logo svg {
  margin: 1rem 1rem 1rem 0;
  display: block;
}
body.path-frontpage .internal-page-logo,
body:not(.path-frontpage) .front-page-logo {
  display: none;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* FILTROS Y PAGER */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

#block-srefs-content .views-exposed-form.bef-exposed-form,
.pager .pager__items {
  left: 0;
  padding: 1rem;
  z-index: 10;
}
.form-item-field-calificacion-value li a,
.enhanced-select[data-has-value="false"] .enhanced-select__button,
.catalogo input.form-text:invalid,
.catalogo input.form-text:valid,
.pager .pager__item > a,
.enhanced-select[data-has-value="true"] .enhanced-select__button,
.catalogo input.form-text {
  border-top: 1px solid;
  border-bottom: 1px solid;
  border-left: 1px solid;
}
.form-item-field-calificacion-value li:last-child a,
.catalogo input.form-text:invalid,
.catalogo input.form-text:valid,
.pager .pager__item:last-child > a {
  border-right: 1px solid;
}
#block-busqueda-por-sref input.form-text[value=""] {
  border: 1px solid;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* FILTROS */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

/* Filtros */
#block-srefs-content .views-exposed-form.bef-exposed-form {
  display: grid;
  border-bottom: 1px solid;
}
body:not(.anonymous) #block-srefs-content .views-exposed-form.bef-exposed-form {
  grid-template-columns: max-content auto auto auto auto auto max-content;
}
body.anonymous #block-srefs-content .views-exposed-form.bef-exposed-form,
body.role-entusiasta #block-srefs-content .views-exposed-form.bef-exposed-form {
  grid-template-columns: auto auto auto auto auto min-content;
}
#block-srefs-content .views-exposed-form .form-item-field-calificacion-value ul {
  margin: 0;
  padding: 0;
}
#block-srefs-content .views-exposed-form li {
  display: inline-block;
  list-style: none;
  padding: 0;
}
#block-srefs-content .views-exposed-form li a {
  display: inline-block;
  text-transform: lowercase;
  transition: all ease-in-out var(--transicion-hover);
}
#block-srefs-content .views-exposed-form.bef-exposed-form::-webkit-scrollbar {
  display: none;
}
.role-administrator #block-srefs-content .views-exposed-form.bef-exposed-form {
  top: 39px;
  left: var(--administration-tray);
}
#block-srefs-content .views-exposed-form .form-item label {
  display: block;
}
.views-exposed-form.bef-exposed-form .form-actions [value="Aplicar"],
.views-exposed-form.bef-exposed-form .form-actions [value="Apply"] {
  display: none;
}
/* Chevron */
.enhanced-select__chevron {
  pointer-events: none;
  position: absolute;
  right: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  mask: url("data:image/svg+xml;utf8,\<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231a1b26' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'>\<polyline points='6 9 12 15 18 9'/></svg>") no-repeat center / 100% 100%;
  transition: transform .18s ease;
}
.enhanced-select[aria-expanded="true"] .enhanced-select__chevron {
  transform: rotate(180deg);
}
/* Lista de opciones */
.enhanced-select__list {
  display: grid;
  position: absolute;
  max-height: min(800px, 80vh);
  overflow: auto;
  -webkit-box-shadow: 0px 5px 5px -6px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0px 5px 5px -6px rgba(0,0,0,0.4);
  box-shadow: 0px 5px 5px -6px rgba(0, 0, 0, 0.4);
  border: 0.5px solid rgba(0, 0, 0, 0.1);
  border-bottom: 0.5px solid rgba(0, 0, 0, 0.2);
  padding: 1rem !important;
  margin: 0;
  z-index: 100;
  clip-path: inset(0 0 100% 0);
  opacity: 0;
  transition: clip-path .25s ease, opacity .2s ease;
}
.enhanced-select[aria-expanded="true"] .enhanced-select__list {
  clip-path: inset(0 0 0 0);
  opacity: 1;
}
/* Opción */
.enhanced-select__option {
  padding: 0.5rem 1rem !important;
  font-size: 1.3rem;
  line-height: 1.2;
  cursor: pointer;
  user-select: none;
}
.enhanced-select__option[aria-selected="true"] {
  outline: 2px solid;
  outline-offset: -2px;
}
/* Botones  */
.views-exposed-form.bef-exposed-form .form-actions input {
  display: inline-block;
  font-weight: bold;
  border: none !important;
  cursor: pointer;
  transition: all ease-in-out var(--transicion-hover);
}
.views-exposed-form.bef-exposed-form .form-actions {
  position: relative;
}
.views-exposed-form.bef-exposed-form .form-actions input[type="submit"][name="reset"] {
  /* Oculta el texto visualmente */
  font-size: 0;
  line-height: 1;
  aspect-ratio: 1;
  height: 100%;
  border-radius: 0;
  min-width: 4rem;
}
:has(#edit-reset-inicio) .views-exposed-form.bef-exposed-form .form-actions::before,
:has(#edit-reset-mis-bookmarks) .views-exposed-form.bef-exposed-form .form-actions::before {
  content: "";
  display: inline-block;
  width: 1.4rem;
  height: 1.3rem;
  background-color: var(--color-claro);
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  mask-image: var(--icono-close);
  position: absolute;
  left: 50%;
  margin-left: -0.7rem;
  top: 50%;
  margin-top: -0.65rem;
  pointer-events: none;
}
/* Botón (trigger) */
.enhanced-select__button,
.catalogo input.form-text {
  all: unset;
  display: inline-block;
  width: 100%;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  padding: 0.7rem calc(2rem + 22px) 1rem 2rem;
  cursor: pointer;
  white-space: nowrap;
  transition: all ease-in-out var(--transicion-hover);
  z-index: 2;
}
/* Calificación */
.form-item-field-calificacion-value li a {
  padding: 0.7rem 1rem 1rem;
}
.form-item-field-calificacion-value li:last-child a {
  margin-right: 1rem;
}
.form-item-field-calificacion-value li a:after {
  content: url('../images/star-on.svg');
  float: right;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: 1px;
  margin-left: 0.5rem;
}
.form-item-field-calificacion-value li a.bef-link--selected {
  font-weight: 600;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* VIEW PAGER */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

/* === Pager Dock 2025 (Drupal Views) === */
/* Tokens de diseño (ajusta a tu brand) */
:root{
  color-scheme: light dark;
  --pg-bg: color-mix(in oklab, Canvas, Canvas 70%); /* respeta tema del SO */
  --pg-ink: color-mix(in oklab, CanvasText, black 10%);
  --pg-muted: color-mix(in oklab, CanvasText, transparent 45%);
  --pg-accent: oklch(70% 0.14 70);      /* miel ámbar suave */
  --pg-accent-ink: oklch(55% 0.14 70);  /* sombra */
  --pg-gap: clamp(.2rem, 1vw, .6rem);
  --pg-padY: clamp(.4rem, .6rem + .2vw, .65rem);
  --pg-padX: clamp(.7rem, 1rem + .5vw, 1.2rem);
  --pg-font: clamp(.9rem, .95rem + .1vw, 1rem);
  --pg-shadow: 0 8px 30px -12px color-mix(in oklab, var(--pg-accent-ink), transparent 65%);
}
.pager .pager__items {
  display: flex;
  bottom: 0;
  border-top: 1px solid;
  justify-content: center;
  list-style: none;
  margin: 0;
}
.pager .pager__item > a {
    display: grid;
    min-inline-size: 2.25em;
    padding: var(--pg-padY) var(--pg-padX);
    line-height: 1;
}
/* Estado actual: relleno sólido y tipografía clara */
.pager .pager__item.is-active > a,
.pager .pager__item > a[aria-current="page"]{
  color: white; border-color: transparent;
  box-shadow: 0 14px 36px -18px var(--pg-accent-ink);
  font-weight: 600;
}

/* Prev/Next/First/Last con íconos “mask” (sin SVG externos) */
.pager .pager__item--previous a::before,
.pager .pager__item--first a::before,
.pager .pager__item--next a::after,
.pager .pager__item--last a::after{
  content: ""; inline-size: 1.05em; block-size: 1.05em; margin-inline: .2em;
  background: currentColor; mask: no-repeat center / contain;
}
.pager .pager__item--previous a::before{ mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='3 3 18 18'><path fill='%23000' d='M14.7 6.3 9 12l5.7 5.7 1.4-1.4L11.8 12l4.3-4.3z'/></svg>"); }
.pager .pager__item--first a::before{    mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='2 2 20 20'><path fill='%23000' d='M7 6h2v12H7zM17 6l-6 6 6 6 1.4-1.4L13.8 12l4.6-4.6z'/></svg>"); }
.pager .pager__item--next a::after{      mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='3 3 18 18'><path fill='%23000' d='M9.3 6.3 8 7.7 12.3 12 8 16.3l1.3 1.4L15 12z'/></svg>"); }
.pager .pager__item--last a::after{      mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='2 2 20 20'><path fill='%23000' d='M15 6h2v12h-2zM7 6l6 6-6 6-1.4-1.4L10.2 12 5.6 7.4z'/></svg>"); }

/* Limpia duplicados de “>” y “»” que trae Drupal */
.pager .pager__item [aria-hidden="true"]{ display: none; }

/* Focus visible accesible y moderno */
.pager .pager__item > a:focus-visible{
  outline: 2px solid color-mix(in oklab, var(--pg-accent), white 25%);
  outline-offset: 2px;
  box-shadow: 0 0 0 6px color-mix(in oklab, var(--pg-accent), transparent 85%), var(--pg-shadow);
}

/* Compactación real por *container queries*: en móvil, solo prev/actual/next */

@container (max-width: 420px){
  .pager .pager__item{ display: none; }
  .pager .pager__item.is-active,
  .pager .pager__item--previous,
  .pager .pager__item--next{ display: block; }
  .pager .pager__items{ padding: .25rem .3rem; }
  .pager .pager__item > a{ padding-inline: .9rem; }
}

/* Ultra compacto: solo flechas */
@container (max-width: 300px){
  .pager .pager__item.is-active{ display: none; }
}

/* Respeta reduce-motion */
@media (prefers-reduced-motion: reduce){
  .pager .pager__item > a{ transition: none; }
}

/* Modo “quiet” (cuando el fondo es complejo): sube contraste de borde */
@media (prefers-contrast: more){
  .pager .pager__items{ border-color: color-mix(in oklab, var(--pg-stroke), currentColor 25%); }
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* PESTAÑAS */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

.region_tabs:not(body.gestion-usuarios .region_tabs) {
  background-color: var(--color-edicion);
}
.node-unpublished .region_tabs:not(body.gestion-usuarios .region_tabs) {
  background-color: #ae0000;
}
.region_tabs ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 2rem;
  padding-bottom: 0;
}
.region_tabs li {
  display: inline-block;
}
.region_tabs a {
    display: inline-block;
    padding: 5px 10px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1rem;
    border-radius: 5px 5px 0 0;
    letter-spacing: 0.1rem;
}
.region_tabs a.is-active:not(body.gestion-usuarios a.is-active) {
  background-color: var(--color-secundario, var(--color-claro));
  color: var(--color-primario, var(--color-oscuro));
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* MAIN CONTENT */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

article .main-layout {
  max-width: 100rem;
  position: relative;
}
/* Estilo */
.content-type-estilo article .main-layout {
  border-radius: calc(var(--radio) * 2);
}
.content-type-estilo article {
  max-width: 103rem;
  margin-right: auto;
  margin-left: auto;
}
/* fondo desenfocado */
:root {
    --dither-noise: url(../images/noise-dither.png);
}
.content-type-estilo #block-srefs-content > article::before {
  content: "";
  position: fixed;
  inset: -40rem;
  background-image: var(--bg-url);
  background-size: cover;
  background-position: center;
  filter: var(--backdrop);
  -webkit-filter: var(--backdrop);
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  z-index: -1;
  /* Máscara para eliminar el banding */
  mask-image: var(--dither-noise);
  -webkit-mask-image: var(--dither-noise);
  mask-repeat: repeat;
  -webkit-mask-repeat: repeat;
  mask-size: 1.5px 1px;
  -webkit-mask-size: 1.5px 1px;
}
/* Portada de estilo */
.field--name-field-imagen-portada img {
  height: auto;
  display: block;
}
#main-content {
  line-height: 1.5em;
}
#clasificacion .taxonomia {
  border-bottom: 1px solid color-mix(in srgb, transparent 80%, var(--color-oscuro));
  padding: 0.5rem 0;
}
#clasificacion .taxonomia:last-child {
  margin: 0 0 2rem;
}
#categorizacion .taxonomia {
  display: inline;
}
.spotify-embed-wrapper {
  margin: 0.5rem 0 0;
  padding: 1rem 0;
  border-bottom: 1px solid;
}
.taxonomia span {
  font-family: var(--texto-marcador);
  font-weight: 500;
}
.taxonomia:last-child {
  margin-bottom: 2rem;
}
.taxonomia .field-label::after {
  content: "\00A0"; /* NBSP: espacio no separable */
}
section h2:not(.sin_resultados h2),
#block-srefs-views-block-estilos-relacionados-block-1 h2 {
  font-size: 1.4rem;
  border-left: 2px solid;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* CATÁLOGO */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

#conteos {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 3rem;
}

/* Primer div: bloque de texto a la izquierda */
#conteos > div:first-child {
  flex: 1;
}

/* Segundo div: bloque de conteos a la derecha */
#conteos > div:nth-child(2) {
  flex: 1;
  display: flex;
  justify-content: space-around;
}

/* Contenedor de los 3 conteos */
#conteos .conteos {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  width: 100%;
  max-width: 520px;
}

/* Cada conteo */
#conteos .conteo {
  display: flex;
  flex-direction: column;
}

/*
#conteos .conteo:before {
  content: "";
  width: 18px;
  height: 25.2px;
  background-color: color-mix(in srgb, transparent 70%, var(--color-oscuro));
  position: absolute;
  margin-left: -30px;
}
#conteos #conteo-estilos:before {
  mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 21'><path d='M14.7,0H.3C.13,0,0,.13,0,.3v14.4c0,.17.13.3.3.3h14.4c.17,0,.3-.13.3-.3V.3C15,.13,14.87,0,14.7,0ZM13.6,13.6H1.4V1.4h12.2v12.2ZM9.9,16.6H.3c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h9.6c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3ZM5.1,19.6H.3c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h4.8c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3Z'/></svg>");
}
#conteos #conteo-terminos:before {
  mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 21'><path d='M.3,4.67h11.2c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3H.3c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3ZM.3,11.2h8c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3H.3c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3ZM.3,1.4h8c.17,0,.3-.13.3-.3V.3C8.6.13,8.47,0,8.3,0H.3C.13,0,0,.13,0,.3v.8c0,.17.13.3.3.3ZM14.7,0h-4.8C9.73,0,9.6.13,9.6.3v.8c0,.17.13.3.3.3h4.8c.17,0,.3-.13.3-.3V.3C15,.13,14.87,0,14.7,0ZM8.3,19.6H.3c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h8c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3ZM14.7,19.6h-4.8c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h4.8c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3ZM.3,17.73h12.8c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3H.3c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3ZM13.4,7.63v-.8c0-.17-.13-.3-.3-.3h-6.4c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h6.4c.17,0,.3-.13.3-.3ZM.3,7.93h4.8c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3H.3c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3ZM14.7,13.07h-3.2c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h3.2c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3ZM.3,14.47h3.2c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3H.3c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3ZM5.1,13.07c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h4.8c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3h-4.8Z'/></svg>");
}
#conteos #conteo-imagenes:before {
  mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16.56 21'><path d='M2.19,8.57v-.8c0-.17-.13-.3-.3-.3H.3c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h1.6c.17,0,.3-.13.3-.3ZM5.39,8.57v-.8c0-.17-.13-.3-.3-.3h-1.6c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h1.6c.17,0,.3-.13.3-.3ZM9.24,2.15l.78.18s.04,0,.07,0c.06,0,.11-.02.16-.05.07-.04.11-.11.13-.19l.36-1.56c.04-.16-.06-.32-.23-.36L9.73,0c-.08-.02-.16,0-.23.04-.07.04-.11.11-.13.19l-.36,1.56c-.04.16.06.32.23.36ZM8.53,5.26l.78.18s.04,0,.07,0c.06,0,.11-.02.16-.05.07-.04.11-.11.13-.19l.36-1.56c.04-.16-.06-.32-.23-.36l-.78-.18c-.08-.02-.16,0-.23.04-.07.04-.11.11-.13.19l-.36,1.56c-.04.16.06.32.23.36ZM5.74,6.11c.06.07.15.11.23.11.07,0,.13-.02.19-.07l.62-.5c.06-.05.1-.12.11-.2,0-.08-.01-.16-.06-.22L3.85,1.49c-.1-.13-.29-.15-.42-.05l-.62.5c-.06.05-.1.12-.11.2,0,.08.01.16.06.22l2.98,3.74ZM10.71,6.55l.35.72c.03.07.1.13.17.15.03.01.07.02.1.02.04,0,.09-.01.13-.03l4.31-2.08c.15-.07.21-.25.14-.4l-.35-.72c-.03-.07-.1-.13-.17-.15-.08-.03-.16-.02-.23.01l-4.31,2.08c-.15.07-.21.25-.14.4ZM11.46,8.92c-.07-.03-.15-.04-.23-.01-.07.03-.14.08-.17.15l-.35.72c-.07.15,0,.33.14.4l4.31,2.08s.09.03.13.03c.03,0,.07,0,.1-.02.07-.03.14-.08.17-.15l.35-.72c.07-.15,0-.33-.14-.4l-4.31-2.08ZM6.54,8.1s.09.03.13.03c.03,0,.07,0,.1-.02.07-.03.14-.08.17-.15l.35-.72c.07-.15,0-.33-.14-.4L1.39,4.08c-.07-.03-.15-.04-.23-.01-.07.03-.14.08-.17.15l-.35.72c-.07.15,0,.33.14.4l5.75,2.77ZM8.66,6.7c0,.08.05.15.11.2l.62.5c.06.04.12.07.19.07.09,0,.17-.04.23-.11l3.98-4.99c.05-.06.07-.14.06-.22,0-.08-.05-.15-.11-.2l-.62-.5c-.13-.1-.32-.08-.42.05l-3.98,4.99c-.05.06-.07.14-.06.22ZM9.54,10.94c-.07-.04-.15-.06-.23-.04l-.78.18c-.16.04-.26.2-.23.36l1.07,4.67c.02.08.07.14.13.19.05.03.1.05.16.05.02,0,.04,0,.07,0l.78-.18c.16-.04.26-.2.23-.36l-1.07-4.67c-.02-.08-.07-.14-.13-.19ZM6.9,10.88c0-.08-.05-.15-.11-.2l-.62-.5c-.13-.1-.32-.08-.42.05l-2.98,3.74c-.05.06-.07.14-.06.22,0,.08.05.15.11.2l.62.5c.06.04.12.07.19.07.09,0,.17-.04.23-.11l2.98-3.74c.05-.06.07-.14.06-.22ZM9.82,8.98c-.1-.13-.29-.15-.42-.05l-.62.5c-.06.05-.1.12-.11.2,0,.08.01.16.06.22l3.98,4.99c.06.07.15.11.23.11.07,0,.13-.02.19-.07l.62-.5c.06-.05.1-.12.11-.2,0-.08-.01-.16-.06-.22l-3.98-4.99ZM6.66,3.84s.1.05.16.05c.02,0,.04,0,.07,0l.78-.18c.16-.04.26-.2.23-.36L7.18.23c-.02-.08-.07-.14-.13-.19-.07-.04-.15-.06-.23-.04l-.78.18c-.16.04-.26.2-.23.36l.71,3.11c.02.08.07.14.13.19ZM7.11,4.85c-.16.04-.26.2-.23.36l.36,1.56c.02.08.07.14.13.19.05.03.1.05.16.05.02,0,.04,0,.07,0l.78-.18c.16-.04.26-.2.23-.36l-.36-1.56c-.02-.08-.07-.14-.13-.19-.07-.04-.15-.06-.23-.04l-.78.18ZM4.41,10.47l-.35-.72c-.03-.07-.1-.13-.17-.15-.08-.03-.16-.02-.23.01l-2.88,1.38c-.15.07-.21.25-.14.4l.35.72c.03.07.1.13.17.15.03.01.07.02.1.02.04,0,.09-.01.13-.03l2.88-1.38c.15-.07.21-.25.14-.4ZM5.31,10.04c.03.07.1.13.17.15.03.01.07.02.1.02.04,0,.09-.01.13-.03l1.44-.69c.15-.07.21-.25.14-.4l-.35-.72c-.03-.07-.1-.13-.17-.15-.08-.03-.16-.02-.23.01l-1.44.69c-.15.07-.21.25-.14.4l.35.72ZM9.87,7.47c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h3.19c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3h-3.19ZM16.26,7.47h-1.6c-.17,0-.3.13-.3.3v.8c0,.17.13.3.3.3h1.6c.17,0,.3-.13.3-.3v-.8c0-.17-.13-.3-.3-.3ZM8.38,9.52l-.78-.18c-.08-.02-.16,0-.23.04-.07.04-.11.11-.13.19l-.71,3.11c-.04.16.06.32.23.36l.78.18s.04,0,.07,0c.06,0,.11-.02.16-.05.07-.04.11-.11.13-.19l.71-3.11c.04-.16-.06-.32-.23-.36ZM6.25,18.85l-.78-.18c-.08-.02-.16,0-.23.04-.07.04-.11.11-.13.19l-.36,1.56c-.04.16.06.32.23.36l.78.18s.04,0,.07,0c.06,0,.11-.02.16-.05.07-.04.11-.11.13-.19l.36-1.56c.04-.16-.06-.32-.23-.36ZM7.31,14.19l-.78-.18c-.08-.02-.16,0-.23.04-.07.04-.11.11-.13.19l-.71,3.11c-.04.16.06.32.23.36l.78.18s.04,0,.07,0c.06,0,.11-.02.16-.05.07-.04.11-.11.13-.19l.71-3.11c.04-.16-.06-.32-.23-.36Z'/></svg>");
  width: 19.8px;
  height: 25.2px;
} */

/* Número */
#conteos .conteo span:first-child {
  font-weight: 700;
  font-size: 2rem;
  line-height: 1;
}

/* Tag */
#conteos .conteo span:last-child {
  font-weight: 700;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: normal;
}

#conteos h2 {
  font-family: libre-baskerville;
  font-weight: 100;
  font-size: 5rem;
  margin-bottom: 0;
}

body.anonymous .views-field-calificacion,
body.anonymous .version,
body.anonymous .form-item-field-calificacion-value,
body.role-entusiasta .views-field-calificacion,
body.role-entusiasta .version,
body.role-entusiasta .form-item-field-calificacion-value {
  display: none;
}
.catalogo .views-row {
  display: flex;
  flex-direction: column;
}
.catalogo > div:not(.contextual):not(.sin_resultados) {
  display: grid;
  column-gap: 1rem;
  justify-content: center;
}
.catalogo .polaroid-view {
  padding-top: 0.3rem;
  transition: var(--transicion-hover);
  height: 100%;
}
.catalogo .polaroid-view a {
  position: relative;
  display: block;
  border-radius: var(--radio);
  height: inherit;
  border: 2px solid rgba(255, 255, 255, 0.04);
}
.catalogo img {
  border-radius: max(0px, calc(var(--radio) - 1rem));
  max-width: 100%;
  max-height: 100%;
  height: auto;
  width: auto;
  display: block;
  margin-bottom: 1rem;
}
.catalogo a span {
  display: block;
}
.catalogo .views-field-title {
  font-family: var(--texto-marcador);
  margin-bottom: 0.5rem;
  font-size: 1.8rem;
  line-height: 1.3em;
  letter-spacing: 0.04em;
  font-weight: 400;
}
.catalogo .views-field-discipline {
  font-size: 1.2rem;
  margin-bottom: 1rem;
  border-top: 1px solid;
  border-bottom: 1px solid;
}
.catalogo .views-field-discipline,
.catalogo .version {
  color:color-mix(in srgb, transparent 50%, var(--color-oscuro))
}
body.anonymous .catalogo .views-field-discipline,
body.role-entusiasta .catalogo .views-field-discipline {
  margin-bottom: 0;
  border-bottom: none;
}
.catalogo .version {
  right: 1rem;
  bottom: 0.2rem;
  position: absolute;
  font-weight: bold;
  font-size: 1rem;
}

/* Botón para cerrar contenido (volver al anterior) */
.row-flexbox {
  position: relative;
}
.close-node {
  position: absolute;
  top: -4.25rem;
  right: -4.25rem;
  width: 25px;
  height: 25px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  text-decoration: none;
  line-height: 1;
  z-index: 5;
  background: rgba(255, 255, 255, .7);
  backdrop-filter: blur(2px);
}
.close-node:hover {
  background: rgba(255,255,255,.9); 
}
.close-node:focus {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}
.close-node > [aria-hidden="true"] {
  font-size: 20px;
  transform: translateY(-1px);
}


/*
.content-type-estilo section.contacto.desarrollo,
.content-type-estilo section.contacto.aplicaciones,
.content-type-estilo section.estilos-relacionados{
  position: relative;
  border-top: none;
}
.content-type-estilo section.contacto.desarrollo::before,
.content-type-estilo section.contacto.aplicaciones::before,
.content-type-estilo section.estilos-relacionados::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 1px;
    pointer-events: none;
    z-index: 1;
    -webkit-backdrop-filter: saturate(var(--saturacion)) brightness(.85);
    backdrop-filter: saturate(5) brightness(.9);
}
*/

/* Contacto */
.contacto .field__items {
  display: grid;
  text-align: center;
  gap: 1rem;
}
.contacto .field__items:not(.content-type-estilo .contacto .field__items) {
  font-size: 1.2rem;
}
.contacto .footer .contacto-titulo {
    font-size: 1.6rem;
}
.contacto .footer {
  display: grid;
  grid-template-rows: auto auto auto;
  gap: 0 5px;
  text-align: left;
}
.contacto .field__item .footer div.image-info > * {
  display: block;
}
.contacto .contacto-titulo {
  font-weight: bold;
  display: inline-block;
}
.contacto .contacto-disciplina {
  font-style: italic;
  font-weight: 100;
  color: color-mix(in srgb, transparent 50%, var(--color-oscuro));;
}
.contacto .views-row,
.contacto .field__items > .field__item {
  align-content: center;
}
.path-taxonomy .contacto .views-row {
  backdrop-filter: saturate(1.2);
}
.contacto .views-row {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.contacto.desarrollo .field__items {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 14rem), 1fr));
}

/* Hover sobre contacto */
.contacto .field__items .field--type-image:hover {
  z-index: 2;
}
.contacto.desarrollo .field__items .field--type-image img:hover {
  transform: scale(1.1);
}
.contacto.aplicaciones .field__items .field--type-image img:hover {
  transform: scale(1.05);
}
.contacto .field__items .field--type-image img:hover {
  box-shadow: 0px 4px 10px -2px rgba(0, 0, 0, 0.4); /* opcional, para dar flotado */
}

/* Corrige las imágenes en el lightbox */
#colorbox,
#cboxWrapper,
#cboxContent {
  overflow: visible;
}
html body #cboxContent #cboxTitle {
  /* display: block !important; */
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  bottom: 0 !important;
  transition: none;
  height: unset !important;
  text-align: center;
  background: none;
}
html body #cboxContent #cboxTitle a {
    color: var(--color-interactivo);
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* POLAROID FOOTER */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

#info {
  font-weight: bold;
  display: flex;
  justify-content: space-between;
  padding: 1rem;
  align-items: center;
  font-size: clamp(0.8em, 0.9vw, 1em);
  border: 1px solid;
  font-family: var(--texto-marcador);
}
#info,
.region_context a.iridiscente canvas,
.region_context a.iridiscente:after {
  border-radius: 13px;
}
#info canvas, #info:after {
  border-radius: 13px !important;
}
/* Calificación */
.starrating {
  display: flex;
}
.rate-image {
  float: none;
  width: 2rem;
  height: 2rem;
  margin-top: 0px;
}
.star1-on,
.star-off {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background: none;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
}
.star1-on {
  mask-image: var(--icono-star-on);
  background-color: var(--color-oscuro);
}
.star-off {
  mask-image: var(--icono-star-off);
  background-color: var(--color-oscuro);
}
.star1-on:not(.content-type-estilo article .star1-on) {
  background-color: #ffa143;
}
.star-off:not(.content-type-estilo article .star-off) {
  background-color: #ffa143;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* LEFT SIDEBAR */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

.sidebar {
  width: var(--sidebar-width);
  padding: 8rem 3rem 3rem;
  position: fixed;
  right: 0rem;
  z-index: 100;
}
.sidebar,
.region_context {
  -ms-overflow-style: none;  /* Oculta el scrollbar */
  scrollbar-width: none;  /* Oculta el scrollbar */
}
.sidebar ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.region_main-menu > * {
  padding-bottom: 3rem;
  margin-bottom: 3rem;
  position: relative;
  border-bottom: 1px solid;
}
.region_main-menu .site-branding__inner {
  padding-bottom: 1rem;
}
.region_footer > * {
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  position: relative;
  border-bottom: 1px solid;
}
.region_footer .input.form-text {
  margin-bottom: 0;
}
.sidebar h2,
.region_context label,
#main-sidebar nav > ul a {
  font-family: var(--texto-marcador);
  line-height: 1.2em;
  font-size: 1.8rem;
  letter-spacing: 0.04rem;
}
#main-sidebar nav > ul li a::after {
    display: inline-block;
    font-family: var(--texto-normal);
    font-size: 1.6rem;
    font-weight: 400;
    text-transform: initial;
    padding-left: 2rem;
    margin-bottom: 1rem;
}
.sidebar li a:not(
  #main-sidebar nav > ul a):not(
  #block-srefs-iniciodesesion ul a):not(footer ul a) {
  display: block;
  padding: 0 0 0 1.2rem;
}
/* Bloque inicio de sesión */
#block-srefs-iniciodesesion h2,
#block-srefs-iniciodesesion .form-actions {
  margin-bottom: 1.5rem;
}
#block-srefs-iniciodesesion label {
  display: none;
}
#block-srefs-iniciodesesion ul a {
  font-size: 1.5rem;
}
#block-srefs-iniciodesesion ul a::after {
  content: " »";
}
/* Bloque Usuario */
#usuario_actual {
  background-color: var(--color-oscuro);
  width: calc(100% + 6rem);
  margin-top: -10rem;
  margin-left: -3rem;
  padding: 2rem;
}
#usuario_actual a {
  color: var(--color-claro) !important;
}
#usuario_actual a {
  display: grid;
  justify-content: start;
  grid-auto-flow: column;
}
.usuario_actual-avatar img {
  width: 50px;
  height: 50px;
  border-radius: 50%;
}
/* Ad banner */
#ad-banner {
  display: block;
  padding: 1rem;
  cursor: pointer;
  line-height: 2rem;
}
#ad-banner * {
  display: inline-block;
}
#ad-banner .ad-title {
  font-size: 1.6rem;
  line-height: 2rem;
}
#ad-banner .ad-cta {
  font-size: 2rem;
}
#main-sidebar #ad-banner .ad-cta {
  padding-bottom: 1rem;
  line-height: 2.2rem;
}
/* Iconos */
#main-sidebar .menu--account a:before,
#main-sidebar .menu--tools a:before {
  content: "";
  display: inline-block;
  width: 1.4rem;
  height: 1.3rem;
  background-color: var(--color-oscuro);
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  margin-right: 1rem;
}
#main-sidebar a[href*="/user"]:before {
  mask-image: var(--icono-account);
}
#main-sidebar a[href*="/bookm"]:before {
  mask-image: var(--icono-bookmark);
}
#main-sidebar a[href*="/mis"]:before {
    mask-image: var(--icono-like);
}
#main-sidebar a[href="/es/mis-comentarios"]:before,
#main-sidebar a[href="/en/mis-comentarios"]:before {
  mask-image: var(--icono-comment);
}
#main-sidebar a[href*="/logout"]:before {
  mask-image: var(--icono-logout);
}
#main-sidebar a[href*="node/add"]:before {
  mask-image: var(--icono-add);
}
#main-sidebar a[href*="admin/content"]:before {
  mask-image: var(--icono-edicion);
}

  
/* Footer */
footer {
  margin-top: auto;
}
#search-block-form .form-actions {
  display: none;
}
.language-switch,
#block-srefs-themetoggler {
  display: inline-flex;
}
#block-srefs-themetoggler {
  display: inline-flex;
  margin-left: calc(100% - 205px);
}

/* Social media icons que sirven también para la página de mantenimiento */
#social {
  display: flex;
  justify-content: space-around;
}
#social a {
  font-size: 0px;
  border: 1px solid color-mix(in srgb, transparent 85%, var(--color-oscuro));
  display: inline-block;
  border-radius: 50px;
  padding: 0.6rem;
}
a.social-media:before {
  content: "";
  background-color: var(--color-oscuro);
  display: inline-block;
  width: calc(1.4rem * 2.1);
  height: calc(1.3rem * 1.1);
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
}
.maintenance-page .social-media:before {
  background-color: var(--color-oscuro);
}
a#x-icon:before {
  mask-image: var(--icono-x);
}
a#instagram-icon:before {
  mask-image: var(--icono-instagram);
}
a#facebook-icon:before {
  mask-image: var(--icono-facebook);
}
a#youtube-icon:before {
  mask-image: var(--icono-youtube);
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* PÁGINA */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

body.content-type-page[data-theme="light"] .main-layout {
  background-color: #fff;
  font-size: larger;
}
body.content-type-page[data-theme="dark"] .main-layout {
  font-size: larger;
}
body.content-type-page .main-layout a:not(.boton) {
  text-decoration: underline;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* VOCABULARIOS */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

.term-name {
  background-color: var(--color-blanco);
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* CUSTOM SPINNER */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

.ajax-progress-fullscreen{
  --size: 40px;
  --pad: 10px;
  display: grid;
  place-items: center;
  background: transparent;
}
.ajax-progress-fullscreen::before{
  content:"";
  width: calc(var(--size) + 2*var(--pad));
  height: calc(var(--size) + 2*var(--pad));
  border-radius: 40px;
  background: var(--color-oscuro);
  position: fixed;
}
.ajax-progress-fullscreen::after{
  content:"";
  width: var(--size); height: var(--size);
  -webkit-mask: none; mask: none;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 44'><g fill='none' stroke='%239e5cf2' stroke-width='4' stroke-linecap='round'><circle cx='22' cy='22' r='18' opacity='0.15'/><path d='M40 22a18 18 0 0 1-18 18' fill='none'><animateTransform attributeName='transform' type='rotate' from='0 22 22' to='360 22 22' dur='1s' repeatCount='indefinite'/></path></g></svg>") center/contain no-repeat;
  position: fixed;
  margin:10px;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* TOGGLER and SWITCHER */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

.language-switch .contextual {
  margin-right: -2rem;
  top: 0;
}
#main-sidebar nav.language-switch,
#main-sidebar #block-srefs-themetoggler {
  width: max-content;
  padding: 4px;
  /* margin-top: 2rem; */
  border: 1px solid var(--color-oscuro);
  border-radius: calc(var(--radio) * 50);
}
#main-sidebar nav.language-switch > ul,
#main-sidebar .theme-toggler-wrapper {
  display: flex;
  align-items: center;
}
#main-sidebar nav.language-switch li,
#main-sidebar nav.language-switch a:not(.contextual-links a),
#main-sidebar .theme-toggler-wrapper li,
#main-sidebar .theme-toggler-wrapper a:not(.contextual-links a) {
  display: inline-block;
}
#main-sidebar nav.language-switch a:not(.contextual-links a),
#main-sidebar .theme-toggler-wrapper a:not(.contextual-links a) {
  display: block;
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: bold;
  color: var(--color-oscuro);
  width: 4.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: calc(var(--radio) * 50);
}
#main-sidebar nav.language-switch .is-active a,
#main-sidebar .theme-toggler-wrapper .is-active a {
  background-color: var(--primary-hover);
  color: var(--color-oscuro) !important;
}
#main-sidebar .theme-toggler-wrapper a::before {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background-color: var(--color-oscuro);
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
}
#main-sidebar .theme-toggler-wrapper .theme-dark a::before {
  mask-image: var(--icono-luna);
}
#main-sidebar .theme-toggler-wrapper .theme-light a::before {
  mask-image: var(--icono-sol);
}
body[data-theme="light"] #main-sidebar nav.language-switch .is-active a {
  color: var(--color-blanco) !important;
}
body[data-theme="light"] #main-sidebar .theme-toggler-wrapper .theme-light a::before {
  background-color: var(--color-blanco);
}
/*
#block-srefs-themetoggler {
  position: absolute;
  right: 3rem;
  bottom: 3rem;
}
*/

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* FLAGS */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */


.ajax-progress.ajax-progress-throbber,
.throbber {
  display: none;
}
.polaroid-footer {
  display: grid;
  grid-auto-flow: column;
  justify-content: space-between;
  margin: 1rem 0.5rem 2rem;
  line-height: 0;
  font-weight: 600;
  font-size: 1.5rem;
  font-family: var(--texto-marcador);
}
.likes-footer,
.comments-footer {
  display: flex;
  align-items: center;
}
.polaroid-footer .flag-bookmark a,
.polaroid-footer .comment-icon,
.flag-me-gusta a {
  font-size: 0px;
  line-height: 0px;
}
.polaroid-footer .flag-bookmark a:after,
.polaroid-footer .comment-icon:after,
.flag-me-gusta a:after {
  content: "";
  display: inline-block;
  visibility: visible;
}
.polaroid-footer .flag-bookmark.action-flag a:after {
  mask-image: var(--icono-bookmark);
  background-color: var(--color-oscuro);
  mask-repeat: no-repeat;
}
.polaroid-footer .flag-bookmark.action-unflag a:after {
  mask-image: var(--icono-unbookmark);
  background-color: var(--color-intermedio);
  mask-repeat: no-repeat;
}
.flag-me-gusta a {
  padding: 6px 0 10px 10px;
  display: block;
}
.flag-me-gusta.action-flag a:after {
  mask-image: var(--icono-like);
  background-color: var(--color-oscuro);
  mask-repeat: no-repeat;
}
.flag-me-gusta.action-unflag a:after {
  mask-image: var(--icono-unlike);
  background-color: #d55fd9;
  mask-repeat: no-repeat;
  filter: opacity(1);
}
.polaroid-footer .comment-icon:after {
  mask-image: var(--icono-comment);
  background-color: var(--color-oscuro);
  mask-repeat: no-repeat;
}
/* Solo catalogo */
.catalogo .likes-footer .flag-count,
.catalogo .comments-footer .comment-count {
  margin-right: 0.5rem;
  margin-top: 1px;
}
.content-type-estilo article .polaroid-footer .flag-bookmark a:after,
.content-type-estilo article .polaroid-footer .comment-icon:after {
  width: 17.5px;
  height: 16.25px;
}
.catalogo .polaroid-footer .flag-bookmark a:after,
.catalogo .polaroid-footer .comment-icon:after {
  width: 14px;
  height: 13px;
}
.anonymous .polaroid-footer .es_autorizado .flag-bookmark,
.anonymous.lang-es .polaroid-footer .no_autorizado.lang-en .flag-bookmark,
.anonymous.lang-en .polaroid-footer .no_autorizado.lang-es .flag-bookmark,
.role-entusiasta .polaroid-footer .no_autorizado .flag-bookmark,
.role-experto .polaroid-footer .no_autorizado .flag-bookmark,
.role-content_editor .polaroid-footer .no_autorizado .flag-bookmark,
.role-administrator .polaroid-footer .no_autorizado .flag-bookmark {
  display: none;
}
/* Solo nodo */
.content-type-estilo article .polaroid-footer {
  font-size: 1.8rem;
}
.content-type-estilo article .likes-footer .flag-count,
.content-type-estilo article .comments-footer .comment-count {
  margin-right: 0.6rem;
  margin-top: 2px;
}

body.path-user .main-layout {
  font-size: larger;
}
.helper-icon::before {
  content: "";
  display: inline-block;
  width:1.4rem;
  height:1.3rem;
  margin: 0 0.5rem;
}
.helper-icon.helper-bookmark::before {
  mask-image: var(--icono-bookmark);
  background-color: var(--color-oscuro);
  mask-repeat: no-repeat;
}
.helper-icon.helper-like::before {
  mask-image: var(--icono-like);
  background-color: var(--color-oscuro);
  mask-repeat: no-repeat;
}
body:has(.sin_resultados) .main-layout {
    display: grid;
    justify-content: center;
    height: 100vh;
    align-content: center;
}
:has(.sin_resultados) .sin_resultados {
  display: block;
  max-width: 30rem;
}
:has(.sin_resultados) #main-content {
  padding: 0rem !important;
}

.flag-bookmark.action-unflag a.animando::after,
.flag-me-gusta.action-unflag a.animando::after {
  animation: latido 2s ease;
}

@keyframes latido {
  0%   { transform: scale(1); }
  5%   { transform: scale(1.4); }
  10%  { transform: scale(0.8); }
  15%  { transform: scale(1); }
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* ALERTAS */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

.region_messages:has([role="status"]) {
  background-color: var(--color-blanco);
}
[data-drupal-messages] [role="status"] {
  font-size: 1.6rem;
}

[data-drupal-messages] [role="status"]::before {
  content: "";
  mask-image: url('data:image/svg+xml;utf8,<svg id="icono-alerta" data-name="Icono alerta" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M18.63,11.08c-.55-.49-1.07-.96-1.07-3.24,0-4.32-3.39-7.84-7.56-7.84S2.44,3.52,2.44,7.84c0,2.27-.52,2.74-1.07,3.24-.58.52-1.37,1.24-1.37,3.06,0,1.53,1.89,2.04,3.73,2.33.85.14,1.86.24,2.96.31.08,1.79,1.53,3.22,3.31,3.22s3.22-1.42,3.31-3.2c6.69-.39,6.69-2,6.69-2.66,0-1.83-.79-2.54-1.37-3.06ZM10,17.7c-.48,0-.89-.35-1-.82.32,0,.65,0,1,0s.68,0,1,0c-.11.47-.51.82-1,.82ZM2.31,13.78c.05-.5.22-.65.6-.99.96-.87,1.83-1.9,1.83-4.94s2.36-5.54,5.26-5.54,5.26,2.49,5.26,5.54.86,4.08,1.83,4.94c.38.34.55.5.6.99-2.13,1.08-13.24,1.08-15.37,0Z"/></svg>');
  background-color: var(--color-oscuro);
  width: 20px;
  height: 20px;
  margin-right: 1rem;
}
[data-drupal-messages] [role="alert"] {
  background-color: var(--alert-background);
}
[data-drupal-messages] [role="contentinfo"] {
  background-color: var(--status-background);
}
[data-drupal-messages] ul {
  padding: 0;
  margin: 0;
}
[data-drupal-messages] [role="alert"],
[data-drupal-messages] [role="contentinfo"] {
  padding: 15px 10px 10px 20px;
  font-size: 0.8em;
  margin-bottom: 20px;
}
[data-drupal-messages] [role="alert"] {
  color:  var(--alert-text);
}
[data-drupal-messages] [role="contentinfo"] {
  color:  var(--status-text);
}
[data-drupal-messages] li {
  padding: 5px 0px 10px 0px;
  list-style: none;
}
[data-drupal-messages] [role="alert"] li::before,
[data-drupal-messages] [role="alert"]::before,
[data-drupal-messages] [role="contentinfo"]::before {
  content: '';
  display: block;
  width: 11px;
  height: 5px;
  margin: 0 7px -10px -25px;
}
[data-drupal-messages] [role="alert"] li::before,
[data-drupal-messages] [role="alert"]::before {
  background-color: var(--alert-text);
}
[data-drupal-messages] [role="contentinfo"]::before {
  background-color: var(--status-text);
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* FORMULARIOS */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

/* ============================================================
   RESET COMPLETO PARA AUTOFILL
   Neutraliza estilos impuestos por WebKit (Chrome / Edge / Safari)
   ============================================================ */

/* Estados autofill */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
    /* Elimina la capa amarilla/azul/verde impuesta por WebKit */
    -webkit-box-shadow: 0 0 0px 1000px transparent inset !important;
    box-shadow: 0 0 0px 1000px transparent inset !important;

    /* Restablece color del texto */
    -webkit-text-fill-color: inherit !important;
    color: inherit !important;

    /* Evita transiciones forzadas por WebKit */
    transition: background-color 9999s ease-in-out 0s !important;
}

/* Reseteo general de inputs para asegurar neutralidad */
input,
textarea,
select {
    background-color: transparent;
    color: inherit;
    box-shadow: none;
    outline: none;
    border-radius: 0;
}
/*----------------------------------------------------------*/

/* Campos */
input.form-text,
input[type="search"],
input[type="email"] {
  width: 100%;
  height: 3.5rem;
  background-color: color-mix(in srgb, transparent 85%, var(--color-oscuro));
  color: var(--color-oscuro);
  padding: 5px 7px;
  font-size: 1.8rem;
  font-family: var(--texto-marcador);
  font-weight: 300;
  margin-bottom: 5px;
  border: 1px solid color-mix(in srgb, transparent 80%, var(--color-oscuro));
}
.catalogo input.form-text[value=""],
#block-busqueda-por-sref input.form-text[value=""] {
  background: none;
}
#block-busqueda-por-sref input.form-text[value=""]::placeholder {
  color: color-mix(in srgb, transparent 60%, var(--color-oscuro));
}
#formulario-acciones-usuario label {
    font-family: var(--texto-marcador);
    text-transform: uppercase;
    font-size: 1.2rem;
    border-left: 2px solid;
    padding-left: 1rem;
    letter-spacing: 0.1rem;
    margin-left: -2rem;
}
.form-file {
  padding: 1rem;
  border: 1px solid color-mix(in srgb, transparent 80%, var(--color-oscuro));
  width: 100%;
  background-color: color-mix(in srgb, transparent 85%, var(--color-oscuro));
  border-radius: var(--radio);
}
/* Botones  */
.form-item .description {
  font-size: 1.5rem;
  margin-bottom: 3rem;
}
input.form-text,
input[type="search"],
input[type="email"],
.form-actions input,
#usuario_actual a.cerrar-sesion,
#coleccion-enlaces a:last-child,
#coleccion-enlaces a:first-child,
body.path-cart .carrito .form-actions input:nth-child(1),
.commerce-checkout-flow .checkout-pane-login .fieldset-wrapper > input,
#edit-payment-information-billing-information input.address-book-edit-button,
#edit-payment-information-add-payment-method-billing-information input.address-book-edit-button {
  border-radius: var(--radio);
}
#usuario_actual a.cerrar-sesion,
.form-actions input:not(.views-exposed-form .form-actions input),
#coleccion-enlaces a:last-child,
#coleccion-enlaces a:first-child,
body.path-cart .carrito .form-actions input:nth-child(1),
.commerce-checkout-flow .checkout-pane-login .fieldset-wrapper > input,
#edit-payment-information-billing-information input.address-book-edit-button,
#edit-payment-information-add-payment-method-billing-information input.address-book-edit-button {
    display: inline-block;
    font-size: 1.5rem;
    padding: 1rem 1.6rem 1rem;
    font-weight: bold;
    cursor: pointer;
    transition: calc(var(--transicion-hover) * 2);
    border: 1.5px solid;
    margin-top: 2rem;
}
.form-actions input {
  width: 100%;
}
body.path-cart .carrito .form-actions input:nth-child(1),
#edit-payment-information-billing-information input.address-book-edit-button,
#edit-payment-information-add-payment-method-billing-information input.address-book-edit-button {
    background-color: var(--blanco);
    color: var(--color-oscuro);
}
.form-actions input,
.commerce-checkout-flow .checkout-pane-login .fieldset-wrapper > input {
    background-color: var(--color-oscuro);
    color: var(--color-claro);
    border: none;
    border-radius: var(--radio);
}
.form-actions input:hover {
  animation: dark-move-in-icon calc(var(--transicion-hover) * 2) ease-in-out;
  background-color: var(--secondary-hover);
}
.login-button,
.register-button,
.button--add-to-cart {
  width: 100%;
}
input::placeholder {
  color: var(--color-oscuro);
}
fieldset {
  border: none;
  margin: 0;
  padding: 0;
}
.user-form {
  max-width: 500px;
}
/* select.form-select {
  width: 100%;
  padding: 5px;
  background-color: #fff;
  border: 2px solid var(--color-oscuro);
  font-weight: bold;
  border-radius: 0;
  color: var(--color-oscuro);
  cursor: pointer;
}*/
.address-container-inline {
  display: grid;
  align-items: center;
  justify-content: start;
  grid-column-gap: 20px;
}
.address-container-inline div:nth-child(1) {
  grid-column: 1;
}
.address-container-inline div:nth-child(2) {
  grid-column: 2;
}
.address-container-inline > .form-item {
  width: 100%;
}
.ck.ck-balloon-panel.ck-balloon-panel_visible {
  display: none !important;
}

/* Botón iridiscente */

.boton {
  display: inline-block;
  padding: 0.8rem 1.6rem 1.2rem;
  font-size: 1.5rem;
  font-weight: bold;
  color: var(--color-claro);
  border-radius: var(--radio);
  cursor: pointer;
  transition: 0.2s;
}
body.anonymous .conviertete-experto,
body.role-entusiasta .unete-entusiasta,
body.role-entusiasta .unete-experto,
body.role-experto .unete-entusiasta,
body.role-experto .unete-experto,
body.role-experto .conviertete-experto {
  display: none;
}
.unete-experto:before,
.conviertete-experto:before {
  content: "";
  display: inline-block;
  mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 133.08 133.08'><path d='M90.77,68.22c-14.59-4.95-24.08-14.45-29.01-28.97-1.54-4.64-4.75-10.16-11.33-10.16h0c-6.58,0-9.79,5.53-11.3,10.11-4.94,14.57-14.43,24.06-29,29.01C5.5,69.74,0,72.96,0,79.51c0,6.58,5.53,9.79,10.1,11.31,14.59,4.95,24.08,14.45,29.01,28.97,1.54,4.64,4.75,10.17,11.33,10.16s9.79-5.53,11.3-10.11c4.95-14.58,14.44-24.07,28.96-29,4.64-1.54,10.17-4.75,10.17-11.33s-5.53-9.79-10.1-11.31ZM124.84,19.81c-7.38-2.51-12.19-7.31-14.69-14.67-1.41-4.25-3.9-5.14-5.73-5.14h0c-1.84,0-4.32.89-5.72,5.12-2.5,7.38-7.3,12.18-14.68,14.69-4.24,1.41-5.13,3.89-5.13,5.73,0,1.84.89,4.32,5.12,5.72,7.38,2.51,12.19,7.31,14.69,14.67,1.41,4.25,3.9,5.15,5.73,5.15h0c1.84,0,4.32-.89,5.72-5.12,2.5-7.38,7.31-12.19,14.66-14.68,4.25-1.41,5.15-3.9,5.15-5.73,0-1.84-.89-4.32-5.12-5.73Z'/></svg>");
  background-color: var(--color-blanco);
  mask-repeat: no-repeat;
  width: 1.9rem;
  height: 1.9rem;
  margin-right: 1rem;
}

/* Botón solo-ícono: tamaño cómodo y foco accesible */
.copy-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14.5px;
  height: 13.5px;
  padding: 0;
  cursor: pointer;
  background-color: var(--color-oscuro);
  mask-image: var(--icono-copy);
  mask-repeat: no-repeat;
  border: none;
}

.copy-btn:focus-visible {
  outline: 2px solid #2684FF;
  outline-offset: 2px;
}


/* Toast flotante */
.copy-toast {
  position: fixed;
  left: 50%;
  bottom: 32px;
  transform: translateX(-50%) translateY(10px);
  background: rgba(0,0,0,0.85);
  color: #fff;
  padding: 10px 14px;
  border-radius: 10px;
  font-size: 14px;
  line-height: 1;
  opacity: 0;
  transition: opacity 200ms ease, transform 200ms ease;
  z-index: 9999;
  pointer-events: none;
  white-space: nowrap;
}

.copy-toast--show {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.copy-toast--hide {
  opacity: 0;
  transform: translateX(-50%) translateY(10px);
}

@media (prefers-reduced-motion: reduce) {
  .copy-toast {
    transition: opacity 1ms linear, transform 1ms linear;
  }
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* COMENTARIOS */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

.ck.ck-editor__main>.ck-editor__editable {
  background-color: color-mix(in srgb, transparent 90%, var(--color-oscuro)) !important;
  border: none !important;
}
.comentarios-formulario .view-contents > div > div {
  display: none;
}
:root{
  --c-meta:#6a6a6a;
  --c-link:#0079d3;
  --c-link-hover:#1484d6;
  --c-accent:#6D28D9; /* violeta avatar fallback */
}
.comentarios,
.comentarios-estilos .view-contents,
#block-comentarios-en-estilos form,
.comment-form {
  max-width: 70rem;
  margin-right: auto;
  margin-left: auto;
}
.comentario {
  position: relative;
  display:flex;
  gap:1.2rem;
  padding:3rem 2rem;
  border-top: 1px solid;
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;
}
.comentario.nivel-1 {
  margin-left: 4rem;
  border-top: none !important;
}
.comentario.nivel-2 {
  margin-left: 8rem;
  border-top: none !important;
}
.comentario-avatar-img {
  display: grid;
  place-items: center;
  border-radius: calc(var(--radio) / 2);
}
.comentario-avatar-img {
  width: 4rem;
  height: 4rem;
}
.comentario-avatar-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border: 1px solid #ffffff;
  z-index: -2;
  position: relative;
}
.comentario-avatar-img img,
.comentario-avatar-fallback {
  border-radius: calc(var(--radio) * 1.5);
}
.comentario-avatar-fallback {
  background-color: #000000;
  color: #ffffff;
  font-weight: 300;
  line-height: 1;
}
.comentario-meta {
  padding-top: 1rem;
  font-size: 1.6rem;
  color: color-mix(in srgb, transparent 55%, var(--color-oscuro));
  height: fit-content;
}
.comentario-autor {
  font-weight:600;
}
.comentario-fecha::before {
  content: "·";
  margin: 0 6px 0 2px;
}
.comentario-cuerpo {
  margin-top: 6px;
  font-size: 1.6rem;
  line-height: 1.8;
  word-wrap:break-word;
}

.comentario-cuerpo p{ margin:0 0 .75em; }
.comentario-cuerpo a{ color:var(--c-link); text-decoration:none; }

.comentario-footer{
  display:flex; gap:16px; flex-wrap:wrap;
  margin-top:8px; font-size:12px; color:var(--c-meta);
}

/* Badge */
.rol-experto.iridiscente::after,
.rol-experto.iridiscente canvas {
  position: absolute;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 133.08 133.08'><path d='M90.77,68.22c-14.59-4.95-24.08-14.45-29.01-28.97-1.54-4.64-4.75-10.16-11.33-10.16h0c-6.58,0-9.79,5.53-11.3,10.11-4.94,14.57-14.43,24.06-29,29.01C5.5,69.74,0,72.96,0,79.51c0,6.58,5.53,9.79,10.1,11.31,14.59,4.95,24.08,14.45,29.01,28.97,1.54,4.64,4.75,10.17,11.33,10.16s9.79-5.53,11.3-10.11c4.95-14.58,14.44-24.07,28.96-29,4.64-1.54,10.17-4.75,10.17-11.33s-5.53-9.79-10.1-11.31ZM124.84,19.81c-7.38-2.51-12.19-7.31-14.69-14.67-1.41-4.25-3.9-5.14-5.73-5.14h0c-1.84,0-4.32.89-5.72,5.12-2.5,7.38-7.3,12.18-14.68,14.69-4.24,1.41-5.13,3.89-5.13,5.73,0,1.84.89,4.32,5.12,5.72,7.38,2.51,12.19,7.31,14.69,14.67,1.41,4.25,3.9,5.15,5.73,5.15h0c1.84,0,4.32-.89,5.72-5.12,2.5-7.38,7.31-12.19,14.66-14.68,4.25-1.41,5.15-3.9,5.15-5.73,0-1.84-.89-4.32-5.12-5.73Z'/></svg>") no-repeat center;
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 133.08 133.08'><path d='M90.77,68.22c-14.59-4.95-24.08-14.45-29.01-28.97-1.54-4.64-4.75-10.16-11.33-10.16h0c-6.58,0-9.79,5.53-11.3,10.11-4.94,14.57-14.43,24.06-29,29.01C5.5,69.74,0,72.96,0,79.51c0,6.58,5.53,9.79,10.1,11.31,14.59,4.95,24.08,14.45,29.01,28.97,1.54,4.64,4.75,10.17,11.33,10.16s9.79-5.53,11.3-10.11c4.95-14.58,14.44-24.07,28.96-29,4.64-1.54,10.17-4.75,10.17-11.33s-5.53-9.79-10.1-11.31ZM124.84,19.81c-7.38-2.51-12.19-7.31-14.69-14.67-1.41-4.25-3.9-5.14-5.73-5.14h0c-1.84,0-4.32.89-5.72,5.12-2.5,7.38-7.3,12.18-14.68,14.69-4.24,1.41-5.13,3.89-5.13,5.73,0,1.84.89,4.32,5.12,5.72,7.38,2.51,12.19,7.31,14.69,14.67,1.41,4.25,3.9,5.15,5.73,5.15h0c1.84,0,4.32-.89,5.72-5.12,2.5-7.38,7.31-12.19,14.66-14.68,4.25-1.41,5.15-3.9,5.15-5.73,0-1.84-.89-4.32-5.12-5.73Z'/></svg>") no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
  width: 2rem;
  height: 2rem;
  top: 2.9rem;
  left: -0.8rem;
}
.path-user .rol-experto.iridiscente::after,
.path-user .rol-experto.iridiscente canvas {
  width: 4rem;
  height: 4rem;
  top: 7.5rem;
  left: -1.6rem;
}





/* utilidades */
.visually-hidden{ position:absolute; width:1px; height:1px; margin:-1px;
  padding:0; border:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }

#block-comentarios-en-estilos article {
  display: none;
}

/* Form */
.comment-form {
  margin-top: 5rem;
}
.comment-comment-form {
  border: 1px solid;
  padding: 2rem;
}
.comment-comment-form .ck-editor__main {
  margin-bottom: 2rem;
}
.comment-comment-form .form-actions {
  text-align: right;
}

/* En Mis comentarios */

.mis-comentarios .polaroid-view {
  padding-top: 0.3rem;
  transition: var(--transicion-hover);
}
.mis-comentarios .polaroid-view a {
  position: relative;
  display: block;
  padding: 1rem;
  border-radius: var(--radio);
  display: grid;
  column-gap: 1rem;
  justify-content: center;
  grid-template-columns: auto 1fr;
}
.mis-comentarios .polaroid-view img {
  border-radius: max(0px, calc(var(--radio) - 1rem));
  max-width: 100%;
  max-height: 100%;
  height: 10rem;
  width: auto;
  display: block;
  margin-bottom: 0;
}
.mis-comentarios .polaroid-view span {
  display: block;
}
.mis-comentarios .views-field-title {
  font-family: var(--texto-marcador);
  font-size: 2rem;
  margin-bottom: 0.5rem;
}
.mis-comentarios .polaroid-view .views-field-discipline {
  font-size: 1rem;
  margin-bottom: 1rem;
  padding: 0rem 0 0.4rem 0;
}
.mis-comentarios .polaroid-view .rate-image {
  float: none;
  width: 1.5rem;
  height: 1.5rem;
  margin-right: 0.5rem;
  margin-top: 3px;

}
.mis-comentarios .version {
  right: 1rem;
  bottom: 1rem;
  position: absolute;
  font-weight: bold;
  font-size: 1rem;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* PÁGINA DE PERFIL */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */


.path-user .perfil-header {
  background-color: var(--color-blanco);
}
.perfil-info {
  min-width: 50%;
}
.perfil-info h1 {
  border-bottom: 3px solid;
}
.path-user .perfil-header > div > div {
  display: flex;
  gap: 1.5rem;
  padding: 2rem;
  border-radius: calc(var(--radio) * 2);
}
.path-user .comentario-avatar-img {
  width: 10rem;
  height: 10rem;
  font-size: 3rem;
}
.path-user .perfil-estadisticas {
  display: flex;
  gap: 1.5rem;
  font-size: 0.95rem;
  align-items: center;
}
.path-user article .polaroid-footer .flag-bookmark a:after,
.path-user article .polaroid-footer .comment-icon:after {
  width: 2.52rem;
  height: 2.34rem;
}
.path-user .likes-footer .flag-count,
.path-user .comments-footer .comment-count {
  margin-right: 0.5rem;
}
.path-user article .polaroid-footer {
  font-size: 2.3rem;
}

/* Mi Universo visual */
#mi-universo {
  padding: 1rem;
}
.tag-cloud-wrapper {
  border-bottom: 1px solid;
  padding-bottom: 3rem;
  margin-bottom: 3rem;
}
.top-termino {
  display: inline-block;
}
.tag-cloud-item a {
  display: inline-block;
  padding: 0.4rem 1rem;
  border-radius: var(--radio);
  margin-bottom: 0.4rem;
  border: 1px solid var(--color-blanco);

}
.tag-cloud-item.nivel-1 a {
  background: color-mix(in srgb, transparent 100%, var(--color-blanco));
}
.tag-cloud-item.nivel-2 a {
  background: color-mix(in srgb, transparent 60%, var(--color-blanco));
}
.tag-cloud-item.nivel-3 a {
  background: color-mix(in srgb, transparent 40%, var(--color-blanco));
}
.tag-cloud-item.nivel-4 a {
  background: color-mix(in srgb, transparent 20%, var(--color-blanco));
}
.tag-cloud-item.nivel-5 a {
  background: color-mix(in srgb, transparent 0%, var(--color-blanco));
}
.tag-cloud-item sup {
  font-size: x-small;
  font-weight: 700;
  margin-left: 0.2rem;
  filter: opacity(0.25);
}

/* FORMULARIO DE EDICIÓN */
/* === FORMULARIO DE EDICIÓN DE PERFIL - STILODEX FORM === */
#page-user-edit form.user-form {
  --bg-input: #fdfcfb;
  --color-text: #2a2a2a;
  --color-border: #d8d4cf;

  max-width: 720px;
  margin: 5rem auto;
  border: 1px solid color-mix(in srgb, transparent 85%, var(--color-oscuro));
  color: var(--color-text);
}
#page-user-edit form.user-form > * {
  padding: 3rem 2.5rem;
}
#page-user-edit form.user-form > *:not(.form-actions){
  border-bottom: 1px solid color-mix(in srgb, transparent 85%, var(--color-oscuro));
}

/* Título */
#page-user-edit #main-content > h1 {
  color: var(--color-text);
  margin-bottom: 2.5rem;
  text-align: left;
}

/* Estructura general */
#page-user-edit form.user-form .form-wrapper {
  margin-bottom: 2rem;
}

#page-user-edit form.user-form .form-item {
  margin-bottom: 1.6rem;
}

/* Labels */
#page-user-edit form.user-form label {
  display: block;
  color: var(--color-text);
  margin-bottom: 0.5rem;
  font-weight: 900;
}

/* Inputs y selects */
#page-user-edit form.user-form input[type="text"],
#page-user-edit form.user-form input[type="email"],
#page-user-edit form.user-form input[type="password"],
#page-user-edit form.user-form input[type="file"],
#page-user-edit form.user-form select,
#page-user-edit form.user-form textarea {
  width: 100%;
  background: var(--bg-input);
  border: 1px solid var(--color-border);
  border-radius: 6px;
  padding: 0.75rem 0.9rem;
  color: var(--color-text);
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

#page-user-edit form.user-form input:focus,
#page-user-edit form.user-form select:focus,
#page-user-edit form.user-form textarea:focus {
  outline: none;
  border-color: var(--color-accent);
  background: #fff;
}

/* Checkbox */
#page-user-edit form.user-form input[type="checkbox"] {
  accent-color: var(--color-accent);
  transform: scale(1.2);
  margin-right: 0.6rem;
  cursor: pointer;
}

/* Descripciones */
#page-user-edit form.user-form .description {
  font-size: 0.9em;
  margin-bottom: 3rem;
  line-height: 1.4em;
}

/* Acordeones */
#page-user-edit form.user-form details {
  padding-top: 1.8rem;
}
#page-user-edit form.user-form details summary {
  cursor: pointer;
  color: var(--color-accent);
  margin-bottom: 1rem;
  list-style: none;
}

/* Password strength */
#page-user-edit form.user-form .password-strength {
  margin-top: 0.5rem;
}
#page-user-edit form.user-form .password-strength__meter {
  height: 5px;
  background: #e0ddd9;
  border-radius: 3px;
  overflow: hidden;
}
#page-user-edit form.user-form .password-strength__indicator {
  height: 100%;
  background: var(--color-accent);
  width: 0%;
  transition: width 0.3s ease;
}

/* Botón principal */
#page-user-edit form.user-form .form-actions {
  text-align: right;
}
#page-user-edit form.user-form .form-actions input[type="submit"] {
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 0.7rem 1.6rem;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

/* Imagen de usuario */
#page-user-edit form.user-form .field--name-user-picture {
  padding-top: 2rem;
}

/* Responsivo */
@media (max-width: 680px) {
  #page-user-edit form.user-form {
    padding: 2rem 1.5rem;
    margin: 3rem 1rem;
  }
  #page-user-edit #main-content > h1 {
    margin-bottom: 2rem;
  }
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* PÁGINA DE REGISTRO */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */


body.gestion-usuarios #cortina  {
  width: 100%;
  height: 100%;
  inset: 0;
  background-color: color-mix(in srgb, transparent 30%, var(--color-claro));
  display: block;
  z-index: -1;
  position: fixed;
}
#contenedor-acciones-usuario {
  max-width: 50rem;
  margin: 0 auto 10rem;
}
#contenedor-acciones-usuario > div:not(.region_tabs) {
  padding: 20px;
}
#contenedor-acciones-usuario .region_tabs ul {
  padding-left: 0;
}
#presentacion-acciones-usuario {
  color: var(--color-oscuro);
  border: 1px solid;
  border-bottom: none;
}
#presentacion-acciones-usuario p {
  font-weight: 300;
  font-style: normal;
  line-height: 1.5em;
}
#formulario-acciones-usuario {
  border: 1px solid;
}
body.gestion-usuarios .region_tabs a.is-active {
  border: 1px solid;
  border-bottom: none;
  margin-left: 0.5rem;
}
body.gestion-usuarios .region_tabs {
  border: 1px solid;
  border-bottom: none;
}
body.gestion-usuarios #backing {
  position:fixed;
  inset:0;
  z-index:-10;
  pointer-events:none;
  filter: blur(var(--cblur)) saturate(var(--saturacion));  
  background-color: var(--cback);
}
.liquid-bg {
  position:absolute;
  inset:0;
  overflow:hidden;
}
#container .caption::before,
#container .caption::after{
  position: fixed;
  inset: auto auto 2rem 2rem;
  color: var(--color-oscuro);
  pointer-events: none;
  white-space: pre-wrap; /* por si algún día viene con saltos */
}
#container .caption::before{
  content: var(--titulo, "");
  bottom: 3.5rem;                 /* encima del autor */
  font: 700 1.1rem/1.35 system-ui;
  letter-spacing: .01em;
}

#container .caption::after{
  content: var(--autor, "");
  bottom: 2rem;
  font: 400 .95rem/1.35 system-ui;
  opacity: .85;
}

.liquid-bg .blob {
  position: absolute;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 30%, var(--col) 0%, transparent 100%);
  will-change: transform;
  top: 40%;
  left: 50%;
  transform: translate3d(calc(-50% + var(--x, 0vmax)), calc(-50% + var(--y, 0vmax)), 0) scale(var(--s, 1));
  mix-blend-mode: var(--blend1);
}
.liquid-bg .blob.c5,
.liquid-bg .blob.c6 {
  mix-blend-mode: var(--blend2);
}
/* Styler 1.0 */
body.gestion-usuarios #backing {
  transform: scale(2);
}
.liquid-bg .blob.smaller {
  width: var(--size, 5vmax);
  height: var(--size, 5vmax);
}
.liquid-bg .blob.medium {
  width: var(--size, 15vmax);
  height: var(--size, 15vmax);
}
.liquid-bg .blob.larger {
  width: var(--size, 20vmax);
  height: var(--size, 20vmax);
}
::placeholder {
  color: var(--color-oscuro);
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* LIGHT COLOR SCHEME */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

.views-exposed-form.bef-exposed-form:not(#block-busqueda-por-sref),
.pager .pager__items {
  background: color-mix(in oklab, transparent 30%, var(--color-claro));
  -webkit-backdrop-filter: var(--esmerilado); /* En 6 para Safari */
  backdrop-filter: var(--esmerilado);
}
.enhanced-select[data-has-value="false"] .enhanced-select__button,
.catalogo input.form-text[value=""],
.views-exposed-form.bef-exposed-form .form-actions input,
.form-item-field-calificacion-value li a {
  color: var(--color-oscuro);
}
.enhanced-select[data-has-value="true"] .enhanced-select__button,
.form-item-field-calificacion-value li a.bef-link--selected,
input.form-text[value]:not([value=""]) {
  color: var(--color-claro);
}
#block-srefs-content .views-exposed-form.bef-exposed-form, /* Formulario tiene borde abajo */
.pager .pager__items, /* Pager tiene borde arriba */
.enhanced-select[data-has-value="false"] .enhanced-select__button, /* Selector sin selección tiene bordes a todos los lados excepto a la derecha */
.enhanced-select[data-has-value="true"] .enhanced-select__button, /* Selector con selección tiene bordes a todos los lados excepto a la derecha  */
.catalogo input.form-text:invalid,
.catalogo input.form-text:valid,
.form-item-field-calificacion-value li a, /* estrellas a todos los lados excepto a la derecha */
.form-item-field-calificacion-value li:last-child a, /* última estrella a la derecha */
.pager .pager__item > a,
.pager .pager__item:last-child > a,
.region_main-menu > *,
.region_footer > *,
.sidebar,
body.gestion-usuarios .region_tabs,
#presentacion-acciones-usuario,
#formulario-acciones-usuario,
body.gestion-usuarios .region_tabs a.is-active,
.catalogo .views-field-discipline,
.comentario,
.comment-comment-form,
.tag-cloud-wrapper,
footer nav.menu--main a,
#main-sidebar nav.language-switch,
#main-sidebar #block-srefs-themetoggler,
#block-busqueda-por-sref input.form-text[value=""],
.spotify-embed-wrapper,
.spotify-embed-wrapper iframe,
#info {
  border-color: color-mix(in srgb, transparent 85%, var(--color-oscuro)) !important;
}
.form-item-field-calificacion-value li a:not(.bef-link--selected):hover,
.enhanced-select[data-has-value="false"][aria-expanded="true"] .enhanced-select__button,
div .enhanced-select__button:not(div.enhanced-select[data-has-value="true"] button):hover,
.pager li.pager__item:not(.is-active) > a:hover {
  background: var(--color-blanco);
}
.enhanced-select[data-has-value="false"] .enhanced-select__chevron {
  background: var(--color-oscuro);
}
.form-item-field-calificacion-value li a.bef-link--selected,
.enhanced-select[data-has-value="true"] .enhanced-select__button,
.catalogo input.form-text,
#block-srefs-content .views-exposed-form.bef-exposed-form .form-actions input,
.pager .pager__item.is-active > a, .pager .pager__item > a[aria-current="page"] {
  background: var(--color-intermedio);
}
.form-item-field-calificacion-value li a.bef-link--selected:hover,
.enhanced-select[data-has-value="true"] .enhanced-select__button:hover,
input.form-text[value]:not([value=""]):hover,
#block-srefs-content .views-exposed-form.bef-exposed-form .form-actions input:hover,
.pager .pager__item.is-active > a:hover,
.pager .pager__item > a[aria-current="page"]:hover {
  background: var(--color-interactivo);
}
.enhanced-select[data-has-value="true"] .enhanced-select__chevron,
.enhanced-select__list {
  background: var(--color-blanco);
}
.enhanced-select__option[aria-selected="true"] {
  outline-color: color-mix(in srgb, transparent 50%, var(--color-interactivo));
}
.enhanced-select__option[aria-selected="true"],
.enhanced-select__option:hover {
  background: color-mix(in srgb, transparent 90%, var(--color-interactivo));
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* IRIDISCENCIA */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

.iridiscente {
  position: relative;
  isolation: isolate;
  color: #ffffff;
  --c0: #79c2ff;
  --c1: #658aff;
  --c2: #ab70ad;
  --c3: #ffaf80;
    --pf-warp: 2;
    --pf-detail: 5;
    --pf-scale: 7;
    --pf-speed: 2;
    --pf-warpSpeed: 1;
    --pf-octaves: 2;
    --pf-quality: 2;
}
.iridiscente canvas {
  position: absolute;
  inset: 0;                 /* llena la caja del elemento */
  width: 100%;
  height: 100%;
  display: block;
  pointer-events: none;
  z-index: -1;
}
.iridiscente::after {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  background: #ffffff;
  z-index: -2;
  pointer-events: none;
}
.iridiscente::after,
.iridiscente canvas {
  border-radius: calc(var(--radio) * 1.5);
}
.iridiscente.sticker-pequeño {
    --pf-warp: 5;
    --pf-detail: 3;
    --pf-scale: 7;
    --pf-speed: 2;
    --pf-warpSpeed: 2;
    --pf-octaves: 0;
    --pf-quality: 5;
}
.iridiscente.sticker-pequeño canvas {
  filter:
    blur(0px)
    saturate(2)
    opacity(0.6)
}
.iridiscente.sticker-mediano canvas {
  filter:
    blur(0px)
    saturate(2)
    contrast(1)
    brightness(1)
    opacity(0.6)
}






.iridiscente.sticker-dorado {
  --c0: #ad8d26;
  --c1: #ffdc00;
  --c2: #513e0f;
  --c3: #ffd600;
}
.iridiscente.sticker-bronce {
  --c0: #e1a589;
  --c1: #ffc9c4;
  --c2: #694b4b;
  --c3: #ffbcbc;
}

/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */
/* Modo mantenimiento (solo para maintenance-page.html.twig */
/* █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ */

body.maintenance-page {
  margin: 0;
  padding: 2rem;
  font-family: var(--texto-marcador);
  font-size: 62.5%;
  background: #131729;
  display: flex;
  justify-content: center;
  align-items: center;
  height: calc(100vh - 4rem);
}

.maintenance-page .container .iridiscente {
  padding: 40px;
}

.maintenance-page .container {
  text-align: center;
}
.maintenance-page #logo {
  width: 10rem;
}
.maintenance-page p {
  color: #fff;
  max-width: 20rem;
  margin: 2rem auto;
  font-size: 2rem;
}

.maintenance-page .status {
  margin-top: 20px;
  display: inline-block;
  color: white;
  font-weight: bold;
  font-size: 14px;
}

.maintenance-page .iridiscente {
  position: relative;
  isolation: isolate;
  color: #ffffff;
  --c0: #79c2ff;
  --c1: #658aff;
  --c2: #ab70ad;
  --c3: #ffaf80;
  --pf-warp: 10;
  --pf-detail: 5;
  --pf-scale: 8;
  --pf-speed: 0;
  --pf-warpSpeed: 0.5;
  --pf-octaves: 0;
  --pf-quality: 0;
  --pf-transicion: 8;
}

.maintenance-page .iridiscente canvas {
  position: absolute;
  inset: 0;
  /* llena la caja del elemento */
  width: 100%;
  height: 100%;
  display: block;
  pointer-events: none;
  z-index: -1;
  border-radius: 0.5rem;
}

.maintenance-page .iridiscente.sticker-mediano canvas {
  filter:
    blur(0px) saturate(2) contrast(1) brightness(1) opacity(1)
}
.maintenance-page #social {
      display: flex;
    justify-content: center;
    column-gap: 2rem;
}