/*
 * GITASIS panel typography contract.
 *
 * The document root stays at the existing 14px-equivalent baseline so rem
 * based layout geometry does not change with the user's typography choice.
 * Only semantic font tokens vary between presets.
 */

:root {
  --vt-font-body: 1rem;
  --vt-font-control: 0.96rem;
  --vt-font-button: 1rem;
  --vt-font-micro: 0.714286rem;
  --vt-font-caption: 0.785714rem;
  --vt-font-small: 0.857143rem;
  --vt-font-meta: 0.875rem;
  --vt-font-grid: 1rem;
  --vt-font-grid-header: 1rem;
  --vt-font-chat-message: 1.15rem;
  --vt-font-chat-meta: 0.875rem;
  --vt-font-h1: 2rem;
  --vt-font-h2: 1.74rem;
  --vt-font-h3: 1.51rem;
  --vt-font-h4: 1.32rem;
  --vt-font-h5: 1.14rem;
  --vt-font-h6: 1rem;
  --vt-font-icon-inline: 1.2em;
  --vt-font-icon-action: 1.3em;
  --vt-font-kpi: 2.2em;
  --vt-font-dropzone-icon: 5.714286rem;
  --vt-font-loader-dot: 0.714286rem;
}

html,
html[data-vt-font-size="minimum"] {
  --vt-font-body: 1rem;
  --vt-font-control: 0.96rem;
  --vt-font-button: 1rem;
  --vt-font-micro: 0.714286rem;
  --vt-font-caption: 0.785714rem;
  --vt-font-small: 0.857143rem;
  --vt-font-meta: 0.875rem;
  --vt-font-grid: 1rem;
  --vt-font-grid-header: 1rem;
  --vt-font-chat-message: 1.15rem;
  --vt-font-chat-meta: 0.875rem;
  --vt-font-h1: 2rem;
  --vt-font-h2: 1.74rem;
  --vt-font-h3: 1.51rem;
  --vt-font-h4: 1.32rem;
  --vt-font-h5: 1.14rem;
  --vt-font-h6: 1rem;
}

html[data-vt-font-size="normal"] {
  --vt-font-body: 1.142857rem;
  --vt-font-control: 1.142857rem;
  --vt-font-button: 1.142857rem;
  --vt-font-micro: 0.857143rem;
  --vt-font-caption: 0.928571rem;
  --vt-font-small: 1rem;
  --vt-font-meta: 1rem;
  --vt-font-grid: 1.142857rem;
  --vt-font-grid-header: 1.142857rem;
  --vt-font-chat-message: 1.285714rem;
  --vt-font-chat-meta: 1rem;
  --vt-font-h1: 2.285714rem;
  --vt-font-h2: 2rem;
  --vt-font-h3: 1.714286rem;
  --vt-font-h4: 1.428571rem;
  --vt-font-h5: 1.285714rem;
  --vt-font-h6: 1.142857rem;
}

html[data-vt-font-size="large"] {
  --vt-font-body: 1.285714rem;
  --vt-font-control: 1.285714rem;
  --vt-font-button: 1.285714rem;
  --vt-font-micro: 1rem;
  --vt-font-caption: 1.071429rem;
  --vt-font-small: 1.142857rem;
  --vt-font-meta: 1.142857rem;
  --vt-font-grid: 1.285714rem;
  --vt-font-grid-header: 1.285714rem;
  --vt-font-chat-message: 1.428571rem;
  --vt-font-chat-meta: 1.142857rem;
  --vt-font-h1: 2.571429rem;
  --vt-font-h2: 2.142857rem;
  --vt-font-h3: 1.857143rem;
  --vt-font-h4: 1.571429rem;
  --vt-font-h5: 1.428571rem;
  --vt-font-h6: 1.285714rem;
}

