{"id":3317,"date":"2026-08-21T20:15:44","date_gmt":"2026-08-21T20:15:44","guid":{"rendered":"https:\/\/austriaco.edu.gt\/?page_id=3317"},"modified":"2026-08-21T20:18:53","modified_gmt":"2026-08-21T20:18:53","slug":"calendario","status":"publish","type":"page","link":"https:\/\/austriaco.edu.gt\/de\/calendario\/","title":{"rendered":""},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3317\" class=\"elementor elementor-3317\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-55c6d42f e-flex e-con-boxed e-con e-parent\" data-id=\"55c6d42f\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-13dfd26a elementor-widget elementor-widget-text-editor\" data-id=\"13dfd26a\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8d0a060 e-flex e-con-boxed e-con e-parent\" data-id=\"8d0a060\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-61fd389 elementor-widget elementor-widget-html\" data-id=\"61fd389\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- ============================================================\r\n     CALENDARIO GENERAL DE ACTIVIDADES 2026 \u2014 IAG\r\n     Bloque autocontenido para Elementor (widget \"HTML\").\r\n     Pega TODO este c\u00f3digo en un widget HTML. No requiere nada externo\r\n     salvo la fuente Archivo (se carga desde Google Fonts).\r\n     Actividades: 24.08.2026 \u2013 30.10.2026 (versi\u00f3n actualizada).\r\n     ============================================================ -->\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Archivo:wght@400;500;600;700;800;900&display=swap\" rel=\"stylesheet\">\r\n\r\n<div class=\"iagcal\" id=\"iagcal-root\">\r\n<style>\r\n.iagcal{\r\n  --red:#fe142c;--blue:#1860f2;--ink:#1b1b1b;--muted:#6c6a68;--line:#1b1b1b;\r\n  --hair:#e6e3df;--white:#ffffff;--cream:#fafafa;\r\n  --red-100:#ffe9eb;--red-700:#c20b1e;--blue-100:#e7f0fe;--blue-700:#0f45b8;\r\n  font-family:'Archivo',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;\r\n  color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;\r\n  width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);overflow-x:clip;\r\n}\r\n.iagcal *{box-sizing:border-box;}\r\n.iagcal .wrap{max-width:1200px;margin:0 auto;padding:0 clamp(20px,5vw,72px);}\r\n.iagcal button{font-family:inherit;}\r\n.iagcal .topbar{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--line);padding:18px 0 16px;}\r\n.iagcal .brand{font-weight:800;font-size:13px;letter-spacing:.15em;text-transform:uppercase;}\r\n.iagcal .today-lbl{font-weight:800;font-size:12px;letter-spacing:.05em;color:var(--muted);text-transform:uppercase;}\r\n.iagcal header.hero{padding:clamp(40px,5vw,72px) 0 clamp(28px,3.5vw,44px);}\r\n.iagcal .kicker{display:inline-flex;align-items:center;gap:16px;font-size:14px;line-height:1;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--red);margin-bottom:26px;}\r\n.iagcal .kicker i{width:46px;height:3px;background:var(--red);display:inline-block;}\r\n.iagcal h1{font-weight:800;font-size:clamp(34px,5.5vw,70px);line-height:.96;letter-spacing:-.03em;margin:0;}\r\n.iagcal .sub{margin-top:26px;max-width:820px;font-weight:700;font-size:clamp(18px,2.2vw,26px);line-height:1.2;letter-spacing:-.02em;}\r\n.iagcal .sub b{color:var(--red);}\r\n.iagcal .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line);border:2px solid var(--line);margin-bottom:clamp(28px,3.5vw,44px);}\r\n.iagcal .stat{padding:22px 22px 20px;background:var(--white);position:relative;}\r\n.iagcal .stat .bar{position:absolute;top:0;left:0;width:100%;height:4px;background:var(--ink);}\r\n.iagcal .stat .lbl{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:800;}\r\n.iagcal .stat .big{font-weight:800;font-size:clamp(44px,5vw,60px);line-height:1;margin-top:14px;letter-spacing:-.03em;}\r\n.iagcal .stat .val{font-weight:800;font-size:clamp(20px,2.2vw,26px);line-height:1.1;margin-top:14px;letter-spacing:-.02em;}\r\n.iagcal .stat .note{font-size:13px;color:var(--muted);margin-top:6px;line-height:1.35;font-weight:500;}\r\n.iagcal .stat.blue .bar{background:var(--blue);}\r\n.iagcal .stat.red{background:var(--red);color:#fff;}\r\n.iagcal .stat.red .lbl{color:#fff;opacity:.9;}\r\n.iagcal .stat.red .bar{background:rgba(255,255,255,.55);}\r\n.iagcal .stat.red .note{color:#fff;opacity:.95;font-weight:700;}\r\n.iagcal .toolbar{position:sticky;top:0;z-index:30;background:var(--white);padding:16px 0 18px;border-bottom:2px solid var(--line);margin-bottom:26px;}\r\n.iagcal .toolbar-top{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;margin-bottom:16px;}\r\n.iagcal .seg{display:inline-flex;background:var(--cream);padding:4px;gap:2px;}\r\n.iagcal .seg button{font-weight:800;font-size:13px;padding:9px 20px;border:0;cursor:pointer;background:transparent;color:var(--muted);transition:background .15s,color .15s;}\r\n.iagcal .seg button:hover{background:var(--red-100);color:var(--red-700);}\r\n.iagcal .seg button.on{background:var(--red);color:#fff;}\r\n.iagcal .seg button.on:hover{background:var(--red-700);}\r\n.iagcal .actions{display:flex;gap:10px;align-items:center;}\r\n.iagcal .today-btn{font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:9px 16px;border:2px solid var(--red);background:var(--red);color:#fff;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:background .15s,border-color .15s;}\r\n.iagcal .today-btn:hover{background:var(--red-700);border-color:var(--red-700);}\r\n.iagcal .searchwrap{position:relative;display:flex;align-items:center;}\r\n.iagcal .searchwrap svg{position:absolute;left:11px;pointer-events:none;color:var(--muted);}\r\n.iagcal .search{border:2px solid var(--line);background:#fff;padding:9px 30px 9px 34px;font-size:13px;font-weight:500;min-width:210px;color:var(--ink);}\r\n.iagcal .search-clear{position:absolute;right:6px;border:0;background:transparent;cursor:pointer;font-size:15px;color:var(--muted);line-height:1;}\r\n.iagcal .months{display:flex;border:2px solid var(--line);overflow:hidden;}\r\n.iagcal .months .all{font-weight:800;font-size:12px;letter-spacing:.04em;text-transform:uppercase;padding:9px 16px;border:0;border-right:2px solid var(--line);cursor:pointer;background:transparent;color:var(--ink);transition:background .15s,color .15s;}\r\n.iagcal .months .all:hover{background:var(--cream);}\r\n.iagcal .months .all.on{background:var(--ink);color:#fff;}\r\n.iagcal .monthgrid{display:grid;grid-template-columns:repeat(12,1fr);flex:1;}\r\n.iagcal .monthgrid button{font-weight:800;font-size:12px;padding:9px 0;border:0;border-right:1px solid var(--hair);cursor:pointer;background:transparent;color:var(--ink);transition:background .15s,color .15s;}\r\n.iagcal .monthgrid button:last-child{border-right:0;}\r\n.iagcal .monthgrid button:hover{background:var(--red-100);color:var(--red-700);}\r\n.iagcal .monthgrid button.on{background:var(--red);color:#fff;}\r\n.iagcal .layout{display:flex;gap:clamp(24px,3vw,40px);flex-wrap:wrap;align-items:flex-start;padding-bottom:clamp(40px,5vw,72px);}\r\n.iagcal main{flex:1 1 580px;min-width:300px;}\r\n.iagcal aside{flex:0 1 322px;min-width:262px;}\r\n.iagcal .mhead{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px;}\r\n.iagcal .mhead h2{font-size:clamp(22px,2.6vw,30px);margin:0;font-weight:800;letter-spacing:-.02em;}\r\n.iagcal .mhead .count{font-size:12px;color:var(--muted);font-weight:800;letter-spacing:.06em;text-transform:uppercase;}\r\n.iagcal .grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:2px solid var(--line);border-left:2px solid var(--line);}\r\n.iagcal .grid .dow{border-right:2px solid var(--line);border-bottom:2px solid var(--line);padding:7px 9px;font-weight:800;font-size:11px;letter-spacing:.1em;background:var(--ink);color:#fff;}\r\n.iagcal .cell{border-right:2px solid var(--line);border-bottom:2px solid var(--line);min-height:106px;padding:6px 8px;position:relative;transition:background .12s;background:var(--white);min-width:0;overflow:hidden;}\r\n.iagcal .cell.pad{background:var(--cream);}\r\n.iagcal .cell.has{cursor:pointer;}\r\n.iagcal .cell.has:hover{background:var(--red-100);}\r\n.iagcal .cell.today{background:var(--red-100);box-shadow:inset 0 0 0 3px var(--red);}\r\n.iagcal .cell .cnum{font-weight:800;font-size:13px;}\r\n.iagcal .cell.today .cnum{color:var(--red);}\r\n.iagcal .cell .ctop{display:flex;justify-content:space-between;align-items:center;margin-bottom:3px;}\r\n.iagcal .cell .cc{font-size:10px;color:var(--muted);font-weight:800;}\r\n.iagcal .cell .more{display:block;font-size:10px;color:var(--red);margin-top:3px;font-weight:700;}\r\n.iagcal .pill{display:block;font-size:11px;line-height:1.25;padding:2px 6px;margin-top:3px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-left:3px solid var(--hair);background:var(--cream);color:var(--ink);}\r\n.iagcal .pill.range{border-left-style:dotted;}\r\n.iagcal .pill.red{border-left-color:var(--red);background:var(--red-100);color:var(--red-700);font-weight:700;}\r\n.iagcal .pill.blue{border-left-color:var(--blue);background:var(--blue-100);color:var(--blue-700);font-weight:700;}\r\n.iagcal .agenda{border-top:2px solid var(--line);}\r\n.iagcal .arow{display:flex;gap:16px;border-bottom:2px solid var(--line);padding:16px 0;transition:padding-left .2s ease;}\r\n.iagcal .arow:hover{padding-left:14px;}\r\n.iagcal .arow.today{background:var(--red-100);margin:0 -8px;padding-left:8px;padding-right:8px;}\r\n.iagcal .arow .adate{flex:0 0 78px;}\r\n.iagcal .arow .adn{font-weight:800;font-size:32px;line-height:1;letter-spacing:-.02em;}\r\n.iagcal .arow .adow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:4px;font-weight:700;}\r\n.iagcal .arow .atoday{font-size:10px;font-weight:800;color:var(--red);letter-spacing:.12em;margin-top:6px;}\r\n.iagcal .arow .arange{font-size:10px;color:var(--muted);margin-top:6px;line-height:1.3;font-weight:600;}\r\n.iagcal .arow .aitems{flex:1;min-width:0;}\r\n.iagcal .aitem{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;}\r\n.iagcal .aitem:last-child{margin-bottom:0;}\r\n.iagcal .aitem span.txt{font-size:14px;line-height:1.45;font-weight:500;}\r\n.iagcal .tag{display:inline-block;font-weight:800;font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:3px 7px;line-height:1.35;white-space:nowrap;flex:0 0 auto;}\r\n.iagcal .tag.red{background:var(--red);color:#fff;}\r\n.iagcal .tag.blue{background:var(--blue);color:#fff;}\r\n.iagcal .tag.ink{background:transparent;color:var(--ink);border:1.5px solid var(--ink);}\r\n.iagcal .tag.neutral{background:transparent;color:var(--muted);border:1.5px solid var(--hair);}\r\n.iagcal .tag.fill{background:var(--cream);color:var(--ink);border:1.5px solid var(--hair);}\r\n.iagcal .tag.muted{background:transparent;color:var(--muted);border:1.5px dashed var(--hair);}\r\n.iagcal .empty{border:2px solid var(--hair);padding:40px 20px;text-align:center;color:var(--muted);font-size:14px;font-weight:500;}\r\n.iagcal .box{border:2px solid var(--line);padding:18px 20px;}\r\n.iagcal .box+.box{margin-top:22px;}\r\n.iagcal .box .bk{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:var(--red);margin-bottom:3px;}\r\n.iagcal .box .bsub{font-size:11px;color:var(--muted);margin-bottom:8px;font-weight:600;}\r\n.iagcal .up{cursor:pointer;border-top:1px solid var(--hair);padding:11px 8px;margin:0 -8px;transition:background .12s;}\r\n.iagcal .up:hover{background:var(--cream);}\r\n.iagcal .up .uhead{display:flex;justify-content:space-between;gap:8px;align-items:center;}\r\n.iagcal .up .udate{font-weight:800;font-size:12px;letter-spacing:.02em;}\r\n.iagcal .up .udot{width:8px;height:8px;flex:0 0 auto;display:inline-block;background:var(--muted);}\r\n.iagcal .up .udot.red{background:var(--red);}\r\n.iagcal .up .udot.blue{background:var(--blue);}\r\n.iagcal .up .utxt{font-size:12px;color:var(--ink);line-height:1.35;margin-top:4px;font-weight:500;}\r\n.iagcal .legrow{display:flex;gap:8px;align-items:center;margin-top:10px;}\r\n.iagcal .backdrop{position:fixed;inset:0;background:rgba(27,27,27,.55);display:flex;align-items:flex-start;justify-content:center;padding:44px 16px;z-index:99999;overflow:auto;}\r\n.iagcal .modal{background:var(--white);border:2px solid var(--line);max-width:580px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.3);}\r\n.iagcal .modal .mh{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid var(--line);padding:20px 24px;}\r\n.iagcal .modal .mdow{display:block;font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);}\r\n.iagcal .modal h3{margin:4px 0 0;font-size:28px;font-weight:800;letter-spacing:-.02em;}\r\n.iagcal .modal .mx{border:2px solid var(--line);background:transparent;width:38px;height:38px;cursor:pointer;font-size:17px;color:var(--ink);flex:0 0 auto;}\r\n.iagcal .modal .mb{padding:8px 24px 20px;max-height:64vh;overflow:auto;}\r\n.iagcal .modal .mrow{display:flex;gap:12px;align-items:flex-start;padding:13px 0;border-bottom:1px solid var(--hair);}\r\n.iagcal .modal .mrow span.txt{font-size:14px;line-height:1.5;font-weight:500;}\r\n@media (max-width:820px){\r\n  .iagcal .stats{grid-template-columns:1fr;}\r\n  .iagcal .months{flex-wrap:wrap;}\r\n  .iagcal .months .all{width:100%;border-right:0;border-bottom:2px solid var(--line);}\r\n  .iagcal .monthgrid{flex:1 1 100%;grid-template-columns:repeat(6,1fr);}\r\n  .iagcal .layout{flex-direction:column;}\r\n  .iagcal main,.iagcal aside{flex:1 1 auto;min-width:0;width:100%;}\r\n}\r\n@media (max-width:560px){\r\n  .iagcal .toolbar-top{flex-direction:column;align-items:stretch;gap:10px;}\r\n  .iagcal .actions{width:100%;}\r\n  .iagcal .searchwrap{flex:1 1 auto;}\r\n  .iagcal .search{min-width:0;width:100%;}\r\n  .iagcal .monthgrid{grid-template-columns:repeat(4,1fr);}\r\n  .iagcal .cell{min-height:66px;padding:4px;}\r\n}\r\n<\/style>\r\n<div id=\"iagcal-app\"><\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\n  var ROOT = document.getElementById('iagcal-root');\r\n  var APP = document.getElementById('iagcal-app');\r\n  if(!ROOT||!APP) return;\r\n\r\n  var MONTHS=['Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'];\r\n  var MSHORT=['Ene','Feb','Mar','Abr','May','Jun','Jul','Ago','Sep','Oct','Nov','Dic'];\r\n  var DOW=['Domingo','Lunes','Martes','Mi\u00e9rcoles','Jueves','Viernes','S\u00e1bado'];\r\n  var DSHORT=['DOM','LUN','MAR','MI\u00c9','JUE','VIE','S\u00c1B'];\r\n  var CATS={\r\n    asueto:{label:'Asueto \/ Vacaciones',hi:true,color:'red'},\r\n    reunionPadres:{label:'Reuni\u00f3n de padres',hi:true,color:'blue'},\r\n    conferencia:{label:'Conferencia',hi:false,color:'ink'},\r\n    celebracion:{label:'Celebraci\u00f3n',hi:false,color:'neutral'},\r\n    evaluacion:{label:'Evaluaci\u00f3n',hi:false,color:'fill'},\r\n    academico:{label:'Acad\u00e9mico',hi:false,color:'muted'}\r\n  };\r\n  var REV='2026 \u00b7 versi\u00f3n actualizada';\r\n\r\n  var EVENTS=[\r\n    {d:\"2026-08-24\",items:[\"Inicia marcaje de citaciones para la SEGUNDA REUNI\u00d3N CONSULTA.\"]},\r\n    {start:\"2026-08-24\",end:\"2026-09-11\",items:[\"VAB \u2014 Preparaci\u00f3n de Maturas Orales: alumnos de VAB asisten obligatoriamente.\"]},\r\n    {start:\"2026-08-24\",end:\"2026-09-11\",items:[\"Evaluaci\u00f3n para ingreso a Kinder 2, Prepa y Primero Primaria (sujeto a cupo).\"]},\r\n    {d:\"2026-08-25\",items:[\"Capacitaci\u00f3n Sprachdiplom A1 \/ Schriftlich (6:30 - 10:30 GT).\",\"Capacitaci\u00f3n Sprachdiplom A1 \/ M\u00fcndlich (6:30 - 10:30 GT).\"]},\r\n    {d:\"2026-08-26\",items:[\"09:50 a 11:45: Kindergarten 2 ensaya festival de canciones (M-7).\",\"Finaliza marcaje de citaciones para la SEGUNDA REUNI\u00d3N CONSULTA.\"]},\r\n    {d:\"2026-08-27\",items:[\"08:00 a 09:15: Kindergarten 2 presenta festival de canciones a padres de familia (M-7).\",\"09:50 a 11:45: Kindergarten 1 ensaya festival de canciones (M-7).\",\"08:00 a 09:15: Kindergarten 1 presenta festival de canciones a padres de familia (M-7).\",\"08:00: Entrega de resultados de Maturas escritas a Direcci\u00f3n General (listados identificados y firmados).\"]},\r\n    {d:\"2026-08-28\",items:[\"13:00: VAB reuni\u00f3n evaluativa de Maturas escritas (S\/A).\",\"16:00: VAB informaci\u00f3n de resultados de Maturas escritas a cargo de los Encargados de Grado.\",\"Alumni Tag: exalumnos de diversas promociones del IAG (17:30 - 23:00).\",\"Profesores encargados ENV\u00cdAN CITACIONES para la SEGUNDA REUNI\u00d3N CONSULTA con padres de familia de Primaria y Secundaria.\"]},\r\n    {d:\"2026-08-31\",items:[\"Publicaci\u00f3n de notas a padres en FACTS.\",\"Marcan plan de mejoramiento.\"]},\r\n    {d:\"2026-09-01\",items:[\"Capacitaci\u00f3n Sprachdiplom B1 \/ Schriftlich (6:30 - 10:30 GT).\",\"07:30 a 12:40: Festival de coros Montessori (Primaria 1\u00b0-3\u00b0).\",\"12:40: Salida general de alumnos. No hay clases ni actividades por la tarde.\",\"17:00 a 20:00: SEGUNDA REUNI\u00d3N CONSULTA de Primaria y Secundaria.\"]},\r\n    {d:\"2026-09-02\",items:[\"VAB: fecha l\u00edmite para la entrega de solicitud escrita para Examen de Compensaci\u00f3n por nota negativa en Matura escrita a Direcci\u00f3n T\u00e9cnica.\",\"Capacitaci\u00f3n Sprachdiplom B1 \/ M\u00fcndlich (6:30 - 10:30 GT).\"]},\r\n    {d:\"2026-09-07\",items:[\"Env\u00edo de plan de mejoramiento.\"]},\r\n    {d:\"2026-09-08\",items:[\"VAB (WEJ): Sprachdiplom (M\u00fcndlich).\"]},\r\n    {d:\"2026-09-09\",items:[\"VAB (WEJ): Sprachdiplom (M\u00fcndlich).\",\"Actos c\u00edvicos por el D\u00eda Nacional de Guatemala \u2014 Primaria (4\u00b0 per\u00edodo): 09:00 a 10:45 h 1ABCD \u00b7 2ABCD \u00b7 3ABCD \/ 10:55 a 12:40 h 4ABC \u00b7 5ABC \u00b7 6ABC (M-7).\",\"Actividad de IVAB con primaria alta (4\u00b0-6\u00b0 primaria).\",\"VAB: Evaluaciones orales de Compensaci\u00f3n por nota negativa en Matura escrita (DT y maestros de la materia).\"]},\r\n    {d:\"2026-09-10\",items:[\"Actos c\u00edvicos por el D\u00eda Nacional de Guatemala \u2014 Secundaria (4\u00b0 per\u00edodo): 09:55 a 12:40 h IAB \u00b7 IIAB \u00b7 IIIAB \u00b7 IVAB (M-7).\",\"Actividad de IVAB con secundaria.\",\"VAB: Publicaci\u00f3n de horarios de Maturas Orales.\"]},\r\n    {d:\"2026-09-11\",items:[\"Actos c\u00edvicos por el D\u00eda Nacional de Guatemala \u2014 Preprimaria: Punto C\u00edvico seg\u00fan plan (Gimnasio Preprimaria).\"]},\r\n    {d:\"2026-09-14\",items:[\"PUENTE.\"]},\r\n    {d:\"2026-09-15\",items:[\"ASUETO \u2014 D\u00eda Nacional de Guatemala.\"]},\r\n    {start:\"2026-09-16\",end:\"2026-09-23\",items:[\"VAB: Maturas orales (DG \u00b7 DT \u00b7 Maestros).\"]},\r\n    {d:\"2026-09-16\",items:[\"Maturas Orales \u2014 d\u00eda 1.\"]},\r\n    {d:\"2026-09-17\",items:[\"Maturas Orales \u2014 d\u00eda 2.\"]},\r\n    {d:\"2026-09-18\",items:[\"Maturas Orales \u2014 d\u00eda 3.\"]},\r\n    {d:\"2026-09-21\",items:[\"Maturas Orales \u2014 d\u00eda 4.\"]},\r\n    {d:\"2026-09-22\",items:[\"Maturas Orales \u2014 d\u00eda 5.\"]},\r\n    {d:\"2026-09-23\",items:[\"Maturas Orales \u2014 d\u00eda 6.\",\"Secretar\u00eda Docente imprime boletines de VAB.\"]},\r\n    {d:\"2026-09-24\",items:[\"10:45: Prep A\/B\/C demostraci\u00f3n de nataci\u00f3n (LOB - GAA).\",\"08:00: Conferencia para padres (FB).\"]},\r\n    {d:\"2026-09-25\",items:[\"07:00: Entrega de togas en la Secretar\u00eda Docente.\",\"08:00: Ensayo del acto de graduaci\u00f3n.\",\"09:00: Toma de fotograf\u00edas.\"]},\r\n    {d:\"2026-09-26\",items:[\"10:30: ACTO DE GRADUACI\u00d3N IAG. Asistencia obligatoria para docentes.\"]},\r\n    {d:\"2026-09-28\",items:[\"Obra de Teatro (estudiantes de 1\u00b0 a 6\u00b0 de la extracurricular de Teatro con POM\/BEJ). P\u00fablico: pap\u00e1s.\"]},\r\n    {d:\"2026-10-01\",items:[\"Preprimaria y Primaria: celebraciones del D\u00cdA DEL NI\u00d1O seg\u00fan programa.\",\"08:00: Conferencia de padres de primer ingreso.\",\"Obra de Teatro (estudiantes de 1\u00b0 a 3\u00b0 de la extracurricular de Teatro con POM\/MAM). P\u00fablico: 3\u00b0 per\u00edodo 1\u00b0 a 3\u00b0 y 5\u00b0 per\u00edodo \u2014 pap\u00e1s.\"]},\r\n    {d:\"2026-10-05\",items:[\"07:00 a 12:00: VAB segunda fecha de Maturas escritas.\"]},\r\n    {d:\"2026-10-06\",items:[\"13:00 a 16:00: 6ABC calificaci\u00f3n de pruebas escritas de Sprachdiplom (obligatorio para maestros de alem\u00e1n).\"]},\r\n    {d:\"2026-10-07\",items:[\"Reuni\u00f3n de maestras 1-3 con ROM para revisar el listado de alumnos con riesgo acad\u00e9mico.\"]},\r\n    {d:\"2026-10-09\",items:[\"Primaria \/ Secundaria: \u00faltimo d\u00eda autorizado para realizar pruebas escritas.\"]},\r\n    {d:\"2026-10-10\",items:[\"10:30: ACTO DE GRADUACI\u00d3N CVG.\"]},\r\n    {start:\"2026-10-12\",end:\"2026-10-15\",items:[\"Ensayos de velada musical y arreglo de escenario, seg\u00fan la planificaci\u00f3n y el programa.\"]},\r\n    {d:\"2026-10-12\",items:[\"VAB: segunda fecha de compensaciones (DG - DT).\",\"18:00: Laternenfest IAG (Preparatoria) (CT-1).\"]},\r\n    {d:\"2026-10-13\",items:[\"Ya no se autorizan d\u00edas libres para los maestros.\"]},\r\n    {d:\"2026-10-14\",items:[\"Prueba de nivel de MA \u2014 Prepa A 09:00 \u00b7 Prepa B 10:00 \u00b7 Prepa C 11:00.\",\"\u00daltimo d\u00eda de clases obligatorias por la tarde y actividades extracurriculares (por confirmar fecha).\",\"Fecha tope hasta las 10:00: maestros entregan notas finales y anotan conducta y presentaci\u00f3n de trabajos.\"]},\r\n    {d:\"2026-10-15\",items:[\"Secretar\u00eda Docente imprime totalizadores.\",\"19:00: Velada musical IAG (CT-1).\",\"Prueba de nivel AL \u2014 Prepa B 07:30 \u00b7 Prepa C 08:15 \u00b7 Prepa A 09:10.\",\"VAB: segunda fecha de Maturas Orales 13:30 a 17:00.\",\"VAB: segunda entrega de diplomas (sal\u00f3n M-7) 13:30.\"]},\r\n    {d:\"2026-10-16\",items:[\"Prueba de nivel LE \u2014 Prepa B 07:30 \u00b7 Prepa C 08:15 \u00b7 Prepa A 09:10.\"]},\r\n    {d:\"2026-10-19\",items:[\"PUENTE.\"]},\r\n    {d:\"2026-10-20\",items:[\"ASUETO \u2014 D\u00eda de la Revoluci\u00f3n de 1944.\"]},\r\n    {start:\"2026-10-21\",end:\"2026-10-23\",items:[\"Entrega de diplomas de Kinder 1 y 2.\",\"Impresi\u00f3n de papeler\u00eda interna y oficial.\",\"Elaboraci\u00f3n de horario-calendario de evaluaciones de recuperaci\u00f3n y cartas de conducta.\"]},\r\n    {start:\"2026-10-22\",end:\"2026-10-23\",items:[\"07:00 a 12:40: Sprachdiplom ORAL \u2014 3ABCD (audiovisuales y salones aleda\u00f1os).\",\"Sprachdiplom Escrito \u2014 3ABCD (1\u00b0 y 2\u00b0 en CT-1); 12:00 calificaci\u00f3n y almuerzo en CT-2.\"]},\r\n    {d:\"2026-10-21\",items:[\"10:45: Salida general de alumnos.\",\"SESIONES EVALUATIVAS IAG.\",\"10:50 a 11:45: revisi\u00f3n de notas en sala de profesores.\",\"11:45: 4ABC \u00b7 5ABC \u00b7 6ABC (S\/A) (ROM - SCT).\",\"13:30 (aproximado): 1ABCD \u00b7 2ABCD \u00b7 3ABCD (ROM - STC) (S\/A) y Secundaria (VB).\",\"Rectificaci\u00f3n de notas por Secretar\u00eda Docente; ingreso de conducta y presentaci\u00f3n de trabajos.\",\"10:45: Salida general de alumnos (evaluativas de CVG).\"]},\r\n    {d:\"2026-10-22\",items:[\"08:00: Conferencia para padres (FB).\",\"Direcci\u00f3n y maestros firman certificados y cuadros oficiales.\"]},\r\n    {d:\"2026-10-23\",items:[\"FECHA TOPE para la entrega de ex\u00e1menes de recuperaci\u00f3n en la Secretar\u00eda de la Direcci\u00f3n General.\"]},\r\n    {d:\"2026-10-26\",items:[\"CELEBRACI\u00d3N DEL D\u00cdA NACIONAL DE AUSTRIA.\",\"10:45: Salida general de alumnos.\",\"13:00: Actos oficiales por el D\u00eda Nacional de Austria y almuerzo del personal de la instituci\u00f3n.\"]},\r\n    {d:\"2026-10-27\",items:[\"\u00d6SD B1 - IAB: Sprachdiplom Escrito (WEJ, DRM, SCS).\"]},\r\n    {d:\"2026-10-28\",items:[\"\u00d6SD B1 - IAB: Sprachdiplom Oral (WEJ, DRM, SCS).\",\"09:00: Acto de cierre de 6ABC (CHE - GAL - LUG).\"]},\r\n    {d:\"2026-10-30\",items:[\"Preprimaria, Primaria y Secundaria: \u00daLTIMO D\u00cdA DE CLASES.\",\"Entrega de boletines.\",\"Maestros designados recogen en administraci\u00f3n boletines, anuarios y circulares para entregar a los alumnos.\",\"07:00: Puntos c\u00edvicos en Primaria y Secundaria (respectivos patios).\",\"08:45: Reuni\u00f3n general final de maestros en Sala de Profesores.\",\"09:00: Salida general de buses.\",\"Entrega de custodios, llaves, libros y otros.\",\"Firma de solvencias a maestros.\"]}\r\n  ];\r\n\r\n  function esc(s){return String(s).replace(\/&\/g,'&amp;').replace(\/<\/g,'&lt;').replace(\/>\/g,'&gt;').replace(\/\"\/g,'&quot;');}\r\n  function pad(n){return (n<10?'0':'')+n;}\r\n  function iso(dt){return dt.getFullYear()+'-'+pad(dt.getMonth()+1)+'-'+pad(dt.getDate());}\r\n  function parse(s){var p=s.split('-');return new Date(+p[0],+p[1]-1,+p[2]);}\r\n  function strip(dt){return new Date(dt.getFullYear(),dt.getMonth(),dt.getDate());}\r\n  function fmtDM(dt){return dt.getDate()+' '+MSHORT[dt.getMonth()].toLowerCase();}\r\n\r\n  function catOf(t){\r\n    var s=t.toLowerCase();\r\n    if(\/asueto|feriado|puente|descanso de|semana santa|d\u00eda del trabajo|d\u00eda del ej\u00e9rcito|virgen de la asunci\u00f3n|revoluci\u00f3n de 1944|vacaci|a\u00f1o nuevo\/.test(s))return 'asueto';\r\n    if(\/conferencia\/.test(s))return 'conferencia';\r\n    if(\/reuni\u00f3n consulta|reuni\u00f3n de consulta|consulta de profesor|consulta con padres|padres de familia|madres de grado|con madres|informativa para padres|reuni\u00f3n organizativa.*padres|coordinaci\u00f3n administrativa con madres|festival de canciones a padres|reuni\u00f3n con padres|desayuno.*madres|direcci\u00f3n primaria con madres|conferencia de padres|conferencia para padres\/.test(s))return 'reunionPadres';\r\n    if(\/carnaval|d\u00eda de la amistad|d\u00eda de la madre|d\u00eda del ni\u00f1o|festival|maifest|velada musical|laternenfest|ma\u00f1ana deportiva|gran baile|graduaci\u00f3n|graduacion|d\u00eda del piloto|festejo|celebra|d\u00eda nacional|acto de cierre|acto de graduaci\u00f3n|feria cient\u00edfica|caravana|actos c\u00edvicos|punto c\u00edvico|obra de teatro|alumni tag\/.test(s))return 'celebracion';\r\n    if(\/evaluaci|examen|ex\u00e1men|prueba|matura|boletines|totalizador|sesi\u00f3n evaluativa|sesiones evaluativas|\\bnotas\\b|sprachdiplom|nivel redacci\u00f3n|prueba de nivel|recuperaci\u00f3n|eada|preselecci\u00f3n|compensaci\u00f3n\/.test(s))return 'evaluacion';\r\n    return 'academico';\r\n  }\r\n  \/\/ conferencia should win only if not a parents conference; fix precedence:\r\n  function classify(t){\r\n    var s=t.toLowerCase();var cat;\r\n    if(\/conferencia (para|de) padres|conferencia de padres\/.test(s))cat='reunionPadres';\r\n    else cat=catOf(t);\r\n    return {text:t,cat:cat,hi:CATS[cat].hi};\r\n  }\r\n\r\n  \/\/ build indexes\r\n  var singlesMap={},singlesArr=[],ranges=[];\r\n  EVENTS.forEach(function(ev){\r\n    var items=ev.items.map(classify);\r\n    if(ev.d){\r\n      if(!singlesMap[ev.d])singlesMap[ev.d]={iso:ev.d,obj:parse(ev.d),items:[]};\r\n      items.forEach(function(it){singlesMap[ev.d].items.push(it);});\r\n    }else{\r\n      var so=parse(ev.start),eo=parse(ev.end);\r\n      ranges.push({start:ev.start,end:ev.end,so:so,eo:eo,items:items,hi:items.some(function(i){return i.hi;}),cat:items[0].cat});\r\n    }\r\n  });\r\n  Object.keys(singlesMap).forEach(function(k){singlesArr.push(singlesMap[k]);});\r\n  singlesArr.sort(function(a,b){return a.obj-b.obj;});\r\n\r\n  \/\/ today\r\n  var now=new Date();\r\n  var TODAY=(now.getFullYear()===2026)?now:new Date(2026,7,24);\r\n  var TODAY_ISO=iso(TODAY);\r\n  var TSTART=strip(TODAY);\r\n\r\n  var state={view:'agenda',month:(now.getFullYear()===2026?now.getMonth():7),query:'',selectedIso:null,keepFocus:false};\r\n\r\n  function q(){return state.query.trim().toLowerCase();}\r\n  function itemPass(it){var v=q();return !v||it.text.toLowerCase().indexOf(v)>=0;}\r\n  function inRange(dObj,r){return dObj>=r.so&&dObj<=r.eo;}\r\n  function trunc(t,n){t=t.replace(\/^\\d{1,2}:\\d{2}(\\s*[-\u2013]\\s*\\d{1,2}:\\d{2})?:?\\s*\/,'');return t.length>n?t.slice(0,n-1)+'\u2026':t;}\r\n\r\n  function dayItems(isoStr){\r\n    var out=[],dObj=parse(isoStr),s=singlesMap[isoStr];\r\n    if(s)s.items.forEach(function(it){if(itemPass(it))out.push({text:it.text,cat:it.cat,hi:it.hi,range:false});});\r\n    ranges.forEach(function(r){\r\n      if(inRange(dObj,r)&&r.items.some(itemPass))r.items.forEach(function(it){if(itemPass(it))out.push({text:it.text,cat:it.cat,hi:it.hi,range:true,rangeLabel:'Del '+fmtDM(r.so)+' al '+fmtDM(r.eo)});});\r\n    });\r\n    return out;\r\n  }\r\n  function tagClass(cat){return 'tag '+CATS[cat].color;}\r\n  function pillClass(cat,range){var c=CATS[cat].color;var cls='pill'+(range?' range':'');if(CATS[cat].hi&&c==='red')cls+=' red';else if(CATS[cat].hi&&c==='blue')cls+=' blue';return cls;}\r\n  function dotClass(cat){var c=CATS[cat].color;return 'udot'+(CATS[cat].hi&&c==='red'?' red':CATS[cat].hi&&c==='blue'?' blue':'');}\r\n\r\n  var ICON_CAL='<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\"><\/rect><path d=\"M3 10h18M8 2v4M16 2v4\"><\/path><\/svg>';\r\n  var ICON_CLOCK='<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"9\"><\/circle><path d=\"M12 7v5l3 2\"><\/path><\/svg>';\r\n  var ICON_STAR='<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 2l2.5 6.5L21 9l-5 4.5L17.5 20 12 16.5 6.5 20 8 13.5 3 9l6.5-.5z\"><\/path><\/svg>';\r\n  var ICON_SEARCH='<svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"11\" cy=\"11\" r=\"7\"><\/circle><path d=\"M21 21l-4-4\"><\/path><\/svg>';\r\n  var ICON_HOY_CLOCK='<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 8v4l3 2\"><\/path><circle cx=\"12\" cy=\"12\" r=\"9\"><\/circle><\/svg>';\r\n\r\n  function render(){\r\n    var isAll=state.month==='all';\r\n    var searching=q().length>0;\r\n    var scopeAll=isAll||searching;\r\n    var m=isAll?TODAY.getMonth():state.month;\r\n    var first=new Date(2026,m,1);\r\n    var offset=(first.getDay()+6)%7;\r\n    var dim=new Date(2026,m+1,0).getDate();\r\n\r\n    \/\/ upcoming\r\n    var up=[];\r\n    singlesArr.forEach(function(s){\r\n      if(s.obj<TSTART)return;var its=s.items.filter(itemPass);if(!its.length)return;\r\n      up.push({sort:s.obj.getTime(),iso:s.iso,month:s.obj.getMonth(),dateLabel:DSHORT[s.obj.getDay()]+' '+fmtDM(s.obj),cat:its[0].cat,text:trunc(its[0].text,52),extra:its.length-1});\r\n    });\r\n    ranges.forEach(function(r){\r\n      if(r.eo<TSTART)return;var its=r.items.filter(itemPass);if(!its.length)return;\r\n      var ss=r.so<TODAY?TODAY.getTime():r.so.getTime();\r\n      up.push({sort:ss-1,iso:r.start,month:r.so.getMonth(),dateLabel:fmtDM(r.so)+' \u2013 '+fmtDM(r.eo),cat:its[0].cat,text:trunc(its[0].text,52),extra:its.length-1});\r\n    });\r\n    up.sort(function(a,b){return a.sort-b.sort;});\r\n\r\n    \/\/ next asueto\r\n    var na=null;\r\n    function shortA(t){return t.replace(\/\\s*[\u2014-]\\s*asueto\\.?\\s*$\/i,'').replace(\/^feriado por (el|la)?\\s*\/i,'').replace(\/^asueto\\s*[\u2014-]?\\s*\/i,'').replace(\/\\.$\/,'').trim();}\r\n    singlesArr.forEach(function(s){var a=null;s.items.forEach(function(i){if(i.cat==='asueto'&&!a)a=i;});if(a&&s.obj>=TSTART&&(!na||s.obj<na.obj))na={obj:s.obj,name:trunc(shortA(a.text),34)};});\r\n    var naWhen='';\r\n    if(na){var dd=Math.round((na.obj-TSTART)\/86400000);naWhen=dd<=0?'Hoy':dd===1?'Ma\u00f1ana':('En '+dd+' d\u00edas \u00b7 '+fmtDM(na.obj));}\r\n\r\n    \/\/ month item count\r\n    var monthCount=0;\r\n    for(var d=1;d<=dim;d++){monthCount+=dayItems(iso(new Date(2026,m,d))).length;}\r\n\r\n    \/\/ agenda rows\r\n    var rows=[];\r\n    singlesArr.forEach(function(s){\r\n      if(!scopeAll&&(s.obj.getMonth()!==m||s.obj.getFullYear()!==2026))return;\r\n      if(s.obj.getFullYear()!==2026)return;\r\n      var its=s.items.filter(itemPass);if(!its.length)return;\r\n      rows.push({sort:s.obj.getTime(),isRange:false,isToday:s.iso===TODAY_ISO,dayNum:s.obj.getDate(),dow:DSHORT[s.obj.getDay()]+(scopeAll?' \u00b7 '+MSHORT[s.obj.getMonth()].toUpperCase():''),items:its});\r\n    });\r\n    ranges.forEach(function(r){\r\n      var overlaps=scopeAll||r.so.getMonth()===m||r.eo.getMonth()===m||(r.so<first&&r.eo>new Date(2026,m,dim));\r\n      if(!overlaps||r.so.getFullYear()>2026)return;\r\n      var its=r.items.filter(itemPass);if(!its.length)return;\r\n      rows.push({sort:r.so.getTime()-1,isRange:true,isToday:false,dayNum:r.so.getDate(),dow:DSHORT[r.so.getDay()]+(scopeAll?' \u00b7 '+MSHORT[r.so.getMonth()].toUpperCase():''),rangeLabel:'al '+fmtDM(r.eo),items:its});\r\n    });\r\n    rows.sort(function(a,b){return a.sort-b.sort;});\r\n\r\n    var totalShown=scopeAll?rows.length:monthCount;\r\n\r\n    var h='';\r\n    \/\/ topbar\r\n    h+='<div class=\"wrap\"><div class=\"topbar\"><div class=\"brand\">Instituto Austriaco Guatemalteco<\/div><div class=\"today-lbl\">'+DSHORT[TODAY.getDay()]+' '+TODAY.getDate()+' '+MSHORT[TODAY.getMonth()].toUpperCase()+' 2026<\/div><\/div>';\r\n    \/\/ hero\r\n    h+='<header class=\"hero\"><span class=\"kicker\"><i><\/i>Ciclo escolar \u00b7 Calendario<\/span><h1>Calendario General de Actividades 2026<\/h1><p class=\"sub\">Todas las actividades del ciclo para las familias \u2014 reuniones, conferencias, celebraciones y <b>asuetos<\/b>. \u00daltima revisi\u00f3n '+esc(REV)+'; fechas sujetas a cambios.<\/p><\/header>';\r\n    \/\/ stats\r\n    h+='<div class=\"stats\">';\r\n    h+='<div class=\"stat\"><span class=\"bar\"><\/span><div class=\"lbl\">'+ICON_CAL+' '+(isAll?'Todo el a\u00f1o':MONTHS[m])+' \u00b7 Actividades<\/div><div class=\"big\">'+totalShown+'<\/div><\/div>';\r\n    h+='<div class=\"stat blue\"><span class=\"bar\"><\/span><div class=\"lbl\">'+ICON_CLOCK+' Pr\u00f3ximo evento<\/div><div class=\"val\">'+(up[0]?esc(up[0].dateLabel):'\u2014')+'<\/div><div class=\"note\">'+(up[0]?esc(trunc(up[0].text,44)):'Sin eventos pr\u00f3ximos')+'<\/div><\/div>';\r\n    h+='<div class=\"stat red\"><span class=\"bar\"><\/span><div class=\"lbl\">'+ICON_STAR+' Pr\u00f3ximo asueto<\/div><div class=\"val\">'+(na?esc(na.name):'Sin asuetos pr\u00f3ximos')+'<\/div><div class=\"note\">'+esc(naWhen)+'<\/div><\/div>';\r\n    h+='<\/div>';\r\n    \/\/ toolbar\r\n    h+='<div class=\"toolbar\"><div class=\"toolbar-top\">';\r\n    h+='<div class=\"seg\"><button data-act=\"view\" data-v=\"agenda\" class=\"'+(state.view==='agenda'&&!isAll?'on':(isAll?'':(state.view==='agenda'?'on':'')))+'\">Agenda<\/button><button data-act=\"view\" data-v=\"cal\" class=\"'+((state.view==='cal'&&!isAll)?'on':'')+'\">Calendario<\/button><\/div>';\r\n    h+='<div class=\"actions\"><button class=\"today-btn\" data-act=\"today\">'+ICON_HOY_CLOCK+'Hoy<\/button>';\r\n    h+='<div class=\"searchwrap\">'+ICON_SEARCH+'<input class=\"search\" id=\"iagcal-search\" type=\"text\" placeholder=\"Buscar actividad\u2026\" value=\"'+esc(state.query)+'\">'+(state.query?'<button class=\"search-clear\" data-act=\"clear\">\u2715<\/button>':'')+'<\/div><\/div>';\r\n    h+='<\/div>';\r\n    \/\/ months\r\n    h+='<div class=\"months\"><button class=\"all'+(isAll?' on':'')+'\" data-act=\"all\">Todos<\/button><div class=\"monthgrid\">';\r\n    for(var mi=0;mi<12;mi++){h+='<button data-act=\"month\" data-m=\"'+mi+'\" class=\"'+(!isAll&&mi===state.month?'on':'')+'\">'+MSHORT[mi]+'<\/button>';}\r\n    h+='<\/div><\/div><\/div>';\r\n    \/\/ layout\r\n    h+='<div class=\"layout\"><main>';\r\n    h+='<div class=\"mhead\"><h2>'+(searching?'Resultados de b\u00fasqueda':(isAll?'Todo el a\u00f1o 2026':MONTHS[m]+' 2026'))+'<\/h2><div class=\"count\">'+totalShown+(searching?(' resultado'+(rows.length===1?'':'s')):(' actividad'+(totalShown===1?'':'es')))+'<\/div><\/div>';\r\n\r\n    var showCal=!scopeAll&&state.view==='cal';\r\n    if(showCal){\r\n      h+='<div class=\"grid\">';\r\n      ['LU','MA','MI','JU','VI','SA','DO'].forEach(function(w){h+='<div class=\"dow\">'+w+'<\/div>';});\r\n      for(var b=0;b<offset;b++)h+='<div class=\"cell pad\"><\/div>';\r\n      for(var dd2=1;dd2<=dim;dd2++){\r\n        var isoStr=iso(new Date(2026,m,dd2));\r\n        var items=dayItems(isoStr);\r\n        var isT=isoStr===TODAY_ISO;\r\n        var cls='cell'+(items.length?' has':'')+(isT?' today':'');\r\n        h+='<div class=\"'+cls+'\"'+(items.length?' data-act=\"day\" data-iso=\"'+isoStr+'\"':'')+'>';\r\n        h+='<div class=\"ctop\"><span class=\"cnum\">'+dd2+'<\/span>'+(items.length?'<span class=\"cc\">'+items.length+'<\/span>':'')+'<\/div>';\r\n        items.slice(0,3).forEach(function(it){h+='<span class=\"'+pillClass(it.cat,it.range)+'\" title=\"'+esc(it.text)+'\">'+(it.range?'\u25b8 ':'')+esc(trunc(it.text,24))+'<\/span>';});\r\n        if(items.length>3)h+='<span class=\"more\">+'+(items.length-3)+' m\u00e1s<\/span>';\r\n        h+='<\/div>';\r\n      }\r\n      var totalCells=offset+dim;while(totalCells%7!==0){h+='<div class=\"cell pad\"><\/div>';totalCells++;}\r\n      h+='<\/div>';\r\n    }else{\r\n      if(!rows.length)h+='<div class=\"empty\">No hay actividades que coincidan'+(searching?' con la b\u00fasqueda':'')+'.<\/div>';\r\n      else{\r\n        h+='<div class=\"agenda\">';\r\n        rows.forEach(function(r){\r\n          h+='<div class=\"arow'+(r.isToday?' today':'')+'\"><div class=\"adate\"><div class=\"adn\">'+r.dayNum+'<\/div><div class=\"adow\">'+r.dow+'<\/div>'+(r.isToday?'<div class=\"atoday\">HOY<\/div>':'')+(r.isRange?'<div class=\"arange\">'+esc(r.rangeLabel)+'<\/div>':'')+'<\/div><div class=\"aitems\">';\r\n          r.items.forEach(function(it){h+='<div class=\"aitem\"><span class=\"'+tagClass(it.cat)+'\">'+esc(CATS[it.cat].label)+'<\/span><span class=\"txt\">'+esc(it.text)+'<\/span><\/div>';});\r\n          h+='<\/div><\/div>';\r\n        });\r\n        h+='<\/div>';\r\n      }\r\n    }\r\n    h+='<\/main>';\r\n    \/\/ aside\r\n    h+='<aside><div class=\"box\"><span class=\"bk\">Pr\u00f3ximos eventos<\/span><div class=\"bsub\">Desde hoy, '+fmtDM(TODAY)+'<\/div>';\r\n    if(!up.length)h+='<div class=\"utxt\" style=\"padding:8px 0;\">No hay m\u00e1s actividades programadas.<\/div>';\r\n    up.slice(0,8).forEach(function(u){\r\n      h+='<div class=\"up\" data-act=\"up\" data-iso=\"'+u.iso+'\" data-m=\"'+u.month+'\"><div class=\"uhead\"><span class=\"udate\">'+esc(u.dateLabel)+'<\/span><span class=\"'+dotClass(u.cat)+'\"><\/span><\/div><div class=\"utxt\">'+esc(u.text)+(u.extra>0?'  (+'+u.extra+')':'')+'<\/div><\/div>';\r\n    });\r\n    h+='<\/div>';\r\n    h+='<div class=\"box\"><span class=\"bk\">Leyenda<\/span>';\r\n    Object.keys(CATS).forEach(function(k){h+='<div class=\"legrow\"><span class=\"'+tagClass(k)+'\">'+esc(CATS[k].label)+'<\/span><\/div>';});\r\n    h+='<\/div><\/aside>';\r\n    h+='<\/div><\/div>';\r\n\r\n    \/\/ modal\r\n    if(state.selectedIso){\r\n      var dObj=parse(state.selectedIso);\r\n      var mi2=dayItems(state.selectedIso);\r\n      h+='<div class=\"backdrop\" data-act=\"backdrop\"><div class=\"modal\"><div class=\"mh\"><div><span class=\"mdow\">'+DOW[dObj.getDay()]+'<\/span><h3>'+dObj.getDate()+' de '+MONTHS[dObj.getMonth()].toLowerCase()+' de 2026<\/h3><\/div><button class=\"mx\" data-act=\"close\">\u2715<\/button><\/div><div class=\"mb\">';\r\n      mi2.forEach(function(it){h+='<div class=\"mrow\"><span class=\"'+tagClass(it.cat)+'\">'+esc(CATS[it.cat].label)+'<\/span><span class=\"txt\">'+esc(it.text)+(it.range?'  \u00b7 '+esc(it.rangeLabel):'')+'<\/span><\/div>';});\r\n      h+='<\/div><\/div><\/div>';\r\n    }\r\n\r\n    APP.innerHTML=h;\r\n\r\n    if(state.keepFocus){\r\n      var inp=document.getElementById('iagcal-search');\r\n      if(inp){inp.focus();var v=inp.value;inp.value='';inp.value=v;}\r\n      state.keepFocus=false;\r\n    }\r\n  }\r\n\r\n  APP.addEventListener('click',function(e){\r\n    var t=e.target.closest('[data-act]');if(!t)return;\r\n    var act=t.getAttribute('data-act');\r\n    if(act==='view'){var v=t.getAttribute('data-v');var p={view:v};if(v==='cal'&&state.month==='all')state.month=TODAY.getMonth();state.view=v;render();}\r\n    else if(act==='today'){state.month=TODAY.getMonth();state.selectedIso=TODAY_ISO;render();}\r\n    else if(act==='all'){state.month='all';state.view='agenda';render();}\r\n    else if(act==='month'){state.month=+t.getAttribute('data-m');render();}\r\n    else if(act==='day'){state.selectedIso=t.getAttribute('data-iso');render();}\r\n    else if(act==='up'){state.month=+t.getAttribute('data-m');state.selectedIso=t.getAttribute('data-iso');render();}\r\n    else if(act==='clear'){state.query='';render();}\r\n    else if(act==='close'||act==='backdrop'){if(act==='backdrop'&&e.target.closest('.modal'))return;state.selectedIso=null;render();}\r\n  });\r\n  APP.addEventListener('input',function(e){\r\n    if(e.target&&e.target.id==='iagcal-search'){state.query=e.target.value;state.keepFocus=true;render();}\r\n  });\r\n  document.addEventListener('keydown',function(e){if(e.key==='Escape'&&state.selectedIso){state.selectedIso=null;render();}});\r\n\r\n  render();\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ngg_post_thumbnail":0,"footnotes":""},"class_list":["post-3317","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/austriaco.edu.gt\/de\/wp-json\/wp\/v2\/pages\/3317","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/austriaco.edu.gt\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/austriaco.edu.gt\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/austriaco.edu.gt\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/austriaco.edu.gt\/de\/wp-json\/wp\/v2\/comments?post=3317"}],"version-history":[{"count":6,"href":"https:\/\/austriaco.edu.gt\/de\/wp-json\/wp\/v2\/pages\/3317\/revisions"}],"predecessor-version":[{"id":3324,"href":"https:\/\/austriaco.edu.gt\/de\/wp-json\/wp\/v2\/pages\/3317\/revisions\/3324"}],"wp:attachment":[{"href":"https:\/\/austriaco.edu.gt\/de\/wp-json\/wp\/v2\/media?parent=3317"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}