/* Conservative app-wide UI polish for vtiger v7.
 * Keep this file visual-only: no broad layout, width, display, or positioning changes.
 */

:root {
    --vt-modern-border: #d9e2ec;
    --vt-modern-border-strong: #c7d2df;
    --vt-modern-text: #243447;
    --vt-modern-muted: #6b7785;
    --vt-modern-primary: #4a5568;
    --vt-modern-primary-hover: #2d3748;
    --vt-modern-danger: #dc2626;
    --vt-modern-soft: #f8fafc;
    --vt-modern-shadow: 0 1px 2px rgba(15, 23, 42, .06);
    --vt-modern-radius: 6px;
    --vt-modern-radius-sm: 4px;
}

@font-face {
    font-family: 'Figtree';
    font-style: normal;
    font-weight: 400;
    src: url('fonts/Figtree/Figtree-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Figtree';
    font-style: normal;
    font-weight: 500;
    src: url('fonts/Figtree/Figtree-Medium.ttf') format('truetype');
}

@font-face {
    font-family: 'Figtree';
    font-style: normal;
    font-weight: 600;
    src: url('fonts/Figtree/Figtree-SemiBold.ttf') format('truetype');
}

@font-face {
    font-family: 'Figtree';
    font-style: normal;
    font-weight: 700;
    src: url('fonts/Figtree/Figtree-Bold.ttf') format('truetype');
}

body,
button,
input,
select,
textarea,
.select2-container,
.select2-drop,
.dropdown-menu,
.popover,
.modal {
    color: var(--vt-modern-text);
    font-family: 'Figtree', 'Lato', 'Open-sans', Arial, sans-serif;
}

body {
    background: #f7f9fb;
    font-size: 14px;
    line-height: 1.45;
}

.inputElement,
.select2-container,
.btn,
.dropdown-menu,
.modal,
.popover {
    font-size: 14px;
}

.table,
.listview-table,
.listViewEntriesTable,
.detailview-table {
    font-size: 14px;
}

.fieldLabel,
.fieldLabel label,
.control-label {
    font-size: 13px;
}

a {
    color: var(--vt-modern-primary);
}

a:hover,
a:focus {
    color: var(--vt-modern-primary-hover);
}

.module-action-bar .module-title,
.active-app-title,
.widget_header h3,
.widget_header h4,
.modal-title {
    color: var(--vt-modern-text);
    font-family: 'Figtree', 'Lato', 'Open-sans', Arial, sans-serif;
    letter-spacing: 0;
    line-height: 1.35;
}

.module-action-bar .module-title {
    font-size: 15px;
    font-weight: 700;
}

.module-breadcrumb,
.module-breadcrumb a,
.module-breadcrumb span,
.breadcrumb,
.breadcrumb li {
    font-size: 13px;
    line-height: 1.45;
}

.btn {
    font-size: 13.5px;
}

.app-menu,
.app-menu .menu-item,
.app-menu .dropdown-menu,
.module-nav,
.module-nav .modules-menu,
.module-nav .module-filters {
    font-family: 'Figtree', 'Lato', 'Open-sans', Arial, sans-serif;
}

.app-menu .fa,
.module-nav .fa {
    font-family: FontAwesome !important;
}

.app-menu .vicon,
.module-nav .vicon,
.app-menu [class^="vicon-"],
.app-menu [class*=" vicon-"],
.module-nav [class^="vicon-"],
.module-nav [class*=" vicon-"] {
    font-family: 'Vtiger-icons' !important;
}

.app-menu .module-icon i,
.app-menu .app-icon-list i,
.module-nav .module-icon i,
.module-nav .app-icon-list i {
    font-family: 'Vtiger-icons' !important;
}

.app-menu .menu-item {
    font-size: 14.5px;
    line-height: 1.35;
}

.app-menu .menu-item .fa,
.app-menu .menu-item .vicon {
    font-size: 17px;
}

.module-nav .module-filters,
.module-nav .module-filters a,
.module-nav .modules-menu,
.module-nav .modules-menu a {
    font-size: 13.5px;
    line-height: 1.45;
}

.settingsNav,
.settingsNav.module-nav,
#modnavigator.settingsNav {
    background: #2c3b49 !important;
    color: #fff;
}

.settingsNav .settingsgroup {
    background: #2c3b49;
}

.settingsNav .settingsgroup-panel,
.settingsNav .panel,
.settingsNav .panel-default,
.settingsNav .panel-group,
.settingsNav .panel-collapse,
.settingsNav .widgetContainer,
.settingsNav .list-group {
    background: #2c3b49;
    border: 0;
    box-shadow: none;
}

.settingsNav .settingsgroup-accordion a {
    background: #2c3b49;
    color: #fff;
}

.settingsNav .settingsgroup-accordion a:hover,
.settingsNav .settingsgroup-accordion a:focus {
    background: #344655;
    color: #fff;
    text-decoration: none;
}

.settingsNav .menuItemLabel {
    color: #fff;
}

.settingsNav .menuItemLabel:hover,
.settingsNav .menuItemLabel:focus {
    background: #344655;
    color: #fff;
    text-decoration: none;
}

.settingsNav .settingsgroup-menu-color,
.settingsNav .selectedMenuItem {
    background: #fff !important;
    color: #000 !important;
}

.main-container,
.bodyContents,
.contentsDiv,
.settingsPageDiv,
.contents {
    background: #f7f9fb;
}

.contentsDiv,
.settingsPageDiv,
.detailViewContainer,
.editViewPageDiv,
.listViewPageDiv {
    color: var(--vt-modern-text);
}

.inputElement,
.select2-container .select2-choice,
.select2-container-multi .select2-choices {
    border-color: var(--vt-modern-border-strong);
    border-radius: var(--vt-modern-radius-sm);
    box-shadow: none;
}

