html{min-height:100%;position:relative}body{padding:1em 0;margin:56px 0 4em}footer{width:100%;bottom:0;height:4em;position:absolute;border-top:1px solid;padding-top:1em}h1,h2,h3{line-height:32px}h1{font-size:30px}h2{font-size:24px}h3{font-size:18px}.form-control{border-radius:0}legend{display:none}#searchOptions{position:fixed;z-index:10}#searchOptions .container{width:500px;max-width:100%;height:100%;overflow:auto;position:fixed;top:0;bottom:0;right:-500px;padding-top:72px;padding-bottom:20px;color:#fff;background-color:rgba(60,60,60,0.93);transition:all .4s ease 0s}#searchOptions.show .container{right:0}.mainLogo{margin-bottom:1em}.searchFormBox{margin-top:8em;margin-bottom:4em}.notification{font-size:1.2em;margin:.2em}.searchButtonBox{margin-top:1em}:first-child.list-group-item{border-radius:0}:last-child.list-group-item{border-radius:0}#result ol li{margin:1em 0}#result ol li:first-child{margin-top:0}#result .title a:visited{color:#014c8c}#result .body{display:flex;align-items:flex-start}#result .site cite{color:#093;font-style:normal}#result .more{display:none}#result .info{font-size:80%}#result .url-copy{color:#007bff}#result .url-copied{color:#2c974b}#result .favorited{display:none}#result .favorited i{color:#fab005}#result .thumbnail{width:100px;min-height:30px;background-position:50% 50%;background-repeat:no-repeat}@media(max-width:575.98px){.mainLogo img{width:200px}.searchFormBox{margin-top:4em}#result .info{display:none}#result .more{display:block}#result .description{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
/* CUSTOMIZAÇÃO HÍBRIDA SOLUÇÕES - REMOÇÃO DE ITENS */
.nav-link[href*="/help"], 
.nav-link[href*="/login"],
#helpLink, 
#loginLink,
.fa-question-circle, 
.fa-sign-in-alt {
    display: none !important;
}

/* =========================================================
   Boletim de Serviço UFF — visual customizado
   Cores Manual de Uso da Marca da UFF:
     Azul-UFF  #004f9f
     Cinza-UFF #eaeaea
   ========================================================= */

:root {
  --bs-blue: #004f9f;       /* Azul-UFF, cor oficial do manual */
  --bs-blue-dark: #003b78;  /* variação mais escura, para hover */
  --bs-gray: #eaeaea;       /* Cinza-UFF, cor oficial do manual */
  --bs-text: #1a1a1a;
  --bs-text-secondary: #5f5f5f;
  --bs-border: #e0e0e0;
}

body {
  background: #ffffff;
  font-family: 'Arial', 'Helvetica Neue', Helvetica, sans-serif;
}

/* ---------- Navbar institucional ---------- */
header .navbar.navbar-dark.bg-dark {
  background: #ffffff !important;
  box-shadow: 0 1px 0 var(--bs-border);
  padding: 14px 0;
}

header .navbar .nav-link {
  color: var(--bs-text) !important;
}

header .navbar .nav-link:hover {
  color: var(--bs-blue) !important;
}

/* ---------- Logos institucionais (SDC + UFF), canto esquerdo ---------- */
.navbar-brand {
  display: flex !important;
  align-items: center;
  gap: 16px;
}

.bs-logo-sdc {
  height: 30px;
  width: auto;
}

.bs-logo-divider {
  width: 1px;
  height: 28px;
  background: var(--bs-border);
}

.bs-logo-uff {
  height: 22px;
  width: auto;
}

/* ---------- Atalhos no topo direito ----------
   Texto + ícone, sem "pílula" preenchida — de propósito, para não repetir
   o estilo de botão do Portal de Normas e Atos. Separados por um traço
   fino, sublinhado só aparece no hover. */
.bs-topbar-links {
  display: flex;
  gap: 18px;
  align-items: center;
  margin-left: auto;
  flex-wrap: wrap;
}

