{"id":101,"date":"2026-03-30T03:57:02","date_gmt":"2026-03-30T03:57:02","guid":{"rendered":"https:\/\/ffyh-unc.cienciaytecnica.com\/?page_id=101"},"modified":"2026-09-24T15:25:56","modified_gmt":"2026-09-24T18:25:56","slug":"repositorio","status":"publish","type":"page","link":"https:\/\/ffyh.unc.edu.ar\/los80\/repositorio\/","title":{"rendered":"Repositorio"},"content":{"rendered":"\r\n<p class=\"ffyh80-eyebrow\">Repositorio para una historia institucional<\/p>\r\n\r\n\r\n\r\n<p><!DOCTYPE html>\r\n<html lang=\"es\">\r\n<head>\r\n  <meta charset=\"UTF-8\" \/>\r\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" \/>\r\n  <title>Recursos sobre Historia de la FFyH \u00b7 UNC<\/title>\r\n  <style>\r\n    \/* \u2500\u2500 Reset & Base \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\r\n\r\n    :root {\r\n      --bg:        #fafaf8;\r\n      --surface:   #ffffff;\r\n      --border:    #e8e5df;\r\n      --text:      #1a1a1a;\r\n      --muted:     #6b6860;\r\n      --accent:    #2d5a8c;\r\n      --accent-lt: #edf2f8;\r\n      --tag-bg:    #f0ede8;\r\n      --tag-act:   #2d5a8c;\r\n      --tag-act-t: #ffffff;\r\n      --link:      #2d5a8c;\r\n      --radius:    4px;\r\n      --font:      'Inter', system-ui, -apple-system, sans-serif;\r\n      --mono:      'JetBrains Mono', 'Fira Mono', monospace;\r\n    }\r\n\r\n    body {\r\n      font-family: var(--font);\r\n      background: var(--bg);\r\n      color: var(--text);\r\n      font-size: 15px;\r\n      line-height: 1.6;\r\n    }\r\n\r\n    \/* \u2500\u2500 Layout \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-wrap {\r\n      max-width: 1100px;\r\n      margin: 0 auto;\r\n      padding: 3rem 1.5rem 5rem;\r\n    }\r\n\r\n    \/* \u2500\u2500 Header \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-header {\r\n      border-bottom: 1px solid var(--border);\r\n      padding-bottom: 1.75rem;\r\n      margin-bottom: 2rem;\r\n    }\r\n    .ffyh-header h1 {\r\n      font-size: 1.45rem;\r\n      font-weight: 600;\r\n      letter-spacing: -0.02em;\r\n      margin-bottom: 0.35rem;\r\n      color: var(--text);\r\n    }\r\n    .ffyh-header p {\r\n      font-size: 0.875rem;\r\n      color: var(--muted);\r\n    }\r\n    .ffyh-header p a {\r\n      color: var(--link);\r\n      text-decoration: none;\r\n    }\r\n    .ffyh-header p a:hover { text-decoration: underline; }\r\n\r\n    \/* \u2500\u2500 Controls \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-controls {\r\n      display: flex;\r\n      flex-wrap: wrap;\r\n      gap: 1.25rem;\r\n      margin-bottom: 1.75rem;\r\n      align-items: flex-start;\r\n    }\r\n\r\n    .ffyh-search-box {\r\n      flex: 1 1 240px;\r\n      position: relative;\r\n    }\r\n    .ffyh-search-box input {\r\n      width: 100%;\r\n      padding: 0.5rem 0.75rem 0.5rem 2.25rem;\r\n      border: 1px solid var(--border);\r\n      border-radius: var(--radius);\r\n      background: var(--surface);\r\n      font-family: var(--font);\r\n      font-size: 0.875rem;\r\n      color: var(--text);\r\n      outline: none;\r\n      transition: border-color 0.15s;\r\n    }\r\n    .ffyh-search-box input:focus { border-color: var(--accent); }\r\n    .ffyh-search-box input::placeholder { color: var(--muted); }\r\n    .ffyh-search-icon {\r\n      position: absolute;\r\n      left: 0.65rem;\r\n      top: 50%;\r\n      transform: translateY(-50%);\r\n      color: var(--muted);\r\n      pointer-events: none;\r\n    }\r\n\r\n    .ffyh-filters { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; }\r\n    .ffyh-filter-label {\r\n      font-size: 0.75rem;\r\n      color: var(--muted);\r\n      text-transform: uppercase;\r\n      letter-spacing: 0.06em;\r\n      margin-right: 0.25rem;\r\n    }\r\n\r\n    .filter-chip {\r\n      display: inline-block;\r\n      padding: 0.3rem 0.75rem;\r\n      border-radius: 20px;\r\n      background: var(--tag-bg);\r\n      color: var(--muted);\r\n      font-size: 0.8rem;\r\n      cursor: pointer;\r\n      border: 1px solid transparent;\r\n      transition: all 0.15s;\r\n      user-select: none;\r\n    }\r\n    .filter-chip:hover { border-color: var(--accent); color: var(--accent); }\r\n    .filter-chip.active {\r\n      background: var(--tag-act);\r\n      color: var(--tag-act-t);\r\n      border-color: var(--tag-act);\r\n    }\r\n\r\n    \/* \u2500\u2500 Count \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-count {\r\n      font-size: 0.8rem;\r\n      color: var(--muted);\r\n      margin-bottom: 1rem;\r\n    }\r\n    .ffyh-count strong { color: var(--text); }\r\n\r\n    \/* \u2500\u2500 Table \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-table-wrap {\r\n      overflow-x: auto;\r\n      border: 1px solid var(--border);\r\n      border-radius: var(--radius);\r\n      background: var(--surface);\r\n    }\r\n\r\n    table.ffyh-table {\r\n      width: 100%;\r\n      border-collapse: collapse;\r\n      font-size: 0.875rem;\r\n    }\r\n    .ffyh-table thead tr {\r\n      border-bottom: 1px solid var(--border);\r\n      background: var(--bg);\r\n    }\r\n    .ffyh-table th {\r\n      padding: 0.75rem 1rem;\r\n      text-align: left;\r\n      font-size: 0.75rem;\r\n      font-weight: 600;\r\n      text-transform: uppercase;\r\n      letter-spacing: 0.06em;\r\n      color: var(--muted);\r\n      white-space: nowrap;\r\n    }\r\n    .ffyh-table th.sortable { cursor: pointer; }\r\n    .ffyh-table th.sortable:hover { color: var(--accent); }\r\n    .ffyh-table th .sort-icon { margin-left: 0.3em; opacity: 0.4; }\r\n    .ffyh-table th.asc .sort-icon, .ffyh-table th.desc .sort-icon { opacity: 1; color: var(--accent); }\r\n\r\n    .ffyh-table tbody tr {\r\n      border-bottom: 1px solid var(--border);\r\n      transition: background 0.1s;\r\n    }\r\n    .ffyh-table tbody tr:last-child { border-bottom: none; }\r\n    .ffyh-table tbody tr:hover { background: var(--accent-lt); }\r\n    .ffyh-table tbody tr.hidden { display: none; }\r\n\r\n    .ffyh-table td {\r\n      padding: 0.85rem 1rem;\r\n      vertical-align: top;\r\n      color: var(--text);\r\n    }\r\n\r\n    .cell-title {\r\n      font-weight: 500;\r\n      line-height: 1.4;\r\n      min-width: 240px;\r\n      max-width: 340px;\r\n    }\r\n    .cell-author { color: var(--muted); min-width: 140px; }\r\n    .cell-period { white-space: nowrap; color: var(--muted); font-size: 0.82rem; }\r\n\r\n    \/* tipo badge *\/\r\n    .badge {\r\n      display: inline-block;\r\n      padding: 0.2em 0.6em;\r\n      border-radius: 3px;\r\n      font-size: 0.75rem;\r\n      font-weight: 500;\r\n      white-space: nowrap;\r\n    }\r\n    .badge-libro       { background: #e8f0e8; color: #2e6b2e; }\r\n    .badge-articulo    { background: #e8eef8; color: #1e4a8c; }\r\n    .badge-tfl         { background: #f5eee0; color: #7a5020; }\r\n    .badge-td          { background: #f0e8f5; color: #5a2a7a; }\r\n    .badge-ponencia    { background: #e0f0f5; color: #1a6478; }\r\n    .badge-web         { background: #f5f0e0; color: #7a6820; }\r\n    .badge-audiovisual { background: #f5e8e8; color: #7a2020; }\r\n    .badge-homenaje    { background: #e8f5ee; color: #206840; }\r\n    .badge-proyecto    { background: #fce8f0; color: #8c1e5a; }\r\n    .badge-otro        { background: var(--tag-bg); color: var(--muted); }\r\n\r\n    \/* formato *\/\r\n    .fmt-digital { color: var(--accent); font-size: 0.8rem; }\r\n    .fmt-fisico  { color: var(--muted);  font-size: 0.8rem; }\r\n    .fmt-ambos   { color: #5a7a2e;       font-size: 0.8rem; }\r\n\r\n    .cell-link a {\r\n      color: var(--link);\r\n      text-decoration: none;\r\n      font-size: 0.8rem;\r\n      display: inline-flex;\r\n      align-items: center;\r\n      gap: 0.25rem;\r\n      opacity: 0.85;\r\n      transition: opacity 0.15s;\r\n    }\r\n    .cell-link a:hover { opacity: 1; text-decoration: underline; }\r\n\r\n    \/* \u2500\u2500 Empty state \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-empty {\r\n      padding: 3rem 1rem;\r\n      text-align: center;\r\n      color: var(--muted);\r\n      font-size: 0.9rem;\r\n      display: none;\r\n    }\r\n\r\n    \/* \u2500\u2500 Footer \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-foot {\r\n      margin-top: 1.5rem;\r\n      font-size: 0.78rem;\r\n      color: var(--muted);\r\n    }\r\n\r\n    \/* \u2500\u2500 Responsive \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    @media (max-width: 640px) {\r\n      .ffyh-wrap { padding: 1.5rem 1rem 3rem; }\r\n      .ffyh-table th:nth-child(3),\r\n      .ffyh-table td:nth-child(3),\r\n      .ffyh-table th:nth-child(5),\r\n      .ffyh-table td:nth-child(5) { display: none; }\r\n    }\r\n  <\/style>\r\n<\/head>\r\n<body>\r\n<div class=\"ffyh-wrap\">\r\n\r\n  <!-- Header -->\r\n  <header class=\"ffyh-header\">\r\n    <h1>Recursos sobre historia de la FFyH<\/h1>\r\n    <p>Listado elaborado por la subcomisi\u00f3n de archivo y registro, a partir de trabajo original llevado a cabo por Denise Reyna Berrotar\u00e1n \r\n  <\/header>\r\n\r\n  <!-- Controls -->\r\n  <div class=\"ffyh-controls\">\r\n    <!-- Search -->\r\n    <div class=\"ffyh-search-box\">\r\n      <svg class=\"ffyh-search-icon\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n           stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"11\" cy=\"11\" r=\"8\"\/>\r\n        <path d=\"m21 21-4.35-4.35\"\/><\/svg>\r\n      <input type=\"search\" id=\"ffyhSearch\" placeholder=\"Buscar por t\u00edtulo, autor, per\u00edodo\u2026\" \/>\r\n    <\/div>\r\n\r\n    <!-- Tipo filter -->\r\n    <div class=\"ffyh-filters\" id=\"tipoFilters\">\r\n      <span class=\"ffyh-filter-label\">Tipo<\/span>\r\n      <!-- chips generated by JS -->\r\n    <\/div>\r\n\r\n    <!-- Formato filter -->\r\n    <div class=\"ffyh-filters\" id=\"fmtFilters\">\r\n      <span class=\"ffyh-filter-label\">Formato<\/span>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Count -->\r\n  <div class=\"ffyh-count\" id=\"ffyhCount\"><\/div>\r\n\r\n  <!-- Table -->\r\n  <div class=\"ffyh-table-wrap\">\r\n    <table class=\"ffyh-table\" id=\"ffyhTable\">\r\n      <thead>\r\n        <tr>\r\n          <th class=\"sortable\" data-col=\"title\">T\u00edtulo <span class=\"sort-icon\">\u2195<\/span><\/th>\r\n          <th class=\"sortable\" data-col=\"author\">Autor\/es <span class=\"sort-icon\">\u2195<\/span><\/th>\r\n          <th class=\"sortable\" data-col=\"tipo\">Tipo <span class=\"sort-icon\">\u2195<\/span><\/th>\r\n          <th class=\"sortable\" data-col=\"year\">A\u00f1o <span class=\"sort-icon\">\u2195<\/span><\/th>\r\n          <th class=\"sortable\" data-col=\"period\">Per\u00edodo <span class=\"sort-icon\">\u2195<\/span><\/th>\r\n          <th>Formato \/ Enlace<\/th>\r\n        <\/tr>\r\n      <\/thead>\r\n      <tbody id=\"ffyhBody\"><\/tbody>\r\n    <\/table>\r\n    <div class=\"ffyh-empty\" id=\"ffyhEmpty\">\r\n      No se encontraron recursos con esos criterios.\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div class=\"ffyh-foot\">\r\n    * Los recursos sin enlace est\u00e1n disponibles en soporte f\u00edsico o en las bibliotecas de la UNC.\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n<script>\r\n\/* \u2500\u2500 DATA \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nconst RESOURCES = [\r\n  {\r\n    title:  \"Colecci\u00f3n 400 a\u00f1os de historia (Fiorucci, Grisendi, Requena, Moyano, Abratte\u2026)\",\r\n    author: \"Saur y Servetto (coord.)\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2013\",\r\n    period: \"400 a\u00f1os\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Facultades de la UNC (1854\u20132011)\",\r\n    author: \"Gordillo y Valdemarca (coord.)\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2013\",\r\n    period: \"1854\u20132011\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"La institucionalizaci\u00f3n de la Geograf\u00eda en C\u00f3rdoba (1878\u20131984)\",\r\n    author: \"Cecchetto y Zusman (coord.)\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2012\",\r\n    period: \"1878\u20131984\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Tejer un destino. La formaci\u00f3n de pedagogos en la UNC, Argentina, 1955\u20131976\",\r\n    author: \"Adela Coria\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2015\",\r\n    period: \"1955\u20131976\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"La institucionalizaci\u00f3n de la Archivolog\u00eda en C\u00f3rdoba, a trav\u00e9s de las publicaciones\",\r\n    author: \"Noelia Garc\u00eda, Laura Argento Nasser\",\r\n    tipo:   \"TFL\",\r\n    year:   \"2013\",\r\n    period: \"1955\u20132010\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Edici\u00f3n especial en el 60\u00b0 aniversario de la FFyH (Alfilo)\",\r\n    author: \"\u2014\",\r\n    tipo:   \"Homenaje\",\r\n    year:   \"2007\",\r\n    period: \"1947\u20132007\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Intelectuales y nacionalismo cat\u00f3lico: Nimio de Anqu\u00edn, Lisardo Novillo Saravia (hijo) y Rodolfo Mart\u00ednez Espinosa. C\u00f3rdoba, d\u00e9cada de 1930\",\r\n    author: \"Angelini, Lisandro\",\r\n    tipo:   \"TD\",\r\n    year:   \"2022\",\r\n    period: \"1930s\",\r\n    fmt:    \"F\u00edsico\/Digital\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"La cuarta facultad: Institucionalizaci\u00f3n de la Filosof\u00eda en la UNC (1934\u20131951)\",\r\n    author: \"Mattoni, Francisca\",\r\n    tipo:   \"TFL\",\r\n    year:   \"2023\",\r\n    period: \"1934\u20131951\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/rdu.unc.edu.ar\/items\/10eef329-2301-4352-9903-a966adf67ce4\"\r\n  },\r\n  {\r\n    title:  \"Para una historia de la historiograf\u00eda cordobesa. El caso del Instituto de Estudios Americanistas de la UNC, 1936\u20131947\",\r\n    author: \"Requena, P.\",\r\n    tipo:   \"Ponencia\",\r\n    year:   \"2009\",\r\n    period: \"1936\u20131947\",\r\n    fmt:    \"Digital\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Caminos hacia la institucionalizaci\u00f3n de la historia en C\u00f3rdoba: discusiones respecto a sus or\u00edgenes (1924\u20131936)\",\r\n    author: \"Reyna Berrotar\u00e1n, D.\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2013\",\r\n    period: \"1924\u20131936\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"La institucionalizaci\u00f3n y profesionalizaci\u00f3n de la Historia en C\u00f3rdoba: un estudio de la experiencia del Instituto de Estudios Americanistas (1936\u20131987)\",\r\n    author: \"Reyna Berrotar\u00e1n, Denise\",\r\n    tipo:   \"TD\",\r\n    year:   \"2026\",\r\n    period: \"1936\u20131987\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/rdu.unc.edu.ar\/items\/6a3b1248-c2c2-40d8-ac64-38aeb4922d69\"\r\n  },\r\n  {\r\n    title:  \"Construyendo un nuevo relato sobre el territorio provincial: La c\u00e1tedra de Geograf\u00eda econ\u00f3mica en la UNC (1957\u20131968)\",\r\n    author: \"Maldonado, R. y Ricci, C.\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2014\",\r\n    period: \"1957\u20131968\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/revistas.unc.edu.ar\/index.php\/cardi\/article\/view\/9846\"\r\n  },\r\n  {\r\n    title:  \"De la lucha de calles a la lucha en los claustros: el movimiento estudiantil de C\u00f3rdoba entre el Cordobazo y la 'primavera camporista' (1969\u20131973)\",\r\n    author: \"Mill\u00e1n\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2013\",\r\n    period: \"1969\u20131973\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/notablesdelaciencia.conicet.gov.ar\/bitstream\/handle\/11336\/27200\/CONICET_Digital_Nro.4048e342-c6ee-4d62-9b58-7230bf449d61_A.pdf?sequence=2&isAllowed=y\"\r\n  },\r\n  {\r\n    title:  \"Crisis, radicalizaci\u00f3n y pol\u00edtica en el Taller Total de C\u00f3rdoba (1970\u20131975)\",\r\n    author: \"Malecki, Sebasti\u00e1n\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2016\",\r\n    period: \"1970\u20131975\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ri.conicet.gov.ar\/handle\/11336\/69928\"\r\n  },\r\n  {\r\n    title:  \"Estratos del tiempo. La ciudad universitaria de C\u00f3rdoba (1909\u20131989)\",\r\n    author: \"Malecki, Sebasti\u00e1n\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2021\",\r\n    period: \"1940s\u20131960s\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Historiograf\u00eda de C\u00f3rdoba: Un an\u00e1lisis a partir de las Tesis de Licenciatura (1961\u20132015)\",\r\n    author: \"Guardatti, Marcelo\",\r\n    tipo:   \"Ponencia\",\r\n    year:   \"2017\",\r\n    period: \"1961\u20132015\",\r\n    fmt:    \"Digital\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Listado completo de docentes cesanteados entre 1974 y 1983 en FFyH\",\r\n    author: \"AAVV\",\r\n    tipo:   \"Web\",\r\n    year:   \"\u2014\",\r\n    period: \"1974\u20131983\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/docentes-cesanteados\/lista-de-docentes-de-la-ffyh-cesanteados-por-motivos-politicos-entre-1974-y-1983\/\"\r\n  },\r\n  {\r\n    title:  \"'Los estudiantes comprendieron la misi\u00f3n de la Universidad\u2026' La UNC de la intervenci\u00f3n a la dictadura: pol\u00edticas de ingreso y disciplinamiento\",\r\n    author: \"Inchauspe y Sol\u00eds\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2019\",\r\n    period: \"Dictadura militar\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/publicaciones\/tienda\/publicaciones-de-investigacion\/actas-del-workshop-hacia-los-cien-anos-de-la-reforma-del-18-discursos-y-efectos-del-reformismo-en-la-historia-de-la-educacion-la-cultura-y-la-politica-argentinas\/\"\r\n  },\r\n  {\r\n    title:  \"Historia, pol\u00edtica y memoria en los a\u00f1os 70: una lectura desde la C\u00f3rdoba 'm\u00edstica y doctoral'\",\r\n    author: \"Philp, Marta\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2020\",\r\n    period: \"Dictadura militar\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/rdu.unc.edu.ar\/server\/api\/core\/bitstreams\/761033a4-7526-45c7-ac10-877037e5e65b\/content\"\r\n  },\r\n  {\r\n    title:  \"Listado de Decanos de la Facultad de Filosof\u00eda y Humanidades, UNC\",\r\n    author: \"FFyH\",\r\n    tipo:   \"Web\",\r\n    year:   \"\u2014\",\r\n    period: \"\u2014\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/sin-categoria\/04\/2010\/historia-de-la-facultad\/\"\r\n  },\r\n  {\r\n    title:  \"Historia en p\u00edxeles\",\r\n    author: \"Escuela de Historia (gesti\u00f3n Castro-Molina)\",\r\n    tipo:   \"Web\",\r\n    year:   \"2020\",\r\n    period: \"1960\u2013actualidad\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/historia\/pixeles\/\"\r\n  },\r\n  {\r\n    title:  \"FILO EN DICTADURA. Un recorrido a trav\u00e9s de documentos de la Escuela de Filosof\u00eda de la UNC\",\r\n    author: \"Galfione y Arese (comps.)\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2025\",\r\n    period: \"Dictadura\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/publicaciones\/wp-content\/uploads\/sites\/35\/2025\/06\/improntas-de-la-dictura-okey_compressed-2.pdf\"\r\n  },\r\n  {\r\n    title:  \"Proyecto Memorias en Com\u00fan\",\r\n    author: \"Escuela de Historia\",\r\n    tipo:   \"Proyecto\",\r\n    year:   \"2022\u20132025\",\r\n    period: \"Variado\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/sitio.ffyh.unc.edu.ar\/escueladehistoria\/memorias-en-comun\/\"\r\n  },\r\n  {\r\n    title:  \"Micro documentales 70 a\u00f1os de historia (FFyH)\",\r\n    author: \"Prensa FFyH\",\r\n    tipo:   \"Audiovisual\",\r\n    year:   \"\u2014\",\r\n    period: \"\u2014\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/alfilo\/especial-microdocumentales-70-anos-de-historia\/\"\r\n  }\r\n];\r\n\r\n\/* \u2500\u2500 TIPO \u2192 badge class \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nconst BADGE = {\r\n  \"Libro\":      \"badge-libro\",\r\n  \"Art\u00edculo\":   \"badge-articulo\",\r\n  \"TFL\":        \"badge-tfl\",\r\n  \"TD\":         \"badge-td\",\r\n  \"Ponencia\":   \"badge-ponencia\",\r\n  \"Web\":        \"badge-web\",\r\n  \"Audiovisual\":\"badge-audiovisual\",\r\n  \"Homenaje\":   \"badge-homenaje\",\r\n  \"Proyecto\":   \"badge-proyecto\",\r\n};\r\n\r\n\/* \u2500\u2500 RENDER \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nfunction fmtClass(f) {\r\n  if (f === \"Digital\") return \"fmt-digital\";\r\n  if (f === \"F\u00edsico\")  return \"fmt-fisico\";\r\n  return \"fmt-ambos\";\r\n}\r\n\r\nfunction renderRows(data) {\r\n  const tbody = document.getElementById(\"ffyhBody\");\r\n  tbody.innerHTML = \"\";\r\n  data.forEach((r, i) => {\r\n    const bc   = BADGE[r.tipo] || \"badge-otro\";\r\n    const link = r.url\r\n      ? `<a href=\"${r.url}\" target=\"_blank\" rel=\"noopener\">\r\n           <svg width=\"11\" height=\"11\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                stroke=\"currentColor\" stroke-width=\"2.5\">\r\n             <path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"\/>\r\n             <polyline points=\"15 3 21 3 21 9\"\/><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"\/>\r\n           <\/svg>Acceder<\/a>`\r\n      : `<span class=\"fmt-fisico\">\u2014<\/span>`;\r\n\r\n    const tr = document.createElement(\"tr\");\r\n    tr.dataset.title  = r.title.toLowerCase();\r\n    tr.dataset.author = r.author.toLowerCase();\r\n    tr.dataset.period = r.period.toLowerCase();\r\n    tr.dataset.tipo   = r.tipo;\r\n    tr.dataset.fmt    = r.fmt;\r\n    tr.dataset.year   = r.year;\r\n\r\n    tr.innerHTML = `\r\n      <td class=\"cell-title\">${r.title}<\/td>\r\n      <td class=\"cell-author\">${r.author}<\/td>\r\n      <td><span class=\"badge ${bc}\">${r.tipo}<\/span><\/td>\r\n      <td style=\"white-space:nowrap;color:var(--muted);font-size:.82rem\">${r.year}<\/td>\r\n      <td class=\"cell-period\">${r.period}<\/td>\r\n      <td class=\"cell-link\">\r\n        <span class=\"${fmtClass(r.fmt)}\">${r.fmt}<\/span><br\/>${link}\r\n      <\/td>`;\r\n    tbody.appendChild(tr);\r\n  });\r\n}\r\n\r\n\/* \u2500\u2500 FILTER \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nlet activeTipos = new Set();\r\nlet activeFmts  = new Set();\r\nlet searchQ     = \"\";\r\n\r\nfunction applyFilters() {\r\n  const rows  = document.querySelectorAll(\"#ffyhBody tr\");\r\n  let visible = 0;\r\n  rows.forEach(tr => {\r\n    const matchQ   = !searchQ\r\n      || tr.dataset.title.includes(searchQ)\r\n      || tr.dataset.author.includes(searchQ)\r\n      || tr.dataset.period.includes(searchQ);\r\n    const matchT   = activeTipos.size === 0 || activeTipos.has(tr.dataset.tipo);\r\n    const matchF   = activeFmts.size  === 0 || [...activeFmts].some(f => tr.dataset.fmt.includes(f));\r\n    const show = matchQ && matchT && matchF;\r\n    tr.classList.toggle(\"hidden\", !show);\r\n    if (show) visible++;\r\n  });\r\n  document.getElementById(\"ffyhCount\").innerHTML =\r\n    `Mostrando <strong>${visible}<\/strong> de <strong>${RESOURCES.length}<\/strong> recursos`;\r\n  document.getElementById(\"ffyhEmpty\").style.display = visible === 0 ? \"block\" : \"none\";\r\n}\r\n\r\n\/* \u2500\u2500 BUILD CHIPS \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nfunction buildChips(containerId, values, activeSet, key) {\r\n  const wrap = document.getElementById(containerId);\r\n  \/\/ keep the label span, remove old chips\r\n  [...wrap.querySelectorAll(\".filter-chip\")].forEach(c => c.remove());\r\n\r\n  values.forEach(v => {\r\n    const chip = document.createElement(\"span\");\r\n    chip.className  = \"filter-chip\";\r\n    chip.textContent = v;\r\n    chip.addEventListener(\"click\", () => {\r\n      if (activeSet.has(v)) activeSet.delete(v);\r\n      else activeSet.add(v);\r\n      chip.classList.toggle(\"active\", activeSet.has(v));\r\n      applyFilters();\r\n    });\r\n    wrap.appendChild(chip);\r\n  });\r\n}\r\n\r\n\/* \u2500\u2500 SORT \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nlet sortCol = null, sortAsc = true;\r\ndocument.getElementById(\"ffyhTable\").addEventListener(\"click\", e => {\r\n  const th = e.target.closest(\"th.sortable\");\r\n  if (!th) return;\r\n  const col = th.dataset.col;\r\n  if (sortCol === col) sortAsc = !sortAsc;\r\n  else { sortCol = col; sortAsc = true; }\r\n\r\n  document.querySelectorAll(\".ffyh-table th\").forEach(h => {\r\n    h.classList.remove(\"asc\", \"desc\");\r\n  });\r\n  th.classList.add(sortAsc ? \"asc\" : \"desc\");\r\n\r\n  const rows = [...document.querySelectorAll(\"#ffyhBody tr\")];\r\n  rows.sort((a, b) => {\r\n    const va = a.dataset[col] || \"\", vb = b.dataset[col] || \"\";\r\n    return sortAsc ? va.localeCompare(vb, \"es\") : vb.localeCompare(va, \"es\");\r\n  });\r\n  const tbody = document.getElementById(\"ffyhBody\");\r\n  rows.forEach(r => tbody.appendChild(r));\r\n});\r\n\r\n\/* \u2500\u2500 SEARCH \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\ndocument.getElementById(\"ffyhSearch\").addEventListener(\"input\", e => {\r\n  searchQ = e.target.value.toLowerCase().trim();\r\n  applyFilters();\r\n});\r\n\r\n\/* \u2500\u2500 INIT \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nconst tipos   = [...new Set(RESOURCES.map(r => r.tipo))].sort((a,b) => a.localeCompare(b,\"es\"));\r\nconst formatos = [\"Digital\", \"F\u00edsico\", \"F\u00edsico\/Digital\"];\r\n\r\nrenderRows(RESOURCES);\r\nbuildChips(\"tipoFilters\",  tipos,    activeTipos, \"tipo\");\r\nbuildChips(\"fmtFilters\",   formatos, activeFmts,  \"fmt\");\r\napplyFilters();\r\n<\/script>\r\n<\/body>\r\n<\/html><\/p>\r\n","protected":false},"excerpt":{"rendered":"<p>Repositorio para una historia institucional Recursos sobre Historia de la FFyH \u00b7 UNC Recursos sobre historia de la FFyH Listado elaborado por la subcomisi\u00f3n de archivo y registro, a partir [&hellip;]<\/p>\n","protected":false},"author":56,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-no-title","meta":{"_acf_changed":false,"_EventAllDay":false,"_EventTimezone":"","_EventStartDate":"","_EventEndDate":"","_EventStartDateUTC":"","_EventEndDateUTC":"","_EventShowMap":false,"_EventShowMapLink":false,"_EventURL":"","_EventCost":"","_EventCostDescription":"","_EventCurrencySymbol":"","_EventCurrencyCode":"","_EventCurrencyPosition":"","_EventDateTimeSeparator":"","_EventTimeRangeSeparator":"","_EventOrganizerID":[],"_EventVenueID":[],"_OrganizerEmail":"","_OrganizerPhone":"","_OrganizerWebsite":"","_VenueAddress":"","_VenueCity":"","_VenueCountry":"","_VenueProvince":"","_VenueState":"","_VenueZip":"","_VenuePhone":"","_VenueURL":"","_VenueStateProvince":"","_VenueLat":"","_VenueLng":"","_VenueShowMap":false,"_VenueShowMapLink":false,"CODE1":"<!DOCTYPE html>\r\n<html lang=\"es\">\r\n<head>\r\n  <meta charset=\"UTF-8\" \/>\r\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" \/>\r\n  <title>Recursos sobre Historia de la FFyH \u00b7 UNC<\/title>\r\n  <style>\r\n    \/* \u2500\u2500 Reset & Base \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\r\n\r\n    :root {\r\n      --bg:        #fafaf8;\r\n      --surface:   #ffffff;\r\n      --border:    #e8e5df;\r\n      --text:      #1a1a1a;\r\n      --muted:     #6b6860;\r\n      --accent:    #2d5a8c;\r\n      --accent-lt: #edf2f8;\r\n      --tag-bg:    #f0ede8;\r\n      --tag-act:   #2d5a8c;\r\n      --tag-act-t: #ffffff;\r\n      --link:      #2d5a8c;\r\n      --radius:    4px;\r\n      --font:      'Inter', system-ui, -apple-system, sans-serif;\r\n      --mono:      'JetBrains Mono', 'Fira Mono', monospace;\r\n    }\r\n\r\n    body {\r\n      font-family: var(--font);\r\n      background: var(--bg);\r\n      color: var(--text);\r\n      font-size: 15px;\r\n      line-height: 1.6;\r\n    }\r\n\r\n    \/* \u2500\u2500 Layout \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-wrap {\r\n      max-width: 1100px;\r\n      margin: 0 auto;\r\n      padding: 3rem 1.5rem 5rem;\r\n    }\r\n\r\n    \/* \u2500\u2500 Header \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-header {\r\n      border-bottom: 1px solid var(--border);\r\n      padding-bottom: 1.75rem;\r\n      margin-bottom: 2rem;\r\n    }\r\n    .ffyh-header h1 {\r\n      font-size: 1.45rem;\r\n      font-weight: 600;\r\n      letter-spacing: -0.02em;\r\n      margin-bottom: 0.35rem;\r\n      color: var(--text);\r\n    }\r\n    .ffyh-header p {\r\n      font-size: 0.875rem;\r\n      color: var(--muted);\r\n    }\r\n    .ffyh-header p a {\r\n      color: var(--link);\r\n      text-decoration: none;\r\n    }\r\n    .ffyh-header p a:hover { text-decoration: underline; }\r\n\r\n    \/* \u2500\u2500 Controls \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-controls {\r\n      display: flex;\r\n      flex-wrap: wrap;\r\n      gap: 1.25rem;\r\n      margin-bottom: 1.75rem;\r\n      align-items: flex-start;\r\n    }\r\n\r\n    .ffyh-search-box {\r\n      flex: 1 1 240px;\r\n      position: relative;\r\n    }\r\n    .ffyh-search-box input {\r\n      width: 100%;\r\n      padding: 0.5rem 0.75rem 0.5rem 2.25rem;\r\n      border: 1px solid var(--border);\r\n      border-radius: var(--radius);\r\n      background: var(--surface);\r\n      font-family: var(--font);\r\n      font-size: 0.875rem;\r\n      color: var(--text);\r\n      outline: none;\r\n      transition: border-color 0.15s;\r\n    }\r\n    .ffyh-search-box input:focus { border-color: var(--accent); }\r\n    .ffyh-search-box input::placeholder { color: var(--muted); }\r\n    .ffyh-search-icon {\r\n      position: absolute;\r\n      left: 0.65rem;\r\n      top: 50%;\r\n      transform: translateY(-50%);\r\n      color: var(--muted);\r\n      pointer-events: none;\r\n    }\r\n\r\n    .ffyh-filters { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; }\r\n    .ffyh-filter-label {\r\n      font-size: 0.75rem;\r\n      color: var(--muted);\r\n      text-transform: uppercase;\r\n      letter-spacing: 0.06em;\r\n      margin-right: 0.25rem;\r\n    }\r\n\r\n    .filter-chip {\r\n      display: inline-block;\r\n      padding: 0.3rem 0.75rem;\r\n      border-radius: 20px;\r\n      background: var(--tag-bg);\r\n      color: var(--muted);\r\n      font-size: 0.8rem;\r\n      cursor: pointer;\r\n      border: 1px solid transparent;\r\n      transition: all 0.15s;\r\n      user-select: none;\r\n    }\r\n    .filter-chip:hover { border-color: var(--accent); color: var(--accent); }\r\n    .filter-chip.active {\r\n      background: var(--tag-act);\r\n      color: var(--tag-act-t);\r\n      border-color: var(--tag-act);\r\n    }\r\n\r\n    \/* \u2500\u2500 Count \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-count {\r\n      font-size: 0.8rem;\r\n      color: var(--muted);\r\n      margin-bottom: 1rem;\r\n    }\r\n    .ffyh-count strong { color: var(--text); }\r\n\r\n    \/* \u2500\u2500 Table \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-table-wrap {\r\n      overflow-x: auto;\r\n      border: 1px solid var(--border);\r\n      border-radius: var(--radius);\r\n      background: var(--surface);\r\n    }\r\n\r\n    table.ffyh-table {\r\n      width: 100%;\r\n      border-collapse: collapse;\r\n      font-size: 0.875rem;\r\n    }\r\n    .ffyh-table thead tr {\r\n      border-bottom: 1px solid var(--border);\r\n      background: var(--bg);\r\n    }\r\n    .ffyh-table th {\r\n      padding: 0.75rem 1rem;\r\n      text-align: left;\r\n      font-size: 0.75rem;\r\n      font-weight: 600;\r\n      text-transform: uppercase;\r\n      letter-spacing: 0.06em;\r\n      color: var(--muted);\r\n      white-space: nowrap;\r\n    }\r\n    .ffyh-table th.sortable { cursor: pointer; }\r\n    .ffyh-table th.sortable:hover { color: var(--accent); }\r\n    .ffyh-table th .sort-icon { margin-left: 0.3em; opacity: 0.4; }\r\n    .ffyh-table th.asc .sort-icon, .ffyh-table th.desc .sort-icon { opacity: 1; color: var(--accent); }\r\n\r\n    .ffyh-table tbody tr {\r\n      border-bottom: 1px solid var(--border);\r\n      transition: background 0.1s;\r\n    }\r\n    .ffyh-table tbody tr:last-child { border-bottom: none; }\r\n    .ffyh-table tbody tr:hover { background: var(--accent-lt); }\r\n    .ffyh-table tbody tr.hidden { display: none; }\r\n\r\n    .ffyh-table td {\r\n      padding: 0.85rem 1rem;\r\n      vertical-align: top;\r\n      color: var(--text);\r\n    }\r\n\r\n    .cell-title {\r\n      font-weight: 500;\r\n      line-height: 1.4;\r\n      min-width: 240px;\r\n      max-width: 340px;\r\n    }\r\n    .cell-author { color: var(--muted); min-width: 140px; }\r\n    .cell-period { white-space: nowrap; color: var(--muted); font-size: 0.82rem; }\r\n\r\n    \/* tipo badge *\/\r\n    .badge {\r\n      display: inline-block;\r\n      padding: 0.2em 0.6em;\r\n      border-radius: 3px;\r\n      font-size: 0.75rem;\r\n      font-weight: 500;\r\n      white-space: nowrap;\r\n    }\r\n    .badge-libro       { background: #e8f0e8; color: #2e6b2e; }\r\n    .badge-articulo    { background: #e8eef8; color: #1e4a8c; }\r\n    .badge-tfl         { background: #f5eee0; color: #7a5020; }\r\n    .badge-td          { background: #f0e8f5; color: #5a2a7a; }\r\n    .badge-ponencia    { background: #e0f0f5; color: #1a6478; }\r\n    .badge-web         { background: #f5f0e0; color: #7a6820; }\r\n    .badge-audiovisual { background: #f5e8e8; color: #7a2020; }\r\n    .badge-homenaje    { background: #e8f5ee; color: #206840; }\r\n    .badge-proyecto    { background: #fce8f0; color: #8c1e5a; }\r\n    .badge-otro        { background: var(--tag-bg); color: var(--muted); }\r\n\r\n    \/* formato *\/\r\n    .fmt-digital { color: var(--accent); font-size: 0.8rem; }\r\n    .fmt-fisico  { color: var(--muted);  font-size: 0.8rem; }\r\n    .fmt-ambos   { color: #5a7a2e;       font-size: 0.8rem; }\r\n\r\n    .cell-link a {\r\n      color: var(--link);\r\n      text-decoration: none;\r\n      font-size: 0.8rem;\r\n      display: inline-flex;\r\n      align-items: center;\r\n      gap: 0.25rem;\r\n      opacity: 0.85;\r\n      transition: opacity 0.15s;\r\n    }\r\n    .cell-link a:hover { opacity: 1; text-decoration: underline; }\r\n\r\n    \/* \u2500\u2500 Empty state \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-empty {\r\n      padding: 3rem 1rem;\r\n      text-align: center;\r\n      color: var(--muted);\r\n      font-size: 0.9rem;\r\n      display: none;\r\n    }\r\n\r\n    \/* \u2500\u2500 Footer \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    .ffyh-foot {\r\n      margin-top: 1.5rem;\r\n      font-size: 0.78rem;\r\n      color: var(--muted);\r\n    }\r\n\r\n    \/* \u2500\u2500 Responsive \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n    @media (max-width: 640px) {\r\n      .ffyh-wrap { padding: 1.5rem 1rem 3rem; }\r\n      .ffyh-table th:nth-child(3),\r\n      .ffyh-table td:nth-child(3),\r\n      .ffyh-table th:nth-child(5),\r\n      .ffyh-table td:nth-child(5) { display: none; }\r\n    }\r\n  <\/style>\r\n<\/head>\r\n<body>\r\n<div class=\"ffyh-wrap\">\r\n\r\n  <!-- Header -->\r\n  <header class=\"ffyh-header\">\r\n    <h1>Recursos sobre historia de la FFyH<\/h1>\r\n    <p>Listado elaborado por la subcomisi\u00f3n de archivo y registro, a partir de trabajo original llevado a cabo por Denise Reyna Berrotar\u00e1n \r\n  <\/header>\r\n\r\n  <!-- Controls -->\r\n  <div class=\"ffyh-controls\">\r\n    <!-- Search -->\r\n    <div class=\"ffyh-search-box\">\r\n      <svg class=\"ffyh-search-icon\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n           stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"11\" cy=\"11\" r=\"8\"\/>\r\n        <path d=\"m21 21-4.35-4.35\"\/><\/svg>\r\n      <input type=\"search\" id=\"ffyhSearch\" placeholder=\"Buscar por t\u00edtulo, autor, per\u00edodo\u2026\" \/>\r\n    <\/div>\r\n\r\n    <!-- Tipo filter -->\r\n    <div class=\"ffyh-filters\" id=\"tipoFilters\">\r\n      <span class=\"ffyh-filter-label\">Tipo<\/span>\r\n      <!-- chips generated by JS -->\r\n    <\/div>\r\n\r\n    <!-- Formato filter -->\r\n    <div class=\"ffyh-filters\" id=\"fmtFilters\">\r\n      <span class=\"ffyh-filter-label\">Formato<\/span>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Count -->\r\n  <div class=\"ffyh-count\" id=\"ffyhCount\"><\/div>\r\n\r\n  <!-- Table -->\r\n  <div class=\"ffyh-table-wrap\">\r\n    <table class=\"ffyh-table\" id=\"ffyhTable\">\r\n      <thead>\r\n        <tr>\r\n          <th class=\"sortable\" data-col=\"title\">T\u00edtulo <span class=\"sort-icon\">\u2195<\/span><\/th>\r\n          <th class=\"sortable\" data-col=\"author\">Autor\/es <span class=\"sort-icon\">\u2195<\/span><\/th>\r\n          <th class=\"sortable\" data-col=\"tipo\">Tipo <span class=\"sort-icon\">\u2195<\/span><\/th>\r\n          <th class=\"sortable\" data-col=\"year\">A\u00f1o <span class=\"sort-icon\">\u2195<\/span><\/th>\r\n          <th class=\"sortable\" data-col=\"period\">Per\u00edodo <span class=\"sort-icon\">\u2195<\/span><\/th>\r\n          <th>Formato \/ Enlace<\/th>\r\n        <\/tr>\r\n      <\/thead>\r\n      <tbody id=\"ffyhBody\"><\/tbody>\r\n    <\/table>\r\n    <div class=\"ffyh-empty\" id=\"ffyhEmpty\">\r\n      No se encontraron recursos con esos criterios.\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div class=\"ffyh-foot\">\r\n    * Los recursos sin enlace est\u00e1n disponibles en soporte f\u00edsico o en las bibliotecas de la UNC.\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n<script>\r\n\/* \u2500\u2500 DATA \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nconst RESOURCES = [\r\n  {\r\n    title:  \"Colecci\u00f3n 400 a\u00f1os de historia (Fiorucci, Grisendi, Requena, Moyano, Abratte\u2026)\",\r\n    author: \"Saur y Servetto (coord.)\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2013\",\r\n    period: \"400 a\u00f1os\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Facultades de la UNC (1854\u20132011)\",\r\n    author: \"Gordillo y Valdemarca (coord.)\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2013\",\r\n    period: \"1854\u20132011\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"La institucionalizaci\u00f3n de la Geograf\u00eda en C\u00f3rdoba (1878\u20131984)\",\r\n    author: \"Cecchetto y Zusman (coord.)\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2012\",\r\n    period: \"1878\u20131984\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Tejer un destino. La formaci\u00f3n de pedagogos en la UNC, Argentina, 1955\u20131976\",\r\n    author: \"Adela Coria\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2015\",\r\n    period: \"1955\u20131976\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"La institucionalizaci\u00f3n de la Archivolog\u00eda en C\u00f3rdoba, a trav\u00e9s de las publicaciones\",\r\n    author: \"Noelia Garc\u00eda, Laura Argento Nasser\",\r\n    tipo:   \"TFL\",\r\n    year:   \"2013\",\r\n    period: \"1955\u20132010\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Edici\u00f3n especial en el 60\u00b0 aniversario de la FFyH (Alfilo)\",\r\n    author: \"\u2014\",\r\n    tipo:   \"Homenaje\",\r\n    year:   \"2007\",\r\n    period: \"1947\u20132007\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Intelectuales y nacionalismo cat\u00f3lico: Nimio de Anqu\u00edn, Lisardo Novillo Saravia (hijo) y Rodolfo Mart\u00ednez Espinosa. C\u00f3rdoba, d\u00e9cada de 1930\",\r\n    author: \"Angelini, Lisandro\",\r\n    tipo:   \"TD\",\r\n    year:   \"2022\",\r\n    period: \"1930s\",\r\n    fmt:    \"F\u00edsico\/Digital\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"La cuarta facultad: Institucionalizaci\u00f3n de la Filosof\u00eda en la UNC (1934\u20131951)\",\r\n    author: \"Mattoni, Francisca\",\r\n    tipo:   \"TFL\",\r\n    year:   \"2023\",\r\n    period: \"1934\u20131951\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/rdu.unc.edu.ar\/items\/10eef329-2301-4352-9903-a966adf67ce4\"\r\n  },\r\n  {\r\n    title:  \"Para una historia de la historiograf\u00eda cordobesa. El caso del Instituto de Estudios Americanistas de la UNC, 1936\u20131947\",\r\n    author: \"Requena, P.\",\r\n    tipo:   \"Ponencia\",\r\n    year:   \"2009\",\r\n    period: \"1936\u20131947\",\r\n    fmt:    \"Digital\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Caminos hacia la institucionalizaci\u00f3n de la historia en C\u00f3rdoba: discusiones respecto a sus or\u00edgenes (1924\u20131936)\",\r\n    author: \"Reyna Berrotar\u00e1n, D.\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2013\",\r\n    period: \"1924\u20131936\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"La institucionalizaci\u00f3n y profesionalizaci\u00f3n de la Historia en C\u00f3rdoba: un estudio de la experiencia del Instituto de Estudios Americanistas (1936\u20131987)\",\r\n    author: \"Reyna Berrotar\u00e1n, Denise\",\r\n    tipo:   \"TD\",\r\n    year:   \"2026\",\r\n    period: \"1936\u20131987\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/rdu.unc.edu.ar\/items\/6a3b1248-c2c2-40d8-ac64-38aeb4922d69\"\r\n  },\r\n  {\r\n    title:  \"Construyendo un nuevo relato sobre el territorio provincial: La c\u00e1tedra de Geograf\u00eda econ\u00f3mica en la UNC (1957\u20131968)\",\r\n    author: \"Maldonado, R. y Ricci, C.\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2014\",\r\n    period: \"1957\u20131968\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/revistas.unc.edu.ar\/index.php\/cardi\/article\/view\/9846\"\r\n  },\r\n  {\r\n    title:  \"De la lucha de calles a la lucha en los claustros: el movimiento estudiantil de C\u00f3rdoba entre el Cordobazo y la 'primavera camporista' (1969\u20131973)\",\r\n    author: \"Mill\u00e1n\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2013\",\r\n    period: \"1969\u20131973\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/notablesdelaciencia.conicet.gov.ar\/bitstream\/handle\/11336\/27200\/CONICET_Digital_Nro.4048e342-c6ee-4d62-9b58-7230bf449d61_A.pdf?sequence=2&isAllowed=y\"\r\n  },\r\n  {\r\n    title:  \"Crisis, radicalizaci\u00f3n y pol\u00edtica en el Taller Total de C\u00f3rdoba (1970\u20131975)\",\r\n    author: \"Malecki, Sebasti\u00e1n\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2016\",\r\n    period: \"1970\u20131975\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ri.conicet.gov.ar\/handle\/11336\/69928\"\r\n  },\r\n  {\r\n    title:  \"Estratos del tiempo. La ciudad universitaria de C\u00f3rdoba (1909\u20131989)\",\r\n    author: \"Malecki, Sebasti\u00e1n\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2021\",\r\n    period: \"1940s\u20131960s\",\r\n    fmt:    \"F\u00edsico\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Historiograf\u00eda de C\u00f3rdoba: Un an\u00e1lisis a partir de las Tesis de Licenciatura (1961\u20132015)\",\r\n    author: \"Guardatti, Marcelo\",\r\n    tipo:   \"Ponencia\",\r\n    year:   \"2017\",\r\n    period: \"1961\u20132015\",\r\n    fmt:    \"Digital\",\r\n    url:    \"\"\r\n  },\r\n  {\r\n    title:  \"Listado completo de docentes cesanteados entre 1974 y 1983 en FFyH\",\r\n    author: \"AAVV\",\r\n    tipo:   \"Web\",\r\n    year:   \"\u2014\",\r\n    period: \"1974\u20131983\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/docentes-cesanteados\/lista-de-docentes-de-la-ffyh-cesanteados-por-motivos-politicos-entre-1974-y-1983\/\"\r\n  },\r\n  {\r\n    title:  \"'Los estudiantes comprendieron la misi\u00f3n de la Universidad\u2026' La UNC de la intervenci\u00f3n a la dictadura: pol\u00edticas de ingreso y disciplinamiento\",\r\n    author: \"Inchauspe y Sol\u00eds\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2019\",\r\n    period: \"Dictadura militar\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/publicaciones\/tienda\/publicaciones-de-investigacion\/actas-del-workshop-hacia-los-cien-anos-de-la-reforma-del-18-discursos-y-efectos-del-reformismo-en-la-historia-de-la-educacion-la-cultura-y-la-politica-argentinas\/\"\r\n  },\r\n  {\r\n    title:  \"Historia, pol\u00edtica y memoria en los a\u00f1os 70: una lectura desde la C\u00f3rdoba 'm\u00edstica y doctoral'\",\r\n    author: \"Philp, Marta\",\r\n    tipo:   \"Art\u00edculo\",\r\n    year:   \"2020\",\r\n    period: \"Dictadura militar\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/rdu.unc.edu.ar\/server\/api\/core\/bitstreams\/761033a4-7526-45c7-ac10-877037e5e65b\/content\"\r\n  },\r\n  {\r\n    title:  \"Listado de Decanos de la Facultad de Filosof\u00eda y Humanidades, UNC\",\r\n    author: \"FFyH\",\r\n    tipo:   \"Web\",\r\n    year:   \"\u2014\",\r\n    period: \"\u2014\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/sin-categoria\/04\/2010\/historia-de-la-facultad\/\"\r\n  },\r\n  {\r\n    title:  \"Historia en p\u00edxeles\",\r\n    author: \"Escuela de Historia (gesti\u00f3n Castro-Molina)\",\r\n    tipo:   \"Web\",\r\n    year:   \"2020\",\r\n    period: \"1960\u2013actualidad\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/historia\/pixeles\/\"\r\n  },\r\n  {\r\n    title:  \"FILO EN DICTADURA. Un recorrido a trav\u00e9s de documentos de la Escuela de Filosof\u00eda de la UNC\",\r\n    author: \"Galfione y Arese (comps.)\",\r\n    tipo:   \"Libro\",\r\n    year:   \"2025\",\r\n    period: \"Dictadura\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/publicaciones\/wp-content\/uploads\/sites\/35\/2025\/06\/improntas-de-la-dictura-okey_compressed-2.pdf\"\r\n  },\r\n  {\r\n    title:  \"Proyecto Memorias en Com\u00fan\",\r\n    author: \"Escuela de Historia\",\r\n    tipo:   \"Proyecto\",\r\n    year:   \"2022\u20132025\",\r\n    period: \"Variado\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/sitio.ffyh.unc.edu.ar\/escueladehistoria\/memorias-en-comun\/\"\r\n  },\r\n  {\r\n    title:  \"Micro documentales 70 a\u00f1os de historia (FFyH)\",\r\n    author: \"Prensa FFyH\",\r\n    tipo:   \"Audiovisual\",\r\n    year:   \"\u2014\",\r\n    period: \"\u2014\",\r\n    fmt:    \"Digital\",\r\n    url:    \"https:\/\/ffyh.unc.edu.ar\/alfilo\/especial-microdocumentales-70-anos-de-historia\/\"\r\n  }\r\n];\r\n\r\n\/* \u2500\u2500 TIPO \u2192 badge class \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nconst BADGE = {\r\n  \"Libro\":      \"badge-libro\",\r\n  \"Art\u00edculo\":   \"badge-articulo\",\r\n  \"TFL\":        \"badge-tfl\",\r\n  \"TD\":         \"badge-td\",\r\n  \"Ponencia\":   \"badge-ponencia\",\r\n  \"Web\":        \"badge-web\",\r\n  \"Audiovisual\":\"badge-audiovisual\",\r\n  \"Homenaje\":   \"badge-homenaje\",\r\n  \"Proyecto\":   \"badge-proyecto\",\r\n};\r\n\r\n\/* \u2500\u2500 RENDER \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nfunction fmtClass(f) {\r\n  if (f === \"Digital\") return \"fmt-digital\";\r\n  if (f === \"F\u00edsico\")  return \"fmt-fisico\";\r\n  return \"fmt-ambos\";\r\n}\r\n\r\nfunction renderRows(data) {\r\n  const tbody = document.getElementById(\"ffyhBody\");\r\n  tbody.innerHTML = \"\";\r\n  data.forEach((r, i) => {\r\n    const bc   = BADGE[r.tipo] || \"badge-otro\";\r\n    const link = r.url\r\n      ? `<a href=\"${r.url}\" target=\"_blank\" rel=\"noopener\">\r\n           <svg width=\"11\" height=\"11\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                stroke=\"currentColor\" stroke-width=\"2.5\">\r\n             <path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"\/>\r\n             <polyline points=\"15 3 21 3 21 9\"\/><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"\/>\r\n           <\/svg>Acceder<\/a>`\r\n      : `<span class=\"fmt-fisico\">\u2014<\/span>`;\r\n\r\n    const tr = document.createElement(\"tr\");\r\n    tr.dataset.title  = r.title.toLowerCase();\r\n    tr.dataset.author = r.author.toLowerCase();\r\n    tr.dataset.period = r.period.toLowerCase();\r\n    tr.dataset.tipo   = r.tipo;\r\n    tr.dataset.fmt    = r.fmt;\r\n    tr.dataset.year   = r.year;\r\n\r\n    tr.innerHTML = `\r\n      <td class=\"cell-title\">${r.title}<\/td>\r\n      <td class=\"cell-author\">${r.author}<\/td>\r\n      <td><span class=\"badge ${bc}\">${r.tipo}<\/span><\/td>\r\n      <td style=\"white-space:nowrap;color:var(--muted);font-size:.82rem\">${r.year}<\/td>\r\n      <td class=\"cell-period\">${r.period}<\/td>\r\n      <td class=\"cell-link\">\r\n        <span class=\"${fmtClass(r.fmt)}\">${r.fmt}<\/span><br\/>${link}\r\n      <\/td>`;\r\n    tbody.appendChild(tr);\r\n  });\r\n}\r\n\r\n\/* \u2500\u2500 FILTER \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nlet activeTipos = new Set();\r\nlet activeFmts  = new Set();\r\nlet searchQ     = \"\";\r\n\r\nfunction applyFilters() {\r\n  const rows  = document.querySelectorAll(\"#ffyhBody tr\");\r\n  let visible = 0;\r\n  rows.forEach(tr => {\r\n    const matchQ   = !searchQ\r\n      || tr.dataset.title.includes(searchQ)\r\n      || tr.dataset.author.includes(searchQ)\r\n      || tr.dataset.period.includes(searchQ);\r\n    const matchT   = activeTipos.size === 0 || activeTipos.has(tr.dataset.tipo);\r\n    const matchF   = activeFmts.size  === 0 || [...activeFmts].some(f => tr.dataset.fmt.includes(f));\r\n    const show = matchQ && matchT && matchF;\r\n    tr.classList.toggle(\"hidden\", !show);\r\n    if (show) visible++;\r\n  });\r\n  document.getElementById(\"ffyhCount\").innerHTML =\r\n    `Mostrando <strong>${visible}<\/strong> de <strong>${RESOURCES.length}<\/strong> recursos`;\r\n  document.getElementById(\"ffyhEmpty\").style.display = visible === 0 ? \"block\" : \"none\";\r\n}\r\n\r\n\/* \u2500\u2500 BUILD CHIPS \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nfunction buildChips(containerId, values, activeSet, key) {\r\n  const wrap = document.getElementById(containerId);\r\n  \/\/ keep the label span, remove old chips\r\n  [...wrap.querySelectorAll(\".filter-chip\")].forEach(c => c.remove());\r\n\r\n  values.forEach(v => {\r\n    const chip = document.createElement(\"span\");\r\n    chip.className  = \"filter-chip\";\r\n    chip.textContent = v;\r\n    chip.addEventListener(\"click\", () => {\r\n      if (activeSet.has(v)) activeSet.delete(v);\r\n      else activeSet.add(v);\r\n      chip.classList.toggle(\"active\", activeSet.has(v));\r\n      applyFilters();\r\n    });\r\n    wrap.appendChild(chip);\r\n  });\r\n}\r\n\r\n\/* \u2500\u2500 SORT \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nlet sortCol = null, sortAsc = true;\r\ndocument.getElementById(\"ffyhTable\").addEventListener(\"click\", e => {\r\n  const th = e.target.closest(\"th.sortable\");\r\n  if (!th) return;\r\n  const col = th.dataset.col;\r\n  if (sortCol === col) sortAsc = !sortAsc;\r\n  else { sortCol = col; sortAsc = true; }\r\n\r\n  document.querySelectorAll(\".ffyh-table th\").forEach(h => {\r\n    h.classList.remove(\"asc\", \"desc\");\r\n  });\r\n  th.classList.add(sortAsc ? \"asc\" : \"desc\");\r\n\r\n  const rows = [...document.querySelectorAll(\"#ffyhBody tr\")];\r\n  rows.sort((a, b) => {\r\n    const va = a.dataset[col] || \"\", vb = b.dataset[col] || \"\";\r\n    return sortAsc ? va.localeCompare(vb, \"es\") : vb.localeCompare(va, \"es\");\r\n  });\r\n  const tbody = document.getElementById(\"ffyhBody\");\r\n  rows.forEach(r => tbody.appendChild(r));\r\n});\r\n\r\n\/* \u2500\u2500 SEARCH \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\ndocument.getElementById(\"ffyhSearch\").addEventListener(\"input\", e => {\r\n  searchQ = e.target.value.toLowerCase().trim();\r\n  applyFilters();\r\n});\r\n\r\n\/* \u2500\u2500 INIT \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\nconst tipos   = [...new Set(RESOURCES.map(r => r.tipo))].sort((a,b) => a.localeCompare(b,\"es\"));\r\nconst formatos = [\"Digital\", \"F\u00edsico\", \"F\u00edsico\/Digital\"];\r\n\r\nrenderRows(RESOURCES);\r\nbuildChips(\"tipoFilters\",  tipos,    activeTipos, \"tipo\");\r\nbuildChips(\"fmtFilters\",   formatos, activeFmts,  \"fmt\");\r\napplyFilters();\r\n<\/script>\r\n<\/body>\r\n<\/html>","footnotes":""},"class_list":["post-101","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/ffyh.unc.edu.ar\/los80\/wp-json\/wp\/v2\/pages\/101","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ffyh.unc.edu.ar\/los80\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ffyh.unc.edu.ar\/los80\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ffyh.unc.edu.ar\/los80\/wp-json\/wp\/v2\/users\/56"}],"replies":[{"embeddable":true,"href":"https:\/\/ffyh.unc.edu.ar\/los80\/wp-json\/wp\/v2\/comments?post=101"}],"version-history":[{"count":3,"href":"https:\/\/ffyh.unc.edu.ar\/los80\/wp-json\/wp\/v2\/pages\/101\/revisions"}],"predecessor-version":[{"id":236,"href":"https:\/\/ffyh.unc.edu.ar\/los80\/wp-json\/wp\/v2\/pages\/101\/revisions\/236"}],"wp:attachment":[{"href":"https:\/\/ffyh.unc.edu.ar\/los80\/wp-json\/wp\/v2\/media?parent=101"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}