/* ==========================================================================
   i18n Font Loading — Indic Language Support
   Loaded only when html[lang] matches; unicode-range ensures browser
   only downloads glyphs actually used on the page.
   ========================================================================== */

/* ---------------------------------------------------------------------------
   Noto Sans Telugu (variable font — covers 400..700)
   Downloaded from Google Fonts, self-hosted for reliability.
   --------------------------------------------------------------------------- */
@font-face {
  font-family: 'Noto Sans Telugu';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('NotoSansTelugu-Regular.woff2') format('woff2');
  unicode-range: U+0951-0952, U+0964-0965, U+0C00-0C7F, U+1CDA, U+1CF2, U+200C-200D, U+25CC;
}

@font-face {
  font-family: 'Noto Sans Telugu';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('NotoSansTelugu-Regular.woff2') format('woff2');
  unicode-range: U+0951-0952, U+0964-0965, U+0C00-0C7F, U+1CDA, U+1CF2, U+200C-200D, U+25CC;
}

/* ---------------------------------------------------------------------------
   Noto Sans Devanagari (Hindi + Marathi)
   Downloaded from Google Fonts, self-hosted for reliability.
   --------------------------------------------------------------------------- */
@font-face {
  font-family: 'Noto Sans Devanagari';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('NotoSansDevanagari-Regular.woff2') format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}

@font-face {
  font-family: 'Noto Sans Devanagari';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('NotoSansDevanagari-Regular.woff2') format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}

/* ---------------------------------------------------------------------------
   Noto Sans Tamil
   Downloaded from Google Fonts, self-hosted for reliability.
   --------------------------------------------------------------------------- */
@font-face {
  font-family: 'Noto Sans Tamil';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('NotoSansTamil-Regular.woff2') format('woff2');
  unicode-range: U+0964-0965, U+0B82-0BFA, U+200C-200D, U+20B9, U+25CC;
}

@font-face {
  font-family: 'Noto Sans Tamil';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('NotoSansTamil-Regular.woff2') format('woff2');
  unicode-range: U+0964-0965, U+0B82-0BFA, U+200C-200D, U+20B9, U+25CC;
}

/* ---------------------------------------------------------------------------
   Noto Sans Kannada
   Downloaded from Google Fonts, self-hosted for reliability.
   --------------------------------------------------------------------------- */
@font-face {
  font-family: 'Noto Sans Kannada';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('NotoSansKannada-Regular.woff2') format('woff2');
  unicode-range: U+0964-0965, U+0C80-0CF2, U+200C-200D, U+20B9, U+25CC;
}

@font-face {
  font-family: 'Noto Sans Kannada';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('NotoSansKannada-Regular.woff2') format('woff2');
  unicode-range: U+0964-0965, U+0C80-0CF2, U+200C-200D, U+20B9, U+25CC;
}

/* ---------------------------------------------------------------------------
   Language-conditional font stacks
   Each block activates ONLY when html[lang] is set to the matching locale.
   --------------------------------------------------------------------------- */

/* Telugu */
html[lang="te"] body,
html[lang="te"] h1,
html[lang="te"] h2,
html[lang="te"] h3,
html[lang="te"] h4,
html[lang="te"] p,
html[lang="te"] span,
html[lang="te"] a,
html[lang="te"] button,
html[lang="te"] input,
html[lang="te"] select,
html[lang="te"] textarea,
html[lang="te"] label {
  font-family: 'Noto Sans Telugu', 'Noto Sans', system-ui, sans-serif;
}

/* Hindi / Devanagari */
html[lang="hi"] body,
html[lang="hi"] h1, html[lang="hi"] h2, html[lang="hi"] h3, html[lang="hi"] h4,
html[lang="hi"] p, html[lang="hi"] span, html[lang="hi"] a, html[lang="hi"] button,
html[lang="hi"] input, html[lang="hi"] select, html[lang="hi"] textarea, html[lang="hi"] label {
  font-family: 'Noto Sans Devanagari', 'Noto Sans', system-ui, sans-serif;
}

