.vc-chrome-body{--un-bg-opacity:1!important;background-color:rgba(var(--rgb-color-base-white), var(--un-bg-opacity))!important}.vc-chrome-body .vc-input__input{--un-border-opacity:1!important;border-width:1px!important;border-color:rgba(var(--rgb-color-gray-50), var(--un-border-opacity))!important;--un-shadow:0 0 var(--un-shadow-color,#0000)!important;box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow)!important;border-radius:.5rem!important}.dark .vc-chrome-body .vc-chrome-toggle-icon-highlight{--un-bg-opacity:1;background-color:rgba(var(--rgb-color-gray-300), var(--un-bg-opacity))}

/* ---------------------------------------------------------------------------
 * Vazirmatn overlay for NocoDB (nbtx eval lab).
 *
 * Appended to every built CSS chunk so it survives per-route code-splitting and
 * needs no proxy. One variable font file covers weights 100-900.
 *
 * NocoDB's grid is CANVAS, so this reaches only the DOM; the JS font literals
 * the grid feeds to ctx.font are patched separately in the Dockerfile.
 *
 * The * rule is blunt because NocoDB (Tailwind + Vuetify) sets font-family on
 * countless elements. Icon fonts, monospace and KaTeX are restored afterwards
 * and win on specificity, not order.
 * ------------------------------------------------------------------------- */

@font-face {
  font-family: 'Vazirmatn';
  src: url('/_nuxt/vazirmatn.woff2') format('woff2-variations');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root { --nc-font: 'Vazirmatn', Inter, sans-serif; }

* {
  font-family: 'Vazirmatn', Inter, -apple-system, BlinkMacSystemFont,
               'Segoe UI', Roboto, sans-serif !important;
}

/* Icon fonts must never be re-fonted (higher specificity than *). */
.codicon, [class*="codicon"] { font-family: codicon !important; }
.material-symbols-outlined, .material-symbols, [class*="material-symbols"],
.material-icons {
  font-family: 'Material Symbols', 'Material Symbols Outlined', 'Material Icons' !important;
}
[class*="mdi"], .mdi { font-family: 'Material Design Icons' !important; }

/* Code stays monospace. */
code, pre, kbd, samp, tt,
[class*="mono"], [class*="monospace"],
.cm-editor, .cm-editor *, .cm-content, .cm-content *,
.monaco-editor, .monaco-editor * {
  font-family: 'JetBrainsMono', 'DM Mono', ui-monospace, SFMono-Regular,
               Menlo, Consolas, 'Liberation Mono', monospace !important;
}

/* KaTeX ships metrics-critical faces; overriding them breaks math layout. */
.katex, .katex * { font-family: KaTeX_Main, 'Times New Roman', serif !important; }
.katex .mathdefault, .katex .mathit { font-family: KaTeX_Math, serif !important; }

/* Preserve NocoDB's user-selectable serif/mono doc typography options. */
.nc-doc-font-serif .nc-doc-editor-content.ProseMirror,
.nc-doc-font-serif .nc-doc-editor-content.ProseMirror * {
  font-family: Georgia, 'Times New Roman', Times, serif !important;
}
.nc-doc-font-mono .nc-doc-editor-content.ProseMirror,
.nc-doc-font-mono .nc-doc-editor-content.ProseMirror * {
  font-family: 'JetBrainsMono', ui-monospace, monospace !important;
}

/* Persian reads better with slightly looser leading than Inter's Latin default. */
body { line-height: 1.6; }
