/*
 * Tema visual Start (HS2-422). Fonte: "Guia de Marca - Start - SÓ Multas V2" (2024).
 * Carregado por último no <head> via sm_brand_css(), só quando APP_BRAND=startparceiro.
 * O container SÓ Multas nunca carrega este arquivo.
 *
 * Paleta oficial:
 *   navy  #0d2438   azul  #3461ab   azul claro #3b93c6   cinza-azulado #788fa3   off-white #efefee
 * Tipografia: Space Grotesk (títulos) + Inter (textos).
 */

@font-face { font-family: 'Inter'; font-weight: 400; font-style: normal; font-display: swap; src: url('../fonts/Inter-Regular.ttf') format('truetype'); }
@font-face { font-family: 'Inter'; font-weight: 500; font-style: normal; font-display: swap; src: url('../fonts/Inter-Medium.ttf') format('truetype'); }
@font-face { font-family: 'Inter'; font-weight: 600; font-style: normal; font-display: swap; src: url('../fonts/Inter-SemiBold.ttf') format('truetype'); }
@font-face { font-family: 'Inter'; font-weight: 700; font-style: normal; font-display: swap; src: url('../fonts/Inter-Bold.ttf') format('truetype'); }
@font-face { font-family: 'Space Grotesk'; font-weight: 500; font-style: normal; font-display: swap; src: url('../fonts/SpaceGrotesk-Medium.ttf') format('truetype'); }
@font-face { font-family: 'Space Grotesk'; font-weight: 700; font-style: normal; font-display: swap; src: url('../fonts/SpaceGrotesk-Bold.ttf') format('truetype'); }

:root {
    --sp-navy: #0d2438;
    --sp-navy-deep: #091b2b;   /* submenus, hover sobre navy */
    --sp-blue: #3461ab;
    --sp-blue-dark: #2a4f8c;   /* hover/active de botões */
    --sp-blue-light: #3b93c6;
    --sp-grey: #788fa3;
    --sp-off: #efefee;
    --sp-font-text: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    --sp-font-title: 'Space Grotesk', 'Inter', Arial, sans-serif;
}

/* ---------- Tipografia ---------- */
body, .main-sidebar, .sidebar-menu, .navbar, .btn, .form-control, .table, .modal, .dropdown-menu,
input, select, textarea, button {
    font-family: var(--sp-font-text);
}
h1, h2, h3, h4, .content-header > h1, .box-title, .modal-title, .login-box-msg, .logo-mini b {
    font-family: var(--sp-font-title);
    letter-spacing: -0.01em;
}

