@font-face {
    font-display: swap;
    font-family: "Gemonio Forms Open Sans";
    font-style: normal;
    font-weight: 400;
    src: url("fonts/open-sans-latin-400-normal.woff2") format("woff2");
}

@font-face {
    font-display: swap;
    font-family: "Gemonio Forms Open Sans";
    font-style: normal;
    font-weight: 500;
    src: url("fonts/open-sans-latin-500-normal.woff2") format("woff2");
}

@font-face {
    font-display: swap;
    font-family: "Gemonio Forms Open Sans";
    font-style: normal;
    font-weight: 600;
    src: url("fonts/open-sans-latin-600-normal.woff2") format("woff2");
}

:root {
    --gf-ui-font: var(--gemonio-font-ui, "Gemonio Forms Open Sans", sans-serif);
    --gf-data-font: var(--gemonio-font-data, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    --gf-weight-normal: var(--gemonio-weight-normal, 400);
    --gf-weight-medium: var(--gemonio-weight-medium, 500);
    --gf-weight-strong: var(--gemonio-weight-strong, 600);
}

#gemonio-builder,
.gemonio-forms-nav,
.gemonio-forms-settings {
    font-family: var(--gf-ui-font);
    font-weight: var(--gf-weight-normal);
}

#gemonio-builder button,
#gemonio-builder input,
#gemonio-builder select,
#gemonio-builder textarea,
.gemonio-forms-nav .nav-tab {
    font-family: inherit;
}

.gemonio-forms-settings button,
.gemonio-forms-settings input {
    font-family: inherit;
}

#gemonio-builder .gf-tabs button,
#gemonio-builder .gf-grid label,
#gemonio-builder .gf-meta,
#gemonio-builder .gf-logic-warning,
.gemonio-forms-nav .nav-tab-active {
    font-weight: var(--gf-weight-medium);
}

#gemonio-builder .gf-field-summary > strong,
#gemonio-builder .gf-type-badge,
#gemonio-builder .gf-logic-number,
#gemonio-builder .gf-logic-action,
#gemonio-builder .gf-logic-target {
    font-weight: var(--gf-weight-strong);
}

#gemonio-builder .gf-grid label > span small,
#gemonio-builder .gf-check small {
    font-weight: var(--gf-weight-normal);
}

#gemonio-builder .gf-code-editor-label .CodeMirror,
#gemonio-builder .gf-code-editor-label .CodeMirror pre,
#gemonio-builder .gf-code-editor-label .CodeMirror-line,
#gemonio-builder .gf-code-editor-label .CodeMirror-linenumber,
#gemonio-builder .gf-code-editor-label .CodeMirror span {
    font-weight: var(--gf-weight-normal);
}

/* Gemonio data/logic typography: structure uses Mono, language stays Open Sans. */
#gemonio-builder .gf-field-summary > strong,
#gemonio-builder .gf-field-head > code,
#gemonio-builder .gf-grid label > span:first-child,
#gemonio-builder .gf-logic-number,
#gemonio-builder .gf-logic-action,
#gemonio-builder .gf-logic-target,
#gemonio-builder .gf-logic-text,
#gemonio-builder .gf-logic-count,
#gemonio-builder .gf-logic-sentence,
#gemonio-builder .gf-rule select,
#gemonio-builder .gf-rule input,
#gemonio-builder .gf-set-value-row select,
#gemonio-builder .gf-set-value-row input,
#gemonio-builder input[data-k="id"],
.gemonio-forms-settings .gf-key-field input,
.gf-diagnostics-report textarea,
.gf-color-hex {
    font-family: var(--gf-data-font);
    font-variant-numeric: tabular-nums;
    font-weight: var(--gf-weight-normal);
}

#gemonio-builder .gf-field-summary > strong,
#gemonio-builder .gf-grid label > span:first-child,
#gemonio-builder .gf-logic-action,
#gemonio-builder .gf-logic-target {
    font-weight: var(--gf-weight-medium);
}
