/* ============================================================
   Beleza Sublime — identidade visual central
   Paleta: rosé, blush, creme e rose gold.
   Arquivo isolado para site, painel, app, páginas e modais.
   ============================================================ */
:root {
  --bs-brand-primary: #B7795B;
  --bs-brand-primary-dark: #8F563F;
  --bs-brand-secondary: #D9A5A6;
  --bs-brand-blush: #F4D8D5;
  --bs-brand-blush-soft: #FBEDEA;
  --bs-brand-cream: #FFF8F3;
  --bs-brand-white: #FFFFFF;
  --bs-brand-text: #513A34;
  --bs-brand-muted: #806760;
  --bs-brand-border: rgba(183, 121, 91, .22);
  --bs-brand-shadow: 0 12px 30px rgba(81, 58, 52, .12);

  /* Compatibilidade com a home atual. */
  --home-bg: #FFF8F3;
  --home-bg-soft: #FBEDEA;
  --home-card: #FFFFFF;
  --home-card-2: #FFF2EE;
  --home-gold: #B7795B;
  --home-gold-2: #A7654A;
  --home-gold-3: #8F563F;
  --home-text: #513A34;
  --home-muted: #806760;
  --home-border: rgba(183, 121, 91, .22);
}

html.brand-beleza-sublime,
body.brand-beleza-sublime,
body {
  accent-color: var(--bs-brand-primary);
}

body {
  background-color: var(--bs-brand-cream);
  color: var(--bs-brand-text);
}

a { color: var(--bs-brand-primary-dark); }
a:hover, a:focus { color: var(--bs-brand-primary); }

::selection {
  background: var(--bs-brand-secondary);
  color: #fff;
}

/* Cabeçalho / navegação — preto, com detalhes rosé/rose gold */
.header_section,
body.sub_page .header_section {
  background: #000000 !important;
  border-bottom: 1px solid rgba(183, 121, 91, .34) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .34) !important;
}

/* Cabeçalhos internos do app continuam usando a identidade clara. */
.header-bar,
.header-app {
  background: rgba(255, 248, 243, .97) !important;
  border-bottom: 1px solid var(--bs-brand-border) !important;
  box-shadow: 0 8px 24px rgba(81, 58, 52, .08) !important;
}

.header_section .nav-link,
.header_section .navbar-nav .nav-link {
  color: #ffffff !important;
}

.header-bar .color-theme,
.header-title {
  color: var(--bs-brand-text) !important;
}

.header_section .nav-link:hover,
.header_section .nav-link:focus,
.header_section .nav-item.active > .nav-link {
  color: #F4D8D5 !important;
  background: rgba(183, 121, 91, .18) !important;
}

.header_section .dropdown-menu {
  background: #0b0b0b !important;
  border: 1px solid rgba(183, 121, 91, .34) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, .48) !important;
}

.header_section .dropdown-item {
  color: #ffffff !important;
}

.header_section .dropdown-item:hover,
.header_section .dropdown-item:focus {
  color: #F4D8D5 !important;
  background: rgba(183, 121, 91, .18) !important;
}

.header_section .navbar-toggler,
.navbar-toggle {
  border-color: var(--bs-brand-secondary) !important;
}

.header_section .navbar-toggler span,
.navbar-toggle .icon-bar {
  background-color: #ffffff !important;
}

