:root {
    /*  Padrão  */
    --template1: #5cb7d3;
    /* Painel lateral */
    --template2: #0090c4;
    /* cor hover */
    --template3: #0086bb;
}
.field-icon {
  float: right;
  margin-left: -25px;
  margin-top: -25px;
  position: relative;
  z-index: 2;
  margin-right: 8px;
  cursor: pointer;
}
#mensagem-recuperar{
  color: var(--template1) !important;
  font-size: 13px;

}

.select2-selection__rendered {
    font-weight: 500;
    line-height: 36px !important;
    border-radius: 7px !important;
    border: 1px solid #c9c7c7;
}
.select2-container .select2-selection--single {
    height: 39px !important;
}
.select2-selection__arrow {
    height: 38px !important;
}


hr.separador {
  border: 1px dotted #666;
  border-radius: 5px;
}

.select2-selection__rendered {
    line-height: 35px !important;
}
.select2-container .select2-selection--single {
    height: 39px !important;
}
.select2-selection__arrow {
    height: 38px !important;
}
hr.separador {
  border: 1px dotted #666;
  border-radius: 5px;
}
.text-verde{
  color:#06a523;
}
.ocultar{
  display:none;
}
.textareag{
    width:1000px;
    height:550px;
}
.side-menu .slide .side-menu__item:hover {
    background-color: var(--template2);

}
.main-sidemenu {
    background-color: #0F4C81
}
.app-sidebar {
    background-color: #0F4C81
}

.slide-menu {
    border-left: 4px solid #de7b53;
    background-color: #0F4C81 !important;
    color: #ffffff;
}
.side-menu__item a{
    background-color: var(--template2);
    color: #ffffff;
}

.side-menu__item:hover .side-menu__icon,
.side-menu__item:hover .side-menu__label,
.side-menu__item:hover .angle {
    color: #ffffff !important;
    fill: #ffffff !important;

}
.slide-item.active,
.slide-item:hover,
.slide-item:focus {
    text-decoration: none;
    color: var(--template1) !important;

}
.app-sidebar .side-item.side-item-category {
    color: #7660a7;
}
.main-sidebar-header {
    background: #0F4C81 !important;
}
.main-header {
    background-color: #0F4C81 !important;
}
.slide-item .app-sidebar .slide-menu .slide-item:before:hover {
    color: var(--template1) !important;
}
.slide.is-expanded .slide-menu a:hover:before {
   color: var(--template1) !important;
}
.slide:hover .side-menu__label,
.slide:hover .angle {
    color: #fff !important;
    fill: #fff !important;
}
.header-icon-svgs {
    color: #ffffff;
    fill: #ffffff;
}
.font-size-11{
    font-size: 11px !important;
}

#calendar {
    max-width: 1320px;
    margin: 0 auto;
}

/* ================== LOGIN CLEAN OVERRIDES (v4 final) ================== */
.login-clean{
  /* Paleta neutra com CTA azul (insp. Next) */
  --bg-start:#ffffff;
  --bg-end:#ffffff;
  --surface:#f8fafc;
  --border:rgba(2,6,23,.08);
  --text:#0f172a;
  --muted:#334155;
  --heading:#0b1220;
  --primary:#2563EB;
  --primary-hover:#1E4FD3;
}

/* Fundo suave (sem ruído visual) */
.login-clean{
  background:
    radial-gradient(1000px 600px at 20% 0%, var(--bg-start), transparent 60%),
    radial-gradient(1000px 600px at 80% 100%, var(--bg-end), transparent 60%),
    linear-gradient(180deg, var(--bg-start), var(--bg-end)) !important;
  color: var(--text) !important;
}

/* Some overlay antigo do tema quando tem imagem de fundo */
.login-clean[style*="background:"]::before{ display:none !important; }