html[data-vt-font-size="xlarge"] {
  --vt-font-body: 1.428571rem;
  --vt-font-control: 1.428571rem;
  --vt-font-button: 1.428571rem;
  --vt-font-micro: 1.142857rem;
  --vt-font-caption: 1.214286rem;
  --vt-font-small: 1.285714rem;
  --vt-font-meta: 1.285714rem;
  --vt-font-grid: 1.428571rem;
  --vt-font-grid-header: 1.428571rem;
  --vt-font-chat-message: 1.571429rem;
  --vt-font-chat-meta: 1.285714rem;
  --vt-font-h1: 2.857143rem;
  --vt-font-h2: 2.285714rem;
  --vt-font-h3: 2rem;
  --vt-font-h4: 1.714286rem;
  --vt-font-h5: 1.571429rem;
  --vt-font-h6: 1.428571rem;
}

html {
  font-size: 87.5%;
}

body {
  font-size: var(--vt-font-body);
}

h1,
.h1 {
  font-size: var(--vt-font-h1);
}

h2,
.h2 {
  font-size: var(--vt-font-h2);
}

h3,
.h3 {
  font-size: var(--vt-font-h3);
}

h4,
.h4 {
  font-size: var(--vt-font-h4);
}

h5,
.h5 {
  font-size: var(--vt-font-h5);
}

h6,
.h6 {
  font-size: var(--vt-font-h6);
}

/*
 * Application component adapters.
 *
 * Vendor sources remain untouched. These selectors are deliberately loaded
 * after every page and vendor stylesheet so text sizes have one authoritative
 * contract while layout dimensions keep the legacy 14px-equivalent root.
 */

button,
input,
optgroup,
select,
textarea,
.form-control,
.custom-select,
.custom-file-label,
.input-group-text,
.select2-container,
.select2-container .select2-selection__rendered,
.select2-container .select2-search__field,
.select2-results__option,
.choices,
.choices__input,
.choices__item,
.formio-component,
.formio-form {
  font-size: var(--vt-font-control);
}

label,
.form-label,
.col-form-label,
.form-check-label,
.custom-control-label,
.data-field-col > span,
.data-field-col > label {
  font-size: var(--vt-font-body);
}

.btn,
.dropdown-item,
.dropdown-toggle,
.nav-link,
.navbar-nav,
.pagination,
.page-link,
.context-menu-item {
  font-size: var(--vt-font-button);
}

small,
.small,
.text-small,
.help-block,
.form-text,
.invalid-feedback,
.valid-feedback,
.select2-results__group,
.picker__footer,
.dropzone .dz-details {
  font-size: var(--vt-font-small);
}

.badge,
.caption,
.text-caption,
.dropdown-header,
.chat-application .chat-mention-group,
.chat-application .chat-announcement-label,
.chat-application .chat-reaction-count,
.chat-message-detail-time {
  font-size: var(--vt-font-caption);
}

.modal-title,
.card-title,
.content-header-title,
.panel-title,
.toast-title,
.swal2-title {
  font-size: var(--vt-font-h5);
}

.modal-body,
.modal-footer,
.card-body,
.card-text,
.dropdown-menu,
.popover,
.tooltip,
.toast,
.swal2-content,
.swal2-html-container {
  font-size: var(--vt-font-body);
}

.navigation,
.main-menu .navigation > li > a,
.main-menu .navigation .menu-content > li > a,
.header-navbar .navbar-container .nav .nav-item,
.header-navbar .navbar-container .dropdown-user .dropdown-menu-right {
  font-size: var(--vt-font-body);
}

table,
.table,
.dataTable,
.dataTables_wrapper,
.dataTables_info,
.dataTables_paginate,
.dataTables_length,
.dataTables_filter {
  font-size: var(--vt-font-grid);
}

table thead,
.table thead,
.dataTable thead,
.dataTables_wrapper thead,
table thead th,
.table thead th,
.dataTable thead th,
.dataTables_wrapper thead th {
  font-size: var(--vt-font-grid-header);
}

.ag-theme-alpine,
.ag-theme-alpine-dark,
.ag-theme-balham,
.ag-theme-balham-dark,
.ag-theme-material,
.ag-theme-material-dark {
  font-size: var(--vt-font-grid);
}

.ag-theme-alpine .ag-row,
.ag-theme-alpine-dark .ag-row,
.ag-theme-balham .ag-row,
.ag-theme-balham-dark .ag-row,
.ag-theme-material .ag-row,
.ag-theme-material-dark .ag-row,
.ag-cell,
.ag-floating-filter-input,
.ag-filter-filter,
.ag-filter-select,
.ag-paging-panel {
  font-size: var(--vt-font-grid);
}

