/* =========================================
   SEMENTE SOCIAL - THEME COLOR OVERRIDE
   carregar depois de core.css e theme-default.css
   ========================================= */

:root {
  /* base */
  --bs-body-bg: #ffffff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-body-color: #5f6f66;
  --bs-body-color-rgb: 95, 111, 102;

  /* paleta da marca */
  --bs-primary: #2d6a4f;
  --bs-primary-rgb: 45, 106, 79;

  --bs-secondary: #69afc6;
  --bs-secondary-rgb: 105, 175, 198;

  --bs-success: #7ea457;
  --bs-success-rgb: 126, 164, 87;

  --bs-info: #7cc4d8;
  --bs-info-rgb: 124, 196, 216;

  --bs-warning: #d96a92;
  --bs-warning-rgb: 217, 106, 146;

  --bs-danger: #b85c5c;
  --bs-danger-rgb: 184, 92, 92;

  --bs-light: #fbf8f1;
  --bs-light-rgb: 251, 248, 241;

  --bs-dark: #274c3a;
  --bs-dark-rgb: 39, 76, 58;

  --bs-link-color: #2d6a4f;
  --bs-link-hover-color: #245640;

  /* auxiliares */
  --ss-surface: #fbf8f1;      /* boxes bege */
  --ss-surface-2: #f6f3ea;    /* header interno do box */
  --ss-border: #e3e8e3;
  --ss-text-heading: #355846;
  --ss-text-muted: #7f9186;
  --ss-shadow: 0 6px 18px rgba(0, 0, 0, 0.04);
}

/* =========================================
   BASE
   ========================================= */

body,
.layout-page,
.content-wrapper {
  background-color: #ffffff !important;
  color: var(--bs-body-color) !important;
}

a {
  color: var(--bs-link-color) !important;
}

a:hover {
  color: var(--bs-link-hover-color) !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  color: var(--ss-text-heading) !important;
}

.text-primary { color: var(--bs-primary) !important; }
.text-secondary { color: var(--bs-secondary) !important; }
.text-success { color: var(--bs-success) !important; }
.text-warning { color: var(--bs-warning) !important; }
.text-muted { color: var(--ss-text-muted) !important; }

/* =========================================
   UTILITIES
   ========================================= */

.bg-primary { background-color: var(--bs-primary) !important; }
.bg-secondary { background-color: var(--bs-secondary) !important; }
.bg-success { background-color: var(--bs-success) !important; }
.bg-warning { background-color: var(--bs-warning) !important; }
.bg-light { background-color: var(--bs-light) !important; }

.bg-label-primary {
  background-color: rgba(var(--bs-primary-rgb), 0.12) !important;
  color: var(--bs-primary) !important;
}

.bg-label-secondary {
  background-color: rgba(var(--bs-secondary-rgb), 0.14) !important;
  color: #4f8ea3 !important;
}

.bg-label-success {
  background-color: rgba(var(--bs-success-rgb), 0.14) !important;
  color: #6d924a !important;
}

.bg-label-warning {
  background-color: rgba(var(--bs-warning-rgb), 0.14) !important;
  color: #bd587d !important;
}

/* =========================================
   BOTÕES
   ========================================= */

.btn-primary {
  background-color: var(--bs-primary) !important;
  border-color: var(--bs-primary) !important;
  color: #fff !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background-color: #245640 !important;
  border-color: #245640 !important;
  color: #fff !important;
  box-shadow: 0 0.125rem 0.5rem rgba(var(--bs-primary-rgb), 0.28) !important;
}

.btn-outline-primary {
  border-color: var(--bs-primary) !important;
  color: var(--bs-primary) !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
  background-color: var(--bs-primary) !important;
  border-color: var(--bs-primary) !important;
  color: #fff !important;
}

.btn-secondary {
  background-color: var(--bs-secondary) !important;
  border-color: var(--bs-secondary) !important;
}

.btn-outline-secondary {
  border-color: var(--bs-secondary) !important;
  color: var(--bs-secondary) !important;
}

.btn-outline-secondary:hover {
  background-color: var(--bs-secondary) !important;
  color: #fff !important;
}

