/* Kuma 2026 · portal de transparencia (inc/fx-transparencia.php). Escrito a mano, con
   los colores y la tipografía del Figma: tinta #0b1c28, azul #2b6c97, enlace #3797ca,
   fondo #e7f1f8, Source Sans 3. */
.kt { --kt-tinta: #0b1c28; --kt-azul: #2b6c97; --kt-enlace: #3797ca; --kt-fondo: #e7f1f8; --kt-gris: #494b50; --kt-linea: #d6e4ee;
  font-family: "Source Sans 3", "Source_Sans_3", sans-serif; color: var(--kt-tinta); background: var(--kt-fondo); }
.kt *, .kt *::before, .kt *::after { box-sizing: border-box; }
.kt .kuma-oculto { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.kt-caja { width: min(1248px, 100% - 48px); margin: 0 auto; }

/* Cabecera */
.kt-hero { position: relative; overflow: hidden; background: var(--kt-tinta); color: #fff; padding: 56px 0 64px; }
.kt-hero::before { content: ""; position: absolute; inset: -40% -10% auto auto; width: 70%; height: 180%; background: linear-gradient(200deg, rgba(43,108,151,0) 30%, rgba(43,108,151,.55) 75%); transform: rotate(-12deg); pointer-events: none; }
.kt-hero .kt-caja { position: relative; }
.kt-migas { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 32px; font-size: 14px; color: #b8c7d3; }
.kt-migas a { color: #eaebee; text-decoration: none; } .kt-migas a:hover { text-decoration: underline; }
.kt-eyebrow { margin: 0 0 12px; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--kt-enlace); }
.kt-h1 { margin: 0; max-width: 820px; font-size: clamp(34px, 4.6vw, 49px); line-height: 1.15; font-weight: 700; }
.kt-entrada { margin: 16px 0 0; max-width: 720px; font-size: 19px; line-height: 1.5; color: #d9e4ec; }
.kt-datos { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 1px; margin: 40px 0 0; padding: 0; list-style: none; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.14); border-radius: 4px; overflow: hidden; }
.kt-datos li { display: flex; flex-direction: column; gap: 4px; padding: 18px 20px; background: var(--kt-tinta); }
.kt-datos b { font-size: 20px; line-height: 1.2; }
.kt-datos span { font-size: 14px; color: #b8c7d3; }

/* Cuerpo: índice + apartados */
.kt-cuerpo { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 40px; align-items: start; padding: 48px 0 96px; }
.kt-indice { position: sticky; top: 140px; padding: 20px; background: #fff; border: 1px solid var(--kt-linea); border-radius: 4px; }
.kt-indice__titulo { margin: 0 0 12px; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.kt-indice ol { margin: 0; padding: 0; list-style: none; display: grid; gap: 2px; }
.kt-indice a { display: flex; gap: 10px; align-items: center; padding: 9px 10px; border-radius: 4px; border-left: 3px solid transparent; color: var(--kt-gris); font-size: 15px; line-height: 1.3; text-decoration: none; }
.kt-indice a:hover { background: var(--kt-fondo); color: var(--kt-tinta); }
.kt-indice a.is-activo { background: var(--kt-fondo); border-left-color: var(--kt-azul); color: var(--kt-tinta); font-weight: 600; }
.kt-indice .kt-ico { width: 20px; height: 20px; flex: none; color: var(--kt-azul); }
.kt-indice__pedir { display: block; margin-top: 16px; padding: 12px 16px; text-align: center; background: var(--kt-tinta); color: #fff !important; border-radius: 4px; font-weight: 600; text-decoration: none; }
.kt-indice__pedir:hover { background: var(--kt-azul); }

.kt-apartados { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; min-width: 0; }
.kt-apartado { scroll-margin-top: 140px; padding: 32px 40px 36px; background: #fff; border-radius: 4px; box-shadow: 0 4px 32px rgba(11,28,40,.08); }
.kt-apartado__cabeza { display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center; padding-bottom: 20px; margin-bottom: 24px; border-bottom: 1px solid var(--kt-linea); }
.kt-apartado__ico { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: var(--kt-fondo); color: var(--kt-azul); }
.kt-apartado__ico .kt-ico { width: 26px; height: 26px; }
.kt-apartado__titulo { margin: 0; font-size: 28px; line-height: 1.2; font-weight: 700; }
.kt-fecha { margin: 0; padding: 4px 10px; font-size: 13px; color: var(--kt-azul); background: var(--kt-fondo); border-radius: 999px; white-space: nowrap; }

.kt-prosa { overflow-wrap: anywhere; font-size: 17px; line-height: 1.6; color: var(--kt-gris); }
.kt-prosa > * { margin: 0 0 16px; } .kt-prosa > *:last-child { margin-bottom: 0; }
.kt-prosa h3 { margin: 28px 0 10px; font-size: 20px; line-height: 1.25; color: var(--kt-tinta); }
.kt-prosa ul:not(.kt-docs) { padding-left: 1.2em; } .kt-prosa li { margin-bottom: 6px; }
.kt-prosa a { color: var(--kt-azul); }

/* Documentos */
.kt-docs { display: grid; gap: 8px; margin: 20px 0; padding: 0; list-style: none; }
.kt-doc { display: flex; align-items: center; gap: 12px; margin: 0; padding: 12px 14px; background: #f6f9fc; border: 1px solid var(--kt-linea); border-radius: 4px; transition: border-color .15s; }
.kt-doc:hover { border-color: var(--kt-enlace); }
.kt-doc__ico { width: 24px; height: 24px; flex: none; color: var(--kt-azul); }
.kt-doc__nombre { flex: 1; min-width: 0; color: var(--kt-tinta); font-weight: 600; font-size: 16px; line-height: 1.3; }
.kt-doc__btns { display: flex; gap: 6px; flex: none; }
.kt-doc__btn { display: inline-flex; align-items: center; min-height: 36px; padding: 0 12px; font-size: 13px; font-weight: 700; letter-spacing: .04em; color: var(--kt-azul) !important; background: #fff; border: 1px solid var(--kt-linea); border-radius: 4px; text-decoration: none; }
.kt-doc__btn--pdf { color: #fff !important; background: var(--kt-azul); border-color: var(--kt-azul); }
.kt-doc__btn:hover { border-color: var(--kt-tinta); }
.kt-doc__btn--pdf:hover { background: var(--kt-tinta); }
.kt-doc__btn::before { content: ""; width: 14px; height: 14px; margin-right: 6px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E") center/contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E") center/contain no-repeat; }

/* Grupos (años de cuentas, certificados…) */
.kt-grupos { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr)); gap: 16px; margin: 20px 0; }
.kt-grupo { padding: 16px; border: 1px solid var(--kt-linea); border-radius: 4px; }
.kt-prosa .kt-grupo__titulo { margin: 0 0 10px; font-size: 18px; }
.kt-grupo .kt-docs { margin: 0; }
.kt-grupo .kt-doc { flex-wrap: wrap; }
/* Un grupo solo (certificados, memoria EFQM): a todo el ancho, documentos en dos columnas */
.kt-grupos:has(> .kt-grupo:only-child) { grid-template-columns: 1fr; }
.kt-grupo:only-child .kt-docs { grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr)); }
@media (min-width: 641px) { .kt-grupo:only-child .kt-doc { flex-wrap: nowrap; } }

/* Solicitar información */
.kt-pedir { scroll-margin-top: 140px; padding: 36px 40px; background: var(--kt-tinta); color: #fff; border-radius: 4px; }
.kt-pedir h2 { margin: 0 0 10px; font-size: 28px; line-height: 1.2; }
.kt-pedir p { margin: 0 0 24px; max-width: 640px; font-size: 17px; line-height: 1.55; color: #d9e4ec; }
.kt-pedir__btn { display: inline-block; padding: 16px 32px; background: #fff; color: var(--kt-tinta) !important; border-radius: 4px; font-weight: 600; text-decoration: none; }
.kt-pedir__btn:hover { background: var(--kt-fondo); }

.kt a:focus-visible { outline: 3px solid var(--kt-enlace); outline-offset: 2px; }

@media (max-width: 960px) {
  .kt-cuerpo { grid-template-columns: minmax(0, 1fr); gap: 24px; padding-top: 24px; }
  .kt-indice { position: static; }
  .kt-indice ol { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
}
@media (max-width: 640px) {
  .kt-caja { width: calc(100% - 32px); }
  .kt-hero { padding: 32px 0 40px; }
  .kt-datos { grid-template-columns: 1fr 1fr; margin-top: 28px; }
  .kt-datos li { padding: 14px; } .kt-datos b { font-size: 17px; } .kt-datos span { font-size: 13px; }
  .kt-apartado, .kt-pedir { padding: 24px 20px; }
  .kt-apartado__cabeza { grid-template-columns: auto 1fr; }
  .kt-fecha { grid-column: 1 / -1; justify-self: start; }
  .kt-apartado__titulo, .kt-pedir h2 { font-size: 23px; }
  .kt-doc { flex-wrap: wrap; }
  .kt-doc__btns { width: 100%; padding-left: 36px; }
  .kt-doc:not(:has(.kt-doc__ico)) .kt-doc__btns { padding-left: 0; }
}
/* Apartados plegables en móvil (transparencia.js pone el botón y .is-cerrado) */
.kt-apartado__boton { all: unset; display: block; width: 100%; cursor: pointer; }
@media (max-width: 768px) {
  .kt-apartado__cabeza { grid-template-columns: auto 1fr auto; cursor: pointer; }
  .kt-apartado__cabeza::after { content: ""; grid-column: 3; grid-row: 1; width: 12px; height: 12px; margin-right: 4px; border-right: 2px solid var(--kt-azul); border-bottom: 2px solid var(--kt-azul); transform: rotate(-135deg) translate(-3px, -3px); transition: transform .2s; }
  .kt-apartado.is-cerrado .kt-apartado__cabeza::after { transform: rotate(45deg); }
  .kt-apartado.is-cerrado .kt-apartado__cabeza { padding-bottom: 0; margin-bottom: 0; border-bottom: 0; }
  .kt-apartado.is-cerrado .kt-prosa { display: none; }
  .kt-apartado__boton:focus-visible { outline: 3px solid var(--kt-enlace); outline-offset: 4px; border-radius: 2px; }
}
@media (prefers-reduced-motion: no-preference) { html:has(.kt) { scroll-behavior: smooth; } }

/* ---- Con bloques nativos (borrador de 2026-10-13) ----
   Los mismos kt-* sobre grupos, títulos, párrafos y listas de WordPress, así el editor se ve como la web.
   Cada apartado es un grupo kt-apartado kt-ico-<ancla>; el icono lo pone su clase. Las listas kuma-docs
   («<strong>Nombre</strong>: PDF · ODT») se ven como fichas: los «:» y «·» se esconden y cada enlace es un botón. */
.kt :where(.is-layout-flow,.is-layout-constrained,.wp-block-group)>*{margin-block:0}
.kt.wp-block-group,.kt .kt-hero,.kt .kt-cuerpo{max-width:none}
.kt .kt-cuerpo{width:min(1248px, 100% - 48px);margin:0 auto}
.kt .kt-hero .kt-caja>.kt-migas{margin:0 0 32px}
.kt .kt-hero .kt-caja>.kt-eyebrow{margin:0 0 12px}
.kt .kt-hero .kt-caja>.kt-entrada{margin:16px 0 0}
.kt .kt-hero .kt-caja>.kt-datos,.kt .kt-hero .kt-caja>.wp-block-kuma-transparencia-datos{margin-top:40px}
.kt-migas a{color:#eaebee}
.kt .kt-apartado__cabeza{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding-bottom:20px;margin-bottom:24px;border-bottom:1px solid var(--kt-linea)}
.kt .kt-apartado__cabeza::before{content:"";grid-column:1;grid-row:1;width:48px;height:48px;border-radius:50%;background:var(--kt-ico) center/26px no-repeat,var(--kt-fondo)}
.kt .kt-apartado__cabeza>.kt-apartado__titulo{grid-column:2;grid-row:1}
.kt .kt-apartado__cabeza>.kt-fecha{grid-column:3;grid-row:1}
.kt-apartado{--kt-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b6c97' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6v18h12V7l-4-4z'/%3E%3Cpath d='M14 3v4h4'/%3E%3C/svg%3E")}
.kt-ico-buen-gobierno{--kt-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b6c97' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 4.5-3.4 8.4-8 9-4.6-.6-8-4.5-8-9V6l8-3z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E")}
.kt-ico-organizativa{--kt-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b6c97' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3 20c0-3.3 2.7-5.5 6-5.5s6 2.2 6 5.5'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M16 14.6c2.8.2 5 2.2 5 5.4'/%3E%3C/svg%3E")}
.kt-ico-institucional{--kt-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b6c97' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18M4 10h16M12 3l9 5H3l9-5z'/%3E%3Cpath d='M6 10v8M10 10v8M14 10v8M18 10v8'/%3E%3C/svg%3E")}
.kt-ico-estrategica{--kt-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b6c97' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3C/svg%3E")}
.kt-ico-economica{--kt-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b6c97' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20V10M10 20V4M16 20v-7M22 20H2'/%3E%3C/svg%3E")}
.kt-ico-subvenciones{--kt-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b6c97' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2v20M17 6H9.5a3.5 3.5 0 000 7h5a3.5 3.5 0 010 7H6'/%3E%3C/svg%3E")}
.kt-ico-otros{--kt-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b6c97' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='6'/%3E%3Cpath d='M8.5 14L7 22l5-3 5 3-1.5-8'/%3E%3C/svg%3E")}
.kt .kt-prosa>*{margin:0 0 16px}
.kt .kt-prosa>*:last-child{margin-bottom:0}
.kt .kt-prosa>h3{margin:28px 0 10px}
.kt-prosa ul:not(.kuma-docs){padding-left:1.2em}
.kt ul.kuma-docs{display:grid;gap:8px;margin:20px 0;padding:0;list-style:none}
.kt ul.kuma-docs>li{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:12px 14px;background:#f6f9fc;border:1px solid var(--kt-linea);border-radius:4px;
  font-size:0;line-height:0;color:transparent;transition:border-color .15s}
.kt ul.kuma-docs>li:hover{border-color:var(--kt-enlace)}
.kt ul.kuma-docs>li::before{content:"";flex:none;width:24px;height:24px;margin-right:6px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b6c97' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6v18h12V7l-4-4z'/%3E%3Cpath d='M14 3v4h4M9 13h6M9 17h4'/%3E%3C/svg%3E") center/contain no-repeat}
.kt ul.kuma-docs>li strong{flex:1;min-width:0;font-size:16px;line-height:1.3;font-weight:600;color:var(--kt-tinta)}
.kt ul.kuma-docs>li a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;font-size:13px;line-height:1;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;text-decoration:none;color:var(--kt-azul);background:#fff;border:1px solid var(--kt-linea);border-radius:4px}
.kt ul.kuma-docs>li a[href$=".pdf" i]{color:#fff;background:var(--kt-azul);border-color:var(--kt-azul)}
.kt ul.kuma-docs>li a:hover{border-color:var(--kt-tinta)}
.kt ul.kuma-docs>li a[href$=".pdf" i]:hover{background:var(--kt-tinta)}
.kt ul.kuma-docs>li a::before{content:"";width:14px;height:14px;margin-right:6px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E") center/contain no-repeat}
.kt .kt-grupos{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:16px;margin:20px 0}
.kt .kt-grupo>.kt-grupo__titulo{margin:0 0 10px;font-size:18px}
.kt .kt-grupo ul.kuma-docs{margin:0}
.kt-grupo:only-child ul.kuma-docs{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}
/* Documentos con más de dos formatos (PDF · ODT · DOCX · XML · TXT) en las cajas de grupo: el nombre ocupa su fila y los botones van
   debajo; sin esto el nombre se queda en una columna estrecha y se parte letra a letra */
.kt .kt-grupo ul.kuma-docs>li:has(>a:nth-of-type(3)) strong{flex-basis:calc(100% - 36px);overflow-wrap:normal}
.kt .kt-grupo ul.kuma-docs>li:has(>a:nth-of-type(3))>a:first-of-type{margin-left:0}
/* Cajas sueltas tras la rejilla de años (Retribuciones, Contratos): línea y aire encima, fondo blanco y filo azul para que no se
   confundan con las cuentas */
.kt .kt-grupos--aparte{margin:40px 0 0;padding-top:32px;border-top:1px solid var(--kt-linea)}
.kt .kt-grupos--aparte>.kt-grupo{background:#fff;border-left:4px solid var(--kt-azul);padding:20px}
.kt .kt-grupos--aparte>.kt-grupo>.kt-grupo__titulo{font-size:20px;margin-bottom:14px}
.kt .kt-grupos--aparte+p{margin-top:32px}
.kt .kt-pedir>h2{margin:0 0 10px}
.kt .kt-pedir>p{margin:0 0 24px}
.kt-pedir .wp-block-button__link{display:inline-block;padding:16px 32px;background:#fff;color:var(--kt-tinta);border-radius:4px;font-weight:600;text-decoration:none}
.kt-pedir .wp-block-button__link:hover{background:var(--kt-fondo)}
@media (max-width:640px){
  .kt .kt-cuerpo{width:calc(100% - 32px)}
  .kt .kt-apartado__cabeza{grid-template-columns:auto 1fr}
  .kt .kt-apartado__cabeza>.kt-fecha{grid-column:1/-1;grid-row:2;justify-self:start}
  .kt ul.kuma-docs>li>a:first-of-type{margin-left:36px}
}
@media (max-width:768px){
  .kt .kt-apartado__cabeza::after{grid-column:3}
  .kt .kt-apartado.is-cerrado .kt-apartado__cabeza{padding-bottom:0;margin-bottom:0;border-bottom:0}
}
/* editor: sin los márgenes y anchos que pone a cada bloque; los «:» y «·» de las fichas se ven para poder escribirlos */
.editor-styles-wrapper .wp-block.kt{max-width:none;margin:0}
.editor-styles-wrapper .kt .wp-block{max-width:none;margin-left:0;margin-right:0}
.editor-styles-wrapper .kt .kt-caja.wp-block{width:min(1248px, 100% - 48px);margin:0 auto}
.editor-styles-wrapper .kt ul.kuma-docs>li{font-size:13px;line-height:1.3;color:var(--kt-gris)}
.editor-styles-wrapper .kt-indice{position:static}
.editor-styles-wrapper .kt ul.kuma-docs>li>div{flex:1;min-width:0;line-height:36px}
.editor-styles-wrapper .kt ul.kuma-docs>li strong{display:block;margin-bottom:6px}
