/*
 Gabriel Messenger V63 - Indic / Indian language readable font layer
 Applies only to non-English language pages/admin screens through html[lang] and body[data-lang].
 English remains controlled by existing CMS theme font settings.
 No binary font files are bundled; fonts load through the existing Google Fonts embed link with local system fallbacks.
*/

:root {
  --gm-ta-font: "Noto Serif Tamil", "Noto Sans Tamil", "Latha", "Vijaya", "Nirmala UI", system-ui, sans-serif;
  --gm-te-font: "Noto Serif Telugu", "Noto Sans Telugu", "Gautami", "Vani", "Nirmala UI", system-ui, sans-serif;
  --gm-ml-font: "Noto Serif Malayalam", "Noto Sans Malayalam", "Kartika", "Nirmala UI", system-ui, sans-serif;
  --gm-hi-font: "Noto Serif Devanagari", "Noto Sans Devanagari", "Mangal", "Nirmala UI", system-ui, sans-serif;
  --gm-kn-font: "Noto Serif Kannada", "Noto Sans Kannada", "Tunga", "Nirmala UI", system-ui, sans-serif;
  --gm-indic-body-size: 1.055rem;
  --gm-indic-content-size: 1.105rem;
  --gm-indic-admin-control-size: 1.04rem;
  --gm-indic-line-height: 1.86;
  --gm-indic-heading-line-height: 1.38;
}

html[lang^="ta"], body[data-lang^="ta"] { --gm-active-indic-font: var(--gm-ta-font); }
html[lang^="te"], body[data-lang^="te"] { --gm-active-indic-font: var(--gm-te-font); }
html[lang^="ml"], body[data-lang^="ml"] { --gm-active-indic-font: var(--gm-ml-font); }
html[lang^="hi"], body[data-lang^="hi"] { --gm-active-indic-font: var(--gm-hi-font); }
html[lang^="kn"], body[data-lang^="kn"] { --gm-active-indic-font: var(--gm-kn-font); }

/* Public site: only non-English pages */
html[lang^="ta"] body,
html[lang^="te"] body,
html[lang^="ml"] body,
html[lang^="hi"] body,
html[lang^="kn"] body,
body[data-lang^="ta"],
body[data-lang^="te"],
body[data-lang^="ml"],
body[data-lang^="hi"],
body[data-lang^="kn"] {
  font-family: var(--gm-active-indic-font);
  font-size: var(--gm-indic-body-size);
  line-height: var(--gm-indic-line-height);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-kerning: normal;
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: none;
}

/* Main content produced by ChatGPT / rich text editor */
html[lang^="ta"] .gm-content-body,
html[lang^="te"] .gm-content-body,
html[lang^="ml"] .gm-content-body,
html[lang^="hi"] .gm-content-body,
html[lang^="kn"] .gm-content-body,
html[lang^="ta"] .gm-rich-content,
html[lang^="te"] .gm-rich-content,
html[lang^="ml"] .gm-rich-content,
html[lang^="hi"] .gm-rich-content,
html[lang^="kn"] .gm-rich-content,
html[lang^="ta"] article,
html[lang^="te"] article,
html[lang^="ml"] article,
html[lang^="hi"] article,
html[lang^="kn"] article,
body[data-lang^="ta"] .gm-content-body,
body[data-lang^="te"] .gm-content-body,
body[data-lang^="ml"] .gm-content-body,
body[data-lang^="hi"] .gm-content-body,
body[data-lang^="kn"] .gm-content-body,
body[data-lang^="ta"] .gm-rich-content,
body[data-lang^="te"] .gm-rich-content,
body[data-lang^="ml"] .gm-rich-content,
body[data-lang^="hi"] .gm-rich-content,
body[data-lang^="kn"] .gm-rich-content {
  font-family: var(--gm-active-indic-font);
  font-size: var(--gm-indic-content-size);
  line-height: var(--gm-indic-line-height);
  letter-spacing: 0.002em;
}