/* =========================================
   BOXES / SUPERFÍCIES
   ========================================= */

.card,
.dashboard-card,
.dashboard-stat-card,
.accordion-item,
.modal-content,
.offcanvas,
.dropdown-menu,
.list-group-item {
  background-color: var(--ss-surface) !important;
  border: 1px solid var(--ss-border) !important;
  box-shadow: var(--ss-shadow) !important;
}

.card-header,
.card-footer,
.dashboard-card-header,
.accordion-button:not(.collapsed) {
  background-color: var(--ss-surface-2) !important;
  border-bottom: 1px solid var(--ss-border) !important;
}

/* =========================================
   FORMULÁRIOS
   ========================================= */

.form-label,
.col-form-label {
  color: var(--ss-text-heading) !important;
}

.form-control,
.form-select {
  background-color: #ffffff !important;
  color: var(--bs-body-color) !important;
  border: 1px solid #d9e3da !important;
}

.form-control::placeholder {
  color: #9aab9f !important;
}

.form-control:focus,
.form-select:focus {
  border-color: rgba(45, 106, 79, 0.4) !important;
  box-shadow: 0 0 0 0.2rem rgba(45, 106, 79, 0.12) !important;
}

/* =========================================
   TABELAS
   ========================================= */

.table {
  background-color: transparent !important;
  color: var(--bs-body-color) !important;
  border-color: var(--ss-border) !important;
}

.table > tbody > tr {
  background-color: var(--ss-surface);
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-accent-bg: rgba(45, 106, 79, 0.035);
}

.table-hover > tbody > tr:hover > * {
  background-color: #f1ece2 !important;
  color: var(--ss-text-heading) !important;
}

.table-primary {
  --bs-table-bg: #e8f1ec;
  --bs-table-striped-bg: #ddebe3;
  --bs-table-active-bg: #d3e4da;
  --bs-table-hover-bg: #dcebdf;
  --bs-table-border-color: #c6d9cc;
  color: #355846;
}

/* =========================================
   PAGINAÇÃO
   ========================================= */

.page-item.active .page-link,
.page-item.active .page-link:hover,
.page-item.active .page-link:focus,
.pagination li.active > a:not(.page-link),
.pagination li.active > a:not(.page-link):hover,
.pagination li.active > a:not(.page-link):focus {
  background-color: var(--bs-primary) !important;
  border-color: var(--bs-primary) !important;
  box-shadow: 0 0.125rem 0.35rem rgba(var(--bs-primary-rgb), 0.25) !important;
}

.page-link {
  color: var(--bs-primary) !important;
}

.page-link:hover {
  color: #245640 !important;
  background-color: rgba(var(--bs-primary-rgb), 0.06) !important;
}

/* =========================================
   ALERTS / BADGES / PROGRESS
   ========================================= */

.alert-primary {
  background-color: rgba(var(--bs-primary-rgb), 0.10) !important;
  border-color: rgba(var(--bs-primary-rgb), 0.22) !important;
  color: var(--bs-primary) !important;
}

.alert-success {
  background-color: rgba(var(--bs-success-rgb), 0.12) !important;
  border-color: rgba(var(--bs-success-rgb), 0.24) !important;
  color: #6d924a !important;
}

.alert-warning {
  background-color: rgba(var(--bs-warning-rgb), 0.12) !important;
  border-color: rgba(var(--bs-warning-rgb), 0.24) !important;
  color: #bd587d !important;
}

.badge.bg-primary,
.badge.badge-center.bg-primary {
  background-color: var(--bs-primary) !important;
}

.badge.bg-secondary { background-color: var(--bs-secondary) !important; }
.badge.bg-success { background-color: var(--bs-success) !important; }

.badge.bg-warning {
  background-color: var(--bs-warning) !important;
  color: #fff !important;
}

.progress {
  background-color: rgba(var(--bs-primary-rgb), 0.08) !important;
}

.progress-bar {
  background-color: var(--bs-primary) !important;
  box-shadow: 0 2px 4px rgba(var(--bs-primary-rgb), 0.22) !important;
}

