/* Manarte — o portal.
   Mesma paleta e mesma fonte do site: quem entra aqui tem que sentir que
   continua na Manarte, e não que caiu no painel de outra coisa. */

:root{
  --papel:#F4F7FA; --branco:#FFFFFF; --linha:#DEE5EC; --linha-2:#E9EEF3;
  --tinta:#0E2233; --tinta-2:#55677A; --tinta-3:#5E7285;
  --azul:#1B6FC0; --azul-claro:#E9F1FB; --marinho:#062A4A;
  --ok:#1E7A4B; --ok-claro:#E6F5EC;
  --erro:#B3261E; --erro-claro:#FBECEB;
  --atencao:#8A6A12; --atencao-claro:#FBF3DE;
  --fonte:"Archivo","Helvetica Neue",Arial,sans-serif;
  --raio:14px;
  --sombra:0 1px 2px rgba(6,42,74,.05),0 10px 26px rgba(6,42,74,.06);
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body.mp{margin:0;background:var(--papel);color:var(--tinta);
  font-family:var(--fonte);font-size:15px;line-height:1.55;
  -webkit-font-smoothing:antialiased;}
/* :where() não soma especificidade: sem isso a zeragem ganhava de qualquer
   classe com margem, e o formulário de entrada saía grudado. */
.mp :where(h1,h2,p,ul,ol,dl,dd,figure){margin:0;padding:0;}
.mp :where(ul,ol){list-style:none;}
.mp :where(a){color:var(--azul);text-decoration:none;}
.mp a:hover{text-decoration:underline;}
.mp :where(img){max-width:100%;height:auto;display:block;}
.mp code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86em;
  background:var(--papel);padding:2px 6px;border-radius:5px;}

.mp :focus-visible{outline:2px solid var(--azul);outline-offset:2px;border-radius:4px;}

.mp-pular{position:absolute;left:-9999px;top:0;background:var(--marinho);color:#fff;
  padding:10px 16px;border-radius:0 0 8px 0;z-index:50;}
.mp-pular:focus{left:0;}

/* =========================================================== botões e avisos */
.mp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  height:46px;padding:0 22px;border:1px solid transparent;border-radius:9px;
  font:inherit;font-size:.94rem;font-weight:600;line-height:1;white-space:nowrap;
  cursor:pointer;transition:background .18s,border-color .18s,color .18s,box-shadow .18s;}