/* Headings in Indian languages need more vertical room than English */
html[lang^="ta"] h1, html[lang^="ta"] h2, html[lang^="ta"] h3, html[lang^="ta"] h4,
html[lang^="te"] h1, html[lang^="te"] h2, html[lang^="te"] h3, html[lang^="te"] h4,
html[lang^="ml"] h1, html[lang^="ml"] h2, html[lang^="ml"] h3, html[lang^="ml"] h4,
html[lang^="hi"] h1, html[lang^="hi"] h2, html[lang^="hi"] h3, html[lang^="hi"] h4,
html[lang^="kn"] h1, html[lang^="kn"] h2, html[lang^="kn"] h3, html[lang^="kn"] h4,
body[data-lang^="ta"] h1, body[data-lang^="ta"] h2, body[data-lang^="ta"] h3, body[data-lang^="ta"] h4,
body[data-lang^="te"] h1, body[data-lang^="te"] h2, body[data-lang^="te"] h3, body[data-lang^="te"] h4,
body[data-lang^="ml"] h1, body[data-lang^="ml"] h2, body[data-lang^="ml"] h3, body[data-lang^="ml"] h4,
body[data-lang^="hi"] h1, body[data-lang^="hi"] h2, body[data-lang^="hi"] h3, body[data-lang^="hi"] h4,
body[data-lang^="kn"] h1, body[data-lang^="kn"] h2, body[data-lang^="kn"] h3, body[data-lang^="kn"] h4 {
  font-family: var(--gm-active-indic-font);
  line-height: var(--gm-indic-heading-line-height);
  letter-spacing: 0;
  word-break: normal;
  overflow-wrap: break-word;
}

/* Paragraph/list readability for sermons, Bible quotes, blogs and long ChatGPT content */
html[lang^="ta"] p, html[lang^="ta"] li, html[lang^="ta"] blockquote,
html[lang^="te"] p, html[lang^="te"] li, html[lang^="te"] blockquote,
html[lang^="ml"] p, html[lang^="ml"] li, html[lang^="ml"] blockquote,
html[lang^="hi"] p, html[lang^="hi"] li, html[lang^="hi"] blockquote,
html[lang^="kn"] p, html[lang^="kn"] li, html[lang^="kn"] blockquote,
body[data-lang^="ta"] p, body[data-lang^="ta"] li, body[data-lang^="ta"] blockquote,
body[data-lang^="te"] p, body[data-lang^="te"] li, body[data-lang^="te"] blockquote,
body[data-lang^="ml"] p, body[data-lang^="ml"] li, body[data-lang^="ml"] blockquote,
body[data-lang^="hi"] p, body[data-lang^="hi"] li, body[data-lang^="hi"] blockquote,
body[data-lang^="kn"] p, body[data-lang^="kn"] li, body[data-lang^="kn"] blockquote {
  line-height: var(--gm-indic-line-height);
  margin-bottom: 1.05em;
}

/* Admin CMS: make editing fields readable only when the selected admin language is non-English */
body.gm-admin-body[data-lang^="ta"] input,
body.gm-admin-body[data-lang^="ta"] textarea,
body.gm-admin-body[data-lang^="ta"] select,
body.gm-admin-body[data-lang^="ta"] .form-control,
body.gm-admin-body[data-lang^="te"] input,
body.gm-admin-body[data-lang^="te"] textarea,
body.gm-admin-body[data-lang^="te"] select,
body.gm-admin-body[data-lang^="te"] .form-control,
body.gm-admin-body[data-lang^="ml"] input,
body.gm-admin-body[data-lang^="ml"] textarea,
body.gm-admin-body[data-lang^="ml"] select,
body.gm-admin-body[data-lang^="ml"] .form-control,
body.gm-admin-body[data-lang^="hi"] input,
body.gm-admin-body[data-lang^="hi"] textarea,
body.gm-admin-body[data-lang^="hi"] select,
body.gm-admin-body[data-lang^="hi"] .form-control,
body.gm-admin-body[data-lang^="kn"] input,
body.gm-admin-body[data-lang^="kn"] textarea,
body.gm-admin-body[data-lang^="kn"] select,
body.gm-admin-body[data-lang^="kn"] .form-control {
  font-family: var(--gm-active-indic-font);
  font-size: var(--gm-indic-admin-control-size);
  line-height: 1.72;
}

