/* GestFinQ — Brand CSS */
:root {
  --gfq-primary: #1a3d5c;
  --gfq-accent: #2e7d32;
  --gfq-accent-light: #4caf50;
  --gfq-entrada: #2e7d32;
  --gfq-saida: #c62828;
  --gfq-previsto: #f57c00;
}

/* Navbar */
.gfq-navbar {
  background: var(--gfq-primary) !important;
}
.gfq-navbar .navbar-brand {
  font-size: 1.15rem;
  letter-spacing: .01em;
}
.gfq-q { color: #4fc3f7; }

/* Cards KPI */
.kpi-card {
  border: none;
  border-radius: .75rem;
  box-shadow: 0 1px 6px rgba(0,0,0,.08);
}
.kpi-card .kpi-label { font-size: .75rem; color: #666; text-transform: uppercase; letter-spacing: .04em; }
.kpi-card .kpi-value { font-size: 1.6rem; font-weight: 700; line-height: 1.15; }
.kpi-card .kpi-sub   { font-size: .78rem; color: #888; }

/* Badges tipo */
.badge-entrada { background: #e8f5e9; color: #2e7d32; }
.badge-saida   { background: #ffebee; color: #c62828; }
.badge-previsto { background: #fff3e0; color: #f57c00; }
.badge-efetivado { background: #e8f5e9; color: #2e7d32; }
.badge-cancelado { background: #f5f5f5; color: #9e9e9e; text-decoration: line-through; }

/* Tabelas */
.table-gfq th { font-size: .78rem; text-transform: uppercase; letter-spacing: .04em; color: #888; border-top: none; }
.table-gfq tr.entrada-row td:first-child { border-left: 3px solid var(--gfq-entrada); }
.table-gfq tr.saida-row  td:first-child { border-left: 3px solid var(--gfq-saida); }

/* Sidebar / layout */
body { background: #f8f9fa; }
main { min-height: calc(100vh - 56px); }

/* Valor monetário */
.valor-entrada { color: var(--gfq-entrada); font-weight: 600; }
.valor-saida   { color: var(--gfq-saida); font-weight: 600; }
.valor-saldo-pos { color: var(--gfq-entrada); font-weight: 700; }
.valor-saldo-neg { color: var(--gfq-saida); font-weight: 700; }

/* Formulários */
.form-label { font-size: .85rem; font-weight: 500; }
.form-control:focus, .form-select:focus { border-color: var(--gfq-primary); box-shadow: 0 0 0 .2rem rgba(26,61,92,.15); }

/* Botões brand */
.btn-gfq { background: var(--gfq-primary); color: #fff; border: none; }
.btn-gfq:hover { background: #0f2740; color: #fff; }
.btn-gfq-outline { border: 1px solid var(--gfq-primary); color: var(--gfq-primary); }
.btn-gfq-outline:hover { background: var(--gfq-primary); color: #fff; }
