/* OlivoMoura 2026 - Temas Claro e Escuro */

/* Tema ESCURO (default em :root) */
:root {
  --bg:#141a11;
  --bg-alt:#1c2417;
  --olive:#88a55a;
  --olive-dark:#5a6b33;
  --terra:#c58a4a;
  --terra-dark:#8b5a2b;
  --gold:#d9b969;
  --card:#202a1e;
  --text:#f8f4ea;
}

/* Tema claro explícito */
:root.theme-light {
  --bg:#f6f1e5;
  --bg-alt:#f2ebdd;
  --olive:#5a6b33;
  --olive-dark:#394826;
  --terra:#8b5a2b;
  --terra-dark:#6f4520;
  --gold:#c7a24a;
  --card:#fffaf2;
  --text:#2d2a26;
}

/* Tema escuro explícito (igual ao default) */
:root.theme-dark {
  --bg:#141a11;
  --bg-alt:#1c2417;
  --olive:#88a55a;
  --olive-dark:#5a6b33;
  --terra:#c58a4a;
  --terra-dark:#8b5a2b;
  --gold:#d9b969;
  --card:#202a1e;
  --text:#f8f4ea;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}

/* Logotipo circular na navbar */
.logo-olive{
  width:32px;
  height:32px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--olive),var(--terra));
  color:#fff;
  font-size:1.1rem;
}

body{
  font-family:'Open Sans',sans-serif;
  background:var(--bg);
  color:var(--text);
}

/* Tipografia */
h1,h2,h3,h4,.navbar-brand{
  font-family:'Montserrat',sans-serif;
  color:var(--text);
}

/* Navbar */
.navbar{
  background:rgba(20,28,17,.96);
  backdrop-filter:saturate(140%) blur(8px);
}
.navbar .navbar-brand{
  color:var(--gold);
}
.navbar .nav-link{
  color:#f5f2e8;
}
.navbar .nav-link:hover,
.navbar .nav-link.active{
  color:var(--terra);
}

/* Hero */
.hero,
.hero-small{
  color:#fff;
  display:flex;
  align-items:center;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.hero{
  min-height:82vh;
  background-image:
    linear-gradient(rgba(5,10,4,.80),rgba(24,34,18,.70)),
    var(--hero-image);
}
.hero-small{
  min-height:36vh;
  background-image:
    linear-gradient(rgba(5,10,4,.80),rgba(24,34,18,.70)),
    var(--hero-image);
}
.hero-overlay{max-width:760px}

/* Botões */
.btn-olive{
  background:var(--olive);
  border:0;
  color:#101308;
}
.btn-olive:hover{
  background:var(--gold);
  color:#101308;
}

.btn-terra{
  background:var(--terra);
  border:0;
  color:#1a1209;
}
.btn-terra:hover{
  background:var(--terra-dark);
  color:#fff;
}

/* Cartões e secções */
.card-soft{
  border:0;
  border-radius:1.25rem;
  box-shadow:0 12px 32px rgba(0,0,0,.35);
  background:var(--card);
  color:var(--text);
}
.section-title{
  color:var(--gold);
}

/* Footer */
.footer{
  background:#0e140c;
  color:#e8e3d6;
}

/* Artistas */
.artist-card{
  min-height:280px;
  background-size:cover;
  background-position:center;
  position:relative;
  overflow:hidden;
  border-radius:1.25rem;
}
.artist-card:before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(
    to top,
    rgba(3,5,2,.92),
    rgba(3,5,2,.20)
  );
}
.artist-card .content{
  position:relative;
  z-index:1;
  color:#fdfaf2;
  padding:1.5rem;
  min-height:280px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

/* Badges / chips */
.badge-soft{
  background:rgba(255,255,255,.16);
  color:#fefcf5;
}
.chip{
  background:rgba(136,165,90,.15);
  color:var(--gold);
}

/* Inputs e selects */
.form-control,
.form-select{
  background:#11170e;
  border-color:#3c4b32;
  color:var(--text);
}
.form-control:focus,
.form-select:focus{
  background:#11170e;
  border-color:var(--gold);
  color:var(--text);
  box-shadow:0 0 0 .15rem rgba(217,185,105,.35);
}
.input-group-text{
  background:#11170e;
  border-color:#3c4b32;
  color:var(--gold);
}

/* Pagination */
.pagination .page-link{
  background:#11170e;
  border-color:#3c4b32;
  color:var(--text);
}
.pagination .page-link:hover{
  background:#1d2814;
  color:var(--gold);
}
.pagination .page-item.active .page-link{
  background:var(--terra);
  border-color:var(--terra-dark);
  color:#1a1209;
}
.pagination .page-item.disabled .page-link{
  background:#11170e;
  color:#666a60;
}

/* Utilidades */
.nav-link.disabled{opacity:.6}