/* =====================================================================
   Ajustes proprios do site (por cima do modelo Editorial)
   ===================================================================== */

/* aviso amarelo de dado ainda nao preenchido */
.preencher { background:#fff3c4; color:#7a5b00; border:1px dashed #e0b200;
             border-radius:4px; padding:0 .35em; font-size:.9em; }

/* item do menu da pagina atual */
#menu ul a.ativo { color:#1f3a64 !important; font-weight:600; }
#menu .embreve { font-size:.65em; text-transform:uppercase; letter-spacing:.05em;
                 background:#e6ebf2; color:#1f3a64; border-radius:3px; padding:.1em .4em; margin-left:.3em; }

/* botao flutuante do WhatsApp */
.whats-flutuante { position:fixed; right:22px; bottom:22px; width:58px; height:58px;
  border-radius:50%; background:#25d366; color:#fff !important; border:0;
  display:flex; align-items:center; justify-content:center; font-size:30px;
  box-shadow:0 4px 14px rgba(0,0,0,.25); z-index:10001; text-decoration:none; }
.whats-flutuante:hover { background:#1ebe5b; }
.whats-flutuante .icon:before { line-height:1; }

/* caixas de destaque */
.destaque { background:#f2f5f9; border-left:4px solid #1f3a64; padding:1.2em 1.5em; margin:0 0 2em; border-radius:0 6px 6px 0; }
.destaque p:last-child { margin-bottom:0; }

/* linha do tempo da Reforma */
table.linha-tempo td:first-child { font-weight:600; color:#1f3a64; white-space:nowrap; }

/* mensagens do formulario */
.msg-ok   { background:#e7f6ec; border:1px solid #9fd8b0; color:#1d5e33; padding:1em 1.2em; border-radius:6px; margin-bottom:1.5em; }
.msg-erro { background:#fdecec; border:1px solid #f1b0b0; color:#8a1f1f; padding:1em 1.2em; border-radius:6px; margin-bottom:1.5em; }
.campo-oculto { position:absolute; left:-9999px; }

/* banner da pagina inicial com degrade no lugar da foto */
#banner .image.object.capa { display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#1f3a64 0%,#3a6098 100%); border-radius:6px; min-height:22em; color:#fff; }
#banner .image.object.capa .icon { font-size:7em; opacity:.9; }

/* faixa azul no lugar da foto grande do topo das paginas */
.faixa { display:flex; align-items:center; gap:1.5em; background:linear-gradient(135deg,#1f3a64 0%,#3a6098 100%);
  color:#fff; border-radius:6px; padding:2em 2.5em; margin:0 0 2.5em; }
.faixa .icon { font-size:3.5em; opacity:.9; }
.faixa p { margin:0; color:#fff; font-family:"Roboto Slab",serif; font-size:1.4em; line-height:1.4; }
.faixa small { font-family:"Open Sans",sans-serif; font-size:.6em; opacity:.85; }

/* miniaturas das noticias (icone no lugar de foto) */
.posts .image.miniatura { display:flex; align-items:center; justify-content:center; height:9em;
  background:linear-gradient(135deg,#1f3a64 0%,#3a6098 100%); border-radius:6px; color:#fff; border:0; }
.posts .image.miniatura .icon { font-size:3em; color:#fff; }

/* Área do Cliente (06/10/2026) */
.ac-login { max-width:28em; }
.ac-barra { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.5em; background:#f2f5f9;
  border-radius:6px; padding:.8em 1.2em; margin:0 0 2em; }
.ac-emp { margin:1.5em 0 .6em; color:#1f3a64; } .ac-emp small { font-size:.6em; color:#7f888f; font-weight:400; margin-left:.5em; }
table.ac-docs td:first-child { font-weight:600; color:#1f3a64; white-space:nowrap; }
table.ac-docs .icon { color:#b3261e; margin-right:.3em; }
.ac-vazio, .ac-nota { color:#7f888f; font-size:.9em; }

/* Área do Cliente — pastas (06/10/2026) */
.ac-trilha { font-size:.9em; color:#7f888f; margin:0 0 .3em; }
.ac-pastas { display:grid; grid-template-columns:repeat(auto-fill, minmax(15em, 1fr)); gap:1em; margin:1em 0 2em; }
.ac-pasta { display:flex; flex-direction:column; gap:.25em; border:1px solid #dde3ea; border-radius:8px; padding:1.1em 1.2em;
  color:#3d4449 !important; border-bottom:1px solid #dde3ea !important; text-decoration:none; background:#fff; transition:box-shadow .15s, border-color .15s; }
.ac-pasta:hover { border-color:#1f3a64 !important; box-shadow:0 3px 12px rgba(31,58,100,.12); }
.ac-pasta .icon { font-size:1.7em; color:#1f3a64; }
.ac-pasta b { color:#1f3a64; font-family:"Roboto Slab",serif; }
.ac-pasta small { font-size:.85em; color:#7f888f; line-height:1.4; }
.ac-pasta em { font-style:normal; font-size:.8em; color:#1f3a64; background:#f2f5f9; border-radius:10px; padding:.05em .7em; align-self:flex-start; margin-top:.3em; }
.ac-pasta.ac-envio { background:#f2f5f9; border-style:dashed; }
.ac-envio-form { max-width:44em; }
.ac-ok { color:#1d5e33; } .ac-ag { color:#7a5b00; }

/* Área do Cliente — demonstração (06/10/2026) */
.ac-demo-convite { margin:2.2em 0 1.5em; padding:1.1em 1.4em; border:1px dashed #1f3a64; border-radius:8px; background:#f7f9fc; max-width:40em; }
.ac-demo-convite p { margin:0 0 .8em; }
.ac-barra-demo { background:#fff3c4; border:1px solid #e0b200; color:#3d2e00; }

/* Peça uma Proposta — botão do WhatsApp (06/10/2026) */
.pr-whats { border:1px solid #9fd8b0; background:#f3fbf5; border-radius:8px; padding:1.1em 1.4em; margin:0 0 1.5em; max-width:40em; }
.pr-whats p { margin:0 0 .8em; }
.button.primary.pr-btn-whats { background:#25d366 !important; box-shadow:none; }
.button.primary.pr-btn-whats:hover { background:#1ebe5b !important; }

/* ===== ARTIGOS (07/10/2026) ===== */
.art-filtro { display:flex; flex-wrap:wrap; gap:.4em; margin:0 0 1.5em; }
.art-filtro a { border:1px solid #dde3ea; border-radius:14px; padding:.15em .9em; font-size:.85em; color:#1f3a64; border-bottom:1px solid #dde3ea; }
.art-filtro a.ativo, .art-filtro a:hover { background:#1f3a64; color:#fff !important; border-color:#1f3a64; }
.art-filtro small { opacity:.7; margin-left:.2em; }
.art-lista { display:flex; flex-direction:column; gap:1.2em; margin:0 0 2em; }
.art-item { display:flex; gap:1.2em; align-items:flex-start; border:1px solid #dde3ea; border-radius:8px; padding:1.3em 1.5em; }
.art-item:hover { border-color:#1f3a64; box-shadow:0 3px 12px rgba(31,58,100,.10); }
.art-item .art-ic { font-size:2.2em; color:#b3261e; line-height:1; margin-top:.15em; }
.art-item h3 { margin:0 0 .3em; } .art-item h3 a { border-bottom:0; color:#1f3a64; }
.art-item .art-meta { font-size:.85em; color:#7f888f; margin:0 0 .7em; }
.art-item .actions { margin:0; }
.art-restrito { margin-top:3em; font-size:.8em; text-align:right; } .art-restrito a { color:#9aa3ab; border-bottom:0; }
table.art-adm td { vertical-align:middle; } table.art-adm td:first-child { font-weight:400; }
.art-acoes { white-space:nowrap; } .art-acoes form { display:inline; margin:0; }
.art-acoes .button { margin:0 .2em .2em 0; }
/* chamada em destaque no alto da página Artigos (07/10/2026) */
.art-chamada { display:flex; align-items:center; gap:1.1em; background:#dce8f6; color:#1f3a64; border:1px solid #b9cfe9;
  border-left:6px solid #4a78b0; border-radius:8px; padding:1.4em 1.8em; margin:0 0 2em; box-shadow:0 3px 10px rgba(74,120,176,.15); }
.art-chamada .icon { font-size:2.4em; color:#4a78b0; }
.art-chamada p { margin:0; font-size:1.15em; line-height:1.55; color:#2b4a75; }
.art-chamada strong { color:#1f3a64; font-size:1.08em; }
@media screen and (max-width:480px) { .art-chamada { flex-direction:column; text-align:center; padding:1.2em; } }

/* MENU LATERAL FIXO (07/10/2026): na tela grande o menu fica parado enquanto a
   página rola; se o menu for mais alto que a tela (Serviços aberto), ele rola
   sozinho dentro da própria coluna. No celular/tablet o menu já é uma gaveta fixa.
   O !important vence o "position:fixed/top" que o js/main.js põe no elemento. */
@media screen and (min-width: 1281px) {
  #sidebar { align-self: stretch; }
  #sidebar > .inner { position: sticky !important; top: 0 !important; height: 100vh;
    overflow-y: auto; overflow-x: hidden; scrollbar-width: thin; scrollbar-color: #c9d2dc transparent; }
  #sidebar > .inner::-webkit-scrollbar { display: block !important; width: 6px; }
  #sidebar > .inner::-webkit-scrollbar-thumb { background: #c9d2dc; border-radius: 3px; }
}

/* LOGOTIPO no topo de todas as páginas (07/10/2026) — oval azul "Valdeci Medeiros Contabilidade" */
#header { align-items: flex-end; padding-top: 3em; }
#header .logo-img { display: inline-block; line-height: 0; flex: 0 0 auto; }
#header .logo-img img { height: 64px; width: auto; display: block; }
@media screen and (max-width: 736px) {
  #header { padding-top: 4.5em; }
  #header .logo-img img { height: 52px; }
}

/* CABEÇALHO igual ao dos comunicados (07/10/2026): oval + "VALDECI MEDEIROS" espaçado
   e "Contabilidade & Consultoria - Ltda", Arial negrito, azul #1f4e79 */
#header .logo-img { display: inline-flex; align-items: center; gap: 22px; line-height: 1.2; text-decoration: none; }
#header .logo-texto { display: flex; flex-direction: column; gap: 10px; font-family: Arial, Helvetica, sans-serif;
  font-weight: 700; color: #1f4e79; font-size: 19px; white-space: nowrap; }
#header .logo-nome { letter-spacing: 0.02em; }
@media screen and (max-width: 736px) {
  #header .logo-img { gap: 12px; }
  #header .logo-texto { font-size: 13px; gap: 6px; }
}
@media screen and (max-width: 420px) {
  #header .logo-texto { font-size: 11px; white-space: normal; }
}

/* ===== MEU IMPOSTO DE RENDA (07/10/2026) ===== */
.ac-pasta.ac-irpf { background:#dce8f6; border-color:#4a78b0; }
.ac-pasta.ac-irpf .icon { color:#4a78b0; }
/* cartões das pastas da empresa: azul bem clarinho (07/10/2026) */
.ac-pasta { background:#f0f6fd; border-color:#c9dbf1; }
.ac-pasta .icon { color:#4a78b0; }
.ac-pasta em { background:#fff; }
.ac-pasta.ac-envio { background:#f0f6fd; border-color:#9fbde3; }

/* ===== COMUNICADOS DO ESCRITÓRIO (07/10/2026) ===== */
.ac-pastas-topo { margin-bottom:1.5em; }
.ac-pasta.ac-com { background:#fff8e6; border-color:#e0b24a; }
.ac-pasta.ac-com .icon { color:#b8860b; }
.ac-pasta.ac-com em { background:#fff; color:#8a6508; }
.ac-novo { display:inline-block; font-size:.72em; font-weight:700; color:#fff; background:#c0392b; border-radius:8px; padding:0 .55em; margin-left:.4em; vertical-align:middle; }

/* FONTE MENOR (09/10/2026): titulo da pagina inicial e itens do menu lateral */
#banner h1 { font-size: 2.2em; }
#menu > ul > li > a, #menu > ul > li > span { font-size: 0.7em; }
#menu > ul > li > ul a, #menu > ul > li > ul span { font-size: 0.66em; }
@media screen and (max-width: 736px) { #banner h1 { font-size: 1.6em; } }

/* TITULOS MENORES (09/10/2026): proporcionais ao menu menor */
h1 { font-size: 2.5em; }
h2 { font-size: 1.4em; }
h3 { font-size: 1.12em; }
#banner h1 { font-size: 2.2em; }
.art-chamada p { font-size: 1em; }
.art-chamada strong { font-size: 1em; }
.art-chamada .icon { font-size: 2em; }
@media screen and (max-width: 736px) {
  h1 { font-size: 1.7em; }
  h2 { font-size: 1.25em; }
  #banner h1 { font-size: 1.6em; }
}

/* TEXTO DAS PAGINAS MENOR (09/10/2026): conteudo proporcional ao menu lateral */
#main > .inner > section, #main > .inner > #banner, #main > .inner > footer { font-size: 0.85em; }

/* MENU EM AZUL-CLARO (09/10/2026): fundo da coluna + item da pagina aberta em faixa */
#sidebar { background-color: #e6eef8; }
#sidebar > .inner > .alt { background-color: #d9e5f3; }
#sidebar h2, #sidebar .major h2 { color: #1f3a64; }
#menu ul { color: #1f3a64; }
#menu > ul > li { border-top-color: #c3d3e8; }
#menu > ul > li > a, #menu > ul > li > span { padding-left: .7em; padding-right: .7em; border-radius: 4px; }
#menu ul a:hover, #menu ul span:hover { color: #1f3a64; background: #d3e2f4; }
#menu ul a.ativo { background: #bcd3ef; color: #1f3a64 !important; font-weight: 700; }
#menu ul a.opener:before, #menu ul span.opener:before { margin-right: .7em; }

/* SERVICOS (09/10/2026): titulo de cada servico em caixa de destaque azul, como a chamada do topo */
.servico-titulo { display:flex; align-items:center; gap:.7em; background:#dce8f6; color:#1f3a64; border:1px solid #b9cfe9;
  border-left:6px solid #4a78b0; border-radius:8px; padding:.7em 1.2em; margin:0 0 1em; box-shadow:0 3px 10px rgba(74,120,176,.15); }
.servico-titulo .icon { color:#4a78b0; font-size:1.1em; }
.pg-servicos hr.major { border:0; margin:2em 0 0; }

/* ---------- Newsletter (14/10/2026) ---------- */
.nl-arm{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}
.nl-caixa form{margin:0}
.nl-caixa input[type=text], .nl-caixa input[type=email]{margin-bottom:.6em}
.nl-caixa .nl-ok{display:block; font-size:.85em; line-height:1.4; margin:.2em 0 .8em; font-weight:normal; cursor:pointer}
.nl-caixa .nl-ok input{margin-right:.4em; vertical-align:middle; -webkit-appearance:checkbox; appearance:auto; opacity:1; width:auto; float:none; position:static}
.nl-caixa p{font-size:.9em; margin-bottom:.8em}
.nl-grande{border:1px solid #c9daf0; background:#f3f8fd; border-radius:8px; padding:1.4em 1.6em; margin:2em 0 1.5em}
.nl-grande h3{color:#1f3a64; margin-bottom:.4em}
.nl-grande form{display:flex; flex-wrap:wrap; gap:.6em; align-items:center}
.nl-grande input[type=text], .nl-grande input[type=email]{flex:1 1 220px; margin:0}
.nl-grande .nl-ok{flex:1 1 100%; margin:0}

/* seletor de competência nas pastas da Área do Cliente (21/10/2026) */
form.ac-comp { display:flex; align-items:center; gap:.8em; margin:0 0 1em; flex-wrap:wrap; }
form.ac-comp label { margin:0; font-weight:600; color:#1f3a64; }
form.ac-comp select { width:auto; min-width:14em; }
