/* Controle Financeiro — estilos globais */
:root {
    --app-primaria: #1a365d;
    --app-destaque: #f26321;
    --app-fundo: #f4f6f9;
}
body { background: var(--app-fundo); }
.app-navbar { background: #fff; border-bottom: 3px solid var(--app-destaque); }
.app-navbar .nav-link { color: #334155; font-weight: 500; }
.app-navbar .nav-link.active, .app-navbar .nav-link:hover { color: var(--app-primaria); }
.app-logo { height: 34px; max-width: 140px; object-fit: contain; }
.app-titulo { color: var(--app-primaria); font-weight: 700; }

/* login */
.login-body { min-height: 100vh; display: flex; align-items: center; justify-content: center; background: #e9ecef; padding: 16px; }
.login-card { background: #fff; padding: 32px; border-radius: 16px; box-shadow: 0 10px 25px rgba(0,0,0,.08); width: 100%; max-width: 400px; }
.login-logo { height: 56px; max-width: 220px; object-fit: contain; }

/* cards de menu/módulo */
.card-mod { border: 0; border-radius: 14px; box-shadow: 0 4px 12px rgba(0,0,0,.05); transition: transform .15s, box-shadow .15s; }
.card-mod:hover { transform: translateY(-4px); box-shadow: 0 10px 22px rgba(0,0,0,.12); }
.card-mod-icone { width: 64px; height: 64px; border-radius: 16px; margin: 0 auto; display: flex; align-items: center; justify-content: center; font-size: 1.9rem; color: #fff; background: var(--app-primaria); }
.card-mod-icone.sm { width: 32px; height: 32px; font-size: 1rem; border-radius: 8px; margin: 0; }
.card-mod-logo { height: 64px; max-width: 100%; object-fit: contain; }

/* indicadores */
.kpi-rotulo { font-size: .78rem; text-transform: uppercase; letter-spacing: .03em; color: #64748b; font-weight: 600; }
.kpi-valor { font-size: 1.35rem; font-weight: 700; color: #0f172a; margin-top: 4px; }
.kpi-sub { font-size: .8rem; color: #64748b; }
.kpi-alerta { background: #fff7ed; }
.conta-logo { width: 40px; height: 40px; object-fit: contain; border-radius: 8px; background: #f1f5f9; padding: 4px; }
.min-w-0 { min-width: 0; }

.table thead th { font-size: .8rem; text-transform: uppercase; color: #475569; }