/* Remove “duplo cartão” e dá foco a um único card */
.login-clean .card-sigin-main{ padding:0 !important; }
.login-clean .main-card-signin{
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Card de login */
.login-clean .card-sigin{
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  border-radius: 20px !important;
  box-shadow: 0 18px 40px rgba(2,6,23,.10) !important;
  max-width: 520px;
  margin: 56px auto !important;
  padding: 28px !important;
}

/* Logo */
.login-clean .sign-favicon{
  display:block; margin: 6px auto 18px auto;
  filter: drop-shadow(0 1px 4px rgba(2,6,23,.06));
}

/* Labels */
.login-clean label,
.login-clean .control-label{
  color: var(--muted) !important;
  font-weight: 600 !important;
  margin-bottom: 6px !important;
  font-size: 0.95rem;
}

/* Espaçamento entre grupos */
.login-clean .input-group,
.login-clean .form-group{ margin-bottom: 20px !important; }
.login-clean .form-group:last-of-type{ margin-bottom: 12px !important; }

/* Inputs */
.login-clean .input-group .form-control{
  background:#fff !important;
  color:var(--text) !important;
  border:1px solid #d7dde7 !important;
  border-left:0 !important;                                    /* colado no ícone */
  border-radius:0 12px 12px 0 !important;
  height:46px !important;
  padding-left:12px !important;
  box-shadow:none !important;
  transition:border-color .18s, box-shadow .18s;
}
.login-clean .form-control:focus{
  border-color:#93c5fd !important;
  box-shadow: 0 0 0 3px rgba(37,99,235,.18) !important;
  outline:none !important;
}
.login-clean .form-control::placeholder{ color:#94a3b8 !important; }

/* Ícones à esquerda (fundo azul clarinho e alinhamento perfeito) */
.login-clean .input-group-text{
  background:#E8F0FE !important;          /* azul clarinho ao estilo Hugo */
  color:#2563EB !important;                /* ícone azul Next */
  border:1px solid #d0d7e2 !important;
  border-right:none !important;
  border-radius:12px 0 0 12px !important;
  height:46px !important;                  /* mesma altura do input */
  min-width:44px !important;               /* mais compacto */
  padding:0 12px !important;
  display:flex; align-items:center; justify-content:center;
  line-height:46px;
  box-shadow: inset -1px 0 0 #d0d7e2;      /* mata qualquer frestinha */
}
.login-clean .input-group-text i,
.login-clean .input-group-text svg{ font-size:16px; opacity:.95; }

/* Checkbox “Salvar Acesso” */
.login-clean .form-check-input{
  width:16px; height:16px; border-radius:4px;
  border-color:#cbd5e1 !important;
  margin-top: 2px;
}
.login-clean .form-group[style*="margin-left"]{ margin-left:0 !important; }
.login-clean .form-group .form-check-input + .control-label{
  margin-left: 8px !important; color: var(--muted) !important; font-weight:500;
}

/* Botão principal – pill + gradiente sutil */
.login-clean .btn.btn-primary{
  background: linear-gradient(180deg, var(--primary), var(--primary-hover)) !important;
  border-color: transparent !important;
  color:#fff !important;
  border-radius:9999px !important;
  height:48px !important;
  font-weight:700 !important;
  letter-spacing:.2px;
  box-shadow: 0 12px 28px rgba(37,99,235,.20) !important;
  transition: transform .18s, box-shadow .18s, filter .18s;
}
.login-clean .btn.btn-primary:hover{
  transform: translateY(-1px);
  filter: brightness(1.02);
  box-shadow: 0 18px 34px rgba(37,99,235,.25) !important;
}

/* Links auxiliares */
.login-clean .main-signin-footer a{
  color:#2563EB !important;
  font-weight:600; text-decoration:none;
}
.login-clean .main-signin-footer a:hover{ text-decoration:underline; }

/* Alerta */
.login-clean .alert-danger{
  background:#fff !important;
  border:1px solid rgba(220,38,38,.18) !important;
  color:#b91c1c !important;
  border-radius:12px !important;
  font-weight:600;
  margin-bottom:12px;
}

/* Modal coerente */
.login-clean .modal-content{
  border-radius:16px !important;
  border:1px solid var(--border) !important;
  box-shadow:0 18px 40px rgba(2,6,23,.12) !important;
}
.login-clean .modal-header.bg-primary{ background:#2563EB !important; }

/* Remove quadradinhos animados do fundo (se existirem) */
.login-clean .square-box{ display:none !important; }

/* Responsivo */
@media (max-width: 480px){
  .login-clean .card-sigin{ margin: 36px 16px !important; padding: 22px !important; }
}
