
/* Sistema Eu Cidadão v4.6.2 - correção definitiva do X no desktop */

/* Por padrão, o botão X do menu lateral fica invisível */
button.sidebar-close,
.sidebar-close{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* O botão hambúrguer também não aparece no desktop */
button.mobile-menu-btn,
.mobile-menu-btn{
  display:none !important;
}

/* Desktop: nunca mostrar X nem hambúrguer */
@media screen and (min-width:901px){
  button.sidebar-close,
  .sidebar-close,
  button.mobile-menu-btn,
  .mobile-menu-btn{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
}

/* Mobile: mostra hambúrguer fora do menu */
@media screen and (max-width:900px){
  button.mobile-menu-btn,
  .mobile-menu-btn{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    align-items:center !important;
    justify-content:center !important;
  }

  /* X só aparece quando o menu lateral está aberto */
  .sidebar.open button.sidebar-close,
  .sidebar.open .sidebar-close{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    align-items:center !important;
    justify-content:center !important;
    width:42px !important;
    height:42px !important;
    margin:10px 10px 6px auto !important;
    border:0 !important;
    background:rgba(255,255,255,.14) !important;
    color:#fff !important;
    border-radius:10px !important;
    font-size:20px !important;
    cursor:pointer !important;
  }

  .sidebar:not(.open) button.sidebar-close,
  .sidebar:not(.open) .sidebar-close{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
}


/* =========================================================
   ETAPA 1.2.1 - FORÇA GLOBAL DOS CAMPOS
   Este arquivo carrega por último no layout.
========================================================= */

html,
body,
input,
select,
textarea,
button,
table,
label,
.card,
.modal,
.admin-main,
.wrap{
  font-family:'Inter',Arial,sans-serif !important;
}

body form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
body form select,
body form textarea,
body .input,
body input.input,
body select.input,
body textarea.input,
body .form-control,
body input.form-control,
body select.form-control,
body textarea.form-control{
  width:100% !important;
  max-width:100% !important;
  min-height:46px !important;
  height:46px !important;
  border:1px solid #dbeafe !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#132238 !important;
  padding:0 14px !important;
  font-size:14px !important;
  line-height:46px !important;
  font-family:'Inter',Arial,sans-serif !important;
  outline:none !important;
  box-shadow:none !important;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
  appearance:auto !important;
}

body form textarea,
body textarea.input,
body textarea.form-control{
  min-height:110px !important;
  height:auto !important;
  line-height:1.45 !important;
  padding:12px 14px !important;
  resize:vertical !important;
}

body form input[type="file"],
body input[type="file"].input,
body input[type="file"].form-control{
  height:auto !important;
  min-height:48px !important;
  line-height:1.3 !important;
  padding:10px 12px !important;
  border:1px solid #dbeafe !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#132238 !important;
  font-family:'Inter',Arial,sans-serif !important;
}

body form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):focus,
body form select:focus,
body form textarea:focus,
body .input:focus,
body .form-control:focus{
  border-color:#075fae !important;
  box-shadow:0 0 0 4px rgba(7,95,174,.13) !important;
}

body form input::placeholder,
body form textarea::placeholder,
body .input::placeholder,
body .form-control::placeholder{
  color:#94a3b8 !important;
}

body form label,
body .form-row label,
body .master-field label{
  display:block !important;
  color:#334155 !important;
  font-size:13px !important;
  font-weight:800 !important;
  margin:0 0 7px !important;
  line-height:1.25 !important;
}

/* Corrige formulários antigos em linha, como perfil.php */
body .form-row{
  display:grid !important;
  grid-template-columns:170px minmax(0,1fr) !important;
  gap:12px !important;
  align-items:center !important;
  margin-bottom:14px !important;
}

body .form-row label{
  text-align:right !important;
  margin-bottom:0 !important;
}

body .form-row input,
body .form-row select,
body .form-row textarea{
  width:100% !important;
}

@media(max-width:760px){
  body .form-row{
    grid-template-columns:1fr !important;
    gap:7px !important;
  }

  body .form-row label{
    text-align:left !important;
  }
}

/* Botões no mesmo padrão */
body form button,
body .btn,
body .submit,
body a.btn{
  border-radius:12px !important;
  min-height:44px !important;
  padding:0 18px !important;
  font-family:'Inter',Arial,sans-serif !important;
  font-size:14px !important;
  font-weight:800 !important;
}

/* Upload menos feio no Chrome */
body input[type="file"]::file-selector-button{
  border:0 !important;
  border-radius:10px !important;
  background:#eff6ff !important;
  color:#075fae !important;
  font-weight:800 !important;
  padding:8px 12px !important;
  margin-right:10px !important;
  cursor:pointer !important;
}

/* Scroll padrão bonito */
body ::-webkit-scrollbar{
  width:8px;
  height:8px;
}

body ::-webkit-scrollbar-track{
  background:#edf4fb;
  border-radius:999px;
}

body ::-webkit-scrollbar-thumb{
  background:#bfd8f3;
  border-radius:999px;
}

body ::-webkit-scrollbar-thumb:hover{
  background:#9fc4ea;
}
