/* Gerado por split de app/static/css/estilo_ph3a.css (fundação da reorganização de CSS, 03/08/2026). Ver app/utils/css_manifest.py pra ordem de carregamento. */

/* ============================================================
   BOOTSTRAP BUTTON OVERRIDES — Identidade Visual PH3A
   Substitui os cinzas genéricos do Bootstrap pelas cores
   oficiais PH3A (laranja #ef5929 e navy #051F4E).
   ============================================================ */

/* ── btn-primary → Laranja PH3A ── */
.btn-primary {
  background-color: var(--ph3a-primary) !important;
  border-color:     var(--ph3a-primary) !important;
  color: #fff !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
  background-color: var(--ph3a-primary-dark) !important;
  border-color:     var(--ph3a-primary-dark) !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(255,81,27,.35) !important;
  transform: translateY(-1px);
}

/* ── btn-outline-primary → Outline laranja ── */
.btn-outline-primary {
  background-color: transparent !important;
  border-color: var(--ph3a-primary) !important;
  color: var(--ph3a-primary) !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
  background-color: var(--ph3a-primary) !important;
  border-color:     var(--ph3a-primary) !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(255,81,27,.3) !important;
  transform: translateY(-1px);
}

/* ── btn-secondary → Navy PH3A ── */
.btn-secondary {
  background-color: var(--ph3a-accent) !important;
  border-color:     var(--ph3a-accent) !important;
  color: #fff !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active,
.btn-secondary.active {
  background-color: var(--ph3a-accent-light) !important;
  border-color:     var(--ph3a-accent-light) !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(5,31,78,.3) !important;
  transform: translateY(-1px);
}

/* ── btn-outline-secondary → Outline navy ── */
.btn-outline-secondary {
  background-color: transparent !important;
  border-color: var(--ph3a-accent) !important;
  color: var(--ph3a-accent) !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-secondary:active {
  background-color: var(--ph3a-accent) !important;
  border-color:     var(--ph3a-accent) !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(5,31,78,.3) !important;
  transform: translateY(-1px);
}

/* ── btn-light → Branco com navy ── */
.btn-light {
  background-color: var(--ph3a-white) !important;
  border-color: var(--ph3a-border, #e2e8f0) !important;
  color: var(--ph3a-accent) !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-light:hover,
.btn-light:focus,
.btn-light:active {
  background-color:var(--ph3a-bg-alt) !important;
  border-color: var(--ph3a-accent) !important;
  color: var(--ph3a-accent) !important;
  box-shadow: 0 2px 8px rgba(5,31,78,.15) !important;
}

/* ── btn-success → Verde (semântico) ── */
.btn-success {
  background-color: var(--ph3a-success, #10b981) !important;
  border-color:     var(--ph3a-success, #10b981) !important;
  color: #fff !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-success:hover,
.btn-success:focus,
.btn-success:active {
  background-color: #059669 !important;
  border-color:     #059669 !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(16,185,129,.3) !important;
  transform: translateY(-1px);
}

/* ── btn-outline-success → Outline verde ── */
.btn-outline-success {
  background-color: transparent !important;
  border-color: var(--ph3a-success, #10b981) !important;
  color: var(--ph3a-success, #10b981) !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-outline-success:hover,
.btn-outline-success:focus {
  background-color: var(--ph3a-success, #10b981) !important;
  border-color:     var(--ph3a-success, #10b981) !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(16,185,129,.3) !important;
  transform: translateY(-1px);
}

/* ── btn-danger → Vermelho (semântico) ── */
.btn-danger {
  background-color: var(--ph3a-danger, #ef4444) !important;
  border-color:     var(--ph3a-danger, #ef4444) !important;
  color: #fff !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active {
  background-color: #dc2626 !important;
  border-color:     #dc2626 !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(239,68,68,.3) !important;
  transform: translateY(-1px);
}

/* ── btn-outline-danger → Outline vermelho ── */
.btn-outline-danger {
  background-color: transparent !important;
  border-color: var(--ph3a-danger, #ef4444) !important;
  color: var(--ph3a-danger, #ef4444) !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-outline-danger:hover,
.btn-outline-danger:focus {
  background-color: var(--ph3a-danger, #ef4444) !important;
  border-color:     var(--ph3a-danger, #ef4444) !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(239,68,68,.3) !important;
  transform: translateY(-1px);
}

/* ── btn-warning → Âmbar ── */
.btn-warning {
  background-color: var(--ph3a-warning, #f59e0b) !important;
  border-color:     var(--ph3a-warning, #f59e0b) !important;
  color: #fff !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active {
  background-color: #d97706 !important;
  border-color:     #d97706 !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(245,158,11,.3) !important;
  transform: translateY(-1px);
}

/* ── btn-info → Azul info ── */
.btn-info {
  background-color: var(--ph3a-info, #3b82f6) !important;
  border-color:     var(--ph3a-info, #3b82f6) !important;
  color: #fff !important;
  font-weight: 600;
  border-radius: 10px;
  transition: all .18s ease;
}
.btn-info:hover,
.btn-info:focus {
  background-color: #2563eb !important;
  border-color:     #2563eb !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(59,130,246,.3) !important;
  transform: translateY(-1px);
}

/* ── Tamanho btn-sm com border-radius menor ── */
.btn-sm {
  border-radius: 8px !important;
  font-size: 12px !important;
  padding: 5px 12px !important;
  font-weight: 600 !important;
}

/* ── Tamanho btn-lg ── */
.btn-lg {
  border-radius: 12px !important;
  font-size: 15px !important;
  padding: 12px 28px !important;
  font-weight: 700 !important;
}

/* ── btn-link (mantém semântica) ── */
.btn-link {
  color: var(--ph3a-primary) !important;
  font-weight: 600;
  text-decoration: none;
}
.btn-link:hover {
  color: var(--ph3a-primary-dark) !important;
  text-decoration: underline;
}

/* ── Focus ring PH3A ── */
.btn:focus-visible {
  outline: 2px solid var(--ph3a-primary) !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}

/* ── btn-outline: alias para btn-outline-ph3a (navy com borda) ── */
.btn-outline {
  background: transparent;
  color: var(--ph3a-accent);
  border: 1.5px solid var(--ph3a-accent);
  border-radius: 10px;
  padding: 9px 18px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: all var(--transition);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
}
.btn-outline:hover {
  background: var(--ph3a-accent);
  color: #fff;
  text-decoration: none;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(5,31,78,.25);
}

/* ── Links "Voltar" texto (breadcrumb-style) → btn estilizado ── */
a.back-link,
.back-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--ph3a-accent);
  background: transparent;
  border: 1.5px solid var(--ph3a-border, #e2e8f0);
  border-radius: 8px;
  padding: 6px 14px;
  text-decoration: none;
  transition: all .18s ease;
}
.back-link:hover {
  border-color: var(--ph3a-accent);
  color: var(--ph3a-accent);
  background: #f0f4ff;
  text-decoration: none;
}


