﻿
:root {
    color-scheme: light;
    --vc-bg: #f1f5fb;
    --vc-surface: #ffffff;
    --vc-border: #dce4ef;
    --vc-text: #172338;
    --vc-muted: #65748b;
    --vc-lime: #c5f36a;
}

html,
body {
    min-height: 100%;
    background: var(--vc-bg) !important;
    color: var(--vc-text) !important;
    font-family: Inter, "Segoe UI", sans-serif;
}

body {
    font-size: 15px;
}

.navbar,
.vc-navbar {
    background: #0d1625 !important;
    border-bottom: 1px solid #29384d;
}

.navbar-brand,
.navbar-text {
    color: #ffffff !important;
}

.vc-navbar-caption {
    color: #cbd5e1 !important;
}

.vc-brand-subtitle,
.vc-footer-accent {
    color: var(--vc-lime) !important;
}

.vc-main {
    color: var(--vc-text);
}

.card {
    color: var(--vc-text) !important;
    background: #ffffff !important;
    border: 1px solid var(--vc-border) !important;
    border-radius: 16px !important;
    box-shadow: 0 5px 18px rgba(24, 39, 75, .045);
}

.card-header,
.card-footer {
    color: var(--vc-text) !important;
    background: #f8faff !important;
    border-color: var(--vc-border) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.page-title,
label,
.form-label {
    color: var(--vc-text);
}

p,
.text-muted,
.text-secondary {
    color: var(--vc-muted) !important;
}

.form-control,
.form-select,
textarea {
    color: var(--vc-text) !important;
    background-color: #ffffff !important;
    border: 1px solid #d3ddea !important;
    border-radius: 7px;
}

.form-control::placeholder,
textarea::placeholder {
    color: #8290a4 !important;
}

.form-control:focus,
.form-select:focus,
textarea:focus {
    color: var(--vc-text) !important;
    background-color: #ffffff !important;
    border-color: #8aa8d6 !important;
    box-shadow: 0 0 0 .2rem rgba(66, 110, 180, .12) !important;
}

.form-check-input {
    background-color: #ffffff;
    border-color: #b9c6d8;
}

.form-check-input:checked {
    background-color: #315d96;
    border-color: #315d96;
}

.btn-primary {
    color: #ffffff !important;
    background: #244d80 !important;
    border-color: #244d80 !important;
}

.btn-primary:hover {
    background: #193c68 !important;
    border-color: #193c68 !important;
}

.btn-outline-primary {
    color: #244d80 !important;
    border-color: #244d80 !important;
}

.btn-outline-primary:hover {
    color: #ffffff !important;
    background: #244d80 !important;
}

.btn-outline-secondary,
.btn-secondary {
    color: #344258 !important;
    background: #edf2f8 !important;
    border-color: #d4deea !important;
}

.btn-outline-secondary:hover,
.btn-secondary:hover {
    color: #172338 !important;
    background: #e0e8f2 !important;
    border-color: #c3d0e0 !important;
}

.btn-success {
    color: #ffffff !important;
}

.table {
    --bs-table-color: #263449;
    --bs-table-bg: #ffffff;
    --bs-table-border-color: #e0e7f0;
    --bs-table-striped-bg: #f6f8fc;
    --bs-table-striped-color: #263449;
    --bs-table-hover-bg: #eef4fc;
    --bs-table-hover-color: #172338;
}

.table thead th {
    color: #263449 !important;
    background: #edf2f8 !important;
    border-color: #dce4ef !important;
}

.table td {
    color: #263449;
}

.dropdown-menu {
    color: var(--vc-text);
    background: #ffffff;
    border-color: var(--vc-border);
    box-shadow: 0 8px 24px rgba(24, 39, 75, .10);
}

.dropdown-item {
    color: var(--vc-text);
}

.dropdown-item:hover,
.dropdown-item:focus {
    color: #244d80;
    background: #eef4fc;
}

a:not(.btn):not(.navbar-brand) {
    color: #315d96;
}

a:not(.btn):not(.navbar-brand):hover {
    color: #193c68;
}

.alert-success {
    color: #155b38;
    background: #e9f8ef;
    border-color: #c6ead3;
}

.alert-danger {
    color: #842029;
    background: #fff0f0;
    border-color: #f2c7ca;
}

.badge {
    font-weight: 600;
}

.vc-scale-value {
    color: #172338 !important;
    background: #edf2f7 !important;
    border-color: #dce4ee !important;
}

.vc-footer {
    color: #65748b;
}

@media (max-width: 575.98px) {
    .table-responsive {
        overflow-x: auto;
    }

    .vc-navbar-inner {
        gap: 8px;
    }

    .vc-navbar-caption {
        font-size: 11px;
    }
}

/* Escalas do check-in: preservar o fundo claro e as sete cores */

body:has(.vc-scale) {
    background: #f1f5fb !important;
    color: #172033 !important;
}

body:has(.vc-scale) .vc-main,
body:has(.vc-scale) .page-title,
body:has(.vc-scale) h1,
body:has(.vc-scale) h2,
body:has(.vc-scale) h3,
body:has(.vc-scale) label,
body:has(.vc-scale) p,
body:has(.vc-scale) .text-secondary {
    color: #172033 !important;
}

body:has(.vc-scale) .card {
    background: #ffffff !important;
    color: #172033 !important;
    border: 1px solid #e1e7f0 !important;
    border-radius: 14px;
    box-shadow: 0 8px 24px rgba(24, 39, 75, .07);
}

body:has(.vc-scale) .form-control,
body:has(.vc-scale) .form-select {
    background-color: #ffffff !important;
    color: #172033 !important;
    border-color: #d8e0eb !important;
}

body:has(.vc-scale) .vc-section-title {
    color: #172033 !important;
}

body:has(.vc-scale) .vc-section-help,
body:has(.vc-scale) .vc-scale-extremes {
    color: #697586 !important;
}

body:has(.vc-scale) .vc-scale-value {
    background: #edf2f7 !important;
    color: #172033 !important;
    border: 1px solid #dce4ee !important;
}

body:has(.vc-scale) .vc-scale-track {
    display: flex;
    width: 100%;
    min-height: 44px;
    overflow: hidden;
    border-radius: 5px;
    border: 1px solid #d8dee8;
}

body:has(.vc-scale) .vc-scale-option {
    flex: 1 1 0;
    min-width: 0;
    min-height: 44px;
}

body:has(.vc-scale) .vc-scale-option.is-selected,
body:has(.vc-scale) .vc-borg-number.is-selected {
    outline: 3px solid #172033;
    outline-offset: -4px;
}

body:has(.vc-scale) .vc-color-1 {
    background: #7650a8 !important;
    color: #ffffff !important;
}

body:has(.vc-scale) .vc-color-2 {
    background: #087dbb !important;
    color: #ffffff !important;
}

body:has(.vc-scale) .vc-color-3 {
    background: #00a052 !important;
    color: #ffffff !important;
}

body:has(.vc-scale) .vc-color-4 {
    background: #fff000 !important;
    color: #172033 !important;
}

body:has(.vc-scale) .vc-color-5 {
    background: #ffbd00 !important;
    color: #172033 !important;
}

body:has(.vc-scale) .vc-color-6 {
    background: #ff6900 !important;
    color: #ffffff !important;
}

body:has(.vc-scale) .vc-color-7 {
    background: #ed0014 !important;
    color: #ffffff !important;
}

body:has(.vc-scale) .vc-borg-grid {
    border-color: #d8dee8 !important;
    box-shadow: none !important;
}

body:has(.vc-scale) .vc-borg-row {
    border-bottom-color: #d8dee8 !important;
}

body:has(.vc-scale) .vc-borg-description,
body:has(.vc-scale) .vc-borg-number {
    color: #172033;
}

/* VitalCoach: menus da lista de alunos sem corte em telas grandes */
@media (min-width: 992px) {
    .clients-list-responsive {
        overflow: visible !important;
        height: auto !important;
        max-height: none !important;
    }

    .clients-list-responsive .dropdown-menu {
        z-index: 1080;
    }
}

/* Preserva a rolagem horizontal em telas menores */
@media (max-width: 991.98px) {
    .clients-list-responsive {
        overflow-x: auto;
    }
}