/* Tamil */
html[lang="ta"] body,
html[lang="ta"] h1, html[lang="ta"] h2, html[lang="ta"] h3, html[lang="ta"] h4,
html[lang="ta"] p, html[lang="ta"] span, html[lang="ta"] a, html[lang="ta"] button,
html[lang="ta"] input, html[lang="ta"] select, html[lang="ta"] textarea, html[lang="ta"] label {
  font-family: 'Noto Sans Tamil', 'Noto Sans', system-ui, sans-serif;
}

/* Kannada */
html[lang="kn"] body,
html[lang="kn"] h1, html[lang="kn"] h2, html[lang="kn"] h3, html[lang="kn"] h4,
html[lang="kn"] p, html[lang="kn"] span, html[lang="kn"] a, html[lang="kn"] button,
html[lang="kn"] input, html[lang="kn"] select, html[lang="kn"] textarea, html[lang="kn"] label {
  font-family: 'Noto Sans Kannada', 'Noto Sans', system-ui, sans-serif;
}

/* Malayalam (future — add NotoSansMalayalam woff2 when needed) */
html[lang="ml"] body,
html[lang="ml"] h1, html[lang="ml"] h2, html[lang="ml"] h3, html[lang="ml"] h4,
html[lang="ml"] p, html[lang="ml"] span, html[lang="ml"] a, html[lang="ml"] button,
html[lang="ml"] input, html[lang="ml"] select, html[lang="ml"] textarea, html[lang="ml"] label {
  font-family: 'Noto Sans Malayalam', 'Noto Sans', system-ui, sans-serif;
}

/* Bengali (future — add NotoSansBengali woff2 when needed) */
html[lang="bn"] body,
html[lang="bn"] h1, html[lang="bn"] h2, html[lang="bn"] h3, html[lang="bn"] h4,
html[lang="bn"] p, html[lang="bn"] span, html[lang="bn"] a, html[lang="bn"] button,
html[lang="bn"] input, html[lang="bn"] select, html[lang="bn"] textarea, html[lang="bn"] label {
  font-family: 'Noto Sans Bengali', 'Noto Sans', system-ui, sans-serif;
}

/* Gujarati (future — add NotoSansGujarati woff2 when needed) */
html[lang="gu"] body,
html[lang="gu"] h1, html[lang="gu"] h2, html[lang="gu"] h3, html[lang="gu"] h4,
html[lang="gu"] p, html[lang="gu"] span, html[lang="gu"] a, html[lang="gu"] button,
html[lang="gu"] input, html[lang="gu"] select, html[lang="gu"] textarea, html[lang="gu"] label {
  font-family: 'Noto Sans Gujarati', 'Noto Sans', system-ui, sans-serif;
}

/* Punjabi / Gurmukhi (future — add NotoSansGurmukhi woff2 when needed) */
html[lang="pa"] body,
html[lang="pa"] h1, html[lang="pa"] h2, html[lang="pa"] h3, html[lang="pa"] h4,
html[lang="pa"] p, html[lang="pa"] span, html[lang="pa"] a, html[lang="pa"] button,
html[lang="pa"] input, html[lang="pa"] select, html[lang="pa"] textarea, html[lang="pa"] label {
  font-family: 'Noto Sans Gurmukhi', 'Noto Sans', system-ui, sans-serif;
}

/* Odia (future — add NotoSansOriya woff2 when needed) */
html[lang="or"] body,
html[lang="or"] h1, html[lang="or"] h2, html[lang="or"] h3, html[lang="or"] h4,
html[lang="or"] p, html[lang="or"] span, html[lang="or"] a, html[lang="or"] button,
html[lang="or"] input, html[lang="or"] select, html[lang="or"] textarea, html[lang="or"] label {
  font-family: 'Noto Sans Oriya', 'Noto Sans', system-ui, sans-serif;
}

/* Marathi uses Devanagari script — same font as Hindi */
html[lang="mr"] body,
html[lang="mr"] h1, html[lang="mr"] h2, html[lang="mr"] h3, html[lang="mr"] h4,
html[lang="mr"] p, html[lang="mr"] span, html[lang="mr"] a, html[lang="mr"] button,
html[lang="mr"] input, html[lang="mr"] select, html[lang="mr"] textarea, html[lang="mr"] label {
  font-family: 'Noto Sans Devanagari', 'Noto Sans', system-ui, sans-serif;
}
