/* Direção visual inspirada no protótipo Figma Make, aplicada ao site real. */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
  color-scheme: dark;
  --bg: #0b120f;
  --panel: #131d18;
  --raised: #1a2821;
  --line: #2b3a31;
  --text: #f2f6f3;
  --muted: #9baaa1;
  --accent: #a5d3b8;
  --blue: #71a9e8;
}

body { font-family: "DM Sans", Inter, system-ui, sans-serif; background: var(--bg); }
h1, h2, h3, .brand { font-family: Manrope, "DM Sans", sans-serif; }
button, input, select, textarea { border-radius: 8px; }
button { transition: background-color .16s ease, border-color .16s ease, transform .16s ease; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid #a5d3b8; outline-offset: 2px; }

/* Painel principal */
aside#sidebar { background: #0e1712; border-color: #26352c; }
.nav-link { border-radius: 8px; }
.nav-link.active { background: #203128; color: #b7e2c7; }
header { border-color: #26352c; }
main#app { max-width: 1740px; }
.panel, .stat, .trip-card, .leader-tile { border-color: #2b3a31; background: #131d18; border-radius: 12px; }
.panel-head, th { background: #18241d; border-color: #2b3a31; }
td { border-color: #26352c; }
tbody tr:hover { background: #19271f; }
button.primary { background: #a5d3b8; border-color: #a5d3b8; color: #14231a; }
button.primary:hover { background: #b8e0c8; border-color: #b8e0c8; }
.badge.green { background: #20392b; color: #b8e0c8; }
input, select, textarea { background-color: #101813; border-color: #36463b; }
input:focus, select:focus, textarea:focus { border-color: #8fbea2; outline-color: #8fbea2; }
dialog { background: #17221b; border-color: #35463a; }

/* Site público: preserva os textos, as excursões e as rotas existentes. */
.public-mode { background: #0b120f; }
.public-mode header { border-color: #2b3a31; }
.public-mode .site-hero {
  background-image: linear-gradient(90deg, rgba(6,15,10,.94), rgba(7,18,12,.66) 52%, rgba(7,18,12,.15)), url('assets/cover.png');
}
.public-mode .site-button { border-radius: 9px; }
.public-mode .site-button.secondary { background: #1a2821; border: 1px solid #34463a; }
.public-mode .leader-tile, .public-mode .review { background: #131d18; border: 1px solid #2b3a31; border-radius: 12px; }
.public-mode .site-trust { background: #111b15; border-color: #2b3a31; }
.public-mode footer { background: #0e1712; border-color: #26352c; }

/* Área de equipe: superfície e contraste alinhados ao protótipo. */
.team-mode .staff-portal-nav { background: #101813; border-color: #2b3a31; }
.team-mode .staff-portal-nav a.active, .team-mode .staff-portal-nav a:hover { background: #24352a; color: #c1e6cd; }
.team-mode .staff-stats > div, .team-mode .staff-card, .team-mode .staff-trip-directory { background: #131d18; border-color: #2b3a31; }
.team-mode .staff-trip-directory-head { background: #19251e; border-color: #324238; }
.team-mode .staff-trip-list article:hover { background: #19271f; }
.team-mode .staff-trip-actions button, .team-mode .staff-trip-actions .staff-finance-link { background: #17221b; border-color: #3a4b3f; }
.team-mode .staff-trip-actions button[data-staff-edit-trip], .team-mode .staff-primary { background: #a5d3b8; color: #14231a; }
.team-mode .staff-trip-actions button[data-staff-edit-trip]:hover, .team-mode .staff-primary:hover { background: #b8e0c8; color: #14231a; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
