/* Estilos especificos para Hotel Portugal de Carmo */
:root {
  /* Identidade Hotel Portugal: Vermelho Vivo (#E70805), Verde Vivo (#08AA01), Branco (#FFFFFF) */
  --primary-blue: #E70805 !important;
  --primary-hover: #C90704 !important;
  --primary-light: #FEECEB !important;
  --primary-dark: #9E0604 !important;
  --primary-green: #08AA01 !important;
  --accent-blue: #08AA01 !important;
  --accent-blue-light: #EAF8EB !important;
  --brand-navy: #070705 !important;
  --text-main: #070705 !important;
  --text-primary: #070705 !important;
  --forest-900: #9E0604 !important;
  --forest-800: #E70805 !important;
  --forest-700: #C90704 !important;
  --forest-600: #E70805 !important;
  --forest-100: #FEECEB !important;
  --forest-50: #FFF5F5 !important;
  --forest-border: #FCA5A5 !important;
  --verde: #08AA01 !important;
  --verde-escuro: #068F01 !important;
  --verde-claro: #EAF8EB !important;
  --fundo: #F8FAFC !important;
  --texto: #070705 !important;
  --azul-link: #E70805 !important;
}

/* Painel Admin - Sidebar e Logo Retangular */
.admin-sidebar {
  background-color: #0E1F15 !important;
  border-right: 1px solid rgba(8, 170, 1, 0.2) !important;
}

.sidebar-header {
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 18px 16px 14px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.sidebar-logo {
  width: auto !important;
  max-width: 190px !important;
  height: auto !important;
  max-height: 48px !important;
  border-radius: 6px !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  background: #FFFFFF !important;
  padding: 4px 8px !important;
  object-fit: contain !important;
  display: block !important;
}

.sidebar-title {
  color: #FFFFFF !important;
  font-weight: 800 !important;
}

.sidebar-subtitle {
  color: #08AA01 !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
}

.sidebar-nav .tab-btn:hover {
  background: rgba(8, 170, 1, 0.12) !important;
  color: #FFFFFF !important;
}

.sidebar-nav .tab-btn.active {
  background: rgba(8, 170, 1, 0.2) !important;
  color: #FFFFFF !important;
  border-color: rgba(8, 170, 1, 0.35) !important;
}

.sidebar-nav .tab-btn.active::before {
  background: #08AA01 !important;
  width: 4px !important;
}

/* Indicadores de status e badges */
.indicator-online,
.status-indicator.online {
  background: #08AA01 !important;
  box-shadow: 0 0 8px rgba(8, 170, 1, 0.7) !important;
}

/* Botoes primarios em vermelho vibrante */
.btn-primary,
#btn-nova-reserva,
.btn-quick-primary {
  background: #E70805 !important;
  border-color: #E70805 !important;
  color: #FFFFFF !important;
}
.btn-primary:hover,
#btn-nova-reserva:hover,
.btn-quick-primary:hover {
  background: #C90704 !important;
  border-color: #C90704 !important;
}

/* Cards de quartos & fotos no Admin */
.suite-photo[src*="sem-foto.svg"] {
  object-fit: contain !important;
  padding: 24px !important;
  background: #F8FAFC !important;
}

/* Footer do Admin: layout limpo com separacao garantida */
.admin-desktop-footer {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  padding: 18px 36px !important;
  background: #FFFFFF !important;
  border-top: 1px solid var(--border-subtle) !important;
}

/* App do Dono (dono.html) */
.bottom-nav-item.ativo,
.bottom-nav-item.ativo .bottom-nav-icon {
  color: #08AA01 !important;
  stroke: #08AA01 !important;
}

.badge-green,
.pill-confirmada {
  background: #EAF8EB !important;
  color: #08AA01 !important;
  border-color: #A7F3D0 !important;
}

.destaque-moeda {
  color: #08AA01 !important;
}

.btn-confirmar-pix,
.btn-acao-confirmar,
.btn-dono-principal {
  background: #E70805 !important;
  color: #FFFFFF !important;
}
.btn-confirmar-pix:hover,
.btn-acao-confirmar:hover,
.btn-dono-principal:hover {
  background: #C90704 !important;
}

/* Avatar do atendente virtual */
.avatar-vandinho,
.avatar-maninho,
.avatar-atendente {
  background: transparent url('/fotos/avatar_maninho.svg') center/cover no-repeat !important;
  border: 0 !important;
}

/* Marca d'agua do fundo no chat */
.tela::before {
  background-image: url('/fotos/logo-pt-1.png') !important;
}

/* Fundo do login admin */
#modal-login-admin.modal-backdrop {
  background: linear-gradient(135deg, rgba(231, 8, 5, 0.85) 0%, rgba(8, 170, 1, 0.85) 100%), url('/fotos/BC-1-full.jpg') center/cover no-repeat fixed !important;
}

/* Ocultar restaurante quando inativo, mantendo menu Cupons de Desconto funcional */
.nav-restaurante,
[data-tab="tab-restaurante"][data-target-subtab="subtab-mesas"],
#btn-quick-reserva-mesa,
.kpi-card-mesas,
.three-col-grid > .section-card:nth-child(3),
.section-card:has(#lista-mesas-hoje-admin),
#card-kpi-mesas-fds,
#tab-mesas,
[data-aba="tab-mesas"],
[data-subtab="subtab-mesas"],
[data-subtab="subtab-res-rest"],
[data-subtab="subtab-cardapio"],
[data-subtab="subtab-eventos"],
#subtab-mesas,
#subtab-res-rest,
#subtab-cardapio,
#subtab-eventos,
#tab-restaurante .subtabs-bar,
.form-group:has(#cfg-restaurante-ativo),
.danger-action-box:has(#btn-perigo-zerar-restaurante) {
  display: none !important;
}

#tab-restaurante.active #subtab-cupons {
  display: block !important;
}

.three-col-grid {
  grid-template-columns: repeat(2, 1fr) !important;
}

#painel-kpis-fin {
  grid-template-columns: repeat(3, 1fr) !important;
}