/* ---------- Estrutura (AdminLTE skin-blue) ---------- */
.skin-blue .wrapper, .skin-blue .main-sidebar, .skin-blue .left-side,
.skin-blue .main-header .navbar, .skin-blue .main-header .logo {
    background-color: var(--sp-navy);
}
.skin-blue .main-header .logo:hover, .skin-blue .main-header .navbar .sidebar-toggle:hover {
    background-color: var(--sp-navy-deep);
}
.skin-blue .main-header .navbar {
    border-bottom: 3px solid var(--sp-blue);
}
.skin-blue .sidebar-menu > li > a { border-left: 3px solid transparent; }
.skin-blue .sidebar-menu > li:hover > a,
.skin-blue .sidebar-menu > li.active > a,
.skin-blue .sidebar-menu > li.menu-open > a {
    background: var(--sp-navy-deep);
    border-left-color: var(--sp-blue-light);
    color: #fff;
}
.skin-blue .sidebar-menu > li > .treeview-menu { background: var(--sp-navy-deep); }
.skin-blue .treeview-menu > li > a { color: #b9c7d4; }
.skin-blue .treeview-menu > li.active > a, .skin-blue .treeview-menu > li > a:hover { color: #fff; }
.skin-blue .sidebar-menu > li.header { background: var(--sp-navy-deep); color: var(--sp-grey); }
.logo-mini b { color: #fff; }

/* área de conteúdo: off-white da marca */
.content-wrapper, .right-side { background-color: #f4f5f6; }

/* ---------- Componentes ---------- */
a { color: var(--sp-blue); }
a:hover, a:focus { color: var(--sp-blue-dark); }
.main-sidebar a, .main-header a, .navbar a { color: inherit; }

.btn-primary, .btn-primary.disabled, .btn-primary[disabled] {
    background-color: var(--sp-blue);
    border-color: var(--sp-blue-dark);
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active,
.open > .dropdown-toggle.btn-primary {
    background-color: var(--sp-blue-dark);
    border-color: var(--sp-blue-dark);
}
.btn-info { background-color: var(--sp-blue-light); border-color: #317fae; }
.btn-info:hover, .btn-info:focus, .btn-info:active { background-color: #317fae; border-color: #2a6f98; }

.box.box-primary { border-top-color: var(--sp-blue); }
.box.box-info { border-top-color: var(--sp-blue-light); }
.bg-light-blue, .label-primary, .bg-primary, .progress-bar-primary, .progress-bar { background-color: var(--sp-blue) !important; }
.bg-aqua, .label-info, .callout.callout-info { background-color: var(--sp-blue-light) !important; }
.text-light-blue, .text-primary { color: var(--sp-blue) !important; }
.nav-tabs-custom > .nav-tabs > li.active { border-top-color: var(--sp-blue); }
.pagination > .active > a, .pagination > .active > span,
.pagination > .active > a:hover, .pagination > .active > span:hover {
    background-color: var(--sp-blue); border-color: var(--sp-blue);
}
.form-control:focus { border-color: var(--sp-blue-light); box-shadow: 0 0 0 2px rgba(59,147,198,.2); }
.modal-header { border-bottom: 3px solid var(--sp-blue); }

/* Azul legado da SÓ Multas aplicado em estilos inline/blocos do layout (#094066 / #032841) */
[style*="#094066"], [style*="#094066 "] { background-color: var(--sp-navy) !important; }
.menu-items { background-color: var(--sp-navy) !important; }
.menu-items::before { border-bottom-color: var(--sp-navy) !important; }
.btnatalho:hover { background-color: var(--sp-blue) !important; }
.modal-avulso-pedidos .modal-title-avulso-pedidos, .modal-body-avulso-pedidos h6 { color: var(--sp-navy) !important; }

/* ---------- Login ---------- */
html:has(body.login-page), body.login-page { min-height: 100vh; }
/* ancora no canto inferior direito, onde ficam as setas (o view usa só background-size: cover) */
.login-page { background-color: var(--sp-navy); background-position: right bottom !important; background-repeat: no-repeat; }
.login-page .login-logo img { max-width: 300px; height: auto; margin-bottom: 10px; }
/* o view fixa a mensagem em #0c0c0c (pensado para o fundo claro antigo) */
.login-page .login-box-msg { color: var(--sp-off) !important; font-family: var(--sp-font-title); font-size: 16px; letter-spacing: .02em; }
.login-page .alert { border-radius: 6px; }
/* "Voltar para o Site": laranja não existe na paleta Start -> botão outline claro */
.login-page .btn-warning {
    background-color: transparent; color: var(--sp-off); border: 1px solid var(--sp-grey);
    font-family: var(--sp-font-title); font-weight: 500;
}
.login-page .btn-warning:hover, .login-page .btn-warning:focus, .login-page .btn-warning:active {
    background-color: rgba(239,239,238,.1); color: #fff; border-color: var(--sp-off);
}
.login-page .btn-primary, .login-page .btn-success {
    background-color: var(--sp-blue); border-color: var(--sp-blue-dark);
    font-family: var(--sp-font-title); font-weight: 700; letter-spacing: .02em;
}
.login-page .form-control { border-radius: 6px; }

/* ---------- Ambiente de teste ---------- */
/* No white label o layout não recolore o menu com a cor de teste; uma faixa laranja no topo avisa. */
body.sm-ambiente-teste .main-header { border-top: 4px solid #f39c12; }
