{"id":3714,"date":"2026-08-26T03:24:01","date_gmt":"2026-08-26T03:24:01","guid":{"rendered":"https:\/\/akkaonline.org\/2026\/?page_id=3714"},"modified":"2026-08-27T21:55:30","modified_gmt":"2026-08-27T21:55:30","slug":"program-schedule","status":"publish","type":"page","link":"https:\/\/akkaonline.org\/2026\/program-schedule\/","title":{"rendered":"Program Schedule"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3714\" class=\"elementor elementor-3714\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2ef3442 e-flex e-con-boxed e-con e-parent\" data-id=\"2ef3442\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-76c5a2e elementor-widget elementor-widget-html\" data-id=\"76c5a2e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div id=\"akka-program-schedule\" class=\"akka-schedule\" role=\"region\" aria-label=\"AKKA 2026 program schedule\">\n  <section class=\"akka-schedule__hero\" aria-labelledby=\"akka-schedule-title\">\n    <div class=\"akka-schedule__glow akka-schedule__glow--one\"><\/div>\n    <div class=\"akka-schedule__glow akka-schedule__glow--two\"><\/div>\n\n    <div class=\"akka-schedule__hero-inner\">\n      <div class=\"akka-schedule__hero-grid\">\n        <h2 id=\"akka-schedule-title\" class=\"akka-schedule__title\">Program Schedule<\/h2>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <section class=\"akka-schedule__content\">\n    <div class=\"akka-schedule__shell\">\n      <div class=\"akka-schedule__alert-ribbon\" role=\"note\">\n        <span class=\"akka-schedule__alert-icon\" aria-hidden=\"true\">!<\/span>\n        <span class=\"akka-schedule__alert-copy\">\n          <strong>Schedule notice:<\/strong>\n          <span>Details are subject to change. Please check back for the latest updates.<\/span>\n        <\/span>\n        <span id=\"akka-schedule-source\" class=\"akka-schedule__alert-updated\">Last updated \u2013 loading\u2026<\/span>\n      <\/div>\n\n      <div class=\"akka-schedule__controls\">\n        <div class=\"akka-schedule__control-row\">\n          <div id=\"akka-schedule-days\" class=\"akka-schedule__day-tabs\" role=\"tablist\" aria-label=\"Choose schedule day\"><\/div>\n\n          <label class=\"akka-schedule__search\">\n            <span class=\"akka-schedule__search-icon\" aria-hidden=\"true\">\u2315<\/span>\n            <span class=\"akka-schedule__sr-only\">Search programs or venues<\/span>\n            <input\n              id=\"akka-schedule-search\"\n              type=\"search\"\n              placeholder=\"Search programs or venues\"\n              autocomplete=\"off\"\n            \/>\n          <\/label>\n        <\/div>\n\n        <div class=\"akka-schedule__stage-promo-row\">\n          <div class=\"akka-schedule__filter-block akka-schedule__filter-block--stages\">\n            <div class=\"akka-schedule__filter-label\">Stages<\/div>\n            <div id=\"akka-schedule-stages\" class=\"akka-schedule__stage-tabs\" role=\"radiogroup\" aria-label=\"Filter by stage\"><\/div>\n          <\/div>\n\n          <a\n            class=\"akka-schedule__app-promo\"\n            href=\"https:\/\/featsnow.com\/\"\n            target=\"_blank\"\n            rel=\"noopener noreferrer\"\n            aria-label=\"Get the FeatsNow app for live updates, networking, and more\"\n          >\n            <img loading=\"lazy\"\n              class=\"akka-schedule__app-logo\"\n              src=\"https:\/\/akkaonline.org\/2026\/wp-content\/uploads\/2026\/08\/featsnow.png\"\n              width=\"50\"\n              height=\"50\"\n              alt=\"FeatsNow\"\n              loading=\"lazy\"\n              decoding=\"async\"\n            \/>\n            <span class=\"akka-schedule__app-copy\">\n              <span class=\"akka-schedule__app-brand\">FeatsNow<\/span>\n              <span class=\"akka-schedule__app-message\">Live Updates, Networking, and More\u2026<\/span>\n            <\/span>\n          <\/a>\n        <\/div>\n\n        <div class=\"akka-schedule__compact-filters\">\n          <label class=\"akka-schedule__select-control\">\n            <span class=\"akka-schedule__select-label\">Category<\/span>\n            <span class=\"akka-schedule__select-shell\">\n              <select id=\"akka-schedule-category-select\" aria-label=\"Filter by program category\">\n                <option value=\"all\">All Categories<\/option>\n              <\/select>\n            <\/span>\n          <\/label>\n\n          <label class=\"akka-schedule__select-control\">\n            <span class=\"akka-schedule__select-label\">Forums and Events<\/span>\n            <span class=\"akka-schedule__select-shell\">\n              <select id=\"akka-schedule-forum-select\" aria-label=\"Filter by forum or event\">\n                <option value=\"\">Browse Forums and Events<\/option>\n              <\/select>\n            <\/span>\n          <\/label>\n        <\/div>\n\n        <div class=\"akka-schedule__filter-status-row\">\n          <span id=\"akka-schedule-filter-status\" class=\"akka-schedule__filter-status\" aria-live=\"polite\">Friday schedule<\/span>\n          <button id=\"akka-schedule-reset\" class=\"akka-schedule__reset-filters\" type=\"button\" disabled=\"disabled\">Reset filters<\/button>\n        <\/div>\n      <\/div>\n\n      <div id=\"akka-schedule-notice\" class=\"akka-schedule__notice\" hidden=\"hidden\"><\/div>\n      <div id=\"akka-schedule-kitchen\" class=\"akka-schedule__kitchen\" hidden=\"hidden\"><\/div>\n\n      <div id=\"akka-schedule-loading\" class=\"akka-schedule__loading\" role=\"status\">\n        <span class=\"akka-schedule__spinner\" aria-hidden=\"true\"><\/span>\n        Loading program schedule\u2026\n      <\/div>\n\n      <div id=\"akka-schedule-agenda\" class=\"akka-schedule__agenda\" aria-live=\"polite\"><\/div>\n    <\/div>\n\n  <\/section>\n<\/div>\n\n<style type=\"text\/css\">\n@import url(\"https:\/\/fonts.googleapis.com\/css2?family=Noto+Sans+Kannada:wght@400;500;600;700;800&amp;family=Poppins:wght@400;500;600;700;800;900&amp;display=swap\");\n\n#akka-program-schedule {\n  --akka-red: #c81710;\n  --akka-red-light: #ff4a3f;\n  --akka-red-mid: #ed231b;\n  --akka-red-dark: #a80e09;\n  --akka-gold: #d9a436;\n  --akka-gold-light: #ffe892;\n  --akka-gold-mid: #eab53e;\n  --akka-gold-dark: #a96510;\n  --akka-cream: #fffaf0;\n  --akka-cream-deep: #f8e8c3;\n  --akka-text: #40251b;\n  --akka-muted: #806f65;\n\n  width: 100%;\n  margin: 0;\n  color: var(--akka-text);\n  background:\n    radial-gradient(circle at 50% 7%, rgba(255,255,255,0.98), rgba(255,246,224,0.88) 38%, rgba(242,213,155,0.64) 100%),\n    linear-gradient(135deg, #fffaf0 0%, #f8e8c3 50%, #fff8e9 100%);\n  font-family: \"Poppins\", \"Noto Sans Kannada\", Arial, sans-serif;\n  font-size: 16px;\n  line-height: 1.5;\n}\n\n#akka-program-schedule,\n#akka-program-schedule * {\n  box-sizing: border-box;\n}\n\n\/* Ensure JavaScript-controlled sections actually disappear in WordPress\/Elementor. *\/\n#akka-program-schedule [hidden] {\n  display: none !important;\n}\n\n#akka-program-schedule button,\n#akka-program-schedule input,\n#akka-program-schedule select {\n  font: inherit;\n}\n\n#akka-program-schedule button {\n  cursor: pointer;\n}\n\n#akka-program-schedule .akka-schedule__sr-only {\n  position: absolute !important;\n  width: 1px !important;\n  height: 1px !important;\n  padding: 0 !important;\n  margin: -1px !important;\n  overflow: hidden !important;\n  clip: rect(0,0,0,0) !important;\n  white-space: nowrap !important;\n  border: 0 !important;\n}\n\n#akka-program-schedule .akka-schedule__hero {\n  position: relative;\n  overflow: hidden;\n  width: 100%;\n  max-width: 1280px;\n  margin: 0 auto;\n  padding: 16px 20px 28px;\n  color: #8d160f;\n  background:\n    radial-gradient(circle at 50% 18%, rgba(255,255,255,0.96), rgba(255,246,224,0.83) 46%, rgba(242,213,155,0.76) 100%),\n    linear-gradient(135deg, #fffaf0 0%, #f8e8c3 50%, #fff8e9 100%);\n  border: 2px solid var(--akka-gold);\n  border-bottom: 2px solid var(--akka-gold);\n  border-radius: 14px 14px 0 0;\n}\n\n#akka-program-schedule .akka-schedule__hero::after {\n  content: \"\";\n  position: absolute;\n  left: -5%;\n  bottom: -17px;\n  width: 110%;\n  height: 30px;\n  background: linear-gradient(90deg, #c81710 0%, #ff2b22 25%, #b70d08 47%, #e9ae2c 62%, #f7d26c 80%, #b66b10 100%);\n  border-radius: 50%;\n  transform: rotate(-0.4deg);\n  opacity: 0.98;\n}\n\n#akka-program-schedule .akka-schedule__hero-inner {\n  position: relative;\n  z-index: 2;\n  width: 100%;\n  margin: 0;\n}\n\n#akka-program-schedule .akka-schedule__content {\n  position: relative;\n  z-index: 2;\n  width: 100%;\n  max-width: 1280px;\n  margin: 0 auto;\n}\n\n#akka-program-schedule .akka-schedule__glow {\n  position: absolute;\n  border-radius: 999px;\n  pointer-events: none;\n}\n\n#akka-program-schedule .akka-schedule__glow--one {\n  width: 420px;\n  height: 420px;\n  right: -110px;\n  top: -250px;\n  background: radial-gradient(circle, rgba(255,213,107,0.34), transparent 68%);\n}\n\n#akka-program-schedule .akka-schedule__glow--two {\n  width: 350px;\n  height: 350px;\n  left: 22%;\n  bottom: -290px;\n  background: radial-gradient(circle, rgba(218,58,37,0.12), transparent 70%);\n}\n\n#akka-program-schedule .akka-schedule__control-row,\n#akka-program-schedule .akka-schedule__day-tabs,\n#akka-program-schedule .akka-schedule__stage-tabs,\n#akka-program-schedule .akka-schedule__area-tabs,\n#akka-program-schedule .akka-schedule__meal-card,\n#akka-program-schedule .akka-schedule__time,\n#akka-program-schedule .akka-schedule__location,\n#akka-program-schedule .akka-schedule__day-heading,\n#akka-program-schedule .akka-schedule__title-line {\n  display: flex;\n  align-items: center;\n}\n\n#akka-program-schedule .akka-schedule__hero-grid {\n  padding: 8px 0;\n}\n\n#akka-program-schedule .akka-schedule__title {\n  max-width: 760px;\n  margin: 0;\n  color: #c51f17;\n  font-size: clamp(36px,4.5vw,58px);\n  font-weight: 800;\n  line-height: 1.04;\n  letter-spacing: -0.035em;\n  text-shadow: 0 1px 0 #ffffff, 0 3px 5px rgba(142,59,16,0.14);\n}\n\n#akka-program-schedule .akka-schedule__content {\n  padding: 0 0 32px;\n}\n\n#akka-program-schedule .akka-schedule__shell {\n  position: relative;\n  overflow: hidden;\n  margin-top: 0;\n  padding-top: 6px;\n  background: #fffdf8;\n  border: 2px solid var(--akka-gold);\n  border-top: 0;\n  border-radius: 0 0 14px 14px;\n  box-shadow: 0 9px 22px rgba(119,42,10,0.23), inset 0 1px 0 rgba(255,255,255,0.95);\n}\n\n#akka-program-schedule .akka-schedule__shell::before {\n  display: none;\n}\n\n#akka-program-schedule .akka-schedule__controls {\n  position: sticky;\n  top: 0;\n  z-index: 4;\n  padding: 12px 14px;\n  background: rgba(255,250,240,0.97);\n  border-bottom: 1px solid #dfc98d;\n  backdrop-filter: blur(14px);\n}\n\n#akka-program-schedule .akka-schedule__control-row {\n  justify-content: space-between;\n  gap: 12px;\n}\n\n#akka-program-schedule .akka-schedule__day-tabs {\n  gap: 4px;\n  max-width: 100%;\n  padding: 4px;\n  overflow-x: auto;\n  background: #f3eadb;\n  border-radius: 12px;\n  scrollbar-width: thin;\n}\n\n#akka-program-schedule .akka-schedule__day-tab {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: 4px;\n  min-width: 108px;\n  height: 42px;\n  flex: 0 0 auto;\n  padding: 0 14px;\n  color: #7a5440;\n  background: transparent;\n  border: 1px solid transparent;\n  border-radius: 9px;\n  font-size: 15px;\n  font-weight: 700;\n  white-space: nowrap;\n  transition: transform 0.18s ease, box-shadow 0.18s ease, color 0.18s ease;\n}\n\n#akka-program-schedule .akka-schedule__day-date {\n  font-size: 13px;\n  font-weight: 600;\n  opacity: 0.82;\n}\n\n#akka-program-schedule .akka-schedule__day-tab:hover {\n  color: #a80e09;\n  background: rgba(255,255,255,0.72);\n}\n\n#akka-program-schedule .akka-schedule__day-tab[aria-selected=\"true\"] {\n  color: #ffffff;\n  background: linear-gradient(145deg, #ff4a3f 0%, #ed231b 44%, #a80e09 100%);\n  border-color: #ff7c70;\n  box-shadow: 0 4px 0 #7d100b, 0 7px 12px rgba(117,24,11,0.30), inset 0 2px 2px rgba(255,255,255,0.42);\n  transform: translateY(-1px);\n}\n\n#akka-program-schedule .akka-schedule__search {\n  position: relative;\n  display: block;\n  width: min(100%,380px);\n  flex: 0 0 380px;\n}\n\n#akka-program-schedule .akka-schedule__search input {\n  width: 100%;\n  height: 44px;\n  padding: 0 15px 0 44px;\n  color: #3e2a23;\n  background: linear-gradient(180deg, #ffffff 0%, #fffaf0 100%);\n  border: 1px solid #d5b366;\n  border-radius: 12px;\n  outline: none;\n  box-shadow: 0 3px 0 #d7bd83, 0 6px 13px rgba(119,78,31,0.10), inset 0 1px 0 #ffffff;\n  font-size: 15px;\n}\n\n#akka-program-schedule .akka-schedule__search input:focus {\n  border-color: var(--akka-red);\n  box-shadow: 0 3px 0 #a80e09, 0 0 0 3px rgba(200,23,16,0.12);\n}\n\n#akka-program-schedule .akka-schedule__search-icon {\n  position: absolute;\n  z-index: 1;\n  left: 15px;\n  top: 50%;\n  color: #9a7654;\n  font-size: 23px;\n  line-height: 1;\n  transform: translateY(-52%);\n}\n\n#akka-program-schedule .akka-schedule__area-tabs {\n  gap: 6px;\n  padding-bottom: 3px;\n  overflow-x: auto;\n  scrollbar-width: thin;\n}\n\n#akka-program-schedule .akka-schedule__filter-block {\n  margin-top: 10px;\n}\n\n#akka-program-schedule .akka-schedule__stage-promo-row {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: flex-end;\n  gap: 10px;\n  margin-top: 10px;\n}\n\n#akka-program-schedule .akka-schedule__filter-block--stages {\n  flex: 1 1 700px;\n  min-width: 0;\n  margin-top: 0;\n}\n\n#akka-program-schedule .akka-schedule__filter-label {\n  margin: 0 0 5px 2px;\n  color: #825e49;\n  font-size: 10px;\n  font-weight: 800;\n  letter-spacing: 0.13em;\n  text-transform: uppercase;\n}\n\n#akka-program-schedule .akka-schedule__stage-tabs {\n  gap: 7px;\n  padding: 1px 0 4px;\n  overflow-x: auto;\n  scrollbar-width: thin;\n}\n\n#akka-program-schedule .akka-schedule__stage-tab {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: 8px;\n  min-height: 39px;\n  flex: 0 0 auto;\n  padding: 7px 15px;\n  color: #5f4035;\n  background: linear-gradient(180deg, #ffffff 0%, #fff8e9 100%);\n  border: 1px solid #d9bd7a;\n  border-radius: 10px;\n  box-shadow: 0 2px 0 #cfb372, inset 0 1px 0 rgba(255,255,255,0.92);\n  font-size: 12px;\n  font-weight: 750;\n  line-height: 1.2;\n  white-space: nowrap;\n  transition: transform 0.16s ease, box-shadow 0.16s ease;\n}\n\n#akka-program-schedule .akka-schedule__stage-tab:hover {\n  color: #9d160f;\n  transform: translateY(-1px);\n}\n\n#akka-program-schedule .akka-schedule__stage-tab[aria-checked=\"true\"] {\n  color: #ffffff;\n  background: linear-gradient(145deg, #ff493e 0%, #e5261d 45%, #a90f09 100%);\n  border-color: #f2c85e;\n  box-shadow: 0 3px 0 #79100b, 0 6px 10px rgba(94,19,8,0.25), inset 0 1px 1px rgba(255,255,255,0.40);\n}\n\n#akka-program-schedule .akka-schedule__stage-tab[data-stage=\"stage2\"][aria-checked=\"true\"] {\n  color: #4b2b13;\n  background: linear-gradient(145deg, #ffe892 0%, #eab53e 48%, #c48217 100%);\n  border-color: #fff0ad;\n  box-shadow: 0 3px 0 #8a500d, 0 6px 10px rgba(111,63,12,0.24), inset 0 1px 1px rgba(255,255,255,0.58);\n}\n\n#akka-program-schedule .akka-schedule__stage-dot {\n  width: 9px;\n  height: 9px;\n  flex: 0 0 9px;\n  border-radius: 50%;\n  box-shadow: 0 0 0 2px rgba(255,255,255,0.35);\n}\n\n#akka-program-schedule .akka-schedule__app-promo {\n  display: grid;\n  grid-template-columns: 50px minmax(0,1fr);\n  align-items: center;\n  gap: 8px;\n  flex: 0 0 220px;\n  width: 220px;\n  max-width: 100%;\n  min-height: 58px;\n  margin: 0 0 4px auto;\n  padding: 4px 9px;\n  color: #4b342d;\n  background: linear-gradient(180deg, #ffffff 0%, #fff5dd 100%);\n  border: 1px solid #d9bd7a;\n  border-radius: 10px;\n  box-shadow: 0 2px 0 #cfb372, inset 0 1px 0 rgba(255,255,255,0.95);\n  text-decoration: none;\n  transition: color 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;\n}\n\n#akka-program-schedule .akka-schedule__app-promo:hover {\n  color: #8f160f;\n  box-shadow: 0 3px 0 #b68d35, 0 5px 10px rgba(89,49,20,0.10), inset 0 1px 0 #ffffff;\n  transform: translateY(-1px);\n}\n\n#akka-program-schedule .akka-schedule__app-promo:focus-visible {\n  outline: 3px solid rgba(200,23,16,0.28);\n  outline-offset: 2px;\n}\n\n#akka-program-schedule .akka-schedule__app-logo {\n  display: block;\n  width: 50px;\n  height: 50px;\n  max-width: none;\n  object-fit: contain;\n  object-position: center;\n}\n\n#akka-program-schedule .akka-schedule__app-message {\n  display: block;\n  min-width: 0;\n  color: #5a4036;\n  font-size: 11.5px;\n  font-weight: 700;\n  line-height: 1.25;\n}\n\n#akka-program-schedule .akka-schedule__app-copy {\n  display: block;\n  min-width: 0;\n}\n\n#akka-program-schedule .akka-schedule__app-brand {\n  display: block;\n  margin-bottom: 2px;\n  color: #7871e8;\n  font-size: 12px;\n  font-weight: 800;\n  line-height: 1.1;\n}\n\n#akka-program-schedule .akka-schedule__compact-filters {\n  display: grid;\n  grid-template-columns: minmax(0,0.9fr) minmax(0,1.1fr);\n  gap: 8px;\n  margin-top: 9px;\n}\n\n#akka-program-schedule .akka-schedule__select-control {\n  display: block;\n  min-width: 0;\n}\n\n#akka-program-schedule .akka-schedule__select-label {\n  display: block;\n  margin: 0 0 4px 2px;\n  color: #825e49;\n  font-size: 9.5px;\n  font-weight: 800;\n  letter-spacing: 0.12em;\n  text-transform: uppercase;\n}\n\n#akka-program-schedule .akka-schedule__select-shell {\n  position: relative;\n  display: block;\n}\n\n#akka-program-schedule .akka-schedule__select-shell::after {\n  content: \"\u2304\";\n  position: absolute;\n  right: 13px;\n  top: 50%;\n  color: #9d160f;\n  font-size: 17px;\n  font-weight: 900;\n  line-height: 1;\n  pointer-events: none;\n  transform: translateY(-58%);\n}\n\n#akka-program-schedule .akka-schedule__select-control select {\n  width: 100%;\n  height: 43px;\n  min-width: 0;\n  padding: 0 40px 0 13px;\n  overflow: hidden;\n  color: #56382f;\n  background: linear-gradient(180deg, #ffffff 0%, #fff8e9 100%);\n  border: 1px solid #d9bd7a;\n  border-radius: 10px;\n  outline: none;\n  box-shadow: 0 2px 0 #cfb372, inset 0 1px 0 rgba(255,255,255,0.92);\n  font-size: 13px;\n  font-weight: 700;\n  text-overflow: ellipsis;\n  white-space: nowrap;\n  cursor: pointer;\n  appearance: none;\n  -webkit-appearance: none;\n}\n\n#akka-program-schedule .akka-schedule__select-control select:focus {\n  border-color: var(--akka-red);\n  box-shadow: 0 2px 0 #a80e09, 0 0 0 3px rgba(200,23,16,0.12);\n}\n\n#akka-program-schedule .akka-schedule__select-control select:disabled {\n  color: #96867d;\n  background: #f5eee2;\n  cursor: not-allowed;\n  opacity: 0.72;\n}\n\n#akka-program-schedule .akka-schedule__filter-status-row {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 10px;\n  min-height: 25px;\n  margin-top: 7px;\n  padding: 0 2px;\n}\n\n#akka-program-schedule .akka-schedule__filter-status {\n  min-width: 0;\n  color: #806f65;\n  font-size: 11px;\n  font-weight: 650;\n  line-height: 1.35;\n}\n\n#akka-program-schedule .akka-schedule__filter-status::before {\n  content: \"\\25CF\";\n  display: inline-block;\n  margin-right: 6px;\n  color: #d9a436;\n  font-size: 6px;\n  vertical-align: 2px;\n}\n\n#akka-program-schedule .akka-schedule__reset-filters {\n  flex: 0 0 auto;\n  min-height: 27px;\n  padding: 3px 10px;\n  color: #9d160f;\n  background: rgba(255,255,255,0.68);\n  border: 1px solid #d9bd7a;\n  border-radius: 999px;\n  font-size: 10.5px;\n  font-weight: 800;\n  line-height: 1.2;\n  white-space: nowrap;\n  transition: color 0.16s ease, background 0.16s ease, border-color 0.16s ease;\n}\n\n#akka-program-schedule .akka-schedule__reset-filters:hover:not(:disabled),\n#akka-program-schedule .akka-schedule__reset-filters:focus-visible:not(:disabled) {\n  color: #ffffff;\n  background: #b81710;\n  border-color: #b81710;\n  outline: none;\n}\n\n#akka-program-schedule .akka-schedule__reset-filters:disabled {\n  color: #9c8f86;\n  background: transparent;\n  border-color: #ded1bc;\n  cursor: default;\n  opacity: 0.58;\n}\n\n#akka-program-schedule .akka-schedule__area-tab {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: 8px;\n  height: 36px;\n  flex: 0 0 auto;\n  padding: 0 16px;\n  color: #694938;\n  background: linear-gradient(180deg, #ffffff 0%, #fff8e9 100%);\n  border: 1px solid #d9bd7a;\n  border-radius: 999px;\n  box-shadow: 0 2px 0 #cfb372, inset 0 1px 0 rgba(255,255,255,0.90);\n  font-size: 12px;\n  font-weight: 700;\n  white-space: nowrap;\n  transition: transform 0.16s ease, box-shadow 0.16s ease;\n}\n\n#akka-program-schedule .akka-schedule__area-tab:hover {\n  color: #9d160f;\n  transform: translateY(-1px);\n}\n\n#akka-program-schedule .akka-schedule__area-tab[aria-checked=\"true\"] {\n  color: #ffffff;\n  background: linear-gradient(145deg, #ff493e 0%, #e5261d 45%, #a90f09 100%);\n  border-color: #f2c85e;\n  box-shadow: 0 3px 0 #79100b, 0 6px 10px rgba(94,19,8,0.25), inset 0 1px 1px rgba(255,255,255,0.40);\n}\n\n#akka-program-schedule .akka-schedule__area-dot {\n  width: 8px;\n  height: 8px;\n  border-radius: 50%;\n  box-shadow: 0 0 0 2px rgba(255,255,255,0.28);\n}\n\n#akka-program-schedule .akka-schedule__forums {\n  padding: 13px 14px 15px;\n  background:\n    radial-gradient(circle at 85% 0%, rgba(255,255,255,0.90), transparent 32%),\n    linear-gradient(135deg, #fff5e2 0%, #f8e7c0 100%);\n  border-bottom: 1px solid #dfc98d;\n}\n\n#akka-program-schedule .akka-schedule__forums-head {\n  display: flex;\n  align-items: flex-end;\n  justify-content: space-between;\n  gap: 12px;\n  margin-bottom: 9px;\n}\n\n#akka-program-schedule .akka-schedule__forums-title {\n  margin: 0;\n  color: #571b22;\n  font-size: 17px;\n  font-weight: 900;\n  line-height: 1.2;\n}\n\n#akka-program-schedule .akka-schedule__forums-copy {\n  margin: 2px 0 0;\n  color: #806f65;\n  font-size: 11px;\n  font-weight: 500;\n}\n\n#akka-program-schedule .akka-schedule__forums-count {\n  color: #8d160f;\n  font-size: 11px;\n  font-weight: 800;\n  white-space: nowrap;\n}\n\n#akka-program-schedule .akka-schedule__forum-tabs {\n  display: flex;\n  align-items: center;\n  gap: 6px;\n  padding: 2px 0 4px;\n  overflow-x: auto;\n  scrollbar-width: thin;\n}\n\n#akka-program-schedule .akka-schedule__forum-tab {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: 7px;\n  min-height: 37px;\n  flex: 0 0 auto;\n  padding: 7px 13px;\n  color: #643d32;\n  background: rgba(255,255,255,0.80);\n  border: 1px solid #d8b86d;\n  border-radius: 10px;\n  box-shadow: 0 2px 0 #ceb06d, inset 0 1px 0 rgba(255,255,255,0.92);\n  font-size: 11.5px;\n  font-weight: 700;\n  line-height: 1.2;\n  white-space: nowrap;\n}\n\n#akka-program-schedule .akka-schedule__forum-tab:hover {\n  color: #941710;\n  transform: translateY(-1px);\n}\n\n#akka-program-schedule .akka-schedule__forum-tab[aria-checked=\"true\"] {\n  color: #ffffff;\n  background: linear-gradient(145deg, #9f1a29 0%, #741525 54%, #4b101b 100%);\n  border-color: #e9c96e;\n  box-shadow: 0 3px 0 #421019, 0 6px 10px rgba(76,20,25,0.20), inset 0 1px 1px rgba(255,255,255,0.28);\n}\n\n#akka-program-schedule .akka-schedule__forum-tab-count {\n  display: inline-grid;\n  place-items: center;\n  min-width: 21px;\n  height: 21px;\n  padding: 0 5px;\n  color: #8d160f;\n  background: #fff0bd;\n  border-radius: 999px;\n  font-size: 9px;\n  font-weight: 900;\n}\n\n#akka-program-schedule .akka-schedule__forum-tab[aria-checked=\"true\"] .akka-schedule__forum-tab-count {\n  color: #6a1722;\n  background: #ffeaa1;\n}\n\n#akka-program-schedule .akka-schedule__notice {\n  margin: 10px 14px 0;\n  padding: 9px 12px;\n  color: #765315;\n  background: #fff6d8;\n  border: 1px solid #e7c35f;\n  border-radius: 10px;\n  font-size: 12px;\n  font-weight: 600;\n}\n\n#akka-program-schedule .akka-schedule__notice--error {\n  color: #8f1912;\n  background: #fff0ed;\n  border-color: #e28d82;\n}\n\n#akka-program-schedule .akka-schedule__retry {\n  margin-left: 8px;\n  padding: 4px 10px;\n  color: #ffffff;\n  background: var(--akka-red);\n  border: 0;\n  border-radius: 999px;\n  font-size: 11px;\n  font-weight: 800;\n}\n\n#akka-program-schedule .akka-schedule__kitchen {\n  padding: 10px 14px;\n  background: radial-gradient(circle at 15% 0%, rgba(255,255,255,0.90), transparent 30%), linear-gradient(135deg, #fffaf0 0%, #f8e8c3 100%);\n  border-bottom: 1px solid #dfc98d;\n}\n\n#akka-program-schedule .akka-schedule__kitchen--expanded {\n  padding-bottom: 15px;\n}\n\n#akka-program-schedule .akka-schedule__kitchen-head {\n  display: flex;\n  align-items: center;\n  justify-content: flex-start;\n  gap: 10px;\n  margin-bottom: 0;\n}\n\n#akka-program-schedule .akka-schedule__kitchen--expanded .akka-schedule__kitchen-head {\n  margin-bottom: 8px;\n}\n\n#akka-program-schedule .akka-schedule__kitchen-title {\n  color: #4c342c;\n  font-size: 14px;\n  font-weight: 800;\n}\n\n#akka-program-schedule .akka-schedule__kitchen-toggle {\n  display: inline-flex;\n  align-items: center;\n  gap: 7px;\n  padding: 4px 5px 4px 9px;\n  color: #6e4b3d;\n  background: rgba(255,255,255,0.76);\n  border: 1px solid #dcb966;\n  border-radius: 999px;\n  font-size: 11.5px;\n  font-weight: 700;\n  line-height: 1;\n}\n\n#akka-program-schedule .akka-schedule__kitchen-toggle:hover,\n#akka-program-schedule .akka-schedule__kitchen-toggle:focus-visible {\n  color: #7c1533;\n  border-color: #c81710;\n  outline: none;\n}\n\n#akka-program-schedule .akka-schedule__kitchen-switch {\n  position: relative;\n  width: 34px;\n  height: 19px;\n  flex: 0 0 34px;\n  background: #cfc3b5;\n  border-radius: 999px;\n  box-shadow: inset 0 1px 2px rgba(73,45,30,0.24);\n  transition: background-color 0.2s ease;\n}\n\n#akka-program-schedule .akka-schedule__kitchen-switch::after {\n  content: \"\";\n  position: absolute;\n  top: 2px;\n  left: 2px;\n  width: 15px;\n  height: 15px;\n  background: #ffffff;\n  border-radius: 50%;\n  box-shadow: 0 1px 3px rgba(71,42,24,0.34);\n  transition: transform 0.2s ease;\n}\n\n#akka-program-schedule .akka-schedule__kitchen-toggle[aria-checked=\"true\"] {\n  color: #7c1533;\n  background: #fff8e8;\n}\n\n#akka-program-schedule .akka-schedule__kitchen-toggle[aria-checked=\"true\"] .akka-schedule__kitchen-switch {\n  background: linear-gradient(145deg, #ed2a20, #b70e09);\n}\n\n#akka-program-schedule .akka-schedule__kitchen-toggle[aria-checked=\"true\"] .akka-schedule__kitchen-switch::after {\n  transform: translateX(15px);\n}\n\n#akka-program-schedule .akka-schedule__meal-grid {\n  display: grid;\n  grid-template-columns: repeat(3,minmax(0,1fr));\n  gap: 7px;\n}\n\n#akka-program-schedule .akka-schedule__meal-card {\n  justify-content: space-between;\n  gap: 12px;\n  padding: 9px 11px;\n  background: linear-gradient(180deg, #ffffff 0%, #fff9e9 100%);\n  border: 1px solid #e2c36f;\n  border-radius: 12px;\n  box-shadow: 0 3px 0 #d4b15c, 0 6px 12px rgba(111,63,12,0.11), inset 0 1px 0 rgba(255,255,255,0.90);\n}\n\n#akka-program-schedule .akka-schedule__meal-name {\n  color: #3a2924;\n  font-size: 13px;\n  font-weight: 800;\n}\n\n#akka-program-schedule .akka-schedule__meal-place {\n  margin-top: 2px;\n  color: #8b776a;\n  font-size: 11px;\n}\n\n#akka-program-schedule .akka-schedule__meal-time {\n  color: #8b650b;\n  font-size: 11px;\n  font-weight: 800;\n  text-align: right;\n  white-space: nowrap;\n}\n\n#akka-program-schedule .akka-schedule__loading {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 10px;\n  min-height: 150px;\n  color: #7a5c4b;\n  font-size: 14px;\n  font-weight: 700;\n}\n\n#akka-program-schedule .akka-schedule__spinner {\n  width: 20px;\n  height: 20px;\n  border: 3px solid #efd89f;\n  border-top-color: var(--akka-red);\n  border-radius: 50%;\n  animation: akkaScheduleSpin 0.75s linear infinite;\n}\n\n@keyframes akkaScheduleSpin {\n  to { transform: rotate(360deg); }\n}\n\n#akka-program-schedule .akka-schedule__agenda {\n  padding: 20px 14px 24px;\n}\n\n#akka-program-schedule .akka-schedule__day-section + .akka-schedule__day-section {\n  margin-top: 26px;\n}\n\n#akka-program-schedule .akka-schedule__day-heading {\n  justify-content: space-between;\n  gap: 12px;\n  margin-bottom: 11px;\n  padding-bottom: 9px;\n  border-bottom: 1px solid #d9c69e;\n}\n\n#akka-program-schedule .akka-schedule__day-left {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n}\n\n#akka-program-schedule .akka-schedule__date-tile {\n  display: grid;\n  place-items: center;\n  width: 48px;\n  height: 48px;\n  flex: 0 0 48px;\n  color: #ffffff;\n  background: linear-gradient(145deg, #ff4a3f 0%, #ed231b 44%, #a80e09 100%);\n  border: 1px solid #ff7c70;\n  border-radius: 12px;\n  box-shadow: 0 4px 0 #7d100b, 0 8px 13px rgba(117,24,11,0.28), inset 0 2px 2px rgba(255,255,255,0.42);\n  text-align: center;\n}\n\n#akka-program-schedule .akka-schedule__date-tile--sat {\n  color: #fff8d3;\n  background: linear-gradient(145deg, #ffe892 0%, #eab53e 42%, #a96510 100%);\n  border-color: #fff0ad;\n  box-shadow: 0 4px 0 #86470b, 0 8px 13px rgba(111,63,12,0.30), inset 0 2px 2px rgba(255,255,255,0.65);\n}\n\n#akka-program-schedule .akka-schedule__date-month {\n  margin-top: 5px;\n  color: #f5d77e;\n  font-size: 9px;\n  font-weight: 800;\n  line-height: 1;\n  letter-spacing: 0.15em;\n  text-transform: uppercase;\n}\n\n#akka-program-schedule .akka-schedule__date-tile--sat .akka-schedule__date-month {\n  color: #7f170f;\n}\n\n#akka-program-schedule .akka-schedule__date-number {\n  margin-top: -4px;\n  font-size: 19px;\n  font-weight: 900;\n  line-height: 1;\n}\n\n#akka-program-schedule .akka-schedule__day-kicker {\n  color: #9b7654;\n  font-size: 10px;\n  font-weight: 800;\n  letter-spacing: 0.18em;\n  text-transform: uppercase;\n}\n\n#akka-program-schedule .akka-schedule__day-name {\n  margin-top: 1px;\n  color: #3d2825;\n  font-size: 21px;\n  font-weight: 900;\n  line-height: 1.2;\n}\n\n#akka-program-schedule .akka-schedule__count {\n  color: #8b776a;\n  font-size: 12px;\n  font-weight: 600;\n}\n\n#akka-program-schedule .akka-schedule__rows {\n  display: grid;\n  gap: 8px;\n}\n\n#akka-program-schedule .akka-schedule__row {\n  --area-color: #c81710;\n  --area-surface: #fff0ec;\n  position: relative;\n  display: grid;\n  grid-template-columns: 125px minmax(0,1fr) minmax(320px,400px);\n  align-items: center;\n  gap: 10px;\n  overflow: hidden;\n  padding: 12px 13px 12px 17px;\n  background: #ffffff;\n  border: 1px solid #ead7ad;\n  border-radius: 12px;\n  box-shadow: 0 2px 0 rgba(207,179,114,0.50), 0 5px 12px rgba(117,61,28,0.07), inset 0 1px 0 rgba(255,255,255,0.95);\n  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;\n}\n\n#akka-program-schedule .akka-schedule__row::before {\n  content: \"\";\n  position: absolute;\n  left: 0;\n  top: 0;\n  bottom: 0;\n  width: 6px;\n  background: var(--area-color);\n}\n\n#akka-program-schedule .akka-schedule__row:hover {\n  z-index: 1;\n  border-color: var(--akka-gold);\n  box-shadow: 0 4px 0 rgba(198,149,43,0.55), 0 10px 19px rgba(117,61,28,0.13), inset 0 1px 0 rgba(255,255,255,0.95);\n  transform: translateY(-2px);\n}\n\n#akka-program-schedule .akka-schedule__row--main { --area-color: #c81710; --area-surface: #fff0ec; }\n#akka-program-schedule .akka-schedule__row--stage2 { --area-color: #b66b10; --area-surface: #fff4d6; }\n#akka-program-schedule .akka-schedule__row--forum { --area-color: #245b86; --area-surface: #eaf4fb; }\n#akka-program-schedule .akka-schedule__row--kitchen { --area-color: #8b650b; --area-surface: #fff5d6; }\n\n#akka-program-schedule .akka-schedule__row--forum .akka-schedule__time {\n  border-color: rgba(36,91,134,0.32);\n  box-shadow: 0 2px 0 rgba(36,91,134,0.22), inset 0 1px 0 rgba(255,255,255,0.90);\n}\n\n#akka-program-schedule .akka-schedule__row--forum .akka-schedule__time-end {\n  color: #245b86;\n  font-weight: 600;\n}\n\n#akka-program-schedule .akka-schedule__row--featured {\n  background: linear-gradient(90deg, rgba(255,251,239,0.30), rgba(255,241,186,0.17)), #ffffff;\n  border-color: var(--akka-gold);\n}\n\n#akka-program-schedule .akka-schedule__row--cancelled {\n  opacity: 0.70;\n}\n\n#akka-program-schedule .akka-schedule__row--cancelled .akka-schedule__program-name {\n  text-decoration: line-through;\n}\n\n#akka-program-schedule .akka-schedule__time {\n  justify-content: center;\n  width: fit-content;\n  min-width: 104px;\n  padding: 7px 9px;\n  color: var(--area-color);\n  background: var(--area-surface);\n  border: 1px solid rgba(166,103,47,0.30);\n  border-radius: 8px;\n  box-shadow: 0 2px 0 rgba(155,99,31,0.25), inset 0 1px 0 rgba(255,255,255,0.90);\n  font-size: 15px;\n  font-weight: 700;\n}\n\n#akka-program-schedule .akka-schedule__time-end {\n  margin: 4px 0 0 14px;\n  color: #9b8a7d;\n  font-size: 13px;\n  font-weight: 500;\n}\n\n#akka-program-schedule .akka-schedule__title-line {\n  flex-wrap: wrap;\n  gap: 7px;\n}\n\n#akka-program-schedule .akka-schedule__program-name {\n  margin: 0;\n  color: #431f28;\n  font-size: 15.5px;\n  font-weight: 700;\n  line-height: 1.35;\n}\n\n#akka-program-schedule .akka-schedule__subtitle {\n  margin: 4px 0 0;\n  color: #806f65;\n  font-size: 13px;\n  font-weight: 400;\n  line-height: 1.4;\n}\n\n#akka-program-schedule .akka-schedule__badge {\n  display: inline-flex;\n  align-items: center;\n  padding: 3px 8px;\n  border-radius: 999px;\n  font-size: 9px;\n  font-weight: 800;\n  letter-spacing: 0.10em;\n  text-transform: uppercase;\n}\n\n#akka-program-schedule .akka-schedule__badge--featured {\n  color: #805c13;\n  background: #fff3c8;\n}\n\n#akka-program-schedule .akka-schedule__badge--changed {\n  color: #7b4a00;\n  background: #ffe9a5;\n}\n\n#akka-program-schedule .akka-schedule__badge--tbd {\n  color: #245b86;\n  background: #e7f3fb;\n}\n\n#akka-program-schedule .akka-schedule__badge--cancelled {\n  color: #ffffff;\n  background: #a80e09;\n}\n\n#akka-program-schedule .akka-schedule__meta {\n  text-align: right;\n}\n\n#akka-program-schedule .akka-schedule__area-label {\n  display: inline-flex;\n  flex: 0 0 auto;\n  padding: 4px 10px;\n  color: var(--area-color);\n  background: var(--area-surface);\n  border-radius: 999px;\n  font-size: 10px;\n  font-weight: 700;\n  letter-spacing: 0.09em;\n  text-transform: uppercase;\n  white-space: nowrap;\n}\n\n#akka-program-schedule .akka-schedule__location {\n  justify-content: flex-end;\n  gap: 5px;\n  margin-top: 6px;\n  color: #735f54;\n  font-size: 14px;\n  font-weight: 700;\n}\n\n#akka-program-schedule .akka-schedule__venue-prefix {\n  color: #5c4338;\n  font-weight: 400;\n  white-space: nowrap;\n}\n\n@media screen and (min-width: 641px) {\n  #akka-program-schedule .akka-schedule__location {\n    white-space: nowrap;\n  }\n}\n\n#akka-program-schedule .akka-schedule__empty {\n  display: grid;\n  place-items: center;\n  min-height: 260px;\n  padding: 30px;\n  color: #826f65;\n  background: #fbf5eb;\n  border: 1px dashed #d5bf99;\n  border-radius: 16px;\n  text-align: center;\n}\n\n#akka-program-schedule .akka-schedule__empty strong {\n  display: block;\n  margin-bottom: 5px;\n  color: #472e29;\n  font-size: 18px;\n}\n\n#akka-program-schedule .akka-schedule__alert-ribbon {\n  display: grid;\n  grid-template-columns: auto minmax(0, 1fr) auto;\n  align-items: center;\n  gap: 10px;\n  margin: 0 0 12px;\n  padding: 9px 12px;\n  color: #6b4a3a;\n  background: linear-gradient(90deg, #fff0c9 0%, #fffaf0 54%, #ffefc2 100%);\n  border: 1px solid #e3bd68;\n  border-left: 5px solid #c81710;\n  border-radius: 12px;\n  box-shadow: 0 3px 10px rgba(111, 70, 20, 0.10);\n}\n\n#akka-program-schedule .akka-schedule__alert-icon {\n  display: inline-grid;\n  place-items: center;\n  width: 24px;\n  height: 24px;\n  color: #ffffff;\n  background: linear-gradient(145deg, #ec2a20, #b50e0a);\n  border-radius: 50%;\n  font-size: 14px;\n  font-weight: 800;\n  line-height: 1;\n}\n\n#akka-program-schedule .akka-schedule__alert-copy {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 3px 5px;\n  min-width: 0;\n  font-size: 11.5px;\n  font-weight: 500;\n  line-height: 1.4;\n}\n\n#akka-program-schedule .akka-schedule__alert-copy strong {\n  color: #7c1718;\n  font-weight: 700;\n}\n\n#akka-program-schedule .akka-schedule__alert-updated {\n  justify-self: end;\n  padding: 4px 8px;\n  color: #6f4d40;\n  background: rgba(255, 255, 255, 0.72);\n  border: 1px solid rgba(210, 164, 71, 0.58);\n  border-radius: 999px;\n  font-size: 10.5px;\n  font-weight: 700;\n  line-height: 1.3;\n  white-space: nowrap;\n}\n\n@media screen and (max-width: 900px) {\n  #akka-program-schedule .akka-schedule__control-row {\n    align-items: stretch;\n    flex-direction: column;\n  }\n\n  #akka-program-schedule .akka-schedule__search {\n    width: 100%;\n    flex-basis: auto;\n  }\n\n  #akka-program-schedule .akka-schedule__app-promo {\n    flex-basis: 240px;\n    width: 240px;\n    max-width: 100%;\n  }\n\n  #akka-program-schedule .akka-schedule__row {\n    grid-template-columns: 110px minmax(0,1fr) minmax(280px,340px);\n  }\n}\n\n@media screen and (max-width: 640px) {\n  #akka-program-schedule {\n    font-size: 15px;\n  }\n\n  #akka-program-schedule .akka-schedule__hero {\n    width: 100%;\n    padding: 12px 10px 25px;\n    border-width: 1px 0 2px;\n    border-radius: 0;\n  }\n\n  #akka-program-schedule .akka-schedule__hero-grid {\n    padding-top: 4px;\n  }\n\n  #akka-program-schedule .akka-schedule__title {\n    font-size: clamp(30px,9vw,38px);\n  }\n\n  #akka-program-schedule .akka-schedule__content {\n    width: 100%;\n    padding: 0 0 24px;\n  }\n\n  #akka-program-schedule .akka-schedule__shell {\n    border-width: 0;\n    border-radius: 0;\n    box-shadow: 0 5px 14px rgba(119,42,10,0.14);\n  }\n\n  #akka-program-schedule .akka-schedule__controls {\n    padding: 10px 8px;\n  }\n\n  #akka-program-schedule .akka-schedule__control-row {\n    gap: 10px;\n  }\n\n  #akka-program-schedule .akka-schedule__day-tabs {\n    display: grid;\n    grid-template-columns: repeat(4,minmax(0,1fr));\n    width: 100%;\n    gap: 3px;\n    padding: 4px;\n    overflow: visible;\n  }\n\n  #akka-program-schedule .akka-schedule__day-tab {\n    flex-direction: column;\n    gap: 0;\n    min-width: 0;\n    height: 42px;\n    padding: 0 4px;\n    font-size: 13.5px;\n    line-height: 1.15;\n  }\n\n  #akka-program-schedule .akka-schedule__day-date {\n    margin-top: 2px;\n    font-size: 11.5px;\n  }\n\n  #akka-program-schedule .akka-schedule__day-tab[aria-selected=\"true\"] {\n    box-shadow: 0 3px 0 #7d100b, 0 5px 9px rgba(117,24,11,0.24), inset 0 1px 1px rgba(255,255,255,0.38);\n  }\n\n  #akka-program-schedule .akka-schedule__search input {\n    height: 44px;\n    padding-left: 40px;\n    font-size: 16px;\n  }\n\n  #akka-program-schedule .akka-schedule__search-icon {\n    left: 13px;\n  }\n\n  #akka-program-schedule .akka-schedule__area-tabs {\n    gap: 6px;\n    margin-top: 0;\n    padding-bottom: 4px;\n  }\n\n  #akka-program-schedule .akka-schedule__filter-block:not(.akka-schedule__filter-block--stages) {\n    margin-top: 9px;\n  }\n\n  #akka-program-schedule .akka-schedule__filter-label {\n    margin-bottom: 4px;\n    font-size: 9.5px;\n  }\n\n  #akka-program-schedule .akka-schedule__stage-tabs {\n    gap: 5px;\n    margin-right: -8px;\n    padding-right: 8px;\n  }\n\n  #akka-program-schedule .akka-schedule__stage-tab {\n    min-height: 40px;\n    padding: 7px 12px;\n    font-size: 12px;\n  }\n\n  #akka-program-schedule .akka-schedule__stage-dot {\n    width: 8px;\n    height: 8px;\n    flex-basis: 8px;\n  }\n\n  #akka-program-schedule .akka-schedule__app-promo {\n    grid-template-columns: 44px minmax(0,1fr);\n    gap: 7px;\n    flex-basis: 240px;\n    width: 240px;\n    min-height: 54px;\n    margin: 0 0 4px auto;\n    padding: 4px 8px;\n  }\n\n  #akka-program-schedule .akka-schedule__stage-promo-row {\n    align-items: flex-start;\n    gap: 6px;\n    margin-top: 9px;\n  }\n\n  #akka-program-schedule .akka-schedule__app-logo {\n    width: 44px;\n    height: 44px;\n  }\n\n  #akka-program-schedule .akka-schedule__app-message {\n    font-size: 10.5px;\n    line-height: 1.2;\n  }\n\n  #akka-program-schedule .akka-schedule__app-brand {\n    margin-bottom: 1px;\n    font-size: 11.5px;\n  }\n\n  #akka-program-schedule .akka-schedule__compact-filters {\n    grid-template-columns: minmax(0,0.88fr) minmax(0,1.12fr);\n    gap: 5px;\n    margin-top: 8px;\n  }\n\n  #akka-program-schedule .akka-schedule__select-label {\n    margin-bottom: 3px;\n    font-size: 9px;\n  }\n\n  #akka-program-schedule .akka-schedule__select-control select {\n    height: 42px;\n    padding-right: 30px;\n    padding-left: 10px;\n    font-size: 12.5px;\n  }\n\n  #akka-program-schedule .akka-schedule__select-shell::after {\n    right: 10px;\n    font-size: 15px;\n  }\n\n  #akka-program-schedule .akka-schedule__filter-status-row {\n    min-height: 27px;\n    margin-top: 6px;\n  }\n\n  #akka-program-schedule .akka-schedule__filter-status,\n  #akka-program-schedule .akka-schedule__reset-filters {\n    font-size: 11px;\n  }\n\n  #akka-program-schedule .akka-schedule__reset-filters {\n    min-height: 29px;\n    padding: 4px 10px;\n  }\n\n  #akka-program-schedule .akka-schedule__area-tab {\n    height: 36px;\n    padding: 0 13px;\n    font-size: 12.5px;\n  }\n\n  #akka-program-schedule .akka-schedule__area-dot {\n    width: 7px;\n    height: 7px;\n  }\n\n  #akka-program-schedule .akka-schedule__forums {\n    padding: 11px 8px 13px;\n  }\n\n  #akka-program-schedule .akka-schedule__forums-head {\n    align-items: center;\n    margin-bottom: 7px;\n  }\n\n  #akka-program-schedule .akka-schedule__forums-title {\n    font-size: 16px;\n  }\n\n  #akka-program-schedule .akka-schedule__forums-copy {\n    font-size: 10.5px;\n  }\n\n  #akka-program-schedule .akka-schedule__forums-count {\n    font-size: 10px;\n  }\n\n  #akka-program-schedule .akka-schedule__forum-tabs {\n    gap: 5px;\n    margin-right: -8px;\n    padding-right: 8px;\n  }\n\n  #akka-program-schedule .akka-schedule__forum-tab {\n    min-height: 38px;\n    padding: 7px 11px;\n    font-size: 12px;\n  }\n\n  #akka-program-schedule .akka-schedule__notice {\n    margin: 8px 8px 0;\n    padding: 9px 10px;\n    font-size: 13px;\n  }\n\n  #akka-program-schedule .akka-schedule__kitchen {\n    padding: 9px 8px;\n  }\n\n  #akka-program-schedule .akka-schedule__kitchen--expanded {\n    padding-bottom: 13px;\n  }\n\n  #akka-program-schedule .akka-schedule__kitchen-head {\n    margin-bottom: 0;\n  }\n\n  #akka-program-schedule .akka-schedule__kitchen--expanded .akka-schedule__kitchen-head {\n    margin-bottom: 8px;\n  }\n\n  #akka-program-schedule .akka-schedule__kitchen-title {\n    font-size: 14.5px;\n  }\n\n  #akka-program-schedule .akka-schedule__kitchen-toggle {\n    font-size: 12px;\n  }\n\n  #akka-program-schedule .akka-schedule__meal-grid {\n    grid-template-columns: 1fr;\n    gap: 5px;\n  }\n\n  #akka-program-schedule .akka-schedule__meal-card {\n    padding: 8px 10px;\n    border-radius: 9px;\n    box-shadow: 0 1px 0 #d4b15c, inset 0 1px 0 rgba(255,255,255,0.90);\n  }\n\n  #akka-program-schedule .akka-schedule__meal-name {\n    font-size: 13.5px;\n  }\n\n  #akka-program-schedule .akka-schedule__meal-place,\n  #akka-program-schedule .akka-schedule__meal-time {\n    font-size: 12px;\n  }\n\n  #akka-program-schedule .akka-schedule__agenda {\n    padding: 12px 7px 18px;\n  }\n\n  #akka-program-schedule .akka-schedule__day-section + .akka-schedule__day-section {\n    margin-top: 22px;\n  }\n\n  #akka-program-schedule .akka-schedule__day-heading {\n    margin-bottom: 9px;\n    padding: 0 1px 7px;\n  }\n\n  #akka-program-schedule .akka-schedule__day-left {\n    gap: 9px;\n  }\n\n  #akka-program-schedule .akka-schedule__date-tile {\n    width: 42px;\n    height: 42px;\n    flex-basis: 42px;\n    border-radius: 9px;\n    box-shadow: 0 2px 0 #7d100b, 0 4px 8px rgba(117,24,11,0.20), inset 0 1px 1px rgba(255,255,255,0.38);\n  }\n\n  #akka-program-schedule .akka-schedule__date-tile--sat {\n    box-shadow: 0 2px 0 #86470b, 0 4px 8px rgba(111,63,12,0.22), inset 0 1px 1px rgba(255,255,255,0.48);\n  }\n\n  #akka-program-schedule .akka-schedule__date-month {\n    margin-top: 4px;\n    font-size: 8px;\n  }\n\n  #akka-program-schedule .akka-schedule__date-number {\n    font-size: 18px;\n  }\n\n  #akka-program-schedule .akka-schedule__day-kicker {\n    font-size: 9px;\n  }\n\n  #akka-program-schedule .akka-schedule__day-name {\n    font-size: 20px;\n  }\n\n  #akka-program-schedule .akka-schedule__count {\n    display: none;\n  }\n\n  #akka-program-schedule .akka-schedule__row {\n    grid-template-columns: 92px minmax(0,1fr);\n    grid-template-areas:\n      \"time copy\"\n      \"time meta\";\n    align-items: start;\n    column-gap: 9px;\n    row-gap: 5px;\n    padding: 11px 9px 11px 13px;\n    border-radius: 10px;\n    box-shadow: 0 1px 0 rgba(207,179,114,0.45), 0 3px 8px rgba(117,61,28,0.06);\n  }\n\n  #akka-program-schedule .akka-schedule__row::before {\n    width: 4px;\n  }\n\n  #akka-program-schedule .akka-schedule__time-block {\n    grid-area: time;\n    align-self: start;\n  }\n\n  #akka-program-schedule .akka-schedule__copy {\n    grid-area: copy;\n    min-width: 0;\n  }\n\n  #akka-program-schedule .akka-schedule__time {\n    width: 100%;\n    min-width: 0;\n    padding: 6px 4px;\n    font-size: 16px;\n    line-height: 1.2;\n  }\n\n  #akka-program-schedule .akka-schedule__time-end {\n    margin: 4px 0 0;\n    font-size: 12.5px;\n    line-height: 1.2;\n    text-align: center;\n  }\n\n  #akka-program-schedule .akka-schedule__program-name {\n    font-size: 16px;\n    line-height: 1.25;\n  }\n\n  #akka-program-schedule .akka-schedule__subtitle {\n    margin-top: 3px;\n    font-size: 13.5px;\n    line-height: 1.35;\n  }\n\n  #akka-program-schedule .akka-schedule__meta {\n    grid-area: meta;\n    display: flex;\n    align-items: center;\n    justify-content: flex-start;\n    flex-wrap: wrap;\n    gap: 6px 8px;\n    min-width: 0;\n    margin-top: 1px;\n    text-align: left;\n  }\n\n  #akka-program-schedule .akka-schedule__area-label {\n    padding: 3px 7px;\n    font-size: 10px;\n  }\n\n  #akka-program-schedule .akka-schedule__location {\n    justify-content: flex-start;\n    margin: 0;\n    font-size: 14.5px;\n  }\n\n  #akka-program-schedule .akka-schedule__alert-ribbon {\n    grid-template-columns: auto minmax(0, 1fr);\n    gap: 6px 8px;\n    margin-bottom: 9px;\n    padding: 8px 9px;\n  }\n\n  #akka-program-schedule .akka-schedule__alert-copy {\n    font-size: 10.5px;\n  }\n\n  #akka-program-schedule .akka-schedule__alert-updated {\n    grid-column: 2;\n    justify-self: start;\n    font-size: 10px;\n  }\n}\n\n@media (prefers-reduced-motion: reduce) {\n  #akka-program-schedule *,\n  #akka-program-schedule *::before,\n  #akka-program-schedule *::after {\n    scroll-behavior: auto !important;\n    transition-duration: 0.01ms !important;\n    animation-duration: 0.01ms !important;\n  }\n}\n<\/style>\n\n<script type=\"text\/javascript\">\n\/\/ <![CDATA[\n(function () {\n  \"use strict\";\n\n  var root = document.getElementById(\"akka-program-schedule\");\n\n  if (!root || root.getAttribute(\"data-akka-initialized\") === \"true\") {\n    return;\n  }\n\n  root.setAttribute(\"data-akka-initialized\", \"true\");\n\n  \/* ============================================================\n     CONFIGURATION \u2014 PASTE THE PUBLISHED GOOGLE SHEET CSV URL HERE\n     ============================================================ *\/\n  var GOOGLE_SHEET_CSV_URL = \"https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vQUa9s8FFvIdLsOGaJqh_wnMIKP5RErysEUBHbC7do76B2W0lzbCTANjJ5hIVoYI-mcSlfuId7QnH-V\/pub?gid=227413278&single=true&output=csv\";\n  var SHOW_SAMPLE_DATA_UNTIL_URL_IS_ADDED = true;\n  var DEFAULT_DAY = \"fri\";\n\n  var DAYS = [\n    { key: \"fri\", weekday: \"Friday\", short: \"Fri\", date: \"04\", month: \"Sep\", dayNumber: 1 },\n    { key: \"sat\", weekday: \"Saturday\", short: \"Sat\", date: \"05\", month: \"Sep\", dayNumber: 2 },\n    { key: \"sun\", weekday: \"Sunday\", short: \"Sun\", date: \"06\", month: \"Sep\", dayNumber: 3 }\n  ];\n\n  var AREAS = {\n    main: {\n      label: \"Dr. Puneeth Rajkumar Sabhangana\",\n      short: \"Main Stage\",\n      tooltip: \"Main Stage\",\n      color: \"#c81710\"\n    },\n    stage2: {\n      label: \"Gaana Kogile S. Janaki Sabhangana\",\n      short: \"Stage 2\",\n      tooltip: \"Stage 2\",\n      color: \"#b66b10\"\n    },\n    forum: { label: \"Forums and Events\", short: \"Forum\/Event\", tooltip: \"Forum or Event\", color: \"#245b86\" },\n    kitchen: { label: \"Kitchen Timings\", short: \"Kitchen\", tooltip: \"Kitchen\", color: \"#8b650b\" }\n  };\n\n  \/* Every known Excel label is normalized to one of these two canonical stages. *\/\n  var STAGE_REFERENCES = [\n    {\n      key: \"main\",\n      label: \"Dr. Puneeth Rajkumar Sabhangana\",\n      tooltip: \"Main Stage\",\n      color: \"#c81710\",\n      aliases: [\n        \"\u0ca1\u0cbe. \u0caa\u0cc1\u0ca8\u0cc0\u0ca4\u0ccd \u0cb0\u0cbe\u0c9c\u0ccd\u200c\u0c95\u0cc1\u0cae\u0cbe\u0cb0\u0ccd \u0cb8\u0cad\u0cbe\u0c82\u0c97\u0ca3\",\n        \"Main Stage\",\n        \"Dr. Puneeth Rajkumar Sabhangana\",\n        \"Main Stage Events (Puneeth Rajakumar Stage)\"\n      ]\n    },\n    {\n      key: \"stage2\",\n      label: \"Gaana Kogile S. Janaki Sabhangana\",\n      tooltip: \"Stage 2\",\n      color: \"#b66b10\",\n      aliases: [\n        \"\u0c97\u0cbe\u0ca8 \u0c95\u0ccb\u0c97\u0cbf\u0cb2\u0cc6 \u0c8e\u0cb8\u0ccd. \u0c9c\u0cbe\u0ca8\u0c95\u0cbf \u0cb8\u0cad\u0cbe\u0c82\u0c97\u0ca3\",\n        \"2nd Stage\",\n        \"Stage 2\",\n        \"Gaana Kogile S. Janaki Sabhangana\",\n        \"2nd Stage (Gaana Kogile S. Janaki Sabhangana)\"\n      ]\n    }\n  ];\n\n  var CATEGORY_DEFINITIONS = [\n    { key: \"cultural\", label: \"Cultural\", color: \"#c81710\" },\n    { key: \"music\", label: \"Music\", color: \"#9c1742\" },\n    { key: \"dance\", label: \"Dance\", color: \"#d06b16\" },\n    { key: \"drama\", label: \"Drama\", color: \"#713466\" },\n    { key: \"comedy\", label: \"Comedy\", color: \"#bb4d20\" },\n    { key: \"religious\", label: \"Religious\", color: \"#8d650c\" },\n    { key: \"sports\", label: \"Sports\", color: \"#28705f\" },\n    { key: \"kitchen\", label: \"Kitchen Timings\", color: \"#8b650b\" },\n    { key: \"other\", label: \"Other Programs\", color: \"#7a5b4a\" }\n  ];\n\n  var SAMPLE_DATA = [\n    { date: \"2026-09-04\", day: \"Friday\", start: \"7:00 AM\", end: \"9:00 AM\", title: \"Welcome Breakfast\", subtitle: \"Fresh South Indian breakfast service\", area: \"Kitchen\", venue: \"Dining Pavilion\", featured: \"No\", status: \"Scheduled\", sort: 10, published: \"Yes\" },\n    { date: \"2026-09-04\", day: \"Friday\", start: \"9:00 AM\", end: \"10:15 AM\", title: \"AKKA 2026 Opening Ceremony\", subtitle: \"A grand welcome to the Silver Jubilee celebration\", area: \"Main Stage\", venue: \"Grand Ballroom\", featured: \"Yes\", status: \"Scheduled\", sort: 20, published: \"Yes\" },\n    { date: \"2026-09-04\", day: \"Friday\", start: \"10:30 AM\", end: \"11:45 AM\", title: \"Youth Cultural Showcase\", subtitle: \"Music, dance and stories from the next generation\", area: \"Stage 2\", venue: \"Liberty Hall\", featured: \"No\", status: \"Scheduled\", sort: 30, published: \"Yes\" },\n    { date: \"2026-09-04\", day: \"Friday\", start: \"11:00 AM\", end: \"12:15 PM\", title: \"Building Global Partnerships\", subtitle: \"Business Forum \u00b7 Connect, collaborate and grow\", area: \"Forums\", venue: \"Forum Room A\", featured: \"No\", status: \"Scheduled\", sort: 40, published: \"Yes\" },\n    { date: \"2026-09-04\", day: \"Friday\", start: \"12:30 PM\", end: \"2:30 PM\", title: \"Festival Lunch\", subtitle: \"Traditional Karnataka lunch service\", area: \"Kitchen\", venue: \"Dining Pavilion\", featured: \"No\", status: \"Scheduled\", sort: 50, published: \"Yes\" },\n    { date: \"2026-09-04\", day: \"Friday\", start: \"7:30 PM\", end: \"9:30 PM\", title: \"Bhagavadgeetha Musical\", subtitle: \"A spectacular dance-drama presentation\", area: \"Main Stage\", venue: \"Grand Ballroom\", featured: \"Yes\", status: \"Scheduled\", sort: 60, published: \"Yes\" },\n    { date: \"2026-09-05\", day: \"Saturday\", start: \"7:00 AM\", end: \"9:00 AM\", title: \"Breakfast\", subtitle: \"Morning service\", area: \"Kitchen\", venue: \"Dining Pavilion\", featured: \"No\", status: \"Scheduled\", sort: 10, published: \"Yes\" },\n    { date: \"2026-09-05\", day: \"Saturday\", start: \"9:30 AM\", end: \"11:30 AM\", title: \"AKKA Idol Semi-Finals\", subtitle: \"The road to the grand finale\", area: \"Main Stage\", venue: \"Grand Ballroom\", featured: \"Yes\", status: \"Scheduled\", sort: 20, published: \"Yes\" },\n    { date: \"2026-09-05\", day: \"Saturday\", start: \"10:00 AM\", end: \"11:15 AM\", title: \"Team Olympics 2026\", subtitle: \"Movement, teamwork, innovation and discovery\", area: \"Stage 2\", venue: \"Liberty Hall\", featured: \"No\", status: \"Scheduled\", sort: 30, published: \"Yes\" },\n    { date: \"2026-09-05\", day: \"Saturday\", start: \"2:00 PM\", end: \"5:00 PM\", title: \"AKKA Women\u2019s Forum\", subtitle: \"Ideas, leadership and inspiring journeys\", area: \"Forums\", venue: \"Forum Room A\", featured: \"No\", status: \"Scheduled\", sort: 40, published: \"Yes\" },\n    { date: \"2026-09-05\", day: \"Saturday\", start: \"8:00 PM\", end: \"10:30 PM\", title: \"Prime Time Live Concert\", subtitle: \"An unforgettable evening of Kannada music\", area: \"Main Stage\", venue: \"Grand Ballroom\", featured: \"Yes\", status: \"Scheduled\", sort: 50, published: \"Yes\" },\n    { date: \"2026-09-06\", day: \"Sunday\", start: \"7:00 AM\", end: \"9:00 AM\", title: \"Breakfast\", subtitle: \"Morning service\", area: \"Kitchen\", venue: \"Dining Pavilion\", featured: \"No\", status: \"Scheduled\", sort: 10, published: \"Yes\" },\n    { date: \"2026-09-06\", day: \"Sunday\", start: \"9:00 AM\", end: \"10:15 AM\", title: \"Harikathe \u00b7 \u0cad\u0cc2\u0c95\u0cc8\u0cb2\u0cbe\u0cb8\", subtitle: \"Harikathe\", area: \"Stage 2\", venue: \"Gaana Kogile S. Janaki Sabhangana\", featured: \"No\", status: \"Scheduled\", sort: 20, published: \"Yes\" },\n    { date: \"2026-09-06\", day: \"Sunday\", start: \"10:30 AM\", end: \"12:00 PM\", title: \"AKKA Idol Grand Finale\", subtitle: \"The final musical celebration\", area: \"Main Stage\", venue: \"Grand Ballroom\", featured: \"Yes\", status: \"Scheduled\", sort: 30, published: \"Yes\" },\n    { date: \"2026-09-06\", day: \"Sunday\", start: \"12:15 PM\", end: \"1:15 PM\", title: \"Silver Jubilee Closing Ceremony\", subtitle: \"One community \u00b7 One unforgettable journey\", area: \"Main Stage\", venue: \"Grand Ballroom\", featured: \"Yes\", status: \"Scheduled\", sort: 40, published: \"Yes\" },\n    { date: \"2026-09-06\", day: \"Sunday\", start: \"1:15 PM\", end: \"3:00 PM\", title: \"Farewell Lunch\", subtitle: \"Closing meal service\", area: \"Kitchen\", venue: \"Dining Pavilion\", featured: \"No\", status: \"Scheduled\", sort: 50, published: \"Yes\" }\n  ];\n\n  var dayTabs = document.getElementById(\"akka-schedule-days\");\n  var stageTabs = document.getElementById(\"akka-schedule-stages\");\n  var categorySelect = document.getElementById(\"akka-schedule-category-select\");\n  var forumSelect = document.getElementById(\"akka-schedule-forum-select\");\n  var searchInput = document.getElementById(\"akka-schedule-search\");\n  var filterStatus = document.getElementById(\"akka-schedule-filter-status\");\n  var resetFiltersButton = document.getElementById(\"akka-schedule-reset\");\n  var notice = document.getElementById(\"akka-schedule-notice\");\n  var kitchen = document.getElementById(\"akka-schedule-kitchen\");\n  var loading = document.getElementById(\"akka-schedule-loading\");\n  var agenda = document.getElementById(\"akka-schedule-agenda\");\n  var source = document.getElementById(\"akka-schedule-source\");\n\n  var state = {\n    day: DEFAULT_DAY,\n    stage: \"all\",\n    category: \"all\",\n    forum: \"\",\n    query: \"\",\n    kitchenExpanded: false,\n    programs: []\n  };\n\n  function cleanHeader(value) {\n    return String(value || \"\")\n      .toLowerCase()\n      .replace(\/[^a-z0-9]+\/g, \"\");\n  }\n\n  function parseCSV(text) {\n    var rows = [];\n    var row = [];\n    var field = \"\";\n    var inQuotes = false;\n    var i;\n\n    text = String(text || \"\").replace(\/^\\uFEFF\/, \"\");\n\n    for (i = 0; i < text.length; i += 1) {\n      var character = text.charAt(i);\n      var next = text.charAt(i + 1);\n\n      if (character === '\"') {\n        if (inQuotes && next === '\"') {\n          field += '\"';\n          i += 1;\n        } else {\n          inQuotes = !inQuotes;\n        }\n      } else if (character === \",\" && !inQuotes) {\n        row.push(field);\n        field = \"\";\n      } else if ((character === \"\\n\" || character === \"\\r\") && !inQuotes) {\n        if (character === \"\\r\" && next === \"\\n\") {\n          i += 1;\n        }\n        row.push(field);\n        field = \"\";\n        if (row.some(function (cell) { return String(cell).trim() !== \"\"; })) {\n          rows.push(row);\n        }\n        row = [];\n      } else {\n        field += character;\n      }\n    }\n\n    if (field !== \"\" || row.length) {\n      row.push(field);\n      if (row.some(function (cell) { return String(cell).trim() !== \"\"; })) {\n        rows.push(row);\n      }\n    }\n\n    return rows;\n  }\n\n  function csvRowsToObjects(rows) {\n    if (!rows.length) {\n      return [];\n    }\n\n    var headers = rows[0].map(cleanHeader);\n\n    return rows.slice(1).map(function (row) {\n      var output = {};\n      headers.forEach(function (header, index) {\n        output[header] = row[index] === undefined ? \"\" : String(row[index]).trim();\n      });\n      return output;\n    });\n  }\n\n  function firstValue(object, names) {\n    var i;\n    for (i = 0; i < names.length; i += 1) {\n      var key = cleanHeader(names[i]);\n      if (object[key] !== undefined && String(object[key]).trim() !== \"\") {\n        return String(object[key]).trim();\n      }\n    }\n    return \"\";\n  }\n\n  function yes(value, defaultValue) {\n    var normalized = String(value || \"\").trim().toLowerCase();\n    if (!normalized) {\n      return defaultValue;\n    }\n    return [\"yes\", \"y\", \"true\", \"1\", \"x\"].indexOf(normalized) !== -1;\n  }\n\n  function normalizeDay(dayValue, dateValue) {\n    var day = String(dayValue || \"\").trim().toLowerCase();\n\n    if (day.indexOf(\"fri\") === 0) { return \"fri\"; }\n    if (day.indexOf(\"sat\") === 0) { return \"sat\"; }\n    if (day.indexOf(\"sun\") === 0) { return \"sun\"; }\n\n    var dateText = String(dateValue || \"\").trim();\n    var match = dateText.match(\/^(\\d{4})-(\\d{1,2})-(\\d{1,2})$\/);\n    var parsed;\n\n    if (match) {\n      parsed = new Date(Number(match[1]), Number(match[2]) - 1, Number(match[3]), 12, 0, 0);\n    } else {\n      parsed = new Date(dateText);\n    }\n\n    if (!isNaN(parsed.getTime())) {\n      if (parsed.getDay() === 5) { return \"fri\"; }\n      if (parsed.getDay() === 6) { return \"sat\"; }\n      if (parsed.getDay() === 0) { return \"sun\"; }\n    }\n\n    return \"\";\n  }\n\n  function normalizeArea(value) {\n    var area = cleanHeader(value);\n\n    if (area === \"main\" || area === \"mainstage\" || area === \"stage1\" || area === \"stageone\") {\n      return \"main\";\n    }\n    if (area === \"stage2\" || area === \"stagetwo\" || area === \"secondstage\" || area === \"2ndstage\") {\n      return \"stage2\";\n    }\n    if (area.indexOf(\"forum\") !== -1) {\n      return \"forum\";\n    }\n    if (area.indexOf(\"kitchen\") !== -1 || area.indexOf(\"meal\") !== -1 || area.indexOf(\"food\") !== -1 || area.indexOf(\"dining\") !== -1) {\n      return \"kitchen\";\n    }\n\n    return \"main\";\n  }\n\n  function normalizedStageText(value) {\n    var text = String(value || \"\");\n    if (typeof text.normalize === \"function\") {\n      text = text.normalize(\"NFKC\");\n    }\n    return text.toLowerCase().replace(\/\\s+\/g, \" \").trim();\n  }\n\n  function normalizeStageReference(areaValue, venueValue) {\n    var combinedRaw = normalizedStageText(String(areaValue || \"\") + \" \" + String(venueValue || \"\"));\n    var combinedKey = cleanHeader(String(areaValue || \"\") + \" \" + String(venueValue || \"\"));\n    var matchedStage = \"\";\n\n    STAGE_REFERENCES.some(function (stage) {\n      return stage.aliases.some(function (alias) {\n        var aliasRaw = normalizedStageText(alias);\n        var aliasKey = cleanHeader(alias);\n        var matches = (aliasRaw && combinedRaw.indexOf(aliasRaw) !== -1) ||\n          (aliasKey && combinedKey.indexOf(aliasKey) !== -1);\n        if (matches) {\n          matchedStage = stage.key;\n        }\n        return matches;\n      });\n    });\n\n    return matchedStage || normalizeArea(areaValue);\n  }\n\n  function categoryDefinition(key) {\n    var match = CATEGORY_DEFINITIONS.find(function (category) {\n      return category.key === key;\n    });\n    return match || CATEGORY_DEFINITIONS[CATEGORY_DEFINITIONS.length - 1];\n  }\n\n  function classifyProgramCategory(area, title, subtitle) {\n    var lead = String(subtitle || \"\").split(\"\u00b7\")[0].trim();\n    var text = (lead + \" \" + String(title || \"\")).toLowerCase();\n\n    if (area === \"kitchen\") { return \"kitchen\"; }\n    if (area === \"forum\") { return \"forum\"; }\n    if (\/religious|pooje|pooja|chanting|devotional\/.test(text)) { return \"religious\"; }\n    if (\/sports|olympic\/.test(text)) { return \"sports\"; }\n    if (\/comedy|stand-up|standup\/.test(text)) { return \"comedy\"; }\n    if (\/dance|nruthya|kamsale\/.test(text)) { return \"dance\"; }\n    if (\/drama|yakshagana|harikathe|theatre|play\\b\/.test(text)) { return \"drama\"; }\n    if (\/music|musical|singing|sangeetha|idol|concert|instrumental\/.test(text)) { return \"music\"; }\n    if (\/cultural|inauguration|meravanige|procession|donor|recognition|book release|chat\\b|closing ceremony\/.test(text)) { return \"cultural\"; }\n    return \"other\";\n  }\n\n  function forumGroupFor(title, subtitle) {\n    var titleText = String(title || \"\").trim();\n    var subtitleText = String(subtitle || \"\").trim();\n    var text = (titleText + \" \" + subtitleText).toLowerCase();\n\n    if (\/women.?s forum\/.test(text)) { return { key: \"womens-forum\", label: \"Women\u2019s Forum\" }; }\n    if (\/business forum\/.test(text)) { return { key: \"business-forum\", label: \"Business Forum\" }; }\n    if (\/career connect\/.test(text)) { return { key: \"career-connect\", label: \"Career Connect\" }; }\n    if (\/dental cme\/.test(text)) { return { key: \"dental-cme\", label: \"Dental CME\" }; }\n    if (\/continuing medical|\\bcme\\b\/.test(text)) { return { key: \"medical-cme\", label: \"Medical CME\" }; }\n    if (\/literary committee|kannada quiz|sahitya\/.test(text)) { return { key: \"literary\", label: \"Literary Programs\" }; }\n    if (\/spiritual committee|heartfulness|aromananda|isha foundation|bhajan\/.test(text)) { return { key: \"spiritual\", label: \"Spiritual Programs\" }; }\n    if (\/short film\/.test(text)) { return { key: \"film-festival\", label: \"Short Film Festival\" }; }\n    if (\/akka idol|\\bidol\\b\/.test(text)) { return { key: \"akka-idol\", label: \"AKKA Idol\" }; }\n    if (\/alumni meet\/.test(text)) { return { key: \"alumni-meet\", label: \"Alumni Meet\" }; }\n    if (\/young kannadigas|singles meet|matrimony|team olympics|kids program|karaoke\/.test(text)) {\n      return { key: \"young-kannadigas\", label: \"Young Kannadigas\" };\n    }\n\n    var fallbackLabel = subtitleText && subtitleText.length <= 34 ? subtitleText : titleText;\n    var fallbackKey = cleanHeader(fallbackLabel) || \"other-forums\";\n    return { key: fallbackKey, label: fallbackLabel || \"Other Forums\" };\n  }\n\n  function timeToMinutes(value) {\n    var text = String(value || \"\").trim().toUpperCase();\n    var match = text.match(\/^(\\d{1,2})(?::(\\d{2}))?(?::\\d{2})?\\s*(AM|PM)?$\/);\n\n    if (!match) {\n      return 9999;\n    }\n\n    var hour = Number(match[1]);\n    var minute = Number(match[2] || 0);\n    var period = match[3] || \"\";\n\n    if (period === \"AM\") {\n      hour = hour % 12;\n    } else if (period === \"PM\") {\n      hour = (hour % 12) + 12;\n    }\n\n    return (hour * 60) + minute;\n  }\n\n  function normalizePrograms(rawRows) {\n    return rawRows.map(function (row) {\n      var dateValue = firstValue(row, [\"Date\", \"Event Date\"]);\n      var dayValue = firstValue(row, [\"Day\", \"Weekday\"]);\n      var publishedValue = firstValue(row, [\"Published\", \"Show\", \"Visible\"]);\n      var status = firstValue(row, [\"Status\"]) || \"Scheduled\";\n      var title = firstValue(row, [\"Program Title\", \"Title\", \"Program\", \"Event\"]);\n      var subtitle = firstValue(row, [\"Subtitle\", \"Description\", \"Details\"]);\n      var areaValue = firstValue(row, [\"Schedule Area\", \"Area\", \"Track\", \"Category\", \"Stage\"]);\n      var venueValue = firstValue(row, [\"Venue\", \"Location\", \"Room\"]);\n      var area = normalizeStageReference(areaValue, venueValue);\n      var category = classifyProgramCategory(area, title, subtitle);\n      var forumGroup = area === \"forum\" ? forumGroupFor(title, subtitle) : { key: \"\", label: \"\" };\n      var canonicalVenue = (area === \"main\" || area === \"stage2\") ? AREAS[area].label : venueValue;\n\n      return {\n        date: dateValue,\n        day: normalizeDay(dayValue, dateValue),\n        start: firstValue(row, [\"Start Time\", \"Start\", \"Time\"]),\n        end: firstValue(row, [\"End Time\", \"End\"]),\n        title: title,\n        subtitle: subtitle,\n        area: area,\n        category: category,\n        categoryLabel: area === \"forum\" ? forumGroup.label : categoryDefinition(category).label,\n        forumKey: forumGroup.key,\n        forumLabel: forumGroup.label,\n        venue: canonicalVenue,\n        featured: yes(firstValue(row, [\"Featured\", \"Prime Time\"]), false),\n        status: status,\n        sort: Number(firstValue(row, [\"Sort Order\", \"Sort\", \"Order\"]) || 0),\n        published: yes(publishedValue, true),\n        notes: firstValue(row, [\"Notes\"])\n      };\n    }).filter(function (program) {\n      return program.published && program.day && program.start && program.title;\n    }).sort(function (a, b) {\n      var dayDifference = dayIndex(a.day) - dayIndex(b.day);\n      var timeDifference = timeToMinutes(a.start) - timeToMinutes(b.start);\n      return dayDifference || timeDifference || a.sort - b.sort || a.title.localeCompare(b.title);\n    });\n  }\n\n  function dayIndex(dayKey) {\n    var index = DAYS.findIndex(function (day) { return day.key === dayKey; });\n    return index < 0 ? 99 : index;\n  }\n\n  function makeElement(tagName, className, text) {\n    var element = document.createElement(tagName);\n    if (className) {\n      element.className = className;\n    }\n    if (text !== undefined && text !== null) {\n      element.textContent = String(text);\n    }\n    return element;\n  }\n\n  function clear(element) {\n    while (element.firstChild) {\n      element.removeChild(element.firstChild);\n    }\n  }\n\n  function showNotice(message, isError, showRetry) {\n    clear(notice);\n    notice.hidden = false;\n    notice.className = \"akka-schedule__notice\" + (isError ? \" akka-schedule__notice--error\" : \"\");\n    notice.appendChild(document.createTextNode(message));\n\n    if (showRetry) {\n      var retry = makeElement(\"button\", \"akka-schedule__retry\", \"Retry\");\n      retry.type = \"button\";\n      retry.addEventListener(\"click\", loadSchedule);\n      notice.appendChild(retry);\n    }\n  }\n\n  function hideNotice() {\n    notice.hidden = true;\n    clear(notice);\n  }\n\n  function buildControls() {\n    clear(dayTabs);\n    clear(stageTabs);\n    clear(categorySelect);\n\n    [{ key: \"all\", short: \"All Days\", date: \"\" }].concat(DAYS).forEach(function (day) {\n      var button = makeElement(\"button\", \"akka-schedule__day-tab\");\n      button.type = \"button\";\n      button.setAttribute(\"role\", \"tab\");\n      button.setAttribute(\"data-day\", day.key);\n      button.setAttribute(\"aria-selected\", state.day === day.key ? \"true\" : \"false\");\n      button.appendChild(makeElement(\"span\", \"akka-schedule__day-label\", day.key === \"all\" ? \"All Days\" : day.short));\n      if (day.key !== \"all\") {\n        button.appendChild(makeElement(\"span\", \"akka-schedule__day-date\", \"Sep \" + day.date));\n      }\n      button.addEventListener(\"click\", function () {\n        state.day = day.key;\n        render();\n      });\n      dayTabs.appendChild(button);\n    });\n\n    [{ key: \"all\", label: \"All Stages\", tooltip: \"Show both stages\", color: \"#8a6650\" }]\n      .concat(STAGE_REFERENCES)\n      .forEach(function (stage) {\n        var button = makeElement(\"button\", \"akka-schedule__stage-tab\");\n        var dot = makeElement(\"span\", \"akka-schedule__stage-dot\");\n        button.type = \"button\";\n        button.setAttribute(\"role\", \"radio\");\n        button.setAttribute(\"data-stage\", stage.key);\n        button.setAttribute(\"aria-checked\", !state.forum && state.stage === stage.key ? \"true\" : \"false\");\n        button.setAttribute(\"title\", stage.tooltip);\n        button.setAttribute(\"aria-label\", stage.key === \"all\" ? stage.label : stage.label + \" \u2014 \" + stage.tooltip);\n        dot.style.backgroundColor = stage.color;\n        button.appendChild(dot);\n        button.appendChild(document.createTextNode(stage.label));\n        button.addEventListener(\"click\", function () {\n          state.stage = stage.key;\n          state.category = \"all\";\n          state.forum = \"\";\n          buildControls();\n          render();\n        });\n        stageTabs.appendChild(button);\n      });\n\n    [{ key: \"all\", label: \"All Categories\", color: \"#c81710\" }]\n      .concat(CATEGORY_DEFINITIONS.filter(function (category) {\n        return state.programs.some(function (program) {\n          return program.category === category.key &&\n            (state.stage === \"all\" || program.area === state.stage);\n        });\n      }))\n      .forEach(function (category) {\n        var option = makeElement(\"option\", \"\", category.label);\n        option.value = category.key;\n        categorySelect.appendChild(option);\n      });\n\n    categorySelect.value = state.category;\n  }\n\n  function buildForumControls() {\n    var preferredOrder = [\n      \"business-forum\", \"womens-forum\", \"career-connect\", \"young-kannadigas\",\n      \"literary\", \"spiritual\", \"medical-cme\", \"dental-cme\", \"akka-idol\",\n      \"film-festival\", \"alumni-meet\"\n    ];\n    var forumPrograms = state.programs.filter(function (program) {\n      return program.area === \"forum\";\n    });\n    var groups = {};\n\n    clear(forumSelect);\n\n    if (!forumPrograms.length) {\n      var unavailableOption = makeElement(\"option\", \"\", \"No Forums or Events Available\");\n      unavailableOption.value = \"\";\n      forumSelect.appendChild(unavailableOption);\n      forumSelect.disabled = true;\n      return;\n    }\n\n    forumPrograms.forEach(function (program) {\n      if (!groups[program.forumKey]) {\n        groups[program.forumKey] = { key: program.forumKey, label: program.forumLabel, count: 0 };\n      }\n      groups[program.forumKey].count += 1;\n    });\n\n    var groupList = Object.keys(groups).map(function (key) { return groups[key]; });\n    groupList.sort(function (a, b) {\n      var aIndex = preferredOrder.indexOf(a.key);\n      var bIndex = preferredOrder.indexOf(b.key);\n      if (aIndex === -1) { aIndex = 999; }\n      if (bIndex === -1) { bIndex = 999; }\n      return aIndex - bIndex || a.label.localeCompare(b.label);\n    });\n\n    forumSelect.disabled = false;\n\n    var browseOption = makeElement(\"option\", \"\", \"Browse Forums and Events (\" + forumPrograms.length + \")\");\n    browseOption.value = \"\";\n    forumSelect.appendChild(browseOption);\n\n    [{ key: \"all\", label: \"All Forums and Events\", count: forumPrograms.length }].concat(groupList).forEach(function (group) {\n      var option = makeElement(\"option\", \"\", group.label + \" (\" + group.count + \")\");\n      option.value = group.key;\n      forumSelect.appendChild(option);\n    });\n\n    forumSelect.value = state.forum;\n  }\n\n  function updateControlState() {\n    Array.prototype.forEach.call(dayTabs.querySelectorAll(\"button\"), function (button) {\n      button.setAttribute(\"aria-selected\", button.getAttribute(\"data-day\") === state.day ? \"true\" : \"false\");\n    });\n\n    Array.prototype.forEach.call(stageTabs.querySelectorAll(\"button\"), function (button) {\n      button.setAttribute(\"aria-checked\", !state.forum && button.getAttribute(\"data-stage\") === state.stage ? \"true\" : \"false\");\n    });\n\n    categorySelect.value = state.category;\n    forumSelect.value = state.forum;\n  }\n\n  function filteredPrograms() {\n    var query = state.query.trim().toLowerCase();\n\n    return state.programs.filter(function (program) {\n      if (state.day !== \"all\" && program.day !== state.day) {\n        return false;\n      }\n      if (state.forum) {\n        if (program.area !== \"forum\" || (state.forum !== \"all\" && program.forumKey !== state.forum)) {\n          return false;\n        }\n      } else {\n        if (state.stage !== \"all\" && program.area !== state.stage) {\n          return false;\n        }\n        if (state.category !== \"all\" && program.category !== state.category) {\n          return false;\n        }\n      }\n      if (!query) {\n        return true;\n      }\n\n      return [\n        program.title,\n        program.subtitle,\n        program.venue,\n        program.categoryLabel,\n        program.forumLabel,\n        AREAS[program.area] ? AREAS[program.area].label : \"\"\n      ].some(function (value) {\n        return String(value || \"\").toLowerCase().indexOf(query) !== -1;\n      });\n    });\n  }\n\n  function hasActiveFilters() {\n    return state.stage !== \"all\" ||\n      state.category !== \"all\" ||\n      Boolean(state.forum) ||\n      Boolean(state.query.trim());\n  }\n\n  function updateFilterStatus(programs) {\n    var count = programs.length;\n    var active = hasActiveFilters();\n    var selectedDay = DAYS.find(function (day) {\n      return day.key === state.day;\n    });\n    var label = active\n      ? \"Filtered data\"\n      : (state.day === \"all\" ? \"All schedule data\" : (selectedDay ? selectedDay.weekday : \"Schedule\") + \" schedule\");\n\n    filterStatus.textContent = label + \" \u00b7 \" + count + (count === 1 ? \" program\" : \" programs\");\n    resetFiltersButton.disabled = !active;\n  }\n\n  function renderKitchen() {\n    var dayKey = state.day === \"all\" ? \"fri\" : state.day;\n    var meals = state.programs.filter(function (program) {\n      return program.day === dayKey && program.area === \"kitchen\";\n    });\n\n    clear(kitchen);\n\n    if (state.day === \"all\" || state.stage !== \"all\" || state.category === \"kitchen\" || state.forum || state.query || !meals.length) {\n      kitchen.hidden = true;\n      return;\n    }\n\n    kitchen.hidden = false;\n    kitchen.className = \"akka-schedule__kitchen\" + (state.kitchenExpanded ? \" akka-schedule__kitchen--expanded\" : \"\");\n\n    var head = makeElement(\"div\", \"akka-schedule__kitchen-head\");\n    head.appendChild(makeElement(\"div\", \"akka-schedule__kitchen-title\", \"\u25c6 Kitchen timings\"));\n\n    var toggle = makeElement(\"button\", \"akka-schedule__kitchen-toggle\");\n    var toggleLabel = makeElement(\"span\", \"akka-schedule__kitchen-toggle-label\", state.kitchenExpanded ? \"Hide\" : \"Show\");\n    var switchTrack = makeElement(\"span\", \"akka-schedule__kitchen-switch\");\n    toggle.type = \"button\";\n    toggle.setAttribute(\"role\", \"switch\");\n    toggle.setAttribute(\"aria-checked\", state.kitchenExpanded ? \"true\" : \"false\");\n    toggle.setAttribute(\"aria-controls\", \"akka-schedule-meals\");\n    toggle.setAttribute(\"aria-label\", (state.kitchenExpanded ? \"Hide\" : \"Show\") + \" kitchen schedule\");\n    switchTrack.setAttribute(\"aria-hidden\", \"true\");\n    toggle.appendChild(toggleLabel);\n    toggle.appendChild(switchTrack);\n    toggle.addEventListener(\"click\", function () {\n      state.kitchenExpanded = !state.kitchenExpanded;\n      renderKitchen();\n    });\n    head.appendChild(toggle);\n    kitchen.appendChild(head);\n\n    var grid = makeElement(\"div\", \"akka-schedule__meal-grid\");\n    grid.id = \"akka-schedule-meals\";\n    grid.hidden = !state.kitchenExpanded;\n    kitchen.appendChild(grid);\n\n    if (!state.kitchenExpanded) {\n      return;\n    }\n\n    meals.forEach(function (meal) {\n      var card = makeElement(\"div\", \"akka-schedule__meal-card\");\n      var copy = makeElement(\"div\");\n      copy.appendChild(makeElement(\"div\", \"akka-schedule__meal-name\", meal.title));\n      copy.appendChild(makeElement(\"div\", \"akka-schedule__meal-place\", meal.venue));\n      card.appendChild(copy);\n      card.appendChild(makeElement(\"div\", \"akka-schedule__meal-time\", meal.start + (meal.end ? \"\u2013\" + meal.end : \"\")));\n      grid.appendChild(card);\n    });\n  }\n\n  function makeBadge(label, modifier) {\n    return makeElement(\"span\", \"akka-schedule__badge akka-schedule__badge--\" + modifier, label);\n  }\n\n  function buildProgramRow(program) {\n    var area = AREAS[program.area] || AREAS.main;\n    var statusLower = String(program.status || \"\").trim().toLowerCase();\n    var classes = \"akka-schedule__row akka-schedule__row--\" + program.area;\n\n    if (program.featured) {\n      classes += \" akka-schedule__row--featured\";\n    }\n    if (statusLower === \"cancelled\" || statusLower === \"canceled\") {\n      classes += \" akka-schedule__row--cancelled\";\n    }\n\n    var row = makeElement(\"article\", classes);\n    var timeBlock = makeElement(\"div\", \"akka-schedule__time-block\");\n    timeBlock.appendChild(makeElement(\"div\", \"akka-schedule__time\", program.start));\n    if (program.end) {\n      timeBlock.appendChild(makeElement(\"div\", \"akka-schedule__time-end\", \"to \" + program.end));\n    }\n    row.appendChild(timeBlock);\n\n    var copy = makeElement(\"div\", \"akka-schedule__copy\");\n    var titleLine = makeElement(\"div\", \"akka-schedule__title-line\");\n    titleLine.appendChild(makeElement(\"h3\", \"akka-schedule__program-name\", program.title));\n    if (program.featured) {\n      titleLine.appendChild(makeBadge(\"\u2726 Featured\", \"featured\"));\n    }\n    if (statusLower === \"changed\") {\n      titleLine.appendChild(makeBadge(\"Time changed\", \"changed\"));\n    }\n    if (statusLower === \"tbd\" || statusLower === \"to be confirmed\") {\n      titleLine.appendChild(makeBadge(\"To be confirmed\", \"tbd\"));\n    }\n    if (statusLower === \"cancelled\" || statusLower === \"canceled\") {\n      titleLine.appendChild(makeBadge(\"Cancelled\", \"cancelled\"));\n    }\n    copy.appendChild(titleLine);\n    if (program.subtitle) {\n      copy.appendChild(makeElement(\"p\", \"akka-schedule__subtitle\", program.subtitle));\n    }\n    row.appendChild(copy);\n\n    var meta = makeElement(\"div\", \"akka-schedule__meta\");\n    meta.appendChild(makeElement(\"span\", \"akka-schedule__area-label\", program.categoryLabel || area.short));\n    var venueLabel = (program.area === \"main\" || program.area === \"stage2\") ? area.label : program.venue;\n    if (venueLabel) {\n      var venuePrefix = \"Location:\";\n      var location = makeElement(\"div\", \"akka-schedule__location\");\n      location.appendChild(makeElement(\"span\", \"akka-schedule__venue-prefix\", venuePrefix));\n      location.appendChild(document.createTextNode(venueLabel));\n      if (area.tooltip) {\n        location.setAttribute(\"title\", area.tooltip);\n        location.setAttribute(\"aria-label\", venuePrefix + \" \" + venueLabel + \" \u2014 \" + area.tooltip);\n      }\n      meta.appendChild(location);\n    }\n    row.appendChild(meta);\n\n    return row;\n  }\n\n  function renderAgenda(programs) {\n    clear(agenda);\n\n    if (!programs.length) {\n      var empty = makeElement(\"div\", \"akka-schedule__empty\");\n      var emptyCopy = makeElement(\"div\");\n      emptyCopy.appendChild(makeElement(\"strong\", \"\", \"No matching programs\"));\n      emptyCopy.appendChild(document.createTextNode(\"Try another day, stage, category, forum\/event or search term.\"));\n      empty.appendChild(emptyCopy);\n      agenda.appendChild(empty);\n      return;\n    }\n\n    DAYS.forEach(function (day) {\n      var dayPrograms = programs.filter(function (program) {\n        return program.day === day.key;\n      });\n\n      if (!dayPrograms.length) {\n        return;\n      }\n\n      var section = makeElement(\"section\", \"akka-schedule__day-section\");\n      var heading = makeElement(\"div\", \"akka-schedule__day-heading\");\n      var left = makeElement(\"div\", \"akka-schedule__day-left\");\n      var tile = makeElement(\"div\", \"akka-schedule__date-tile\" + (day.key === \"sat\" ? \" akka-schedule__date-tile--sat\" : \"\"));\n      tile.appendChild(makeElement(\"span\", \"akka-schedule__date-month\", day.month));\n      tile.appendChild(makeElement(\"span\", \"akka-schedule__date-number\", day.date));\n      left.appendChild(tile);\n\n      var dayCopy = makeElement(\"div\");\n      dayCopy.appendChild(makeElement(\"div\", \"akka-schedule__day-kicker\", \"Day \" + day.dayNumber));\n      dayCopy.appendChild(makeElement(\"div\", \"akka-schedule__day-name\", day.weekday));\n      left.appendChild(dayCopy);\n      heading.appendChild(left);\n      heading.appendChild(makeElement(\"div\", \"akka-schedule__count\", dayPrograms.length + (dayPrograms.length === 1 ? \" program\" : \" programs\")));\n      section.appendChild(heading);\n\n      var rows = makeElement(\"div\", \"akka-schedule__rows\");\n      dayPrograms.forEach(function (program) {\n        rows.appendChild(buildProgramRow(program));\n      });\n      section.appendChild(rows);\n      agenda.appendChild(section);\n    });\n  }\n\n  function render() {\n    var programs = filteredPrograms();\n    updateControlState();\n    updateFilterStatus(programs);\n    renderKitchen();\n    renderAgenda(programs);\n  }\n\n  function hasGoogleSheetUrl() {\n    return \/^https:\\\/\\\/\/i.test(GOOGLE_SHEET_CSV_URL) && GOOGLE_SHEET_CSV_URL.indexOf(\"PASTE_\") === -1;\n  }\n\n  function loadSchedule() {\n    loading.hidden = false;\n    agenda.hidden = true;\n    kitchen.hidden = true;\n    hideNotice();\n\n    if (!hasGoogleSheetUrl()) {\n      if (SHOW_SAMPLE_DATA_UNTIL_URL_IS_ADDED) {\n        state.programs = normalizePrograms(SAMPLE_DATA.map(function (row) {\n          return {\n            date: row.date,\n            day: row.day,\n            starttime: row.start,\n            endtime: row.end,\n            programtitle: row.title,\n            subtitle: row.subtitle,\n            schedulearea: row.area,\n            venue: row.venue,\n            featured: row.featured,\n            status: row.status,\n            sortorder: row.sort,\n            published: row.published\n          };\n        }));\n        buildControls();\n        buildForumControls();\n        showNotice(\"Preview data is displayed. Paste the published Data Sheet CSV URL into the code before going live.\", false, false);\n        source.textContent = \"Last updated \u2013 sample preview\";\n        loading.hidden = true;\n        agenda.hidden = false;\n        render();\n      } else {\n        showNotice(\"The Data Sheet CSV URL has not been configured.\", true, false);\n        loading.hidden = true;\n      }\n      return;\n    }\n\n    var separator = GOOGLE_SHEET_CSV_URL.indexOf(\"?\") === -1 ? \"?\" : \"&\";\n    var fetchUrl = GOOGLE_SHEET_CSV_URL + separator + \"akkaCache=\" + String(Date.now());\n    var requestController = typeof AbortController !== \"undefined\" ? new AbortController() : null;\n    var requestOptions = { cache: \"no-store\" };\n    var requestTimer;\n\n    if (requestController) {\n      requestOptions.signal = requestController.signal;\n      requestTimer = window.setTimeout(function () {\n        requestController.abort();\n      }, 15000);\n    }\n\n    fetch(fetchUrl, requestOptions)\n      .then(function (response) {\n        if (!response.ok) {\n          throw new Error(\"Data Sheet returned HTTP \" + response.status);\n        }\n        return response.text();\n      })\n      .then(function (csvText) {\n        if (requestTimer) {\n          window.clearTimeout(requestTimer);\n        }\n\n        var parsedRows = parseCSV(csvText);\n        var objects = csvRowsToObjects(parsedRows);\n        var programs = normalizePrograms(objects);\n\n        if (!programs.length) {\n          throw new Error(\"No published schedule rows were found.\");\n        }\n\n        state.programs = programs;\n        buildControls();\n        buildForumControls();\n        var refreshedAt = new Date();\n        var refreshedDate = refreshedAt.toLocaleDateString(\"en-US\", {\n          month: \"short\",\n          day: \"numeric\",\n          year: \"numeric\",\n          timeZone: \"America\/New_York\"\n        });\n        var refreshedTime = refreshedAt.toLocaleTimeString(\"en-US\", {\n          hour: \"numeric\",\n          minute: \"2-digit\",\n          timeZone: \"America\/New_York\",\n          timeZoneName: \"short\"\n        });\n        source.textContent = \"Last updated \u2013 \" + refreshedDate + \" at \" + refreshedTime;\n        loading.hidden = true;\n        agenda.hidden = false;\n        render();\n      })\n      .catch(function (error) {\n        if (requestTimer) {\n          window.clearTimeout(requestTimer);\n        }\n\n        loading.hidden = true;\n        agenda.hidden = false;\n        clear(agenda);\n        source.textContent = \"Last updated \u2013 unavailable\";\n        showNotice(\n          error && error.name === \"AbortError\"\n            ? \"The Data Sheet took too long to respond. Please try again.\"\n            : \"The schedule could not be loaded right now. \" + error.message,\n          true,\n          true\n        );\n      });\n  }\n\n  searchInput.addEventListener(\"input\", function () {\n    state.query = searchInput.value || \"\";\n    render();\n  });\n\n  categorySelect.addEventListener(\"change\", function () {\n    state.category = categorySelect.value || \"all\";\n    state.forum = \"\";\n    forumSelect.value = \"\";\n    render();\n  });\n\n  forumSelect.addEventListener(\"change\", function () {\n    var selectedForum = forumSelect.value || \"\";\n    var availableOnDay = !selectedForum || state.day === \"all\" || state.programs.some(function (program) {\n      return program.area === \"forum\" && program.day === state.day &&\n        (selectedForum === \"all\" || program.forumKey === selectedForum);\n    });\n\n    if (!availableOnDay) {\n      state.day = \"all\";\n    }\n\n    state.stage = \"all\";\n    state.category = \"all\";\n    state.forum = selectedForum;\n    buildControls();\n    render();\n  });\n\n  resetFiltersButton.addEventListener(\"click\", function () {\n    state.stage = \"all\";\n    state.category = \"all\";\n    state.forum = \"\";\n    state.query = \"\";\n    searchInput.value = \"\";\n    buildControls();\n    render();\n  });\n\n  buildControls();\n  loadSchedule();\n}());\n\/\/ ]]>\n<\/script>\n\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":"<p>Program Schedule ! Schedule notice: Details are subject to change. Please check back for the latest updates. Last updated \u2013 loading\u2026 \u2315 Search programs or venues Stages FeatsNow Live Updates, Networking, and More\u2026 Category All Categories Forums and Events Browse Forums and Events Friday schedule Reset filters Loading program schedule\u2026<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-3714","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Program Schedule - AKKA Silver Jubilee World Kannada Conference 2026<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/akkaonline.org\/2026\/program-schedule\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Program Schedule - AKKA Silver Jubilee World Kannada Conference 2026\" \/>\n<meta property=\"og:description\" content=\"Program Schedule ! Schedule notice: Details are subject to change. Please check back for the latest updates. Last updated \u2013 loading\u2026 \u2315 Search programs or venues Stages FeatsNow Live Updates, Networking, and More\u2026 Category All Categories Forums and Events Browse Forums and Events Friday schedule Reset filters Loading program schedule\u2026\" \/>\n<meta property=\"og:url\" content=\"https:\/\/akkaonline.org\/2026\/program-schedule\/\" \/>\n<meta property=\"og:site_name\" content=\"AKKA Silver Jubilee World Kannada Conference 2026\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-27T21:55:30+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"14 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/akkaonline.org\/2026\/program-schedule\/\",\"url\":\"https:\/\/akkaonline.org\/2026\/program-schedule\/\",\"name\":\"Program Schedule - AKKA Silver Jubilee World Kannada Conference 2026\",\"isPartOf\":{\"@id\":\"https:\/\/akkaonline.org\/2026\/#website\"},\"datePublished\":\"2026-08-26T03:24:01+00:00\",\"dateModified\":\"2026-08-27T21:55:30+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/akkaonline.org\/2026\/program-schedule\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/akkaonline.org\/2026\/program-schedule\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/akkaonline.org\/2026\/program-schedule\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/akkaonline.org\/2026\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Program Schedule\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/akkaonline.org\/2026\/#website\",\"url\":\"https:\/\/akkaonline.org\/2026\/\",\"name\":\"AKKA Silver Jubilee World Kannada Conference 2026\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/akkaonline.org\/2026\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Program Schedule - AKKA Silver Jubilee World Kannada Conference 2026","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/akkaonline.org\/2026\/program-schedule\/","og_locale":"en_US","og_type":"article","og_title":"Program Schedule - AKKA Silver Jubilee World Kannada Conference 2026","og_description":"Program Schedule ! Schedule notice: Details are subject to change. Please check back for the latest updates. Last updated \u2013 loading\u2026 \u2315 Search programs or venues Stages FeatsNow Live Updates, Networking, and More\u2026 Category All Categories Forums and Events Browse Forums and Events Friday schedule Reset filters Loading program schedule\u2026","og_url":"https:\/\/akkaonline.org\/2026\/program-schedule\/","og_site_name":"AKKA Silver Jubilee World Kannada Conference 2026","article_modified_time":"2026-08-27T21:55:30+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"14 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/akkaonline.org\/2026\/program-schedule\/","url":"https:\/\/akkaonline.org\/2026\/program-schedule\/","name":"Program Schedule - AKKA Silver Jubilee World Kannada Conference 2026","isPartOf":{"@id":"https:\/\/akkaonline.org\/2026\/#website"},"datePublished":"2026-08-26T03:24:01+00:00","dateModified":"2026-08-27T21:55:30+00:00","breadcrumb":{"@id":"https:\/\/akkaonline.org\/2026\/program-schedule\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/akkaonline.org\/2026\/program-schedule\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/akkaonline.org\/2026\/program-schedule\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/akkaonline.org\/2026\/"},{"@type":"ListItem","position":2,"name":"Program Schedule"}]},{"@type":"WebSite","@id":"https:\/\/akkaonline.org\/2026\/#website","url":"https:\/\/akkaonline.org\/2026\/","name":"AKKA Silver Jubilee World Kannada Conference 2026","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/akkaonline.org\/2026\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/akkaonline.org\/2026\/wp-json\/wp\/v2\/pages\/3714","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/akkaonline.org\/2026\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/akkaonline.org\/2026\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/akkaonline.org\/2026\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/akkaonline.org\/2026\/wp-json\/wp\/v2\/comments?post=3714"}],"version-history":[{"count":103,"href":"https:\/\/akkaonline.org\/2026\/wp-json\/wp\/v2\/pages\/3714\/revisions"}],"predecessor-version":[{"id":3875,"href":"https:\/\/akkaonline.org\/2026\/wp-json\/wp\/v2\/pages\/3714\/revisions\/3875"}],"wp:attachment":[{"href":"https:\/\/akkaonline.org\/2026\/wp-json\/wp\/v2\/media?parent=3714"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}