:root {  --primary-color: #6a43c8;  --primary-hover: #5a36b0;  --secondary-color: #f8f9fa;  --text-color: #333;  --light-text: #6c757d;  --border-color: #dee2e6;  --success-color: #28a745;  --danger-color: #dc3545;  --warning-color: #ffc107;  --info-color: #17a2b8;  --navbar-bg: #7A6460;  --navbar-shadow: rgba(0, 0, 0, 0.05);}/* BODY */body {  background-color: #EDE6E3;  color: #1C1C1C;  font-family: 'Poppins', sans-serif;  line-height: 1.6;  padding-top: 70px; /* espaço para navbar fixa */}/* LAYOUT DA ÁREA ADMINISTRATIVA - CORREÇÃO PRINCIPAL */.sidebar {  position: fixed;  top: 70px; /* Abaixo da navbar */  left: 0;  width: 250px;  height: calc(100vh - 70px);  background-color: #7A6460;  padding: 1rem 0;  overflow-y: auto;  z-index: 1020;  box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);}.sidebar .nav-link {  color: #fff !important;  font-weight: 500;  padding: 0.75rem 1.5rem;  transition: background-color 0.3s ease;  border: none;  display: block;  text-decoration: none;}.sidebar .nav-link:hover,.sidebar .nav-link.active {  background-color: #5a36b0;  color: #fff !important;}.sidebar .nav-link i {  margin-right: 0.5rem;  width: 20px;  text-align: center;}/* CONTEÚDO PRINCIPAL - ESTA É A CORREÇÃO PRINCIPAL */#content {  margin-left: 250px; /* Largura da sidebar */  padding: 1rem;  min-height: calc(100vh - 70px);  background-color: #EDE6E3;}/* ESTILOS PARA PÁGINA DE DETALHES DO AGENDAMENTO - LAYOUT LINEAR COMPACTO */.appointment-detail-container {  max-width: 800px;  margin: 0 auto;  padding: 0.5rem;}.appointment-header {  display: flex;  justify-content: space-between;  align-items: center;  margin-bottom: 1rem;  padding-bottom: 0.5rem;  border-bottom: 2px solid #7A6460;}.appointment-header h1 {  font-size: 1.5rem;  margin: 0;  color: #7A6460;}.appointment-info {  background: white;  padding: 1rem;  border-radius: 0.5rem;  margin-bottom: 1rem;  box-shadow: 0 2px 4px rgba(0,0,0,0.1);}.appointment-info p {  margin-bottom: 0.5rem;  line-height: 1.4;}.form-section {  background: white;  padding: 1rem;  border-radius: 0.5rem;  margin-bottom: 1rem;  box-shadow: 0 2px 4px rgba(0,0,0,0.1);}.form-section h5 {  margin-bottom: 0.75rem;  color: #7A6460;  font-size: 1.1rem;}.compact-form .form-row {  display: flex;  gap: 0.5rem;  align-items: center;  flex-wrap: wrap;}.compact-form .form-control {  flex: 1;  min-width: 200px;  padding: 0.5rem;  border: 1px solid #ddd;  border-radius: 0.375rem;}.compact-form .btn {  white-space: nowrap;  padding: 0.5rem 1rem;}.history-section {  background: white;  padding: 1rem;  border-radius: 0.5rem;  margin-bottom: 1rem;  box-shadow: 0 2px 4px rgba(0,0,0,0.1);}.history-section h5 {  margin-bottom: 0.75rem;  color: #7A6460;  font-size: 1.1rem;}.history-list {  max-height: 300px;  overflow-y: auto;}.history-item {  display: flex;  justify-content: space-between;  align-items: center;  padding: 0.5rem 0;  border-bottom: 1px solid #eee;}.history-item:last-child {  border-bottom: none;}.history-content {  flex: 1;}.history-content.discount-item {  background-color: #fff3cd;  padding: 0.25rem 0.5rem;  border-radius: 0.25rem;  margin-right: 0.5rem;}.history-action {  margin: 0;}.appointment-actions {  display: flex;  gap: 1rem;  justify-content: center;  margin-top: 1.5rem;}.action-form {  margin: 0;}/* Navbar fixa */.navbar {  position: fixed;  top: 0;  left: 0;  width: 100%;  background-color: var(--navbar-bg) !important;  box-shadow: 0 2px 10px var(--navbar-shadow);  z-index: 1030;  padding: 0.75rem 1rem;  transition: background-color 0.3s ease;}.navbar-brand {  display: flex;  align-items: center;  gap: 10px;  color: white !important;  position: relative;  z-index: 3;}.navbar-brand img {  height: 120px; /* maior que a barra */  width: auto;  margin-top: -25px;  margin-bottom: -80px;  transition: all 0.3s ease;}.navbar-nav .nav-link {  color: white !important;  font-weight: 500;  padding: 0.5rem 1rem;  transition: all 0.3s ease;}.navbar-nav .nav-link:hover {  color: #EDE6E3 !important;  text-decoration: underline;}.navbar-nav .nav-link.active {  font-weight: bold;  text-decoration: underline;}/* Botões */.btn-primary {  background-color: #7A6460;  border-color: #7A6460;  color: #EDE6E3;}.btn-primary:hover,.btn-primary:focus {  background-color: #D8A7B1;  border-color: #D8A7B1;  color: #1C1C1C;}.btn-outline-primary {  color: #7A6460;  border-color: #7A6460;}.btn-outline-primary:hover,.btn-outline-primary:focus {  background-color: #7A6460;  color: #EDE6E3;  border-color: #7A6460;}.btn-outline-dark {  color: #7A6460;  border-color: #7A6460;}.btn-outline-dark:hover,.btn-outline-dark:focus {  background-color: #7A6460;  color: #EDE6E3;  border-color: #7A6460;}.btn {  padding: 0.5rem 1.5rem;  border-radius: 0.5rem;  font-weight: 500;  transition: all 0.3s ease;}.btn-lg {  padding: 0.75rem 2rem;}/* Cards */.card {  border: none;  box-shadow: 0 4px 6px rgba(122, 100, 96, 0.15);  background-color: #FFFFFF;  color: #1C1C1C;  transition: transform 0.3s ease, box-shadow 0.3s ease;  border-radius: 0.5rem;  height: 100%;}.card:hover {  transform: translateY(-5px);  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1) !important;}/* Formulários */.form-control, .form-select {  padding: 0.75rem 1rem;  border-radius: 0.5rem;  border: 1px solid var(--border-color);}.form-control:focus, .form-select:focus {  border-color: var(--primary-color);  box-shadow: 0 0 0 0.25rem rgba(106, 67, 200, 0.25);}/* Footer */footer {  background-color: #212529;}footer a {  color: #fff;  text-decoration: none;  transition: all 0.3s ease;}footer a:hover {  color: var(--primary-color);}/* Animações */@keyframes fadeIn {  from {    opacity: 0;    transform: translateY(20px);  }  to {    opacity: 1;    transform: translateY(0);  }}.animate-fade-in {  animation: fadeIn 0.5s ease-out forwards;}/* Ajuste para dispositivos móveis */@media (max-width: 768px) {  .sidebar {    transform: translateX(-100%);    transition: transform 0.3s ease;  }    .sidebar.show {    transform: translateX(0);  }    #content {    margin-left: 0;    padding: 0.5rem;  }    .appointment-detail-container {    padding: 0.25rem;  }    .appointment-header {    flex-direction: column;    gap: 0.5rem;    align-items: stretch;  }    .appointment-header h1 {    font-size: 1.25rem;    text-align: center;  }    .compact-form .form-row {    flex-direction: column;    gap: 0.5rem;  }    .compact-form .form-control {    min-width: auto;  }    .appointment-actions {    flex-direction: column;    gap: 0.5rem;  }    .appointment-actions .btn {    width: 100%;  }    /* Botão para mostrar/esconder sidebar em mobile */  .sidebar-toggle {    display: block;    position: fixed;    top: 80px;    left: 10px;    z-index: 1025;    background-color: #7A6460;    color: white;    border: none;    padding: 0.5rem;    border-radius: 0.25rem;  }}@media (min-width: 769px) {  .sidebar-toggle {    display: none;  }}/* Responsividade */@media (max-width: 991.98px) {  .display-4 {    font-size: 2.5rem;  }  .display-5 {    font-size: 2rem;  }  .lead {    font-size: 1.1rem;  }  .navbar-brand img {    height: 90px;    margin-top: -15px;    margin-bottom: -60px;  }  .py-5 {    padding-top: 3rem !important;    padding-bottom: 3rem !important;  }  .btn-lg {    padding: 0.6rem 1.5rem;    font-size: 1rem;  }}@media (max-width: 767.98px) {  body {    padding-top: 60px; /* Reduzir espaço para navbar em mobile */  }  .display-4 {    font-size: 2rem;  }  .display-5 {    font-size: 1.75rem;  }  .lead {    font-size: 1rem;  }  h1 {    font-size: 1.8rem;  }  h2 {    font-size: 1.6rem;  }  .navbar {    padding: 0.5rem;  }  .navbar-brand {    gap: 5px;  }  .navbar-brand img {    height: 50px;    margin-top: -5px;    margin-bottom: -30px;  }  .navbar-toggler {    z-index: 1031;    position: relative;  }  .btn {    padding: 0.4rem 1.2rem;    font-size: 0.9rem;  }  .btn-lg {    padding: 0.5rem 1.2rem;    font-size: 0.95rem;  }  .py-5 {    padding-top: 2rem !important;    padding-bottom: 2rem !important;  }  .mb-5 {    margin-bottom: 2rem !important;  }  .mt-5 {    margin-top: 2rem !important;  }  .card-body {    padding: 1rem;  }  footer .social-icons {    margin-bottom: 1.5rem;  }  footer .social-icons a {    font-size: 1.2rem;    margin-right: 1rem;  }  .nav-link, .btn, .social-icon {    min-height: 44px;    display: flex;    align-items: center;  }  .navbar-nav .nav-item:last-child {    margin-top: 0.5rem;    margin-bottom: 0.5rem;  }  section {    margin-bottom: 1rem;  }  .hero-section {    padding: 3rem 0;  }  .hero-section h1 span {    display: inline !important;    margin-bottom: 0 !important;  }  .hero-section h1 {    margin-bottom: 2rem !important;    line-height: 1.3;  }  .hero-section h1 span.fs-2 {    display: block !important;    margin-top: 0.5rem;  }}@media (max-width: 575.98px) {  body {    padding-top: 55px;  }  .display-4 {    font-size: 1.8rem;  }  .display-5 {    font-size: 1.5rem;  }  .navbar-brand img {    height: 45px;    margin-top: -5px;    margin-bottom: -25px;  }  .navbar-collapse.show, .navbar-collapse.collapsing {    margin-top: 15px;    clear: both;  }  p {    font-size: 0.95rem;  }  .py-5 {    padding-top: 1.5rem !important;    padding-bottom: 1.5rem !important;  }  .container {    padding-left: 1rem;    padding-right: 1rem;  }  .card {    margin-bottom: 1rem;  }  .btn {    width: 100%;    margin-bottom: 0.5rem;    justify-content: center;  }  footer h5 {    font-size: 1.1rem;  }  .hero-section h1 {    font-size: 1.6rem;    line-height: 1.4;  }  .hero-section h1 span {    font-size: 1.8rem !important;    line-height: 1.4;    margin-top: 0.5rem;    margin-bottom: 0.5rem;  }}/* Estilos específicos para páginas */.hero-section {  padding: 6rem 0;  background-color: #EDE6E3 !important;  color: #1C1C1C;}.feature-icon {  display: inline-flex;  align-items: center;  justify-content: center;  width: 70px;  height: 70px;  border-radius: 50%;  background: #7A6460;  color: white !important;  margin-bottom: 1.5rem;}.testimonial-avatar {  width: 50px;  height: 50px;  border-radius: 50%;  display: flex;  align-items: center;  justify-content: center;  font-weight: bold;  background-color: #7A6460;  color: white;}.bg-light {  background-color: #EDE6E3 !important;}.text-muted {  color: #7A6460 !important;}/* CTA Section */.bg-primary {  background-color: #7A6460 !important;  color: #EDE6E3 !important;}.btn-light {  background-color: #EDE6E3;  color: #7A6460;  border: none;}.btn-light:hover, .btn-light:focus {  background-color: #D8A7B1;  color: #1C1C1C;}/* Calendário e agendamento */.booking-step {  padding: 1rem 0;}.time-slot {  cursor: pointer;  padding: 0.5rem 1rem;  border: 1px solid var(--border-color);  border-radius: 0.5rem;  margin-bottom: 0.5rem;  transition: all 0.3s ease;}.time-slot:hover {  background-color: var(--secondary-color);}.time-slot.selected {  background-color: var(--primary-color);  color: white;  border-color: var(--primary-color);}.time-slot.unavailable {  opacity: 0.5;  cursor: not-allowed;  background-color: #f8f9fa;}/* Badges e status */.badge {  padding: 0.5rem 0.75rem;  font-weight: 500;  border-radius: 0.5rem;}/* Animações para feedback */.success-animation {  animation: scaleUp 0.5s ease-in-out;}@keyframes scaleUp {  0% {    transform: scale(0.5);    opacity: 0;  }  100% {    transform: scale(1);    opacity: 1;  }}/* Cores customizadas para padronização */.bg-light-rose {  background-color: #EDE6E3 !important;}.bg-very-light {  background-color: #F8F4F2 !important;}.bg-team {  background-color: #E2C2C3 !important;}.bg-cta {  background-color: #D8A7B1 !important;}.text-primary-rose {  color: #7A6460 !important;}.text-dark {  color: #1C1C1C !important;}/* Botão CTA especial */.btn-cta {  color: #7A6460 !important;  border-color: #7A6460 !important;}.btn-cta:hover, .btn-cta:focus {  background-color: #D8A7B1 !important;  color: #1C1C1C !important;  border-color: #D8A7B1 !important;}/* Contact/social icons */.contact-icon {  display: inline-flex;  align-items: center;  justify-content: center;  width: 50px;  height: 50px;  border-radius: 50%;  flex-shrink: 0;}.social-icon {  display: inline-flex;  align-items: center;  justify-content: center;  width: 40px;  height: 40px;  border-radius: 50%;  transition: all 0.3s ease;}.social-icon:hover {  transform: translateY(-3px);  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);}.text-justified {  text-align: justify;  color: #1C1C1C;}/* Mensagens Flash */.alert {  max-width: 800px;  margin-left: auto;  margin-right: auto;  text-align: center; /* Centraliza o texto das mensagens flash */  border-radius: 0.5rem;  box-shadow: 0 4px 6px rgba(122, 100, 96, 0.15);  transition: all 0.3s ease;  animation: fadeInDown 0.5s ease-out forwards;}.alert-success {  background-color: #d4edda;  border-color: #c3e6cb;  color: #155724;}.alert-danger {  background-color: #f8d7da;  border-color: #f5c6cb;  color: #721c24;}.alert-warning {  background-color: #fff3cd;  border-color: #ffeeba;  color: #856404;}.alert-info {  background-color: #d1ecf1;  border-color: #bee5eb;  color: #0c5460;}/* Ajuste para garantir que o botão de fechar fique alinhado corretamente */.alert-dismissible .btn-close {  position: absolute;  top: 50%;  transform: translateY(-50%);  right: 1rem;}@keyframes fadeInDown {  from {    opacity: 0;    transform: translateY(-20px);  }  to {    opacity: 1;    transform: translateY(0);  }}/* Melhorias para acessibilidade em dispositivos móveis */@media (hover: none) {  .card:hover {    transform: none;  }  a:hover, .btn:hover {    transition: none;  }}/* Melhorias para botões em dispositivos móveis */@media (max-width: 767.98px) {  .d-flex.gap-3 {    flex-direction: column;    gap: 0.5rem !important;  }  .d-flex.gap-3 .btn {    width: 100%;    margin-bottom: 0.5rem;  }  .py-5.bg-primary .row {    text-align: center;  }  .py-5.bg-primary .col-lg-4 {    margin-top: 1rem;    text-align: center;  }}.glass-card {  background: rgba(255, 255, 255, 0.15);  border-radius: 1rem;  box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.1);  backdrop-filter: blur(10px);  -webkit-backdrop-filter: blur(10px);  border: 1px solid rgba(255, 255, 255, 0.2);  padding: 1rem;  transition: transform 0.3s ease, box-shadow 0.3s ease;}.glass-card:hover {  transform: translateY(-4px);  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.1);}.glass-card a {  color: #3399ff;  text-decoration: none;  transition: color 0.3s ease;}.glass-card a:hover {  color: #ffd700; /* amarelo dourado suave */}.contact-icon {  width: 48px;  height: 48px;  border-radius: 50%;  display: grid;  place-items: center;  transition: transform 0.3s ease;}.contact-icon:hover i {  animation: bounce 0.6s;}@keyframes bounce {  0%, 100% { transform: translateY(0); }  50% { transform: translateY(-6px); }}.sidebar a.nav-link {  color: #fff;  font-weight: 500;  transition: background-color 0.3s ease;}.sidebar a.nav-link:hover,.sidebar a.nav-link.active {  background-color: #5a36b0;  color: #fff;}/* Remove transições e transformações da animação fade dos modais */.modal.fade .modal-dialog {  transition: none !important;  transform: none !important;}.modal.fade.show .modal-dialog {  transform: none !important;}/* Remove transição de opacity do modal */.modal.fade {  transition: none !important;  opacity: 1 !important;}