/* ============================================================
   ACATHI — pantalla: Transparencia (patterns/transparency.php)
   Portal Llei 19/2014. REDISEÑO EDITORIAL. Datos pendientes
   marcados con .ac-tbd (deben sustituirse antes de publicar).
   ============================================================ */

/* Marcador visible de dato pendiente — imposible de pasar por alto. */
.ac-tbd {
  display: inline-block; font-family: var(--font-display); font-weight: var(--weight-bold);
  font-size: 0.85em; color: #7a4a00; background: var(--tertiary-fixed);
  border: 1px dashed #b06800; border-radius: var(--radius-xs);
  padding: 0 6px; letter-spacing: 0.02em;
}
.ac-tr-draft { background: var(--tertiary-fixed); color: #5a3a00; align-items: center; }
.ac-tr-draft .material-symbols-outlined { color: #b06800; }

/* ═══════════════════ HÉROE editorial ═══════════════════ */
.ac-tr-hero {
  position: relative; overflow: hidden; isolation: isolate; color: #fff;
  background:
    radial-gradient(120% 130% at 50% 0%, #4a148c 0%, transparent 60%),
    linear-gradient(160deg, #1a1228 0%, #310065 65%, #4a148c 100%);
  padding-top: clamp(56px, 8vw, 96px); padding-bottom: clamp(56px, 8vw, 96px);
}
.ac-tr-hero__rainbow { position: absolute; top: 0; left: 0; right: 0; height: 5px; background: var(--rainbow-gradient); z-index: 4; }
.ac-tr-hero__inner { position: relative; z-index: 2; text-align: center; max-width: 820px; margin: 0 auto; }
.ac-tr-hero__inner .ac-eyebrow { justify-content: center; }
.ac-tr-hero__eyebrow { color: var(--secondary-fixed-dim); }
.ac-tr-hero__title {
  font-family: var(--font-display); font-weight: var(--weight-extra);
  font-size: clamp(2.3rem, 1.4rem + 3.2vw, 3.9rem); line-height: 1.05;
  letter-spacing: -0.025em; color: #fff; margin: 18px auto 0; max-width: 780px; text-wrap: balance;
}
.ac-tr-hero__lead { font-size: clamp(1.05rem, 1rem + 0.4vw, 1.25rem); line-height: 1.55; color: rgba(255,255,255,0.86); margin: 22px auto 0; max-width: 640px; }
.ac-tr-hero__meta { list-style: none; margin: 30px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.ac-tr-hero__meta li {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(255,255,255,0.10); border: 1px solid rgba(255,255,255,0.22);
  border-radius: var(--radius-full); padding: 8px 16px;
  font-family: var(--font-display); font-weight: var(--weight-semibold); font-size: 13px; color: #fff;
}
.ac-tr-hero__meta .material-symbols-outlined { font-size: 18px; color: var(--secondary-fixed-dim); }

/* ═══════════════════ Información institucional ═══════════════════ */
.ac-tr-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.ac-tr-fact {
  background: var(--surface-container-low); border: 1px solid var(--border-subtle);
  border-radius: var(--radius-xl); padding: 24px; border-left: 4px solid var(--primary);
}
.ac-tr-fact__label { font-family: var(--font-display); font-weight: var(--weight-semibold); font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--on-surface-variant); margin: 0 0 6px; }
.ac-tr-fact__value { font-size: 15px; line-height: 1.45; color: var(--on-surface); margin: 0; font-weight: var(--weight-medium); }

/* ═══════════════════ Documentos y protocolos ═══════════════════ */
.ac-tr-docs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.ac-tr-doc {
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 6px 16px;
  background: var(--surface-container-lowest); border: 1px solid var(--border-subtle);
  border-radius: var(--radius-xl); padding: 22px 24px; box-shadow: var(--shadow-sm);
  text-decoration: none; color: inherit;
  transition: transform var(--dur-base) var(--reveal-ease), box-shadow var(--dur-base) var(--reveal-ease);
}
.ac-tr-doc:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); text-decoration: none; color: inherit; }
.ac-tr-doc__icon { grid-row: 1 / 3; font-size: 34px; color: var(--secondary); }
.ac-tr-doc__name { font-family: var(--font-display); font-weight: var(--weight-bold); font-size: 16px; color: var(--on-surface); }
.ac-tr-doc__meta { font-size: 13px; color: var(--on-surface-variant); }
.ac-tr-doc__action { grid-row: 1 / 3; font-size: 22px; color: var(--primary); }

/* ═══════════════════ Memorias y cuentas ═══════════════════ */
.ac-tr-reports-section { background: var(--surface-container-low); }
.ac-tr-reports { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.ac-tr-report {
  background: var(--surface-container-lowest); border: 1px solid var(--border-subtle);
  border-radius: var(--radius-xl); padding: 24px; box-shadow: var(--shadow-sm);
  display: flex; flex-direction: column; gap: 14px;
}
.ac-tr-report__year { font-family: var(--font-display); font-weight: var(--weight-extra); font-size: 38px; line-height: 1; color: var(--primary); }
.ac-tr-report__links { display: flex; flex-direction: column; gap: 8px; }
.ac-tr-report__links a {
  display: inline-flex; align-items: center; gap: 8px; min-height: 40px;
  font-family: var(--font-display); font-weight: var(--weight-semibold); font-size: 14px; color: var(--secondary);
}
.ac-tr-report__links a:hover { text-decoration: none; color: var(--secondary-container); }
.ac-tr-report__links .material-symbols-outlined { font-size: 19px; }

/* ═══════════════════ Subvenciones (tabla) ═══════════════════ */
.ac-tr-grants__scroll { overflow-x: auto; border-radius: var(--radius-xl); border: 1px solid var(--border-subtle); }
.ac-tr-table { width: 100%; border-collapse: collapse; background: var(--surface-container-lowest); min-width: 640px; }
.ac-tr-table th, .ac-tr-table td { text-align: left; padding: 16px 20px; font-size: 15px; }
.ac-tr-table thead th {
  background: var(--primary); color: #fff;
  font-family: var(--font-display); font-weight: var(--weight-semibold); font-size: 13px;
  letter-spacing: 0.04em; text-transform: uppercase;
}
.ac-tr-table tbody tr { border-top: 1px solid var(--border-subtle); }
.ac-tr-table tbody tr:nth-child(even) { background: var(--surface-container-low); }
.ac-tr-table td { color: var(--on-surface); }
.ac-tr-table__num { text-align: right; font-variant-numeric: tabular-nums; }
.ac-tr-grants__note { display: flex; gap: 8px; align-items: flex-start; margin: 16px 0 0; font-size: 13px; color: var(--on-surface-variant); }
.ac-tr-grants__note .material-symbols-outlined { font-size: 18px; color: var(--primary); flex: none; }

/* ═══════════════════ Contacto ═══════════════════ */
.ac-tr-contact {
  position: relative; overflow: hidden;
  border-radius: var(--radius-3xl); padding: clamp(36px, 5vw, 56px);
  display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap;
}
.ac-tr-contact__copy { max-width: 540px; }
.ac-tr-contact__copy h2 { font-family: var(--font-display); font-weight: var(--weight-extra); font-size: clamp(1.6rem, 1.2rem + 1.4vw, 2.25rem); color: #fff; margin: 0 0 10px; line-height: 1.15; }
.ac-tr-contact__copy p { color: rgba(255,255,255,0.82); margin: 0; font-size: 16px; line-height: 1.5; }
.ac-tr-contact__actions { display: flex; gap: 14px; flex-wrap: wrap; }

@media (max-width: 1100px) {
  .ac-tr-facts, .ac-tr-docs { grid-template-columns: 1fr 1fr; }
  .ac-tr-reports { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 680px) {
  .ac-tr-facts, .ac-tr-docs, .ac-tr-reports { grid-template-columns: 1fr; }
  .ac-tr-contact { flex-direction: column; align-items: flex-start; }
}