/* =========================================
   TABS / PILLS
   ========================================= */

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  background-color: var(--bs-primary) !important;
}

.nav-tabs .nav-link.active {
  color: var(--bs-primary) !important;
  border-color: var(--ss-border) var(--ss-border) var(--ss-surface) !important;
}

/* =========================================
   MENU LATERAL
   ========================================= */

.bg-menu-theme {
  background-color: #fcfaf4 !important;
}

.bg-menu-theme .menu-inner > .menu-item.active > .menu-link {
  background-color: rgba(var(--bs-primary-rgb), 0.10) !important;
  color: var(--bs-primary) !important;
}

.layout-wrapper:not(.layout-horizontal) .bg-menu-theme .menu-inner > .menu-item.active:before {
  background-color: var(--bs-primary) !important;
}

.bg-menu-theme .menu-link,
.bg-menu-theme .menu-icon {
  color: #698173 !important;
}

.bg-menu-theme .menu-item.open > .menu-link,
.bg-menu-theme .menu-item.active > .menu-link,
.bg-menu-theme .menu-link:hover {
  color: var(--bs-primary) !important;
}

.bg-menu-theme .menu-sub > .menu-item.active > .menu-link:not(.menu-toggle):before {
  background-color: var(--bs-secondary) !important;
}

.bg-menu-theme .menu-header {
  color: #9aac9f !important;
}

/* =========================================
   NAVBAR
   ========================================= */

.layout-navbar,
.navbar-detached,
.public-header {
  background: rgba(255, 253, 249, 0.94) !important;
  border-color: var(--ss-border) !important;
}

/* =========================================
   DROPDOWN / LIST / ACCORDION
   ========================================= */

.dropdown-item.active,
.dropdown-item:active {
  background-color: rgba(var(--bs-primary-rgb), 0.10) !important;
  color: var(--bs-primary) !important;
}

.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  background-color: var(--bs-primary) !important;
  border-color: var(--bs-primary) !important;
  color: #fff !important;
}

.list-group-item-primary {
  background-color: rgba(var(--bs-primary-rgb), 0.10) !important;
  color: var(--bs-primary) !important;
}

.accordion-button:not(.collapsed) {
  color: var(--bs-primary) !important;
  box-shadow: inset 0 -1px 0 var(--ss-border) !important;
}

.accordion-button:focus {
  border-color: rgba(var(--bs-primary-rgb), 0.35) !important;
  box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.12) !important;
}

/* =========================================
   PAGE HEADER / HERO
   ========================================= */
.attendance-hero {
    min-height: 190px;
    border-radius: 1rem;
    position: relative;
    overflow: hidden;
     background: #41735b !important;
    border: 1px solid #d9e3da;
    box-shadow: 0 6px 18px rgba(0,0,0,0.04) !important;
}


.patient-hero {
    background: #41735b !important;
    border: 1px solid #d9e3da;
    box-shadow: 0 6px 18px rgba(0,0,0,0.04) !important;
}

.patient-title {
    color: #ffffff !important;
}

.patient-subtitle {
    color: #ffffff !important;
}

.patient-avatar {
    background: rgb(45 106 79 / 73%) !important;
    color: #ffffff !important;
}

.patient-badge {
    background: rgba(45, 106, 79, 0.08) !important;
    color: #ffffff !important;
    border: 1px solid rgba(45, 106, 79, 0.15) !important;
}

/* =========================================
   AJUSTES FINAIS
   ========================================= */

.text-body[href]:hover {
  color: var(--bs-primary) !important;
}

hr {
  color: var(--ss-border) !important;
}

.border-light-primary {
  border-color: rgba(var(--bs-primary-rgb), 0.12) !important;
}

.border-label-primary {
  border-color: rgba(var(--bs-primary-rgb), 0.22) !important;
}

::selection {
  background: rgba(var(--bs-primary-rgb), 0.18);
  color: #1f3d2f;
}
.white-color{
    color: #ffffff !important;
    
}
.card-body-white{
    background: #fff;
    padding-top: 10px !important;
}
dashboard-card-header {
        padding: 1rem 1rem 0.5rem;
}