.ag-header,
.ag-header-cell,
.ag-header-group-cell,
.ag-header-cell-text {
  font-size: var(--vt-font-grid-header);
}

.fc,
.fc table,
.fc .fc-button,
.fc .fc-list,
.fc .fc-popover {
  font-size: var(--vt-font-body);
}

.fc .fc-toolbar-title {
  font-size: var(--vt-font-h4);
}

.fc .fc-col-header-cell,
.fc .fc-timegrid-axis,
.fc .fc-list-day-cushion {
  font-size: var(--vt-font-grid-header);
}

.fc .fc-event,
.fc .fc-event-title,
.fc .fc-event-time,
.fc .fc-daygrid-day-number,
.fc .fc-list-event {
  font-size: var(--vt-font-grid);
}

.picker,
.picker__holder,
.picker__table,
.picker__day,
.picker__weekday,
.picker__button--today,
.picker__button--clear,
.picker__button--close {
  font-size: var(--vt-font-control);
}

.leaflet-container,
.leaflet-control,
.leaflet-control-layers,
.leaflet-popup-content,
.leaflet-tooltip {
  font-size: var(--vt-font-body);
}

.tox,
.tox .tox-tbtn,
.tox .tox-mbtn,
.tox .tox-button,
.tox .tox-textfield,
.tox .tox-listboxfield .tox-listbox--select,
.tox .tox-collection__item-label,
.tox .tox-statusbar,
.tox .tox-dialog,
.tox .tox-label {
  font-size: var(--vt-font-control);
}

.daterangepicker,
.daterangepicker .calendar-table,
.daterangepicker .drp-buttons,
.daterangepicker .ranges,
.daterangepicker select,
.daterangepicker input {
  font-size: var(--vt-font-control);
}

.ql-container,
.ql-editor,
.ql-toolbar,
.ql-tooltip,
.ql-picker,
.ql-picker-options,
.ql-snow .ql-picker-label,
.ql-snow .ql-picker-item {
  font-size: var(--vt-font-body);
}

.drawflow,
.drawflow .drawflow-node,
.drawflow .drawflow-node input,
.drawflow .drawflow-node select,
.drawflow .drawflow-node textarea,
.drawflow .drawflow-node button,
.vt-flow,
.vt-flow input,
.vt-flow select,
.vt-flow textarea,
.vt-flow button {
  font-size: var(--vt-font-control);
}

.apexcharts-canvas,
.apexcharts-text,
.apexcharts-legend-text,
.apexcharts-tooltip,
.apexcharts-tooltip-title,
.apexcharts-datalabel,
.apexcharts-xaxis-label,
.apexcharts-yaxis-label {
  font-size: var(--vt-font-small) !important;
}

.context-menu-list,
.context-menu-item,
.swal2-container,
.swal2-popup,
.swal2-title,
.swal2-content,
.swal2-actions {
  font-size: var(--vt-font-body);
}

.app-content .wizard.wizard-circle > .steps .step {
  font-size: calc(var(--vt-font-body) * 1.5);
}

.toast-message,
#toast-container,
.vt-msg,
.vt-alert,
.vt-notification {
  font-size: var(--vt-font-body);
}

.chat-application,
.chat-application .chat-sidebar,
.chat-application .chat-profile,
.chat-application .chat-user-profile,
.chat-application .chat-user-name,
.chat-application .chat-list-title,
.chat-application .chat-announcement-body,
.chat-message-detail-modal {
  font-size: var(--vt-font-body);
}

.chat-application .chats .chat-body .chat-content .msg {
  font-size: var(--vt-font-chat-message);
}

.chat-application .chat-time,
.chat-application .chat-message-time,
.chat-application .chat-user-status,
.chat-application .chat-message-meta,
.chat-message-detail-time {
  font-size: var(--vt-font-chat-meta);
}

.chat-application .chat-message-emoji-only,
.chat-application .chat-reaction-emoji {
  font-size: calc(var(--vt-font-chat-message) * 1.5);
}