/* Botões e estados principais */
.btn-primary,
.btn-contact,
.btn-ver-mais,
.home-pro-btn-primary,
.gradient-highlight,
.bg-highlight,
button.btn-primary,
a.btn-primary {
  background: linear-gradient(135deg, #D9A5A6 0%, #B7795B 55%, #8F563F 100%) !important;
  border-color: #B7795B !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(183, 121, 91, .22) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-contact:hover,
.btn-ver-mais:hover,
.home-pro-btn-primary:hover {
  background: linear-gradient(135deg, #C98E91 0%, #A7654A 58%, #7C4936 100%) !important;
  border-color: #8F563F !important;
  color: #fff !important;
}

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

.color-highlight,
.text-primary,
.home-pro-title span,
.home-hero-panel li:before {
  color: var(--bs-brand-primary) !important;
}

/* Home pública */
.home-pro-section,
.home-services,
.home-experience,
.home-testimonials,
.home-contact,
.slider_section.home-hero {
  background: linear-gradient(180deg, #FFF8F3 0%, #FBEDEA 100%) !important;
  color: var(--bs-brand-text) !important;
}

.home-pro-title,
.home-section-head h2,
.home-hero-panel h3,
.home-trust-card strong,
.home-service-card h3,
.home-service-card h4 {
  color: var(--bs-brand-text) !important;
}

.home-pro-text,
.home-section-head p,
.home-trust-card span,
.home-hero-panel li,
.home-service-card p {
  color: var(--bs-brand-muted) !important;
}

.home-hero-bg img {
  opacity: .36 !important;
  filter: saturate(.86) brightness(1.08) !important;
}

.home-hero-bg:after {
  background:
    radial-gradient(circle at 76% 32%, rgba(217,165,166,.24), transparent 30%),
    linear-gradient(90deg, rgba(255,248,243,.97) 0%, rgba(255,248,243,.86) 48%, rgba(255,248,243,.50) 100%) !important;
}

.home-hero-panel,
.home-trust-card,
.home-service-card,
.home-card,
.card,
.painel-comparacao-simulacao {
  background: rgba(255,255,255,.94) !important;
  border-color: var(--bs-brand-border) !important;
  box-shadow: var(--bs-brand-shadow) !important;
  color: var(--bs-brand-text) !important;
}

.home-pro-eyebrow {
  background: var(--bs-brand-blush-soft) !important;
  color: var(--bs-brand-primary-dark) !important;
  border-color: var(--bs-brand-border) !important;
}

.home-pro-btn-outline {
  background: rgba(255,255,255,.82) !important;
  border-color: var(--bs-brand-border) !important;
  color: var(--bs-brand-text) !important;
}

/* Formulários */
.form-control,
.form-select,
select,
textarea,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="date"],
input[type="time"],
input[type="number"] {
  border-color: rgba(183,121,91,.28) !important;
}

.form-control:focus,
.form-select:focus,
select:focus,
textarea:focus,
input:focus {
  border-color: var(--bs-brand-secondary) !important;
  box-shadow: 0 0 0 .2rem rgba(217,165,166,.20) !important;
  outline: 0 !important;
}

/* Modais */
.modal-content,
.offcanvas {
  border: 1px solid var(--bs-brand-border) !important;
  border-radius: 18px !important;
  box-shadow: 0 20px 55px rgba(81,58,52,.18) !important;
}

.modal-header,
#modalSimulacaoCliente .modal-header {
  background: linear-gradient(135deg, #F4D8D5 0%, #D9A5A6 55%, #B7795B 100%) !important;
  color: #513A34 !important;
  border-bottom-color: rgba(183,121,91,.18) !important;
}

.modal-header .close,
.modal-header .btn-close {
  color: var(--bs-brand-text) !important;
}

.modal-body,
#modalSimulacaoCliente .modal-body {
  background: #FFFDFC !important;
}

/* Painel web */
.cbp-spmenu,
.sidebar-left,
.sidebar-left .navbar-inverse,
.sidebar-menu,
.navbar-inverse {
  background: #513A34 !important;
}

.sidebar-menu li a,
.sidebar-left a,
.navbar-inverse .navbar-brand {
  color: #FFF8F3 !important;
}

.sidebar-menu li.active > a,
.sidebar-menu li > a:hover,
.sidebar-menu li > a:focus,
.treeview-menu > li > a:hover {
  background: #6A4A42 !important;
  color: #F8DCDD !important;
}

#page-wrapper,
.main-page,
.content-main,
.main-content,
.page-container {
  background-color: #FFF8F3;
}

.panel,
.widget,
.stats-info,
.market-update-block,
.compose-left,
.inbox-page,
.forms {
  border-color: var(--bs-brand-border) !important;
}

.panel-heading,
.panel-primary > .panel-heading {
  background: #F4D8D5 !important;
  border-color: var(--bs-brand-border) !important;
  color: var(--bs-brand-text) !important;
}

/* App/PWA */
.theme-light,
.theme-light #page,
.theme-light .page-content {
  background-color: #FFF8F3 !important;
}

.theme-light .card,
.theme-light .menu,
.theme-light .offcanvas {
  background-color: #FFFFFF !important;
}

.spinner-border.color-highlight {
  color: var(--bs-brand-primary) !important;
}

/* Rodapé */
.footer_section,
footer {
  background: #513A34 !important;
  color: #FFF8F3 !important;
}
.footer_section a,
footer a { color: #F4D8D5 !important; }

/* Responsividade web + celular */
@media (max-width: 767.98px) {
  .header_section .navbar-collapse,
  body.sub_page #navbarSupportedContent.jacy-mobile-menu-panel {
    background: #FFF8F3 !important;
    border: 1px solid var(--bs-brand-border) !important;
    box-shadow: 0 16px 36px rgba(81,58,52,.16) !important;
  }

  .header_section .navbar-brand img {
    max-width: 150px !important;
    height: auto !important;
  }

  .modal-dialog {
    width: calc(100% - 18px) !important;
    margin: 9px auto !important;
  }

  .home-hero-panel,
  .home-trust-card,
  .home-service-card {
    border-radius: 16px !important;
  }
}

@media (max-width: 380px) {
  .btn,
  .home-pro-btn-primary,
  .home-pro-btn-outline {
    max-width: 100%;
    white-space: normal;
  }
}

/* Agendamento standalone: substitui o antigo tema escuro/dourado. */
:root {
  --jacy-bg: #FFF8F3;
  --jacy-bg-2: #FBEDEA;
  --jacy-panel: #FFFFFF;
  --jacy-panel-2: #FFF2EE;
  --jacy-input: #FFFFFF;
  --jacy-border: rgba(183,121,91,.22);
  --jacy-border-strong: rgba(183,121,91,.46);
  --jacy-gold: #B7795B;
  --jacy-gold-2: #A7654A;
  --jacy-gold-3: #8F563F;
  --jacy-text: #513A34;
  --jacy-muted: #806760;
}

html,
html body,
#splash {
  background: linear-gradient(180deg, #FFF8F3 0%, #FBEDEA 100%) !important;
  color: var(--bs-brand-text) !important;
}

#filtro-servicos-container {
  background: rgba(255,248,243,.96) !important;
  border-bottom-color: var(--bs-brand-border) !important;
  box-shadow: 0 6px 18px rgba(81,58,52,.07) !important;
}

#filtro-servicos,
.inputs_agenda,
input[type="date"].inputs_agenda {
  background: #fff !important;
  color: var(--bs-brand-text) !important;
  border-color: rgba(183,121,91,.34) !important;
}

#filtro-servicos::placeholder,
.inputs_agenda::placeholder {
  color: #9B817A !important;
}

.card-header,
.footer_form,
.step-content,
#listar-horarios,
.p-3.rounded,
.p-4.rounded,
.service-card,
.professional-card {
  background: #fff !important;
  color: var(--bs-brand-text) !important;
  border-color: var(--bs-brand-border) !important;
  box-shadow: 0 12px 28px rgba(81,58,52,.10) !important;
}

.service-card.selected,
.professional-card.selected,
.service-card:hover,
.professional-card:hover {
  background: #FFF2EE !important;
  border-color: rgba(183,121,91,.50) !important;
  box-shadow: 0 14px 30px rgba(183,121,91,.15) !important;
}

.card-title,
.card-title-func,
h4.text-white,
h5.text-white,
.text-white {
  color: var(--bs-brand-text) !important;
}

.text-white-50,
.card-text,
.card-specialty {
  color: var(--bs-brand-muted) !important;
}

.step-indicator .step,
.step {
  background: #FFF2EE !important;
  border-color: var(--bs-brand-border) !important;
  color: var(--bs-brand-muted) !important;
}

.step-indicator .step.active,
.step.active,
.step.completed,
.bg-info,
.btn-info,
.botao-azul,
.botao-verde,
#btn_agendar,
#botao-instalar,
.swal2-confirm {
  background: linear-gradient(135deg, #D9A5A6, #B7795B 58%, #8F563F) !important;
  border-color: rgba(143,86,63,.44) !important;
  color: #fff !important;
}

.btn-outline-info {
  background: #FFF2EE !important;
  color: var(--bs-brand-primary-dark) !important;
  border-color: rgba(183,121,91,.42) !important;
}

/* Logo horizontal da marca no cabeçalho público. */
.header_section .navbar-brand img,
.jacy-header-lite .navbar-brand img {
  width: 150px !important;
  max-width: 150px !important;
  height: auto !important;
  object-fit: contain !important;
}

@media (max-width: 767.98px) {
  .header_section .navbar-brand img,
  .jacy-header-lite .navbar-brand img {
    width: 132px !important;
    max-width: 132px !important;
  }
}