.mp-btn:hover{text-decoration:none;}
.mp-btn-cheio{background:var(--azul);color:#fff;box-shadow:0 6px 16px rgba(27,111,192,.24);}
.mp-btn-cheio:hover{background:#155A9E;}
.mp-btn-linha{background:var(--branco);color:var(--marinho);border-color:var(--linha);}
.mp-btn-linha:hover{border-color:var(--azul);color:var(--azul);}
.mp-btn-peq{height:36px;padding:0 14px;font-size:.85rem;font-weight:500;}
.mp-btn-larga{width:100%;margin-bottom:10px;}

.mp-alerta,.mp-ok{margin-bottom:18px;padding:11px 15px;border-radius:9px;
  font-size:.9rem;line-height:1.5;}
.mp-alerta{background:var(--erro-claro);color:var(--erro);border:1px solid #F0D3D1;}
.mp-ok{background:var(--ok-claro);color:var(--ok);border:1px solid #CFE7D9;}

/* ================================================================== entrada */
.mp-entrada{display:flex;min-height:100dvh;}
.mp-porta{display:flex;align-items:center;justify-content:center;
  width:100%;padding:24px;}
.mp-porta-cartao{width:100%;max-width:420px;background:var(--branco);
  border:1px solid var(--linha);border-radius:18px;padding:clamp(28px,5vw,42px);
  box-shadow:var(--sombra);}
.mp-logo-porta{height:38px;width:auto;margin-bottom:26px;}
.mp-logo-txt{font-weight:700;color:var(--marinho);font-size:1.1rem;}
.mp-porta-cartao h1{font-size:1.5rem;font-weight:600;color:var(--marinho);
  letter-spacing:-.01em;margin-bottom:6px;}
.mp-porta-sub{color:var(--tinta-2);font-size:.93rem;margin-bottom:26px;}

.mp-campo{display:flex;flex-direction:column;margin-bottom:16px;}
.mp-campo label{font-size:.82rem;font-weight:500;color:var(--tinta-2);margin-bottom:6px;}
.mp input[type="text"],.mp input[type="password"],.mp input[type="email"]{
  height:46px;padding:0 14px;font:inherit;font-size:.95rem;color:var(--tinta);
  background:var(--branco);border:1px solid var(--linha);border-radius:9px;
  transition:border-color .16s,box-shadow .16s;width:100%;}
.mp input:focus{outline:none;border-color:var(--azul);box-shadow:0 0 0 3px rgba(27,111,192,.15);}
/* Mostrar/esconder a senha: o botão vive dentro do campo. */
.mp-senha{position:relative;display:block;}
.mp-senha input{padding-right:92px!important;}
.mp-olho{position:absolute;right:5px;top:5px;height:36px;padding:0 12px;
  background:var(--papel);border:1px solid var(--linha);border-radius:7px;
  font:inherit;font-size:.78rem;font-weight:500;color:var(--tinta-2);cursor:pointer;
  transition:border-color .16s,color .16s;}
.mp-olho:hover{border-color:var(--azul);color:var(--azul);}

.mp-caixa{margin-bottom:22px;}
.mp-caixa label{display:flex;align-items:center;gap:9px;font-size:.88rem;
  color:var(--tinta-2);cursor:pointer;}
.mp-caixa input{width:17px;height:17px;accent-color:var(--azul);cursor:pointer;}
.mp-porta-form .mp-btn{width:100%;}
.mp-porta-pe{margin-top:22px;font-size:.85rem;color:var(--tinta-3);
  display:flex;gap:9px;flex-wrap:wrap;}

/* ================================================================ moldura */
.mp-topo{position:sticky;top:0;z-index:20;display:flex;align-items:center;
  justify-content:space-between;gap:16px;height:66px;padding:0 clamp(16px,3vw,28px);
  background:var(--branco);border-bottom:1px solid var(--linha);}
.mp-topo-marca{display:flex;align-items:center;gap:12px;min-width:0;}
.mp-topo-marca:hover{text-decoration:none;}
.mp-logo{height:28px;width:auto;flex:none;}
.mp-topo-nome{font-size:.78rem;font-weight:600;letter-spacing:.09em;
  text-transform:uppercase;color:var(--tinta-3);padding-left:12px;
  border-left:1px solid var(--linha);}
.mp-topo-dir{display:flex;align-items:center;gap:10px;}
.mp-quem{font-size:.87rem;color:var(--tinta-2);margin-right:4px;}

.mp-corpo{display:grid;grid-template-columns:216px minmax(0,1fr);
  align-items:start;gap:0;min-height:calc(100dvh - 66px);
  /* A coluna branca do menu é pintada no fundo do grid: o próprio menu é
     grudado e não acompanha a altura da página. */
  background:linear-gradient(to right,
    var(--branco) 0 216px, var(--linha) 216px 217px, transparent 217px);}
/* min-width:0 explícito nos dois: sem isso a coluna da tabela empurra o grid
   e o telefone ganha barra de rolagem horizontal. */
.mp-menu,.mp-conteudo{min-width:0;}

.mp-menu{position:sticky;top:66px;display:flex;flex-direction:column;gap:2px;
  padding:20px 12px;height:calc(100dvh - 66px);}
.mp-menu-item{display:flex;align-items:center;gap:11px;padding:10px 12px;
  border-radius:9px;color:var(--tinta-2);font-size:.92rem;font-weight:500;
  transition:background .15s,color .15s;}
.mp-menu-item:hover{background:var(--papel);color:var(--marinho);text-decoration:none;}
.mp-menu-item svg{width:19px;height:19px;flex:none;opacity:.85;}
.mp-menu-ativo{background:var(--azul-claro);color:var(--marinho);font-weight:600;}
.mp-menu-ativo svg{opacity:1;color:var(--azul);}
.mp-selo{margin-left:auto;min-width:21px;height:21px;padding:0 6px;border-radius:999px;
  background:var(--azul);color:#fff;font-size:.72rem;font-weight:700;font-style:normal;
  display:flex;align-items:center;justify-content:center;}

.mp-conteudo{padding:clamp(20px,3vw,34px) clamp(16px,3vw,34px) 64px;
  max-width:1280px;width:100%;}

/* ================================================================== títulos */
.mp-h1{font-size:clamp(1.4rem,2.4vw,1.75rem);font-weight:600;color:var(--marinho);
  letter-spacing:-.015em;margin-bottom:22px;}
.mp-h1-sub{font-weight:400;color:var(--tinta-3);}
.mp-h2{font-size:1rem;font-weight:600;color:var(--marinho);margin-bottom:16px;}
.mp-nota{font-size:.82rem;color:var(--tinta-3);}
.mp-link{font-size:.87rem;font-weight:500;}
.mp-volta{margin-bottom:12px;}
.mp-rodape-nota{margin-top:26px;font-size:.82rem;line-height:1.6;color:var(--tinta-3);
  max-width:78ch;}

/* =================================================================== cartão */
.mp-cartao{background:var(--branco);border:1px solid var(--linha);
  border-radius:var(--raio);padding:clamp(18px,2.4vw,26px);margin-bottom:20px;
  box-shadow:var(--sombra);}
.mp-cartao-topo{display:flex;align-items:baseline;justify-content:space-between;
  gap:14px;margin-bottom:16px;}
.mp-cartao-topo .mp-h2{margin-bottom:0;}
.mp-duas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;
  align-items:start;}
.mp-duas>.mp-cartao{margin-bottom:0;}
.mp-duas{margin-bottom:20px;}
.mp-duas-larga{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);}
.mp-vazio{color:var(--tinta-3);font-size:.9rem;line-height:1.6;}
.mp-vazio-cel{color:var(--tinta-3);}

/* ================================================================= números */
.mp-numeros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;
  margin-bottom:20px;}
.mp-numero{background:var(--branco);border:1px solid var(--linha);
  border-radius:var(--raio);padding:18px 20px;box-shadow:var(--sombra);
  display:flex;flex-direction:column;gap:3px;}
.mp-numero-rot{font-size:.82rem;font-weight:500;color:var(--tinta-2);}
.mp-numero-val{font-size:2rem;font-weight:600;color:var(--marinho);line-height:1.15;
  letter-spacing:-.02em;}
.mp-numero-ap{font-size:.78rem;color:var(--tinta-3);line-height:1.45;}
.mp-numero-vivo{border-color:#BFE0CB;}
.mp-numero-vivo .mp-numero-val{color:var(--ok);}
.mp-numero-vivo .mp-numero-rot::before{content:"";display:inline-block;width:7px;height:7px;
  margin-right:7px;border-radius:50%;background:var(--ok);vertical-align:1px;
  animation:mp-pulsa 2.2s ease-in-out infinite;}
@keyframes mp-pulsa{0%,100%{opacity:1;}50%{opacity:.35;}}
@media (prefers-reduced-motion:reduce){.mp-numero-vivo .mp-numero-rot::before{animation:none;}}
.mp-numero-atencao{border-color:#E7D6A4;}
.mp-numero-atencao .mp-numero-val{color:var(--atencao);}

/* ================================================================= gráfico */
.mp-gra{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;}
.mp-gra-eixo{display:flex;flex-direction:column;justify-content:space-between;
  height:190px;font-size:.72rem;color:var(--tinta-3);text-align:right;
  font-variant-numeric:tabular-nums;padding-bottom:0;}
.mp-gra-eixo span{transform:translateY(-.5em);}
.mp-gra-area{position:relative;}
.mp-gra-grade{position:absolute;inset:0 0 auto 0;height:190px;
  display:flex;flex-direction:column;justify-content:space-between;pointer-events:none;}
.mp-gra-grade i{display:block;height:1px;background:var(--linha-2);}
.mp-gra-colunas{position:relative;display:flex;align-items:flex-end;gap:2px;height:190px;}
.mp-gra-colunas li{flex:1 1 0;display:flex;align-items:flex-end;justify-content:center;
  height:100%;min-width:0;}
.mp-gra-col{position:relative;display:block;width:100%;max-width:24px;
  background:var(--azul);border-radius:4px 4px 0 0;cursor:default;}
/* Dia sem visita não pode parecer "quase uma visita": vira um traço da cor da
   grade, que se lê como ausência e continua servindo de alvo para a dica. */
.mp-gra-zero{background:var(--linha);border-radius:2px;}
.mp-gra-zero:hover,.mp-gra-zero:focus-visible{background:var(--tinta-3);}
.mp-gra-col:hover,.mp-gra-col:focus-visible{background:#155A9E;}
.mp-gra-hoje{background:var(--marinho);}
.mp-gra-hoje:hover,.mp-gra-hoje:focus-visible{background:#04203a;}

.mp-dica{position:absolute;left:50%;bottom:calc(100% + 9px);transform:translateX(-50%);
  display:none;min-width:128px;padding:8px 11px;border-radius:8px;
  background:var(--marinho);color:#fff;font-size:.76rem;line-height:1.45;
  text-align:center;white-space:nowrap;z-index:5;
  box-shadow:0 8px 22px rgba(6,42,74,.28);}
.mp-dica b{display:block;font-weight:600;}
.mp-dica::after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;
  border:5px solid transparent;border-top-color:var(--marinho);}
.mp-gra-col:hover .mp-dica,.mp-gra-col:focus-visible .mp-dica{display:block;}

.mp-gra-dias{display:flex;gap:2px;margin-top:8px;}
.mp-gra-dias li{flex:1 1 0;min-width:0;text-align:center;font-size:.7rem;
  color:var(--tinta-3);font-variant-numeric:tabular-nums;
  overflow:hidden;white-space:nowrap;}
.mp-gra-nota{margin-top:12px;}
.mp-gra-nota strong{color:var(--tinta-2);font-variant-numeric:tabular-nums;}

/* ============================================================ listas e barras */
.mp-lista{display:flex;flex-direction:column;gap:1px;}
.mp-lista li{display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:9px 0;border-bottom:1px solid var(--linha-2);font-size:.88rem;}
.mp-lista li:last-child{border-bottom:0;}
.mp-lista-txt{color:var(--tinta-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mp-lista-n{font-weight:600;color:var(--marinho);font-variant-numeric:tabular-nums;}

.mp-barras{display:flex;flex-direction:column;gap:9px;}
.mp-barras li{position:relative;display:flex;align-items:center;gap:14px;
  padding:9px 12px;border-radius:8px;font-size:.87rem;overflow:hidden;}
.mp-barra-fundo{position:absolute;left:0;top:0;bottom:0;width:var(--p);
  background:var(--azul-claro);border-radius:8px;}
.mp-barra-txt{position:relative;flex:1 1 auto;min-width:0;color:var(--tinta);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mp-barra-n{position:relative;font-weight:600;color:var(--marinho);
  font-variant-numeric:tabular-nums;}

/* ================================================================== tabela */
.mp-rolar{overflow-x:auto;margin:0 -4px;padding:0 4px;}
.mp-tabela{width:100%;border-collapse:collapse;font-size:.88rem;}
.mp-tabela th{text-align:left;padding:0 14px 10px 0;font-size:.76rem;font-weight:600;
  letter-spacing:.05em;text-transform:uppercase;color:var(--tinta-3);
  border-bottom:1px solid var(--linha);white-space:nowrap;}
.mp-tabela td{padding:13px 14px 13px 0;border-bottom:1px solid var(--linha-2);
  vertical-align:top;color:var(--tinta-2);}
.mp-tabela tr:last-child td{border-bottom:0;}
.mp-tabela th:last-child,.mp-tabela td:last-child{padding-right:0;}
.mp-tab-nome{font-weight:600;color:var(--marinho);}
.mp-tab-nome:hover{color:var(--azul);}
.mp-tab-emp{display:block;font-size:.8rem;color:var(--tinta-3);}
.mp-tab-resumo{display:block;max-width:34ch;color:var(--tinta-2);}
.mp-tab-resumo:hover{color:var(--azul);}
.mp-tab-data{white-space:nowrap;font-size:.83rem;color:var(--tinta-3);}
.mp-alerta-cel{color:var(--atencao);font-weight:600;}

.mp-sit{display:inline-block;padding:3px 10px;border-radius:999px;
  font-size:.73rem;font-weight:600;line-height:1.35;white-space:nowrap;}
.mp-sit-nova{background:var(--azul-claro);color:#0B4F96;}
.mp-sit-lida{background:#EEF1F4;color:var(--tinta-2);}
.mp-sit-respondida{background:var(--ok-claro);color:var(--ok);}
.mp-sit-arquivada{background:#F2F0EA;color:#7A6A45;}
.mp-sit-spam{background:var(--erro-claro);color:var(--erro);}

/* ==================================================================== abas */
.mp-abas{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px;}
.mp-aba{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;
  background:var(--branco);border:1px solid var(--linha);border-radius:999px;
  font-size:.86rem;font-weight:500;color:var(--tinta-2);transition:.16s;}
.mp-aba:hover{border-color:var(--azul);color:var(--azul);text-decoration:none;}
.mp-aba em{font-style:normal;font-size:.76rem;color:var(--tinta-3);
  font-variant-numeric:tabular-nums;}
.mp-aba-ativa{background:var(--marinho);border-color:var(--marinho);color:#fff;}
.mp-aba-ativa em{color:rgba(255,255,255,.7);}

/* ================================================================ mensagem */
.mp-corpo-msg{padding:16px 18px;background:var(--papel);border:1px solid var(--linha-2);
  border-radius:10px;font-size:.94rem;line-height:1.65;color:var(--tinta);
  margin-bottom:22px;white-space:normal;}
.mp-ficha{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 20px;
  font-size:.88rem;}
.mp-ficha dt{font-weight:600;color:var(--tinta-2);}
.mp-ficha dd{color:var(--tinta);min-width:0;overflow-wrap:anywhere;}
.mp-lado .mp-nota{margin-bottom:16px;line-height:1.55;}
.mp-sit-atual{margin:20px 0 10px;padding-top:18px;border-top:1px solid var(--linha-2);
  font-size:.88rem;color:var(--tinta-2);}
.mp-sit-atual strong{color:var(--marinho);}
.mp-acoes{display:flex;flex-direction:column;align-items:stretch;gap:4px;}
/* 44 px de altura: no celular estes três botões ficavam a milímetros um do
   outro, e um deles tira a mensagem da lista. */
.mp-acao{display:flex;align-items:center;min-height:44px;padding:0 12px;
  background:none;border:0;border-radius:8px;font:inherit;font-size:.89rem;
  color:var(--azul);cursor:pointer;text-align:left;}
.mp-acao:hover{background:var(--azul-claro);text-decoration:none;}
.mp-acao[value="spam"]{margin-top:8px;border-top:1px solid var(--linha-2);
  border-radius:0 0 8px 8px;color:var(--erro);}
.mp-acao[value="spam"]:hover{background:var(--erro-claro);}

/* Só para leitor de tela: o gráfico vira tabela de verdade. */
.mp-oculto{position:absolute!important;width:1px;height:1px;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;}

/* ================================================================ telas menores */
@media (max-width:1080px){
  .mp-numeros{grid-template-columns:repeat(2,minmax(0,1fr));}
  .mp-duas,.mp-duas-larga{grid-template-columns:minmax(0,1fr);}
}
@media (max-width:820px){
  .mp-corpo{grid-template-columns:minmax(0,1fr);background:none;min-height:0;}
  .mp-menu{position:sticky;top:66px;z-index:15;flex-direction:row;height:auto;gap:6px;
    padding:10px clamp(12px,3vw,20px);background:var(--branco);
    border-bottom:1px solid var(--linha);
    overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none;}
  .mp-menu::-webkit-scrollbar{display:none;}
  .mp-menu-item{flex:none;padding:8px 13px;}
  .mp-selo{margin-left:3px;}
  .mp-topo-nome,.mp-quem{display:none;}
}
/* No celular as tabelas viram cartão empilhado: com cinco ou seis colunas elas
   só existiam atrás de uma barra de rolagem, e as linhas ficavam ocas.
   Os alvos de toque também crescem: link de 15 px de altura é acertado por
   sorte, e o mínimo da norma é 24. */
@media (max-width:640px){
  .mp-tabela .mp-tab-nome,.mp-tabela .mp-tab-resumo,.mp-tabela td>a{
    display:inline-flex;align-items:center;min-height:30px;}
  .mp-link{display:inline-flex;align-items:center;min-height:30px;}
  .mp-porta-pe a{display:inline-flex;align-items:center;min-height:30px;}

  /* Projetos: mesma ideia, com o nome da coluna antes do valor. */
  .mp-tabela-proj{display:block;}
  .mp-tabela-proj thead{position:absolute;width:1px;height:1px;overflow:hidden;
    clip:rect(0 0 0 0);clip-path:inset(50%);}
  .mp-tabela-proj tbody,.mp-tabela-proj tr,.mp-tabela-proj td{display:block;width:100%;}
  .mp-tabela-proj tr{padding:16px 0;border-bottom:1px solid var(--linha-2);}
  .mp-tabela-proj tr:last-child{border-bottom:0;}
  .mp-tabela-proj td{display:flex;justify-content:space-between;gap:16px;
    padding:4px 0;border:0;font-size:.86rem;}
  .mp-tabela-proj td::before{content:attr(data-rot);color:var(--tinta-3);flex:none;}
  .mp-tabela-proj td:first-child{display:block;margin-bottom:6px;}
  .mp-tabela-proj td:first-child::before{content:none;}
}

@media (max-width:640px){
  .mp-tabela-msg{display:block;}
  .mp-tabela-msg thead{position:absolute;width:1px;height:1px;overflow:hidden;
    clip:rect(0 0 0 0);clip-path:inset(50%);}
  .mp-tabela-msg tbody,.mp-tabela-msg tr,.mp-tabela-msg td{display:block;width:100%;}
  .mp-tabela-msg tr{padding:16px 0;border-bottom:1px solid var(--linha-2);}
  .mp-tabela-msg tr:last-child{border-bottom:0;}
  .mp-tabela-msg td{padding:2px 0;border:0;}
  .mp-tabela-msg td:first-child{margin-bottom:8px;}
  .mp-tabela-msg .mp-tab-resumo{max-width:none;margin-top:4px;}
  .mp-tabela-msg .mp-tab-data{margin-top:6px;font-size:.78rem;}
  .mp-tabela-msg + .mp-vazio{margin-top:10px;}
}

@media (max-width:560px){
  .mp-numeros{grid-template-columns:minmax(0,1fr);gap:12px;}
  .mp-numero-val{font-size:1.75rem;}
  .mp-gra-eixo,.mp-gra-grade,.mp-gra-colunas{height:150px;}
  /* Só um dia em cada dois tem rótulo, então deixar o texto transbordar a
     célula é o que impede o "19/9" de sair cortado. */
  .mp-gra-dias li{overflow:visible;font-size:.63rem;}
  .mp-tab-resumo{max-width:24ch;}
  .mp-topo{height:60px;}
  .mp-menu{top:60px;}
  .mp-btn-peq{padding:0 11px;}
}

/* ===========================================================================
 * Área do cliente
 * ========================================================================= */

.mp-intro{font-size:.96rem;line-height:1.6;color:var(--tinta-2);max-width:70ch;
  margin:-8px 0 22px;}
.mp-h2-solto{margin:32px 0 16px;}

/* ------------------------------------------- entrada: o bloco do cliente -- */
.mp-ou{display:flex;align-items:center;gap:14px;margin:26px 0 22px;
  color:var(--tinta-3);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;}
.mp-ou::before,.mp-ou::after{content:"";flex:1;height:1px;background:var(--linha);}
.mp-porta-h2{font-size:1.05rem;font-weight:600;color:var(--marinho);margin-bottom:6px;}
.mp-porta-cliente .mp-porta-sub{margin-bottom:18px;}
.mp-porta-cliente .mp-btn{width:100%;}

/* "Esqueci a senha" mora dentro do cartão, logo abaixo do botão: é ali que a
   pessoa está olhando quando descobre que errou, e não no rodapé da página. */
.mp-porta-ajuda{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;
  margin-top:14px;font-size:.85rem;color:var(--tinta-3);}

/* O estado do acesso do cliente, na tela do trabalho. */
.mp-estado-acesso{margin:0 0 14px;padding:9px 12px;border-radius:9px;
  background:var(--papel);border-left:3px solid var(--linha);
  font-size:.86rem;line-height:1.45;color:var(--tinta-2);}
.mp-estado-acesso.mp-estado-ok{border-left-color:var(--ok);background:var(--ok-claro);color:var(--tinta);}

/* ------------------------------------------------------------- medidor ---- */
.mp-medidor{height:8px;border-radius:999px;background:var(--linha-2);overflow:hidden;
  margin-bottom:22px;}
.mp-medidor span{display:block;height:100%;border-radius:999px;background:var(--azul);
  transition:width .4s ease;}

/* -------------------------------------------------------------- trilha ---- */
.mp-trilha{position:relative;display:flex;flex-direction:column;gap:2px;}
.mp-trilha::before{content:"";position:absolute;left:10px;top:14px;bottom:18px;
  width:2px;background:var(--linha-2);}
.mp-etapa{position:relative;display:flex;gap:16px;padding:10px 0;}
.mp-etapa-marca{position:relative;z-index:1;flex:none;width:22px;height:22px;margin-top:1px;
  border-radius:50%;background:var(--branco);border:2px solid var(--linha);}
.mp-etapa strong{display:block;font-size:.96rem;font-weight:600;color:var(--tinta-2);}
.mp-etapa em{display:block;font-style:normal;font-size:.78rem;font-weight:600;
  letter-spacing:.04em;text-transform:uppercase;color:var(--tinta-3);margin-top:2px;}
.mp-etapa p{margin-top:5px!important;font-size:.88rem;line-height:1.55;color:var(--tinta-3);
  max-width:58ch;}

.mp-etapa-feita .mp-etapa-marca{background:var(--ok);border-color:var(--ok);}
.mp-etapa-feita .mp-etapa-marca::after{content:"";position:absolute;left:5px;top:6px;
  width:8px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;
  transform:rotate(-45deg);}
.mp-etapa-feita strong{color:var(--marinho);}
.mp-etapa-feita em{color:var(--ok);}

.mp-etapa-andamento .mp-etapa-marca{border-color:var(--azul);
  box-shadow:0 0 0 4px rgba(27,111,192,.14);}
.mp-etapa-andamento .mp-etapa-marca::after{content:"";position:absolute;left:5px;top:5px;
  width:8px;height:8px;border-radius:50%;background:var(--azul);}
.mp-etapa-andamento strong{color:var(--marinho);}
.mp-etapa-andamento em{color:var(--azul);}

.mp-trilha-admin .mp-etapa{align-items:flex-start;}
.mp-etapa-troca{margin-top:6px;}
.mp-etapa-troca select{height:34px;padding:0 30px 0 10px;font:inherit;font-size:.84rem;
  color:var(--tinta-2);background:var(--branco);border:1px solid var(--linha);
  border-radius:7px;cursor:pointer;-webkit-appearance:none;appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,var(--tinta-3) 50%),
    linear-gradient(135deg,var(--tinta-3) 50%,transparent 50%);
  background-position:calc(100% - 15px) 14px,calc(100% - 10px) 14px;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat;}
.mp-etapa-troca select:focus{outline:none;border-color:var(--azul);
  box-shadow:0 0 0 3px rgba(27,111,192,.15);}

/* --------------------------------------------------------- o que depende -- */
.mp-agora{border-color:#C9DDF3;background:linear-gradient(180deg,var(--azul-claro),var(--branco) 70%);}
.mp-pendencias{display:flex;flex-direction:column;gap:12px;}
.mp-pendencias li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:12px;padding:13px 16px;background:var(--branco);border:1px solid var(--linha);
  border-radius:10px;font-size:.93rem;color:var(--tinta);}

/* ------------------------------------------------------------- entregas --- */
.mp-entrega-topo{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;
  gap:12px;margin-bottom:14px;}
.mp-entrega-topo .mp-h2{margin-bottom:4px;}
.mp-entrega-nome{min-width:0;}
.mp-entrega-acoes{display:flex;flex-wrap:wrap;gap:10px;}
.mp-entrega-hist{margin-top:14px!important;font-size:.86rem;color:var(--tinta-3);}
.mp-recado{margin:10px 0 0;padding:12px 16px;background:var(--papel);
  border-left:3px solid var(--linha);border-radius:0 8px 8px 0;
  font-size:.92rem;line-height:1.6;color:var(--tinta);}

.mp-aprovar{margin-top:20px;padding-top:20px;border-top:1px solid var(--linha-2);}
.mp-aprovar-pe{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px;}
.mp textarea{width:100%;padding:12px 14px;font:inherit;font-size:.95rem;line-height:1.55;
  color:var(--tinta);background:var(--branco);border:1px solid var(--linha);
  border-radius:9px;resize:vertical;min-height:96px;}
.mp textarea:focus{outline:none;border-color:var(--azul);
  box-shadow:0 0 0 3px rgba(27,111,192,.15);}

/* -------------------------------------------------------------- briefing -- */
.mp-abas-brief{margin-bottom:22px;}
.mp-pergunta{padding:20px 0;border-bottom:1px solid var(--linha-2);}
.mp-pergunta:first-of-type{padding-top:4px;}
.mp-pergunta:last-of-type{border-bottom:0;padding-bottom:6px;}
.mp-pergunta > label,.mp-pergunta legend{display:block;font-size:.98rem;font-weight:600;
  color:var(--marinho);margin-bottom:4px;padding:0;}
.mp-pergunta fieldset{border:0;margin:0;padding:0;}
.mp-ajuda{font-size:.86rem;line-height:1.55;color:var(--tinta-3);margin-bottom:10px!important;
  max-width:64ch;}
.mp-opcao{display:flex;align-items:flex-start;gap:11px;min-height:40px;padding:6px 10px;
  border-radius:8px;font-size:.94rem;color:var(--tinta);cursor:pointer;}
.mp-opcao:hover{background:var(--papel);}
.mp-opcao input{flex:none;width:20px;height:20px;margin-top:1px;accent-color:var(--azul);
  cursor:pointer;}
.mp-brief-pe{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;
  margin-top:24px;padding-top:22px;border-top:1px solid var(--linha-2);}
.mp-brief-h3{margin:24px 0 10px;font-size:.78rem;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--tinta-3);}
.mp-brief-h3:first-of-type{margin-top:4px;}

/* ---------------------------------------------------------- mandar arquivo */
.mp-subir input[type="file"]{width:100%;padding:11px 12px;font:inherit;font-size:.86rem;
  color:var(--tinta-2);background:var(--papel);border:1px dashed var(--linha);
  border-radius:9px;cursor:pointer;}
.mp-subir input[type="file"]:focus{outline:none;border-color:var(--azul);}
.mp-lado code{word-break:break-all;}

@media (max-width:640px){
  .mp-pendencias li{flex-direction:column;align-items:stretch;}
  .mp-pendencias li .mp-btn{width:100%;}
  .mp-aprovar-pe .mp-btn{width:100%;}
  .mp-entrega-acoes .mp-btn{width:100%;}
  .mp-intro{margin-top:0;}
}

/* ------------------------------------------------------ prévia da entrega */
.mp-previa{margin:0 0 16px;border:1px solid var(--linha);border-radius:10px;
  overflow:hidden;background:var(--papel);}
.mp-previa img{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;
  background:var(--papel);}
.mp-previa-pdf{display:flex;align-items:center;gap:12px;margin:0 0 16px!important;
  padding:14px 16px;background:var(--papel);border:1px solid var(--linha);
  border-radius:10px;font-size:.9rem;color:var(--tinta-2);}
.mp-previa-pdf span{display:inline-flex;align-items:center;justify-content:center;
  width:42px;height:42px;flex:none;border-radius:8px;background:var(--marinho);
  color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.04em;}

/* ===========================================================================
 * Proposta
 * ========================================================================= */

.mp-marca{display:inline-flex;align-items:center;gap:6px;flex:none;
  padding:4px 11px;border-radius:999px;font-size:.76rem;font-weight:600;
  background:var(--atencao-claro);color:var(--atencao);}
.mp-marca-boa{background:var(--ok-claro);color:var(--ok);}
.mp-marca-fria{background:var(--papel);color:var(--tinta-3);}

.mp-prop-valor{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;
  margin:0 0 14px!important;}
.mp-prop-valor strong{font-size:clamp(1.6rem,4vw,2.1rem);font-weight:700;
  color:var(--marinho);letter-spacing:-.01em;line-height:1.1;}
.mp-prop-valor span{font-size:.92rem;color:var(--tinta-2);}

.mp-prop-cond{margin:0 0 16px!important;font-size:.95rem;color:var(--tinta);}

.mp-prop-escopo{margin-bottom:18px;padding:16px 18px;background:var(--papel);
  border:1px solid var(--linha-2);border-radius:11px;}
.mp-prop-escopo .mp-h3{font-size:.84rem;font-weight:600;color:var(--tinta-2);
  text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;}
.mp-prop-escopo p{margin:0 0 8px!important;font-size:.93rem;line-height:1.6;}
.mp-prop-escopo p:last-child{margin-bottom:0!important;}

.mp-prop-registro{margin:0!important;padding:13px 16px;border-radius:10px;
  background:var(--ok-claro);border:1px solid #CFE7D9;
  font-size:.88rem;line-height:1.55;color:#14603A;}

.mp-prop-pedido{margin:0 0 16px!important;padding:13px 16px;border-radius:10px;
  background:var(--atencao-claro);border:1px solid #EFE0B8;
  font-size:.9rem;line-height:1.55;color:#6B5210;}

.mp-prop-aceite{margin-top:4px;}
.mp-prop-aceite .mp-nota{display:block;margin-top:9px;text-align:center;}

.mp-prop-ajuste{margin-top:14px;padding-top:14px;border-top:1px solid var(--linha-2);}
.mp-prop-ajuste summary{font-size:.89rem;color:var(--tinta-2);cursor:pointer;
  padding:4px 0;min-height:32px;display:flex;align-items:center;}
.mp-prop-ajuste summary:hover{color:var(--marinho);}
.mp-prop-ajuste form{margin-top:12px;}

.mp-prop-botoes{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 8px!important;}
.mp-prop-refazer{display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  margin-top:16px;padding-top:14px;border-top:1px solid var(--linha-2);}

.mp-prop-hist{margin-top:14px;padding-top:12px;border-top:1px solid var(--linha-2);}
.mp-prop-hist summary{font-size:.85rem;color:var(--tinta-3);cursor:pointer;
  min-height:30px;display:flex;align-items:center;}
.mp-prop-hist ul{margin:10px 0 0;padding-left:18px;font-size:.86rem;
  color:var(--tinta-2);line-height:1.8;}

.mp-linha-campos{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;}
.mp-linha-campos .mp-campo{margin-bottom:16px;}
.mp-campo-curto small{margin-top:5px;font-size:.75rem;color:var(--tinta-3);}

.mp-caixinha{display:flex;align-items:center;gap:10px;margin:0 0 16px!important;
  min-height:36px;}
.mp-caixinha input{width:20px;height:20px;flex:none;accent-color:var(--azul);cursor:pointer;}
/* A caixa nativa não passa de 20px sem ficar torta, então quem recebe o toque
   é o rótulo: 36px de altura, do tamanho de um dedo. */
.mp-caixinha label{display:flex;align-items:center;min-height:36px;
  font-size:.9rem;color:var(--tinta-2);cursor:pointer;}

/* ===========================================================================
 * Conversa
 * ========================================================================= */

.mp-fala-lista{list-style:none;margin:0 0 20px;padding:0;display:flex;
  flex-direction:column;gap:14px;}
.mp-fala{max-width:min(78%,560px);padding:13px 16px;border-radius:13px;
  border:1px solid var(--linha);background:var(--branco);}
.mp-fala-minha{margin-left:auto;background:var(--azul-claro);
  border-color:#CFE0F5;border-bottom-right-radius:4px;}
.mp-fala-dele{margin-right:auto;background:var(--papel);
  border-bottom-left-radius:4px;}
.mp-fala-quem{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;
  margin:0 0 6px!important;font-size:.8rem;color:var(--tinta-3);}
.mp-fala-quem strong{font-weight:600;color:var(--marinho);}
.mp-fala-texto p{margin:0 0 8px!important;font-size:.94rem;line-height:1.6;}
.mp-fala-texto p:last-child{margin-bottom:0!important;}

.mp-fala-form{padding-top:18px;border-top:1px solid var(--linha-2);}
.mp-conversa{margin-bottom:20px;}

/* ===========================================================================
 * Vários projetos, e o trabalho novo
 * ========================================================================= */

.mp-projetos-troca{display:flex;flex-wrap:wrap;gap:8px;margin:-6px 0 20px;}
.mp-pilula{display:inline-flex;align-items:center;min-height:36px;
  padding:0 14px;border-radius:999px;background:var(--branco);
  border:1px solid var(--linha);font-size:.87rem;font-weight:500;
  color:var(--tinta-2);}
.mp-pilula:hover{border-color:var(--azul);color:var(--marinho);text-decoration:none;}
.mp-pilula-ativa{background:var(--marinho);border-color:var(--marinho);color:#fff;}
.mp-pilula-ativa:hover{color:#fff;}

.mp-selo-solto{margin-left:8px;}

.mp-novo>summary{list-style:none;cursor:pointer;display:flex;align-items:center;
  gap:9px;min-height:34px;}
.mp-novo>summary::-webkit-details-marker{display:none;}
.mp-novo>summary .mp-h2{margin-bottom:0;}
.mp-novo>summary::after{content:"";width:8px;height:8px;flex:none;
  border-right:2px solid var(--tinta-3);border-bottom:2px solid var(--tinta-3);
  transform:rotate(45deg);transition:transform .15s;}
.mp-novo[open]>summary::after{transform:rotate(-135deg);}
.mp-form-novo{margin-top:18px;}

.mp-bloco-novo{margin:0 0 16px;padding:16px 18px;border:1px solid var(--linha-2);
  border-radius:11px;background:var(--papel);}
.mp-bloco-novo legend{padding:0 8px;font-size:.78rem;font-weight:600;
  text-transform:uppercase;letter-spacing:.04em;color:var(--tinta-3);}
.mp-bloco-novo .mp-linha-campos{grid-template-columns:repeat(2,minmax(0,1fr));}
.mp-bloco-novo .mp-campo:last-of-type{margin-bottom:0;}
.mp-bloco-novo .mp-nota{display:block;margin-top:10px;}

@media (max-width:760px){
  .mp-linha-campos,.mp-bloco-novo .mp-linha-campos{grid-template-columns:minmax(0,1fr);gap:0;}
  .mp-fala{max-width:100%;}
  .mp-prop-botoes .mp-btn{width:100%;}
  .mp-prop-valor strong{font-size:1.55rem;}
}

/* ===========================================================================
 * Vistoria
 * ========================================================================= */

.mp-vist-refazer{flex:none;}

.mp-vist-resumo{list-style:none;display:flex;flex-wrap:wrap;gap:8px;
  margin:0 0 14px;padding:0;}

.mp-vist-tag{display:inline-flex;align-items:center;gap:6px;flex:none;
  padding:4px 11px;border-radius:999px;font-size:.76rem;font-weight:600;
  background:var(--papel);color:var(--tinta-3);}
.mp-vist-tag strong{font-size:.86rem;font-weight:700;}
.mp-vist-grave{background:var(--erro-claro);color:var(--erro);}
.mp-vist-atencao{background:var(--atencao-claro);color:var(--atencao);}
.mp-vist-boa{background:var(--ok-claro);color:var(--ok);}
.mp-vist-indef{background:var(--papel);color:var(--tinta-3);}

.mp-vist-lista{list-style:none;margin:0;padding:0;}
.mp-vist-item{padding:15px 0 15px 15px;border-top:1px solid var(--linha-2);
  border-left:3px solid var(--linha);}
.mp-vist-item:first-child{border-top:0;padding-top:4px;}
.mp-vist-l-grave{border-left-color:var(--erro);}
.mp-vist-l-atencao{border-left-color:#D6B24A;}
.mp-vist-l-boa{border-left-color:#8FC7A6;}
.mp-vist-l-indef{border-left-color:var(--linha);}

.mp-vist-cab{display:flex;flex-wrap:wrap;align-items:center;gap:9px;
  margin:0 0 6px!important;}
.mp-vist-cab strong{font-size:.95rem;font-weight:600;color:var(--marinho);}
.mp-vist-achado{margin:0!important;font-size:.92rem;line-height:1.55;
  color:var(--tinta);}
.mp-vist-conserto{margin:7px 0 0!important;padding-left:13px;
  border-left:2px solid var(--linha);font-size:.87rem;line-height:1.6;
  color:var(--tinta-2);}

@media (max-width:760px){
  .mp-vist-item{padding-left:12px;}
  /* O cabeçalho do cartão é flex com space-between. Botão a 100% aqui só cabe
     se a linha puder quebrar — senão ele soma com o título e a página passa a
     rolar de lado. */
  .mp-vist-cartao-topo{flex-wrap:wrap;gap:12px;}
  .mp-vist-refazer{flex:1 1 100%;}
  .mp-vist-refazer .mp-btn{width:100%;}
}

/* --------------------------------------------------------- Acessos ------- */

.mp-acesso-resumo{margin:0 0 14px!important;font-size:.95rem;color:var(--tinta);}
.mp-acesso-resumo strong{color:var(--marinho);}

.mp-acessos{list-style:none;margin:0;padding:0;
  border-top:1px solid var(--linha-2);}
.mp-acesso{display:grid;grid-template-columns:78px 1fr 1fr 58px;gap:10px;
  align-items:baseline;padding:9px 0;border-bottom:1px solid var(--linha-2);
  font-size:.87rem;}
.mp-acesso-quando{color:var(--tinta-3);font-variant-numeric:tabular-nums;}
.mp-acesso-oque{color:var(--tinta);font-weight:500;}
.mp-acesso-quem{color:var(--tinta-2);overflow-wrap:anywhere;}
.mp-acesso-onde{color:var(--tinta-3);font-family:ui-monospace,SFMono-Regular,
  Menlo,monospace;font-size:.78rem;text-align:right;}
.mp-acesso-mau .mp-acesso-oque{color:var(--erro);}

@media (max-width:760px){
  .mp-acesso{grid-template-columns:72px minmax(0,1fr) 52px;}
  .mp-acesso-quem{grid-column:2 / 4;font-size:.82rem;}
}

/* ===========================================================================
 * O site — abas, editor e galeria
 * ========================================================================= */

.mp-abas{display:flex;flex-wrap:wrap;gap:6px;margin:-4px 0 20px;
  padding-bottom:10px;border-bottom:1px solid var(--linha);}
.mp-aba{display:inline-flex;align-items:center;min-height:38px;padding:0 15px;
  border-radius:9px;font-size:.92rem;font-weight:500;color:var(--tinta-2);}
.mp-aba:hover{background:var(--branco);color:var(--marinho);text-decoration:none;}
.mp-aba-ativa{background:var(--azul-claro);color:var(--marinho);font-weight:600;}
.mp-abas-2{margin-top:-6px;border-bottom:0;padding-bottom:0;}
.mp-abas-2 .mp-aba{min-height:34px;padding:0 12px;font-size:.87rem;}

.mp-novo-inline{flex:none;margin:0;}

.mp-form-site .mp-cartao{margin-bottom:20px;}
.mp-linha-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.mp-campo small{margin-top:5px;font-size:.78rem;color:var(--tinta-3);line-height:1.5;}

.mp-idioma{margin-top:16px;padding-top:14px;border-top:1px solid var(--linha-2);}
.mp-idioma>summary{font-size:.88rem;font-weight:500;color:var(--tinta-2);
  cursor:pointer;min-height:34px;display:flex;align-items:center;}
.mp-idioma>summary:hover{color:var(--marinho);}
.mp-idioma[open]>summary{margin-bottom:14px;}
.mp-sub-idioma{padding-left:13px;border-left:2px solid var(--linha);
  margin-bottom:16px;}
.mp-sub-idioma .mp-campo{margin-bottom:10px;}
.mp-sub-idioma label{font-size:.76rem;}

.mp-segmentos{margin:0;padding:0;border:0;}
.mp-segmentos legend{padding:0;font-size:.82rem;font-weight:500;
  color:var(--tinta-2);margin-bottom:8px;}
.mp-segmentos .mp-caixinha{margin-bottom:0!important;min-height:32px;}
.mp-segmentos .mp-caixinha label{min-height:32px;}

.mp-galeria{list-style:none;margin:0 0 16px;padding:0;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;}
.mp-gal-item{position:relative;border:1px solid var(--linha);border-radius:11px;
  overflow:hidden;background:var(--papel);}
.mp-gal-item img{display:block;width:100%;height:112px;object-fit:cover;}
.mp-gal-n{position:absolute;top:7px;left:7px;min-width:22px;height:22px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:999px;background:rgba(6,42,74,.88);color:#fff;
  font-size:.72rem;font-weight:700;}
.mp-gal-acoes{display:flex;border-top:1px solid var(--linha);}
.mp-gal-btn{flex:1 1 0;min-height:34px;border:0;background:var(--branco);
  color:var(--tinta-2);font:inherit;font-size:.9rem;cursor:pointer;
  border-right:1px solid var(--linha);}
.mp-gal-btn:last-child{border-right:0;}
.mp-gal-btn:hover:not(:disabled){background:var(--azul-claro);color:var(--marinho);}
.mp-gal-btn:disabled{opacity:.35;cursor:default;}
.mp-gal-tira:hover{background:var(--erro-claro);color:var(--erro);}

.mp-campo-imagem{display:flex;flex-direction:column;}
.mp-mini{display:block;max-width:190px;height:auto;margin:0 0 10px;
  border:1px solid var(--linha);border-radius:9px;}

@media (max-width:760px){
  .mp-linha-2{grid-template-columns:minmax(0,1fr);}
  .mp-galeria{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));}
  .mp-novo-inline,.mp-novo-inline .mp-btn{width:100%;}
  .mp-cartao-topo{flex-wrap:wrap;gap:12px;}
}

/* ===========================================================================
 * Financeiro
 * ========================================================================= */

.mp-fin-quitado{opacity:.82;}
.mp-fin-linha{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0 0 16px!important;
  font-size:.92rem;color:var(--tinta-2);}
.mp-fin-linha strong{font-size:1.15rem;font-weight:700;color:var(--marinho);}
.mp-fin-falta{color:var(--atencao);font-weight:600;}

.mp-parcelas{list-style:none;margin:0;padding:0;border-top:1px solid var(--linha-2);}
.mp-parcela{display:grid;grid-template-columns:78px 116px 1fr auto;gap:12px;
  align-items:center;padding:11px 0;border-bottom:1px solid var(--linha-2);}
.mp-parcela:last-child{border-bottom:0;padding-bottom:0;}
.mp-parcela-n{font-size:.8rem;color:var(--tinta-3);}
.mp-parcela-valor{font-size:.98rem;font-weight:600;color:var(--marinho);
  font-variant-numeric:tabular-nums;}
.mp-parcela-quando{font-size:.85rem;color:var(--tinta-3);}
.mp-parcela-paga .mp-parcela-quando{color:var(--ok);}
.mp-parcela-paga .mp-parcela-valor{color:var(--tinta-2);}
.mp-parcela-form{display:flex;align-items:center;gap:8px;margin:0;}
.mp-parcela-como{height:36px!important;max-width:130px;font-size:.85rem!important;}

.mp-prop-pagamentos{margin-top:16px;padding-top:14px;
  border-top:1px solid var(--linha-2);}
.mp-prop-pagamentos .mp-h3{font-size:.84rem;font-weight:600;color:var(--tinta-2);
  text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px;}
.mp-pag-lista{list-style:none;margin:0;padding:0;}
.mp-pag-lista li{display:grid;grid-template-columns:70px 1fr auto;gap:10px;
  align-items:baseline;padding:7px 0;border-bottom:1px solid var(--linha-2);
  font-size:.9rem;color:var(--tinta-2);}
.mp-pag-lista li:last-child{border-bottom:0;}
.mp-pag-lista strong{color:var(--marinho);font-variant-numeric:tabular-nums;}
.mp-pag-lista em{font-style:normal;font-size:.82rem;color:var(--tinta-3);}
.mp-pag-feita em{color:var(--ok);font-weight:600;}

@media (max-width:760px){
  .mp-parcela{grid-template-columns:1fr auto;gap:6px 12px;}
  .mp-parcela-n{grid-column:1;}
  .mp-parcela-valor{grid-column:2;text-align:right;}
  .mp-parcela-quando{grid-column:1 / 3;}
  .mp-parcela-form{grid-column:1 / 3;}
  .mp-parcela-form .mp-btn{flex:1 1 auto;}
  .mp-parcela-como{max-width:none;flex:1 1 auto;}
}

/* ===========================================================================
 * O que está parado
 * ========================================================================= */

.mp-parado{border-left:3px solid var(--azul);}
.mp-parados{list-style:none;margin:0;padding:0;border-top:1px solid var(--linha-2);}
.mp-parado-item{display:grid;grid-template-columns:92px 1fr auto;gap:12px;
  align-items:center;padding:11px 0;border-bottom:1px solid var(--linha-2);}
.mp-parado-item:last-child{border-bottom:0;padding-bottom:0;}

.mp-parado-tag{display:inline-flex;align-items:center;justify-content:center;
  padding:3px 9px;border-radius:999px;background:var(--papel);
  font-size:.72rem;font-weight:600;color:var(--tinta-3);text-align:center;}
.mp-parado-recado .mp-parado-tag,
.mp-parado-mensagem .mp-parado-tag{background:var(--azul-claro);color:var(--azul);}
.mp-parado-parcela .mp-parado-tag,
.mp-parado-vencida .mp-parado-tag{background:var(--atencao-claro);color:var(--atencao);}

.mp-parado-texto{font-size:.9rem;line-height:1.5;color:var(--tinta-2);}
.mp-parado-texto strong{display:block;font-size:.88rem;font-weight:600;
  color:var(--marinho);}

@media (max-width:760px){
  .mp-parado-item{grid-template-columns:1fr auto;gap:8px 12px;}
  .mp-parado-tag{grid-column:1;justify-self:start;}
  .mp-parado-texto{grid-column:1 / 3;}
  .mp-parado-item .mp-btn{grid-column:1 / 3;width:100%;}
}

/* ===========================================================================
 * Relatórios
 * ========================================================================= */

.mp-rel-lista{list-style:none;margin:0;padding:0;border-top:1px solid var(--linha-2);}
.mp-rel-item{display:grid;grid-template-columns:1fr 170px auto;gap:12px;
  align-items:center;padding:12px 0;border-bottom:1px solid var(--linha-2);}
.mp-rel-item:last-child{border-bottom:0;padding-bottom:0;}
.mp-rel-nome{font-size:.88rem;color:var(--tinta-2);}
.mp-rel-nome strong{display:block;font-size:.95rem;font-weight:600;color:var(--marinho);}
.mp-rel-estado{font-size:.83rem;color:var(--tinta-3);}

.mp-rel-area{min-height:380px;font-family:ui-monospace,SFMono-Regular,Menlo,
  Consolas,monospace!important;font-size:.88rem!important;line-height:1.65!important;}

.mp-rel-fatos{list-style:none;margin:0 0 4px;padding:0;}
.mp-rel-fatos li{display:flex;align-items:baseline;gap:8px;padding:7px 0;
  border-bottom:1px solid var(--linha-2);font-size:.88rem;color:var(--tinta-2);}
.mp-rel-fatos li:last-child{border-bottom:0;}
.mp-rel-fatos strong{min-width:58px;font-size:1rem;font-weight:700;
  color:var(--marinho);font-variant-numeric:tabular-nums;}

@media (max-width:760px){
  .mp-rel-item{grid-template-columns:1fr auto;gap:8px 12px;}
  .mp-rel-estado{grid-column:1;}
  .mp-rel-item .mp-btn{grid-column:2;grid-row:2;}
  .mp-rel-area{min-height:300px;}
}

/* --- montar a proposta com os serviços do catálogo ----------------------- */
.mp-cat{margin:0 0 16px;border:1px solid var(--linha-2);border-radius:10px;
  background:var(--papel);}
.mp-cat summary{padding:10px 14px;font-size:.88rem;font-weight:600;color:var(--tinta-2);
  cursor:pointer;list-style:none;}
.mp-cat summary::-webkit-details-marker{display:none;}
.mp-cat summary::before{content:"+ ";color:var(--tinta-3);}
.mp-cat[open] summary::before{content:"\2013 ";}
.mp-cat summary:focus-visible{outline:2px solid var(--azul);outline-offset:2px;}
.mp-cat-form{padding:0 14px 12px;}
.mp-cat-lista{list-style:none;margin:0 0 12px;padding:0;}
.mp-cat-lista li+li{border-top:1px solid var(--linha-2);}
.mp-cat-lista label{display:flex;align-items:center;gap:10px;padding:8px 0;
  font-size:.9rem;cursor:pointer;}
.mp-cat-lista input{flex:0 0 auto;width:16px;height:16px;accent-color:var(--azul);}
.mp-cat-nome{flex:1 1 auto;}
.mp-cat-preco{flex:0 0 auto;font-variant-numeric:tabular-nums;font-size:.85rem;
  color:var(--tinta-3);}
.mp-cat-vazio{margin:0 0 16px;}
.mp-cat-blocos{margin:0 0 10px;font-size:.84rem;color:var(--tinta-3);}

/* --- documentos do trabalho (aceite e recibos) --------------------------- */
.mp-docs-rot{margin:14px 0 6px;font-size:.74rem;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--tinta-3);}
.mp-docs-lista{list-style:none;margin:0;padding:0;font-size:.9rem;}
.mp-docs-lista li{padding:6px 0;}
.mp-docs-lista li+li{border-top:1px solid var(--linha-2);}
.mp-parcela-recibo{flex:0 0 auto;font-size:.84rem;}

/* --- horas do trabalho --------------------------------------------------- */
.mp-horas-correndo{margin:0 0 12px!important;padding:10px 14px;border-radius:9px;
  background:var(--azul-claro);color:var(--azul);font-size:.92rem;}
.mp-horas-valor{margin:14px 0 0!important;padding-top:12px;border-top:1px solid var(--linha-2);
  font-size:1rem;}
.mp-horas-valor .mp-nota{display:block;margin-top:2px;}
.mp-horas-mao,.mp-horas-lista{margin-top:14px;padding-top:12px;border-top:1px solid var(--linha-2);}
.mp-horas-mao summary,.mp-horas-lista summary{font-size:.85rem;color:var(--tinta-3);
  cursor:pointer;list-style:none;padding:8px 0;min-height:34px;display:flex;align-items:center;}
.mp-horas-mao summary::-webkit-details-marker,
.mp-horas-lista summary::-webkit-details-marker{display:none;}
.mp-horas-mao summary::before,.mp-horas-lista summary::before{content:"+ ";}
.mp-horas-mao[open] summary::before,.mp-horas-lista[open] summary::before{content:"\2013 ";}
.mp-horas-mao summary:focus-visible,.mp-horas-lista summary:focus-visible{
  outline:2px solid var(--azul);outline-offset:2px;}
.mp-horas-mao form{margin-top:12px;}
.mp-horas-lista ul{list-style:none;margin:10px 0 0;padding:0;font-size:.86rem;}
.mp-horas-lista li{display:flex;align-items:center;gap:8px;padding:6px 0;}
.mp-horas-lista li+li{border-top:1px solid var(--linha-2);}
.mp-horas-dia{flex:0 0 auto;color:var(--tinta-3);font-variant-numeric:tabular-nums;}
.mp-horas-min{flex:0 0 auto;font-weight:600;font-variant-numeric:tabular-nums;}
.mp-horas-nota{flex:1 1 auto;min-width:0;color:var(--tinta-2);overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap;}
.mp-horas-tira{flex:0 0 auto;margin:0;}
.mp-acao-tira{border:0;background:none;color:var(--tinta-3);font-size:1.1rem;
  line-height:1;padding:2px 4px;cursor:pointer;border-radius:5px;}
.mp-acao-tira:hover{color:var(--erro);background:var(--erro-claro);}
.mp-acao-tira:focus-visible{outline:2px solid var(--azul);outline-offset:1px;}

.mp-horas-faixa{display:flex;flex-wrap:wrap;align-items:center;gap:12px;
  justify-content:space-between;border-left:3px solid var(--azul);}
.mp-horas-faixa p{margin:0!important;font-size:.95rem;}
.mp-horas-faixa form{margin:0;}
.mp-horas-demais{border-left-color:var(--atencao);background:var(--atencao-claro);}

@media (max-width:560px){
  .mp-horas-faixa{flex-direction:column;align-items:flex-start;}
  .mp-horas-faixa form,.mp-horas-faixa .mp-btn{width:100%;}
  .mp-horas-faixa .mp-btn{text-align:center;}
}
.mp-est-viu{font-weight:600;}

/* --- depoimentos --------------------------------------------------------- */
.mp-dep-lido{margin:0 0 12px;padding:14px 16px;background:var(--papel);
  border-left:3px solid var(--azul);border-radius:0 8px 8px 0;font-size:.95rem;
  line-height:1.6;color:var(--tinta);}
.mp-dep-nota{border:0;padding:0;margin:0 0 14px;}
.mp-dep-nota legend{padding:0;margin-bottom:8px;font-size:.85rem;color:var(--tinta-2);}
.mp-dep-nota label{display:inline-flex;margin-right:8px;}
.mp-dep-nota input{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);}
.mp-dep-nota span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;
  border:1px solid var(--linha);border-radius:9px;font-weight:600;cursor:pointer;transition:.15s;}
.mp-dep-nota label:has(input:checked) span{background:var(--azul);border-color:var(--azul);color:#fff;}
.mp-dep-nota label:has(input:focus-visible) span{outline:2px solid var(--azul);outline-offset:2px;}
.mp-dep-lista{list-style:none;margin:0;padding:0;display:grid;gap:16px;}
.mp-dep-acoes{margin-top:12px;}
.mp-novidade{border-left:3px solid var(--azul);background:var(--azul-claro);}
.mp-novidade .mp-nota{color:var(--tinta-2);}
.mp-campo-botao{display:flex;align-items:flex-end;}
.mp-campo-botao .mp-btn{width:100%;}
.mp-seg-novo{margin-bottom:18px;}
.mp-seg-apagar{margin-top:18px;}

/* --- o nome de entrada --------------------------------------------------- */
.mp-conta code{padding:2px 7px;border-radius:5px;background:var(--papel);
  border:1px solid var(--linha-2);font-size:.9em;}
.mp-conta-trocar{margin-top:14px;padding-top:12px;border-top:1px solid var(--linha-2);}
.mp-conta-trocar summary{padding:8px 0;min-height:34px;display:flex;align-items:center;
  font-size:.88rem;font-weight:600;color:var(--tinta-2);cursor:pointer;list-style:none;}
.mp-conta-trocar summary::-webkit-details-marker{display:none;}
.mp-conta-trocar summary::before{content:"+ ";color:var(--tinta-3);}
.mp-conta-trocar[open] summary::before{content:"\2013 ";}
.mp-conta-trocar summary:focus-visible{outline:2px solid var(--azul);outline-offset:2px;}
.mp-conta-form{max-width:420px;margin-top:10px;}
/* O atalho para o login do WordPress é para uma pessoa só, que já sabe que ele
   está aí. Em negrito e azul ele competia com os links do cliente, que são de
   quem realmente precisa de ajuda nessa tela. */
.mp-porta-eu{font-weight:400;color:var(--tinta-3);}
.mp-porta-eu:hover{color:var(--azul);}

/* ===========================================================================
 * v1.27 — telas de Perguntas e de Aparência
 *
 * Nomes próprios de propósito: .mp-caixa já existia com outra estrutura
 * (o rótulo dentro), e reaproveitar o nome faria a caixa de marcar desta tela
 * herdar o espaçamento da outra sem ninguém entender por quê.
 * ========================================================================= */

.mp-linha-acoes{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;}

.mp-form-pe{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;padding-top:18px;
  border-top:1px solid var(--linha-2);}

.mp-grade-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
@media (max-width:700px){.mp-grade-2{grid-template-columns:1fr;}}

/* Escolher a cor: o quadrado e o código lado a lado. Quem tem o hexadecimal
   da marca na mão digita; quem não tem, escolhe no quadrado. */
.mp-cor-linha{display:flex;align-items:center;gap:10px;}
.mp-cor-linha input[type="color"]{width:52px;height:44px;padding:2px;cursor:pointer;
  border:1px solid var(--linha-2);border-radius:10px;background:#fff;}
.mp-cor-linha input[type="text"]{max-width:130px;font-variant-numeric:tabular-nums;
  text-transform:uppercase;}

.mp-opcao{display:flex;align-items:flex-start;gap:10px;margin:0 0 10px;cursor:pointer;
  font-size:.9rem;line-height:1.45;color:var(--tinta);}
.mp-opcao input[type="checkbox"]{flex:none;width:20px;height:20px;margin:0;
  accent-color:var(--azul);cursor:pointer;}

.mp-sel{position:relative;display:block;}
.mp-sel::after{content:"";position:absolute;right:14px;top:50%;width:8px;height:8px;
  margin-top:-6px;border-right:2px solid var(--tinta-2);border-bottom:2px solid var(--tinta-2);
  transform:rotate(45deg);pointer-events:none;}
.mp-sel select{width:100%;padding-right:36px;-webkit-appearance:none;appearance:none;cursor:pointer;}

.mp-aviso-frio{margin:0 0 22px;padding:14px 16px;border-radius:12px;
  background:#FFF8E6;border:1px solid #F0DFA8;color:#6B5312;font-size:.9rem;line-height:1.55;}
.mp-aviso-frio p{margin:0;}
.mp-aviso-frio code{padding:1px 5px;border-radius:5px;background:rgba(0,0,0,.06);font-size:.86em;}

.mp-nota-fria{color:#8A6D1F;}

.mp-faq-lista{list-style:none;margin:0;padding:0;display:grid;gap:12px;}

.mp-idiomas{margin:0 0 16px;border:1px solid var(--linha-2);border-radius:12px;
  background:var(--papel);}
.mp-idiomas summary{padding:12px 15px;font-size:.9rem;font-weight:600;cursor:pointer;
  min-height:44px;display:flex;align-items:center;}
.mp-idiomas[open] summary{border-bottom:1px solid var(--linha-2);}
.mp-idiomas .mp-campo{margin:14px 15px;}

.mp-apagar{margin-top:26px;}
.mp-link-apagar{padding:0;background:none;border:0;cursor:pointer;
  font:inherit;font-size:.86rem;color:#B3261E;text-decoration:underline;}
.mp-link-apagar:hover{color:#8A1D17;}

/* A amostra: as três peças que mais mudam de cara quando a cor muda. */
.mp-amostra{display:flex;flex-wrap:wrap;align-items:center;gap:14px;
  padding:22px;border:1px solid var(--linha-2);border-radius:14px;background:var(--papel);}
.mp-amostra-btn{display:inline-flex;align-items:center;height:44px;padding:0 20px;
  border-radius:9px;background:var(--a);color:#fff;font-size:.92rem;font-weight:600;}
.mp-amostra-etq{font-size:.74rem;font-weight:700;letter-spacing:.11em;
  text-transform:uppercase;color:var(--a);}
.mp-amostra-tit{flex:1 1 220px;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;
  color:var(--p);}
.mp-amostra-tit em{font-style:normal;color:var(--a);}

/* O portal só estilizava input[type=text|password|email]: a lista de escolha
   e a área de texto das telas novas apareciam com a cara crua do navegador,
   fora do padrão de todo o resto. */
.mp .mp-campo select,
.mp .mp-campo textarea,
.mp .mp-campo input[type="search"],
.mp .mp-campo input[type="number"]{
  width:100%;font:inherit;font-size:.95rem;color:var(--tinta);
  background:var(--branco);border:1px solid var(--linha);border-radius:9px;
  transition:border-color .16s,box-shadow .16s;}
.mp .mp-campo select{height:46px;padding:0 14px;}
.mp .mp-campo textarea{padding:11px 14px;min-height:96px;line-height:1.55;resize:vertical;}
.mp .mp-campo select:focus,.mp .mp-campo textarea:focus{
  outline:none;border-color:var(--azul);box-shadow:0 0 0 3px rgba(27,111,192,.15);}

/* A lista de perguntas fica mais curta: são oito cartões e o que importa é
   comparar os títulos, não cada um ocupar uma tela. */
.mp-faq-lista .mp-cartao{padding:16px 18px;}
.mp-faq-lista .mp-cartao .mp-nota{margin:6px 0 10px;}
.mp-faq-lista .mp-dep-acoes{margin-top:0;}

/* ---------------------------------------- v1.28: idiomas ------------------ */
.mp-aviso-bom{margin:0 0 22px;padding:14px 16px;border-radius:12px;
  background:#EAF6EF;border:1px solid #BEE0CC;color:#1B5C39;font-size:.9rem;line-height:1.55;}
.mp-aviso-bom p{margin:0;}
.mp-aviso-bom code,.mp-opcao code{padding:1px 5px;border-radius:5px;
  background:rgba(0,0,0,.06);font-size:.86em;}

.mp-tabela-idiomas{width:100%;border-collapse:collapse;margin-bottom:10px;}
.mp-tabela-idiomas th,.mp-tabela-idiomas td{padding:10px 12px;text-align:left;
  border-bottom:1px solid var(--linha-2);font-size:.9rem;}
.mp-tabela-idiomas th{font-size:.76rem;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--tinta-2);}
.mp-tabela-idiomas td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums;}
.mp-falta{color:#B3261E;font-weight:600;}
.mp-completo{color:#1E7A4B;}

/* ---------------------------------------- v1.29: Raio-X ------------------- */
.mp-numeros{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));
  gap:12px;margin-bottom:22px;}
.mp-numero{padding:16px 18px;background:var(--branco);border:1px solid var(--linha-2);
  border-radius:12px;}
.mp-numero strong{display:block;font-size:1.7rem;font-weight:700;letter-spacing:-.03em;
  line-height:1.1;color:var(--marinho);font-variant-numeric:tabular-nums;}
.mp-numero span{font-size:.8rem;color:var(--tinta-2);}

.mp-tabela-rx{width:100%;border-collapse:collapse;}
.mp-tabela-rx th,.mp-tabela-rx td{padding:10px 12px;text-align:left;
  border-bottom:1px solid var(--linha-2);font-size:.9rem;}
.mp-tabela-rx th{font-size:.74rem;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--tinta-2);}
.mp-nota-pill{display:inline-grid;place-items:center;min-width:38px;height:26px;
  padding:0 8px;border-radius:999px;font-size:.84rem;font-weight:700;
  font-variant-numeric:tabular-nums;}
.mp-nota-pill[data-faixa="boa"]{background:rgba(30,122,75,.12);color:#1B5C39;}
.mp-nota-pill[data-faixa="media"]{background:rgba(196,138,10,.16);color:#7A560A;}
.mp-nota-pill[data-faixa="baixa"]{background:rgba(179,38,30,.1);color:#8A1D17;}

/* ---------------------------------------- v1.30: simulador ---------------- */
.mp-sim{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);
  gap:clamp(16px,2.5vw,26px);align-items:start;}
@media (max-width:980px){.mp-sim{grid-template-columns:1fr;}}

.mp-sim-bloco{margin:0 0 18px;padding:18px;border:1px solid var(--linha-2);
  border-radius:14px;background:var(--branco);}
.mp-sim-bloco legend{padding:0 6px;font-size:.76rem;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;color:var(--tinta-2);}

.mp-sim-servicos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:9px;}
.mp-sim-servico,.mp-sim-op{display:flex;align-items:flex-start;gap:10px;
  padding:12px 14px;border:1px solid var(--linha-2);border-radius:11px;
  cursor:pointer;transition:border-color .16s,background .16s;}
.mp-sim-servico:hover,.mp-sim-op:hover{border-color:var(--azul);}
.mp-sim-servico:has(input:checked),.mp-sim-op:has(input:checked){
  border-color:var(--azul);background:rgba(27,111,192,.06);}
.mp-sim-servico input,.mp-sim-op input{flex:none;width:18px;height:18px;margin:2px 0 0;
  accent-color:var(--azul);cursor:pointer;}
.mp-sim-servico strong,.mp-sim-op span > *:first-child{display:block;font-size:.93rem;
  font-weight:600;line-height:1.3;}
.mp-sim-servico small,.mp-sim-op small{display:block;margin-top:2px;font-size:.8rem;
  color:var(--tinta-2);}
.mp-sim-incompleto small{color:#96690A;font-weight:600;}
.mp-sim-incompleto{border-style:dashed;}
.mp-sim-op{margin-bottom:8px;}
.mp-sim-op span{font-size:.93rem;font-weight:600;}

.mp-grade-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr));gap:14px;}

/* A conta fica à vista enquanto os controles rolam: é o número que se olha o
   tempo todo numa ligação, e perdê-lo de vista quebra o raciocínio. */
.mp-sim-saida{position:sticky;top:20px;padding:20px;border:1px solid var(--linha-2);
  border-radius:16px;background:var(--branco);box-shadow:var(--sombra);}
.mp-sim-saida[data-indo="1"]{opacity:.6;}
.mp-sim-vazio{margin:0;font-size:.9rem;color:var(--tinta-2);}

.mp-sim-total{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--linha-2);}
.mp-sim-total span{display:block;font-size:.74rem;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--tinta-2);}
.mp-sim-total strong{display:block;margin-top:4px;font-size:2rem;font-weight:700;
  letter-spacing:-.03em;line-height:1.1;color:var(--marinho);
  font-variant-numeric:tabular-nums;}

.mp-sim-detalhe{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--linha-2);}
.mp-sim-detalhe:last-of-type{border-bottom:0;}
.mp-sim-linha{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  margin-bottom:6px;font-size:.88rem;color:var(--tinta-2);}
.mp-sim-linha strong{font-weight:600;color:var(--tinta);font-variant-numeric:tabular-nums;
  white-space:nowrap;}
.mp-sim-desconto strong{color:#1E7A4B;}
.mp-sim-hora strong{color:var(--azul);}

.mp-sim-alerta{margin:0 0 12px;padding:9px 11px;border-radius:9px;
  background:#FFF8E6;border:1px solid #F0DFA8;color:#6B5312;font-size:.82rem;line-height:1.5;}

.mp-sim-texto{width:100%;margin-top:10px;min-height:120px;font-size:.84rem;
  border:1px solid var(--linha-2);border-radius:9px;padding:10px;}

.mp-sim-acoes{margin-top:22px;padding-top:20px;border-top:1px solid var(--linha-2);}

/* ---------------------------------------- v1.31: referência de mercado ---- */
.mp-ref{margin-top:28px;border:1px solid var(--linha-2);border-radius:14px;
  background:var(--branco);}
.mp-ref summary{display:flex;align-items:baseline;gap:10px;min-height:52px;
  padding:14px 18px;cursor:pointer;list-style:none;}
.mp-ref summary::-webkit-details-marker{display:none;}
.mp-ref summary span{font-size:1rem;font-weight:600;color:var(--marinho);}
.mp-ref summary small{color:var(--tinta-2);font-size:.82rem;}
.mp-ref summary::after{content:"";width:9px;height:9px;margin-left:auto;
  border-right:2px solid var(--tinta-2);border-bottom:2px solid var(--tinta-2);
  transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s;}
.mp-ref[open] summary::after{transform:rotate(-135deg) translate(-2px,-2px);}
.mp-ref-dentro{padding:0 18px 20px;}

.mp-tabela-ref{width:100%;border-collapse:collapse;margin:16px 0;}
.mp-tabela-ref th,.mp-tabela-ref td{padding:9px 10px;text-align:left;
  border-bottom:1px solid var(--linha-2);font-size:.88rem;vertical-align:middle;}
.mp-tabela-ref th{font-size:.72rem;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--tinta-2);}
.mp-tabela-ref .mp-num{font-variant-numeric:tabular-nums;white-space:nowrap;}
.mp-tabela-ref form{margin:0;}

.mp-ref-h4{margin:22px 0 10px;font-size:.76rem;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--tinta-2);}

.mp-ref-faltando{list-style:none;margin:0 0 14px;padding:0;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:10px;}
.mp-ref-faltando li{padding:12px 14px;border:1px solid var(--linha-2);border-radius:11px;
  background:var(--papel);}
.mp-ref-faltando strong{display:block;font-size:.92rem;}
.mp-ref-faltando .mp-num{display:block;margin:2px 0 4px;font-size:.86rem;font-weight:600;
  color:var(--azul);font-variant-numeric:tabular-nums;}
.mp-ref-faltando small{display:block;font-size:.82rem;line-height:1.5;color:var(--tinta-2);}

.mp-ref-hora{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:10px;}
.mp-ref-hora li{padding:9px 14px;border:1px solid var(--linha-2);border-radius:999px;
  font-size:.86rem;}
.mp-ref-hora strong{font-weight:600;}
.mp-ref-hora span{color:var(--tinta-2);font-variant-numeric:tabular-nums;}
.mp-ref-sem{display:block;max-width:46ch;font-size:.8rem;line-height:1.5;white-space:normal;}