/* Rich editor areas if TinyMCE/CKEditor/contenteditable is used later */
body[data-lang^="ta"] .tox-edit-area__iframe,
body[data-lang^="te"] .tox-edit-area__iframe,
body[data-lang^="ml"] .tox-edit-area__iframe,
body[data-lang^="hi"] .tox-edit-area__iframe,
body[data-lang^="kn"] .tox-edit-area__iframe,
body[data-lang^="ta"] .ck-content,
body[data-lang^="te"] .ck-content,
body[data-lang^="ml"] .ck-content,
body[data-lang^="hi"] .ck-content,
body[data-lang^="kn"] .ck-content,
body[data-lang^="ta"] [contenteditable="true"],
body[data-lang^="te"] [contenteditable="true"],
body[data-lang^="ml"] [contenteditable="true"],
body[data-lang^="hi"] [contenteditable="true"],
body[data-lang^="kn"] [contenteditable="true"] {
  font-family: var(--gm-active-indic-font) !important;
  font-size: var(--gm-indic-content-size);
  line-height: var(--gm-indic-line-height);
}

/* Keep icons, code and numbers clean */
html[lang^="ta"] .bi, html[lang^="te"] .bi, html[lang^="ml"] .bi, html[lang^="hi"] .bi, html[lang^="kn"] .bi,
body[data-lang^="ta"] .bi, body[data-lang^="te"] .bi, body[data-lang^="ml"] .bi, body[data-lang^="hi"] .bi, body[data-lang^="kn"] .bi {
  font-family: "bootstrap-icons" !important;
}

html[lang^="ta"] code, html[lang^="te"] code, html[lang^="ml"] code, html[lang^="hi"] code, html[lang^="kn"] code,
body[data-lang^="ta"] code, body[data-lang^="te"] code, body[data-lang^="ml"] code, body[data-lang^="hi"] code, body[data-lang^="kn"] code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.94em;
}

/* Mobile readability: prevent cramped Tamil/Indic rendering */
@media (max-width: 768px) {
  html[lang^="ta"] body,
  html[lang^="te"] body,
  html[lang^="ml"] body,
  html[lang^="hi"] body,
  html[lang^="kn"] body,
  body[data-lang^="ta"],
  body[data-lang^="te"],
  body[data-lang^="ml"],
  body[data-lang^="hi"],
  body[data-lang^="kn"] {
    font-size: 1.03rem;
  }

  html[lang^="ta"] .gm-content-body,
  html[lang^="te"] .gm-content-body,
  html[lang^="ml"] .gm-content-body,
  html[lang^="hi"] .gm-content-body,
  html[lang^="kn"] .gm-content-body,
  body[data-lang^="ta"] .gm-content-body,
  body[data-lang^="te"] .gm-content-body,
  body[data-lang^="ml"] .gm-content-body,
  body[data-lang^="hi"] .gm-content-body,
  body[data-lang^="kn"] .gm-content-body {
    font-size: 1.065rem;
    line-height: 1.82;
  }
}


/* V135 mobile non-sticky header */
@media (max-width:767.98px){
header,.top-header,.main-header,.navbar,.navbar-wrapper,.sticky-top,.fixed-top,.gm-header,.gm-navbar{
position:static !important;
top:auto !important;
}
body{padding-top:0!important;}
html{scroll-padding-top:0!important;}
}
