.nc-text-rich-scroll::-webkit-scrollbar-thumb{background-color:#0000}.nc-text-rich-scroll:hover::-webkit-scrollbar-thumb{--un-bg-opacity:1;background-color:rgba(var(--rgb-color-gray-200), var(--un-bg-opacity))}.nc-rich-text-embed .ProseMirror{border-color:#0000!important;max-height:100%!important}.nc-rich-text-embed:not(.nc-form-rich-text-field):not(.nc-rich-text-grid) .ProseMirror{min-height:8rem}.nc-rich-text-embed.nc-form-rich-text-field .ProseMirror{padding:0}.nc-rich-text-embed.nc-form-rich-text-field.readonly ul[data-type=taskList] li input[type=checkbox]{background-color:var(--nc-bg-gray-dark)!important}.nc-rich-text-embed.nc-form-rich-text-field.readonly ul[data-type=taskList] li input[type=checkbox]:not(:checked){--un-border-opacity:1!important;border-color:rgba(var(--rgb-color-gray-400), var(--un-border-opacity))!important}.nc-rich-text-embed.nc-form-rich-text-field.readonly ul[data-type=taskList] li input[type=checkbox]:focus{box-shadow:none!important;background-color:var(--nc-bg-gray-dark)!important}.nc-rich-text-embed.readonly .nc-textarea-rich-editor .ProseMirror{resize:none;white-space:pre-line}.nc-rich-text-embed.allow-vertical-resize:not(.readonly) .ProseMirror{--scrollbar-track:transparent;--scrollbar-thumb:#e7e7e9;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);overflow:overlay;scrollbar-width:auto;scrollbar-width:thin;resize:vertical;min-width:100%;overflow:hidden auto;max-height:min(800px,100vh - 200px)!important}.nc-rich-text-embed.allow-vertical-resize:not(.readonly) .ProseMirror::-webkit-scrollbar{width:8px;height:8px}.nc-rich-text-embed.allow-vertical-resize:not(.readonly) .ProseMirror::-webkit-scrollbar-track{background-color:var(--scrollbar-track)}.nc-rich-text-embed.allow-vertical-resize:not(.readonly) .ProseMirror::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb)}.dark .nc-rich-text-embed.allow-vertical-resize:not(.readonly) .ProseMirror{--scrollbar-thumb:#6a7184}.nc-rich-text-embed.allow-vertical-resize:not(.readonly) .ProseMirror::-webkit-scrollbar-thumb:hover{--scrollbar-thumb:#d5d5d9}.dark .nc-rich-text-embed.allow-vertical-resize:not(.readonly) .ProseMirror::-webkit-scrollbar-thumb:hover{--scrollbar-thumb:#4a5268}@supports (height:100dvh){.nc-rich-text-embed.allow-vertical-resize:not(.readonly) .ProseMirror{max-height:min(800px,100dvh - 200px)!important}}.nc-rich-text-full{padding-left:.75rem;padding-right:.75rem}.nc-rich-text-full .ProseMirror{resize:both;min-width:256px;max-width:min(1256px,100vw - 126px);min-height:215px;max-height:min(797px,100vh - 170px);overflow:hidden auto;scrollbar-width:thin!important;width:min(1256px,100vw - 124px)!important;height:min(797px,100dvh - 170px)!important;padding:.5rem!important}@supports (height:100dvh){.nc-rich-text-full .ProseMirror{max-height:min(797px,100dvh - 170px)}}@media (width<=767px){.nc-rich-text-full .ProseMirror{min-width:100%;max-width:min(1256px,100vw - 58px)}}.nc-rich-text-full.readonly .ProseMirror{--un-bg-opacity:1;background-color:rgba(var(--rgb-color-gray-50), var(--un-bg-opacity))}.nc-textarea-rich-editor.nc-rich-truncate .tiptap.ProseMirror{word-break:break-word;-webkit-box-orient:vertical;max-width:100%;display:-webkit-box}.nc-textarea-rich-editor.nc-rich-truncate.nc-line-clamp-1 .tiptap.ProseMirror{-webkit-line-clamp:1}.nc-textarea-rich-editor.nc-rich-truncate.nc-line-clamp-2 .tiptap.ProseMirror{-webkit-line-clamp:2}.nc-textarea-rich-editor.nc-rich-truncate.nc-line-clamp-3 .tiptap.ProseMirror{-webkit-line-clamp:3}.nc-textarea-rich-editor.nc-rich-truncate.nc-line-clamp-4 .tiptap.ProseMirror{-webkit-line-clamp:4}.nc-textarea-rich-editor .tiptap p.is-editor-empty:first-child:before{color:#9aa2af;content:attr(data-placeholder);float:left;pointer-events:none;height:0}.nc-textarea-rich-editor .ProseMirror{--un-border-opacity:1;border-width:1px;border-color:rgba(var(--rgb-color-gray-200), var(--un-border-opacity));border-radius:.5rem;flex-grow:1;padding-top:.375rem}.nc-textarea-rich-editor .ProseMirror>*{margin-left:.25rem}.nc-textarea-rich-editor .ProseMirror-focused{--un-border-opacity:1;border-color:rgba(var(--rgb-color-brand-500), var(--un-border-opacity));outline:none}.nc-form-field-bubble-menu-wrapper{z-index:50;border-radius:.5rem;position:absolute;bottom:-2.25rem;left:50%;transform:translate(-50%);box-shadow:0 8px 8px -4px #0000000a,0 20px 24px -4px #0000001a}

/* ---------------------------------------------------------------------------
 * 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; }