.bs-topbar-links .bs-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 0;
  font-size: 12px;
  font-weight: 700;
  color: var(--bs-text);
  text-decoration: none;
  white-space: nowrap;
  border-bottom: 1.5px solid transparent;
  transition: color .15s ease, border-color .15s ease;
}

.bs-topbar-links .bs-btn i {
  font-size: 12px;
  color: var(--bs-blue);
}

.bs-topbar-links .bs-btn:hover {
  color: var(--bs-blue);
  border-bottom-color: var(--bs-blue);
  text-decoration: none;
}

.bs-topbar-links .bs-btn + .bs-btn {
  padding-left: 18px;
  border-left: 1px solid var(--bs-border);
}

/* ---------- Título "Boletim de Serviço" ---------- */
.mainLogo {
  margin-top: 90px;
  margin-bottom: 4px;
}

.brand-logo {
  font-size: 32px;
  font-weight: 700;
  letter-spacing: .2px;
  line-height: 1.1;
  color: var(--bs-blue);
}

.brand-subtitle {
  font-size: 15px;
  color: var(--bs-text-secondary);
  letter-spacing: .2px;
  margin-bottom: 32px;
}

/* ---------- Caixa de pesquisa ---------- */
.searchFormBox fieldset {
  border: none;
  padding: 0;
}

.searchFormBox legend {
  display: none;
}

.searchFormBox .query.form-control {
  height: 46px;
  border-radius: 8px;
  border: 1.5px solid var(--bs-border);
  background: #fafafa;
  padding: 0 16px;
  font-size: 14px;
  font-family: inherit;
  box-shadow: none;
  transition: border-color .15s ease, background-color .15s ease;
}

.searchFormBox .query.form-control:focus {
  border-color: var(--bs-blue);
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(0, 79, 159, 0.12);
}

/* ---------- Botões de pesquisa ---------- */
.searchButtonBox {
  margin-top: 16px;
  display: inline-flex;
  gap: 10px;
}

.searchButtonBox #searchButton {
  background: var(--bs-blue);
  border-color: var(--bs-blue);
  border-radius: 6px;
  padding: 10px 18px;
  font-size: 14px;
  font-weight: 700;
}

.searchButtonBox #searchButton:hover {
  background: var(--bs-blue-dark);
  border-color: var(--bs-blue-dark);
}

.searchButtonBox #searchOptionsButton {
  border-radius: 6px;
  padding: 10px 18px;
  font-size: 14px;
  font-weight: 700;
  border: 1.5px solid var(--bs-border);
  color: var(--bs-text);
  background: #fff;
}

.searchButtonBox #searchOptionsButton:hover {
  background: var(--bs-gray);
}

/* ---------- Palavras populares ---------- */
.searchFormBox .text-truncate a {
  color: var(--bs-blue);
  font-weight: 700;
}

/* ---------- Rodapé ---------- */
footer,
#footer {
  border-top: 0.5px solid var(--bs-border);
  padding: 14px 0;
  text-align: center;
  font-size: 12px;
  color: #8a8a8a;
}

footer a,
#footer a {
  color: var(--bs-blue);
  font-weight: 700;
  text-decoration: none;
}

footer a:hover,
#footer a:hover {
  text-decoration: underline;
}

/* ---------- Foco acessível ---------- */
a:focus-visible,
button:focus-visible,
input:focus-visible {
  outline: 2px solid var(--bs-blue);
  outline-offset: 2px;
}

/* ---------- Responsivo ---------- */
@media (max-width: 576px) {
  .mainLogo {
    margin-top: 50px;
  }

  .brand-logo {
    font-size: 24px;
  }

  .bs-topbar-links {
    justify-content: center;
    width: 100%;
  }

  .navbar-brand {
    margin-bottom: 10px;
  }
}
/* =========================================================
   Ajuste do Ícone do Botão Sanduíche (Tracinhos em Azul)
   ========================================================= */
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23004f9f' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.navbar-dark .navbar-toggler {
  border-color: rgba(0, 79, 159, 0.3) !important;
}

.navbar-dark .navbar-toggler:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 79, 159, 0.25) !important;
}