.chat-application [class*="icon-"],
.chat-application .fa,
.chat-application .far,
.chat-application .fas,
.btn [class*="icon-"],
.btn .fa,
.btn .far,
.btn .fas,
.form-control-position [class*="icon-"] {
  font-size: var(--vt-font-icon-inline);
}

.vt-text-lead {
  font-size: var(--vt-font-h5);
}

.vt-text-meta {
  font-size: var(--vt-font-meta);
}

.vt-text-small {
  font-size: var(--vt-font-small);
}

.vt-document-progress-panel {
  font-size: var(--vt-font-body);
}

.vt-document-progress-value,
.vt-softphone-welcome {
  font-size: var(--vt-font-small);
}

.vt-softphone-section-title {
  font-size: var(--vt-font-h5);
}

.vt-softphone-control-toggle {
  font-size: var(--vt-font-h2);
}

.vt-softphone-listening-icon {
  font-size: 1.5em;
}

.vt-softphone-listening-spinner,
.vt-softphone-create-group-icon {
  font-size: 0.714286em;
}

.dropzone .dz-message.vt-upload-message {
  font-size: var(--vt-font-body);
}

.vt-upload-message-text {
  font-size: var(--vt-font-h4);
}

.vt-upload-hero-icon {
  font-size: 2.5em;
}

.vt-section-divider {
  height: 0;
  border-top: 0.142857rem solid #d6dce1;
}

/* Legacy-encoded sources are adapted here until their byte encoding is
 * migrated as a dedicated, separately tested change. */
#rootModalMediaSettings .modal_pnlBody_custom,
#rootModalMediaSettings .modal_pnlBody_custom [style*="font-size:12px"],
#rootModalMediaSettings .modal_pnlBody_custom [style*="font-size: 12px"] {
  font-size: var(--vt-font-small) !important;
}

.fc .vt-takvim-layer-badge,
#vtEvtTip,
.ses-kayit-stream-status,
.vt-recording-player-current,
.vt-recording-player-duration,
.vt-recording-player-speed,
.vt-recording-player-speed-option {
  font-size: var(--vt-font-small) !important;
}

.vt-recording-player-timeline > span:not([class]),
.vt-recording-player-speed .icon-chevron-down {
  font-size: var(--vt-font-small) !important;
}

.vt-recording-player-play [class*="icon-"],
.vt-recording-player-download [class*="icon-"] {
  font-size: var(--vt-font-icon-action) !important;
}

.icon-x-circle[style*="font-size: 17px"],
.icon-x-circle[style*="font-size:17px"] {
  font-size: var(--vt-font-icon-action) !important;
}

.monbox.mon-open-close {
  font-size: var(--vt-font-h2) !important;
}

.leaflet-marker-icon.customLabelTop {
  font-size: var(--vt-font-h5) !important;
}

.main-menu .cwv {
  font-size: var(--vt-font-caption) !important;
}

.profile-font-size-options {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.5rem;
}

.profile-font-size-option {
    min-height: 2.75rem;
    border: 1px solid var(--primary, #7367f0);
    border-radius: 0.35rem;
    background: #fff;
    color: var(--primary, #7367f0);
    font-family: inherit;
    font-size: var(--vt-profile-font-preview, var(--vt-font-control));
    line-height: 1;
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.profile-font-size-option:nth-child(1) {
    --vt-profile-font-preview: 0.8571428571rem;
}

.profile-font-size-option:nth-child(2) {
    --vt-profile-font-preview: 1rem;
}

.profile-font-size-option:nth-child(3) {
    --vt-profile-font-preview: 1.1428571429rem;
}

.profile-font-size-option:nth-child(4) {
    --vt-profile-font-preview: 1.2857142857rem;
}

.profile-font-size-option:hover:not(:disabled),
.profile-font-size-option:focus-visible {
    box-shadow: 0 0 0 0.15rem rgba(115, 103, 240, 0.2);
    outline: 0;
}

.profile-font-size-option.is-active {
    background: var(--primary, #7367f0);
    color: #fff;
}

.profile-font-size-option:disabled {
    cursor: not-allowed;
    opacity: 0.55;
}