.inputElement:focus,
.select2-container-active .select2-choice,
.select2-container-active .select2-choices {
    border-color: var(--vt-modern-primary);
    box-shadow: 0 0 0 2px rgba(74, 85, 104, .12);
    outline: 0;
}

.select2-container .select2-choice {
    background: #fff;
    min-height: 34px;
}

.select2-container .select2-choice .select2-arrow {
    background: transparent;
    border-left-color: var(--vt-modern-border);
}

.select2-container-multi .select2-choices .select2-search-choice {
    background: #f1f5f9;
    border-color: #d9e2ec;
    border-radius: var(--vt-modern-radius-sm);
    color: var(--vt-modern-text);
}

.btn {
    border-radius: var(--vt-modern-radius-sm);
    box-shadow: none;
    font-weight: 600;
    line-height: 1.35;
    text-shadow: none;
}

.btn-default {
    background: #fff;
    border-color: var(--vt-modern-border-strong);
    color: var(--vt-modern-text);
}

.btn-default:hover,
.btn-default:focus {
    background: #f1f5f9;
    border-color: #b9c6d3;
    color: var(--vt-modern-text);
}

.btn-danger {
    background: var(--vt-modern-danger);
    border-color: var(--vt-modern-danger);
}

.btn-success {
    border-radius: var(--vt-modern-radius-sm);
}

.nav-tabs {
    border-bottom-color: var(--vt-modern-border);
}

.nav-tabs > li > a {
    border-radius: var(--vt-modern-radius-sm) var(--vt-modern-radius-sm) 0 0;
    color: var(--vt-modern-muted);
    font-weight: 600;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    color: var(--vt-modern-primary);
}

.table > thead > tr > th,
.listview-table > thead > tr > th,
.listViewEntriesTable > thead > tr > th {
    background: var(--vt-modern-soft);
    border-bottom-color: var(--vt-modern-border);
    color: var(--vt-modern-muted);
    font-weight: 600;
}

.table,
.listview-table,
.listViewEntriesTable {
    background: #fff;
}

.table > tbody > tr > td,
.listview-table > tbody > tr > td,
.listViewEntriesTable > tbody > tr > td {
    border-color: #edf1f5;
}

.table-hover > tbody > tr:hover,
.listview-table > tbody > tr:hover,
.listViewEntriesTable > tbody > tr:hover {
    background: #f8fafc;
}

.fieldLabel,
.fieldLabel label,
.control-label {
    color: var(--vt-modern-muted);
    font-weight: 600;
}

.modal-content,
.popover,
.dropdown-menu {
    border-color: var(--vt-modern-border);
    border-radius: var(--vt-modern-radius);
    box-shadow: 0 10px 30px rgba(15, 23, 42, .14);
}

.modal-header,
.modal-footer,
.widget_header {
    border-color: var(--vt-modern-border);
}

.widget_header,
.settingsPageDiv .widget_header,
.listViewPageDiv .listViewActionsContainer,
.editViewPageDiv .editViewHeader {
    background: #fff;
}

.widget_header,
.editViewPageDiv .editViewHeader,
.listViewPageDiv .listViewActionsContainer,
.settingsPageDiv .settingsHeader,
.settingsPageDiv .settingsIndexPage {
    border: 1px solid var(--vt-modern-border);
    border-radius: var(--vt-modern-radius);
    box-shadow: var(--vt-modern-shadow);
}

.widget_header,
.settingsPageDiv .settingsHeader {
    margin-bottom: 14px;
    padding: 14px 16px;
}

.editViewPageDiv .editViewHeader,
.listViewPageDiv .listViewActionsContainer {
    margin-bottom: 12px;
}

.summaryWidgetContainer,
.widgetContainer,
.dashboardWidget,
.quickWidgetContainer,
.settingsIndexPage,
.massEditTable,
.searchUIBasic,
.searchUIAdvanced {
    background: #fff;
    border: 1px solid var(--vt-modern-border);
    border-radius: var(--vt-modern-radius);
    box-shadow: var(--vt-modern-shadow);
}

.settingsNav .settingsgroup {
    background: #2c3b49;
}

.settingsNav .settingsgroup-panel,
.settingsNav .panel,
.settingsNav .panel-default,
.settingsNav .panel-group,
.settingsNav .panel-collapse,
.settingsNav .widgetContainer,
.settingsNav .list-group {
    background: #2c3b49;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.summaryWidgetContainer .widget_header,
.widgetContainer .widget_header,
.dashboardWidget .widget_header,
.quickWidgetContainer .widget_header {
    border-width: 0 0 1px;
    border-radius: var(--vt-modern-radius) var(--vt-modern-radius) 0 0;
    box-shadow: none;
    margin-bottom: 0;
}

.modal-header {
    background: #f8fafc;
    border-radius: var(--vt-modern-radius) var(--vt-modern-radius) 0 0;
}

.modal-footer {
    background: #fff;
    border-radius: 0 0 var(--vt-modern-radius) var(--vt-modern-radius);
}

.well,
.panel,
.panel-default,
.vt-default-callout,
.alert {
    border-radius: var(--vt-modern-radius);
}

.panel,
.panel-default,
.well {
    border-color: var(--vt-modern-border);
    box-shadow: var(--vt-modern-shadow);
}

.pagination > li > a,
.pagination > li > span {
    border-color: var(--vt-modern-border);
    color: var(--vt-modern-primary);
}

.pagination > .active > a,
.pagination > .active > span {
    background: var(--vt-modern-primary);
    border-color: var(--vt-modern-primary);
}

.bootstrap-switch,
.bootstrap-switch .bootstrap-switch-container {
    border-radius: var(--vt-modern-radius-sm);
}
