/* =========================================================
   Dracar — tema da plataforma (sobrepõe o custom.min.css)
   Mesma identidade do site: turquesa, Inter e Merriweather.
   ========================================================= */
:root{
  --teal:#1A8C8C;
  --teal-dark:#12666A;
  --teal-deeper:#0D4A4D;
  --teal-light:#E8F5F5;
  --teal-mid:#C2E6E6;
  --teal-glow:#7EEAEA;
  --dark:#111827;
  --gray-700:#374151;
  --gray-500:#6B7280;
  --gray-300:#D1D5DB;
  --gray-100:#F3F4F6;
}

/* ---------- Base ---------- */
body,
body .container.body .right_col{
  font-family:'Inter',"Helvetica Neue",Arial,sans-serif;
  color:var(--gray-700);
  font-size:13.5px;
}
body.nav-md,body.nav-sm{background:var(--teal-dark)}
body .container.body .right_col{background:var(--gray-100)}
h1,h2,h3,.page-title h3{font-family:'Merriweather',Georgia,serif;font-weight:300;color:var(--dark)}
a{color:var(--teal-dark)}
a:hover,a:focus{color:var(--teal)}

/* ---------- Barra lateral ---------- */
.left_col{background:linear-gradient(180deg,var(--teal-deeper) 0%,var(--teal-dark) 100%)}
.nav_title{background:transparent}
.site_title{
  font-family:'Merriweather',Georgia,serif !important;
  font-weight:300 !important;
  letter-spacing:.06em;
  color:#fff !important;
}
.profile{border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:14px}
.profile_info span{color:rgba(255,255,255,.55);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}
.profile_info h2{font-family:'Inter',sans-serif;font-weight:500;color:#fff;font-size:15px}
.img-circle.profile_img{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2)}

.menu_section h3{
  font-family:'Inter',sans-serif;
  color:rgba(255,255,255,.5);
  font-size:10.5px;
  font-weight:500;
  letter-spacing:.2em;
  text-shadow:none;
  text-transform:uppercase;
}
.nav.side-menu>li>a,
.nav.child_menu>li>a{color:rgba(255,255,255,.82);font-weight:400}
.nav.side-menu>li>a{border-left:3px solid transparent;transition:background .2s,color .2s}
.nav.side-menu>li>a:hover{background:rgba(255,255,255,.07) !important;color:#fff !important}
.nav.side-menu>li.active>a,
.nav.side-menu>li.current-page>a{
  background:rgba(255,255,255,.12) !important;
  border-left-color:var(--teal-glow);
  box-shadow:none !important;
  text-shadow:none !important;
  color:#fff !important;
}
.nav.side-menu>li.active,
.nav.side-menu>li.current-page{border-right:none !important}
.main_menu .fa{color:var(--teal-glow);opacity:.9}
.nav.child_menu>li>a:hover,
.nav li li.current-page a,
.nav.child_menu li li a:hover{color:#fff !important}
.nav-md ul.nav.child_menu li:before{background:var(--teal-glow)}
.nav-md ul.nav.child_menu li:after{border-left-color:rgba(126,234,234,.35)}
.nav li.current-page{background:rgba(255,255,255,.06)}
.nav.side-menu>li.active>ul.child_menu,
.nav.child_menu{background:transparent}

/* ---------- Barra superior ---------- */
.nav_menu{
  margin-bottom:0 !important;
  background:#fff;
  border-bottom:1px solid var(--gray-300);
  box-shadow:0 1px 0 rgba(13,74,77,.03);
}
.toggle a{color:var(--teal-dark)}
.toggle a:hover{color:var(--teal)}
.top_nav .navbar-right li a,
.top_nav .user-profile{color:var(--gray-700) !important}
.top_nav .nav>li>a:hover,
.top_nav .nav>li>a:focus,
.top_nav .nav .open>a{background:var(--teal-light) !important}
.dropdown-menu{border-color:var(--gray-300);border-radius:8px;box-shadow:0 12px 32px rgba(13,74,77,.12)}
.dropdown-menu>li>a:hover{background:var(--teal-light);color:var(--teal-dark)}

/* ---------- Conteúdo ---------- */
.page-title{padding:14px 0 6px}
.page-title .title_left h3{font-size:1.6rem;margin:6px 0}
.x_panel{
  border:1px solid var(--gray-300);
  border-radius:10px;
  box-shadow:0 2px 10px rgba(13,74,77,.04);
}
.x_title{border-bottom:1px solid var(--gray-100)}
.x_title h2{font-family:'Inter',sans-serif;font-weight:600;font-size:15px;color:var(--dark)}
.x_title h2 small{color:var(--gray-500)}
.tile-stats{border-color:var(--gray-300);border-radius:10px}
.tile-stats .count{font-family:'Merriweather',Georgia,serif;font-weight:300;color:var(--dark)}

/* Botões */
.btn{border-radius:4px;font-weight:500;letter-spacing:.02em}
.btn-primary,.btn-success{background:var(--teal-dark);border-color:var(--teal-dark);color:#fff}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active,
.btn-success:hover,.btn-success:focus,.btn-success:active{background:var(--teal-deeper) !important;border-color:var(--teal-deeper) !important;color:#fff}
.btn-info{background:var(--teal);border-color:var(--teal)}
.btn-info:hover{background:var(--teal-dark);border-color:var(--teal-dark)}
.btn-default{border-color:var(--gray-300);color:var(--gray-700)}
.btn-default:hover{background:var(--teal-light);border-color:var(--teal-mid);color:var(--teal-dark)}

/* Formulários */
.form-control:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(26,140,140,.15)}

/* Tabelas */
.table>thead>tr>th{
  background:var(--teal-light);
  color:var(--teal-deeper);
  font-weight:600;
  border-bottom:1px solid var(--teal-mid) !important;
}
.table-striped>tbody>tr:nth-of-type(odd){background:#FAFBFB}
.table-hover>tbody>tr:hover{background:var(--teal-light)}
.pagination>.active>a,.pagination>.active>a:hover,.pagination>.active>span{background:var(--teal-dark);border-color:var(--teal-dark)}
.pagination>li>a{color:var(--teal-dark)}

/* Etiquetas e barras */
.label-success,.badge.bg-green,.bg-green{background:var(--teal) !important;border-color:var(--teal) !important}
.progress-bar-success,.progress-bar.bg-green{background:var(--teal) !important}

/* Rodapé */
footer{background:#fff;border-top:1px solid var(--gray-300);color:var(--gray-500)}
footer a{color:var(--teal-dark)}

/* Página inicial */
.dr-welcome{background:linear-gradient(135deg,var(--teal-deeper) 0%,var(--teal-dark) 55%,var(--teal) 100%);border-radius:12px;padding:32px 36px;color:#fff;margin:8px 10px 20px}
.dr-welcome small{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:6px}
.dr-welcome h2{font-family:'Merriweather',Georgia,serif;font-weight:300;color:#fff;font-size:26px;margin:0 0 8px}
.dr-welcome h2 strong{font-weight:400;color:var(--teal-glow)}
.dr-welcome p{color:rgba(255,255,255,.8);font-size:14px;margin:0;max-width:560px;line-height:1.7}

/* ---------- Tela de login ---------- */
body.dr-login{background:#fff;margin:0}
.dr-login-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);min-height:100vh}
.dr-login-brand{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--teal-deeper) 0%,var(--teal-dark) 50%,var(--teal) 100%);
  color:#fff;padding:40px 56px;display:flex;flex-direction:column;justify-content:space-between;
}
.dr-login-watermark{position:absolute;right:-60px;top:50%;transform:translateY(-50%);width:420px;opacity:.06;pointer-events:none}
.dr-login-logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;position:relative}
.dr-login-logo:hover,.dr-login-logo:focus{color:#fff;text-decoration:none}
.dr-login-logo img{width:34px;height:auto}
.dr-login-logo span{display:flex;flex-direction:column;line-height:1.1}
.dr-login-logo strong{font-size:18px;font-weight:600;letter-spacing:.08em}
.dr-login-logo small{font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.dr-login-pitch{position:relative;max-width:440px}
.dr-login-eyebrow{display:inline-block;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:5px 14px;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:22px}
.dr-login-pitch h2{font-family:'Merriweather',Georgia,serif;font-weight:300;color:#fff;font-size:34px;line-height:1.25;margin:0 0 26px}
.dr-login-pitch h2 strong{font-weight:400;color:var(--teal-glow)}
.dr-login-pitch ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.dr-login-pitch li{display:flex;align-items:center;gap:10px;font-size:14.5px;color:rgba(255,255,255,.85)}
.dr-login-pitch li svg{width:18px;height:18px;flex-shrink:0;fill:none;stroke:var(--teal-glow);stroke-width:2.4}
.dr-login-back{position:relative;font-size:13px;color:rgba(255,255,255,.7);text-decoration:none}
.dr-login-back:hover{color:#fff;text-decoration:none}

.dr-login-main{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;background:var(--gray-100);position:relative}
.dr-login .login_wrapper{width:100%;max-width:400px;margin:0;min-height:470px}
.dr-login .login_content{
  background:#fff;border:1px solid var(--gray-300);border-radius:12px;
  box-shadow:0 24px 60px rgba(13,74,77,.10);
  padding:32px 32px 18px;text-align:left;text-shadow:none;min-width:0;
}
.dr-login .login_content form{margin:0}
.dr-login .login_content h1{font-family:'Merriweather',Georgia,serif;font-weight:300;font-size:24px;letter-spacing:0;line-height:1.3;color:var(--dark);margin:0 0 6px}
.dr-login .login_content h1:before,.dr-login .login_content h1:after{display:none}
.dr-login-head{margin-bottom:22px}
.dr-login-head p{font-size:13px;color:var(--gray-500);margin:0}
.dr-login-lock{display:inline-flex;width:40px;height:40px;border-radius:10px;background:var(--teal-light);align-items:center;justify-content:center;margin-bottom:14px}
.dr-login-lock svg{width:20px;height:20px;fill:none;stroke:var(--teal-dark);stroke-width:2}
.dr-login .form-group{margin-bottom:16px}
.dr-login label{display:block;font-size:12px;font-weight:500;color:var(--gray-700);margin-bottom:6px}
.dr-login .login_content form input[type=text],
.dr-login .login_content form input[type=email],
.dr-login .login_content form input[type=password],
.dr-login .login_content select.form-control{
  height:44px;border-radius:6px;border:1px solid var(--gray-300);box-shadow:none;
  font-size:14px;margin:0;padding:0 14px;background:#fff;
}
.dr-login .login_content form input:focus,.dr-login .login_content select.form-control:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(26,140,140,.15)}
.dr-login-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px}
.dr-login .login_content form .submit,.dr-login .btn.submit{
  margin:0;float:none;height:44px;padding:0 28px;border-radius:6px;
  background:var(--teal-dark);border-color:var(--teal-dark);color:#fff;font-weight:600;letter-spacing:.03em
}
.dr-login .btn.submit:hover,.dr-login .btn.submit:focus{background:var(--teal-deeper);border-color:var(--teal-deeper);color:#fff}
.dr-login .reset_pass{margin:0;float:none;font-size:13px;color:var(--teal-dark)}
.dr-login .separator{border-top:1px solid var(--gray-100);margin-top:22px;padding-top:16px;text-align:center}
.dr-login .change_link{font-size:13px;color:var(--gray-500);margin:0}
.dr-login .to_register{color:var(--teal-dark);font-weight:600;margin-left:4px}
.dr-login-copy{font-size:12px;color:var(--gray-500);margin:0;text-align:center;position:absolute;bottom:20px;left:0;right:0}

@media(max-width:900px){
  .dr-login-grid{grid-template-columns:1fr;grid-template-rows:auto 1fr}
  .dr-login-brand{padding:24px 20px}
  .dr-login-pitch,.dr-login-watermark{display:none}
  .dr-login-back{display:none}
  .dr-login-main{padding:28px 16px 60px;justify-content:flex-start}
  .dr-login .login_wrapper{min-height:640px}
  .dr-login .login_content{padding:26px 20px 14px}
}

/* ---------- Painel de resultados ---------- */
.pn{padding-bottom:30px;overflow-x:hidden}
.pn-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 4px 14px}
.pn-head h3{font-family:'Merriweather',Georgia,serif;font-weight:300;font-size:26px;margin:2px 0 4px;color:var(--dark)}
.pn-head p{margin:0;color:var(--gray-500);font-size:13px}
.pn-head-dir{display:flex;align-items:center;gap:12px}
.pn-eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--teal);font-weight:500}
.pn-voltar{display:inline-block;font-size:12.5px;margin-bottom:8px;color:var(--teal-dark)}
.pn-simulado{font-size:11px;letter-spacing:.06em;text-transform:uppercase;background:#FFF7ED;color:#9A3412;border:1px solid #FED7AA;border-radius:20px;padding:4px 12px;white-space:nowrap}

.pn-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}
.pn-kpi{background:#fff;border:1px solid var(--gray-300);border-radius:10px;padding:14px 16px}
.pn-kpi small{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-500)}
.pn-kpi b{display:block;font-family:'Merriweather',Georgia,serif;font-weight:300;font-size:26px;color:var(--dark);line-height:1.35}
.pn-kpi em{font-style:normal;font-size:12px;color:var(--gray-500)}

.pn-duo,.pn-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px}
.pn-row-7-5{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.pn-bloco,.pn-panel{background:#fff;border:1px solid var(--gray-300);border-radius:10px;padding:16px 18px}
.pn-bloco>header,.pn-panel>header{margin-bottom:12px}
.pn-bloco h4,.pn-panel h4{font-size:15px;font-weight:600;color:var(--dark);margin:0 0 2px;display:flex;align-items:center;gap:8px}
.pn-bloco header small,.pn-panel header small{font-size:12px;color:var(--gray-500)}
.pn-dot{width:10px;height:10px;border-radius:50%;display:inline-block}
.pn-dot-bom{background:var(--teal)}
.pn-dot-ruim{background:#D9774F}

.pn-cards{display:flex;flex-direction:column;gap:10px}
.pn-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;grid-template-areas:"top top top" "spark kpis link";align-items:end;gap:8px 18px;border:1px solid var(--gray-100);border-radius:8px;padding:12px 14px;color:inherit;text-decoration:none;transition:border-color .2s,box-shadow .2s}
.pn-card:hover,.pn-card:focus{border-color:var(--teal-mid);box-shadow:0 4px 16px rgba(26,140,140,.08);text-decoration:none;color:inherit}
.pn-card-top{grid-area:top;display:flex;align-items:center;justify-content:space-between;gap:10px}
.pn-card-spark{grid-area:spark}.pn-card-kpis{grid-area:kpis}.pn-card-link{grid-area:link;padding-bottom:2px}
.pn-card-top strong{display:block;font-size:13.5px;color:var(--dark);font-weight:600}
.pn-card-top small{display:block;font-size:11.5px;color:var(--gray-500)}
.pn-card-spark span{display:block;font-size:10px;color:var(--gray-500);margin-bottom:2px}
.pg-spark{width:100%;height:34px;display:block}
.pn-card-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.pn-card-kpis small{display:block;font-size:10px;color:var(--gray-500)}
.pn-card-kpis b{font-size:13px;font-weight:600;color:var(--dark)}
.pn-card-link{font-size:12px;color:var(--teal-dark);font-weight:500;white-space:nowrap}

.pn-nota{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:52px;padding:4px 8px;border-radius:8px;font-family:'Merriweather',Georgia,serif;font-size:18px;line-height:1.1}
.pn-nota em{font-family:'Inter',sans-serif;font-style:normal;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;margin-top:2px}
.pn-nota-g{font-size:24px;min-width:70px;padding:6px 10px}
.pn-saudavel{background:#E6F4F1;color:#0B6B5E}
.pn-atencao{background:#FEF3C7;color:#92400E}
.pn-critico{background:#FDE8E3;color:#9A3412}
.pn-tag{display:inline-block;font-size:11px;font-weight:600;border-radius:12px;padding:2px 9px;white-space:nowrap}

.pn-acao-grupo{border-top:1px solid var(--gray-100);padding:10px 0}
.pn-acao-grupo:first-of-type{border-top:none;padding-top:0}
.pn-acao-cli{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.pn-acao-cli a{font-weight:600;color:var(--dark);font-size:13.5px}
.pn-acao-grupo ul,.pn-acoes{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px}
.pn-acao-grupo li,.pn-acoes li{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--gray-700);line-height:1.5}
.pn-prio{flex-shrink:0;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:2px 7px;margin-top:1px;min-width:52px;text-align:center}
.pn-prio-alta{background:#FDE8E3;color:#9A3412}
.pn-prio-media{background:#FEF3C7;color:#92400E}
.pn-prio-baixa{background:var(--gray-100);color:var(--gray-700)}
.pn-vazio{color:var(--gray-500);font-size:13px;margin:0}

.pg-chart{width:100%;height:auto;display:block;font-family:'Inter',sans-serif}
.pg-ax{font-size:10.5px;fill:#6B7280}
.pg-lbl{font-size:10.5px;fill:#374151}
.pg-val{font-size:11px;fill:#111827;font-weight:600}
.pg-name{font-size:12px;fill:#374151}
.pg-hit:hover path,.pg-hit:hover rect[rx],.pg-hit:hover circle{opacity:.8}

.pn-tabela{margin:0;font-size:13px}
.pn-tabela th.r,.pn-tabela td.r{text-align:right}
.pn-tabela td{vertical-align:middle !important}

.pn-metas{display:flex;flex-direction:column;gap:12px}
.pn-meta{display:grid;grid-template-columns:1fr auto;gap:4px 10px;font-size:13px}
.pn-meta small{color:var(--gray-500);margin-left:6px}
.pn-meta b{font-weight:600;color:var(--dark)}
.pn-track{grid-column:1/-1;height:7px;background:var(--gray-100);border-radius:4px;overflow:hidden}
.pn-track span{display:block;height:100%;background:#0E9494;border-radius:4px}
.pn-em-breve p{font-size:13px;color:var(--gray-500)}
.pn-rodape{font-size:12px;color:var(--gray-500);margin:4px 2px 0}

@media(max-width:900px){
  .pn-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pn-duo,.pn-row,.pn-row-7-5{grid-template-columns:1fr}
  .pn-head{flex-direction:column}
  .pn-card{grid-template-columns:1fr;grid-template-areas:"top" "spark" "kpis" "link"}
}

/* ---------- Formulários (cadastro) ---------- */
.dr-form{max-width:1100px}
.dr-sec{margin-bottom:16px;padding:20px 22px 8px}
.dr-sec>header{margin-bottom:16px}
.dr-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 18px}
.dr-c2{grid-column:span 2}.dr-c3{grid-column:span 3}.dr-c4{grid-column:span 4}.dr-c5{grid-column:span 5}.dr-c7{grid-column:span 7}
.dr-campo{margin-bottom:14px;position:relative}
.dr-campo label{display:block;font-size:12px;font-weight:500;color:var(--gray-700);margin-bottom:6px}
.dr-req{color:#C2410C;font-weight:600}
.dr-form .form-control{height:42px;border:1px solid var(--gray-300);border-radius:8px;box-shadow:none;font-size:14px;padding:0 12px;transition:border-color .2s,box-shadow .2s,background-color .6s}
.dr-form .form-control:hover{border-color:#B8C2CC}
.dr-form .form-control:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(26,140,140,.15)}
.dr-erro{font-size:11.5px;color:#B42318;min-height:0;margin-top:4px;display:none}
.dr-campo.is-invalid .form-control{border-color:#D92D20;background:#FEF3F2}
.dr-campo.is-invalid .form-control:focus{box-shadow:0 0 0 3px rgba(217,45,32,.15)}
.dr-campo.is-invalid label{color:#B42318}
.dr-campo.is-invalid .dr-erro{display:block}
.dr-campo.dr-flash .form-control{animation:drFlash 1.2s ease}
@keyframes drFlash{0%{background:var(--teal-light)}100%{background:#fff}}

.dr-busca{display:flex;gap:8px}
.dr-busca .form-control{flex:1;font-size:15px;letter-spacing:.02em}
.dr-busca .btn{height:42px;border-radius:8px;display:inline-flex;align-items:center;gap:6px;padding:0 18px;margin:0;white-space:nowrap}
.dr-busca .btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2}
.dr-busca .btn.is-loading svg{animation:drGira .8s linear infinite}
@keyframes drGira{to{transform:rotate(360deg)}}

.dr-status{margin-top:25px;font-size:13px;line-height:1.5;border-radius:8px;padding:0;color:var(--gray-700)}
.dr-status:empty{display:none}
.dr-status-info,.dr-status-ok,.dr-status-erro,.dr-status-alerta{padding:10px 14px}
.dr-status-info{background:var(--gray-100)}
.dr-status-ok{background:#E6F4F1;color:#0B5B50}
.dr-status-erro{background:#FEF3F2;color:#B42318}
.dr-status-alerta{background:#FEF3C7;color:#92400E}
.dr-status a{font-weight:600;text-decoration:underline}

.dr-acoes{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:6px 0 20px}
.dr-acoes .btn{height:42px;padding:0 22px;border-radius:8px;margin:0;display:inline-flex;align-items:center}
.dr-legenda{margin-right:auto;font-size:12px;color:var(--gray-500)}

@media(max-width:900px){
  .dr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dr-c2,.dr-c3{grid-column:span 1}
  .dr-c4,.dr-c5,.dr-c7{grid-column:span 2}
  .dr-status{margin-top:0}
}

/* ---------- Lista de clientes ---------- */
.lc-novo{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 20px;border-radius:8px;margin-top:22px}
.lc-novo svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:2.4}
.lc-panel{padding:0}
.lc-barra{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--gray-100);flex-wrap:wrap}
.lc-busca{position:relative;flex:1;max-width:460px}
.lc-busca svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;fill:none;stroke:var(--gray-500);stroke-width:2}
.lc-busca .form-control{height:40px;border-radius:8px;padding-left:36px;box-shadow:none;border-color:var(--gray-300)}
.lc-filtros{display:inline-flex;background:var(--gray-100);border-radius:8px;padding:3px}
.lc-filtros button{border:0;background:transparent;font-size:12.5px;font-weight:500;color:var(--gray-500);padding:6px 14px;border-radius:6px;transition:background .2s,color .2s}
.lc-filtros button.on{background:#fff;color:var(--teal-dark);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.lc-tabela{margin:0}
.lc-tabela>thead>tr>th{padding:11px 18px;font-size:12px;letter-spacing:.04em}
.lc-tabela>tbody>tr>td{padding:12px 18px;border-top:1px solid var(--gray-100);vertical-align:middle;transition:opacity .35s,transform .35s}
.lc-tabela>tbody>tr:hover>td{background:#F7FBFB}
.lc-nome{font-weight:600;color:var(--dark)}
.lc-nome:hover{color:var(--teal-dark)}
.lc-tabela small{display:block;font-size:11.5px;color:var(--gray-500)}
.lc-mono{font-variant-numeric:tabular-nums;white-space:nowrap}
.lc-acoes{white-space:nowrap}
.lc-btn{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--gray-300);background:#fff;color:var(--gray-700);border-radius:6px;padding:5px 10px;font-size:12px;font-weight:500;margin-left:6px;text-decoration:none;transition:border-color .2s,color .2s,background .2s}
.lc-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}
.lc-btn:hover{border-color:var(--teal-mid);color:var(--teal-dark);background:var(--teal-light);text-decoration:none}
.lc-del:hover{border-color:#FCA5A5;color:#B42318;background:#FEF3F2}
.lc-saindo>td{opacity:0;transform:translateX(16px)}
.lc-nada{padding:28px;text-align:center;color:var(--gray-500);margin:0}
.lc-vazio{text-align:center;padding:56px 20px}
.lc-vazio-ico{display:inline-flex;width:56px;height:56px;border-radius:14px;background:var(--teal-light);align-items:center;justify-content:center;margin-bottom:14px}
.lc-vazio-ico svg{width:26px;height:26px;fill:none;stroke:var(--teal-dark);stroke-width:1.8}
.lc-vazio h4{font-family:'Merriweather',Georgia,serif;font-weight:300;font-size:20px;color:var(--dark);margin:0 0 6px}
.lc-vazio p{color:var(--gray-500);max-width:420px;margin:0 auto 18px}
.lc-vazio .btn{border-radius:8px;height:42px;padding:0 22px}
.lc-modal{position:fixed;inset:0;background:rgba(17,24,39,0);display:flex;align-items:center;justify-content:center;z-index:10040;transition:background .2s}
.lc-modal.on{background:rgba(17,24,39,.4)}
.lc-modal-box{background:#fff;border-radius:12px;padding:22px 24px;width:400px;max-width:calc(100vw - 32px);box-shadow:0 24px 60px rgba(0,0,0,.2);transform:translateY(10px) scale(.98);opacity:0;transition:transform .2s,opacity .2s}
.lc-modal.on .lc-modal-box{transform:none;opacity:1}
.lc-modal-box h4{font-size:17px;font-weight:600;color:var(--dark);margin:0 0 8px}
.lc-modal-box p{font-size:13.5px;color:var(--gray-700)}
.lc-modal-acoes{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.lc-modal-acoes .btn{border-radius:8px;height:38px;padding:0 18px;margin:0}
@media(max-width:900px){.lc-btn span{display:none}.lc-novo{margin-top:0}}

/* Elementos com o atributo hidden ficam realmente ocultos, mesmo quando uma
   classe define display (ex.: a janela de confirmação da lista de clientes). */
[hidden]{display:none !important}

/* ---------- Marca e perfil na barra lateral ---------- */
.nav-md .nav_title{height:auto;padding:14px 0 10px}
.nav-md .site_title.dr-marca{display:flex;justify-content:center;height:auto;line-height:1;padding:0;overflow:visible;text-decoration:none}
.site_title.dr-marca span{display:flex;flex-direction:column;align-items:center}
.site_title.dr-marca strong{font-family:'Merriweather',Georgia,serif;font-weight:300;font-size:30px;letter-spacing:.04em;color:#fff}
.site_title.dr-marca small{font-family:'Inter',sans-serif;font-size:10.5px;letter-spacing:.42em;text-transform:uppercase;color:var(--teal-glow);margin-top:6px;padding-left:.42em}
.nav-md .profile_info{padding-top:24px}
.nav-md .profile_info h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;margin-top:2px}

/* ---------- Integração (tela do cliente) ---------- */
.dr-integ{max-width:1100px;padding-bottom:18px}
.dr-integ-txt{font-size:13px;color:var(--gray-700)}
.dr-integ code{background:var(--gray-100);color:var(--teal-deeper);padding:1px 6px;border-radius:4px;font-size:12px}
.dr-integ-token{margin:6px 0 14px}
.dr-integ-token label{font-size:12px;font-weight:500;margin-bottom:6px;display:block}
.dr-integ-token .form-control{font-family:Consolas,Menlo,monospace;font-size:13px}
.dr-integ .btn{border-radius:8px;height:40px;padding:0 18px}

/* Painel com dados reais */
.pn .pn-sem_dados { background: #F3F4F6; color: #6B7280; }
.pn .pn-nota.pn-sem_dados em { color: #6B7280; }
.pn .pn-sem_base, .pn .pn-sem_despesas { background: #F3F4F6; color: #6B7280; }
.pn a.pn-dre-ok { background: #EEF7F7; border-color: #BFDCDC; color: #0D4A4D; text-decoration: none; }
.pn a.pn-dre-ok:hover { background: #D9EFEF; }
.pn .pn-nota.pn-sem_base em, .pn .pn-nota.pn-sem_despesas em { color: #6B7280; }
.pn-tabela tr.pn-sem-dados td { color: #6B7280; }
.pn-tabela td.pn-atrasado { color: #B4532A; font-weight: 600; }
.pn .pn-neg { color: #B4532A; }
.pn .pn-kpis.pn-kpis-sm { grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; }
.pn .pn-kpis.pn-kpis-sm .pn-kpi { box-shadow: none; border: 1px solid #E5E7EB; }
@media (max-width: 767px) { .pn .pn-kpis.pn-kpis-sm { grid-template-columns: 1fr; } }
@media (max-width: 560px) {
  .pn .pn-kpis { grid-template-columns: 1fr 1fr; gap: 10px; }
  .pn .pn-kpi b { font-size: 24px; }
  .pn-head-dir { align-self: flex-start; }
}

/* Animações dos gráficos do painel (só com JavaScript e sem "reduzir movimento") */
@media (prefers-reduced-motion: no-preference) {
  .pg-js .pn .pg-bar { transform-box: fill-box; transform-origin: 50% 100%; transform: scaleY(0); }
  .pg-js .pn .pg-bar.pg-neg { transform-origin: 50% 0; }
  .pg-js .pn .pg-hbar { transform-box: fill-box; transform-origin: 0 50%; transform: scaleX(0); }
  .pg-js .pn .pg-line { stroke-dasharray: 1; stroke-dashoffset: 1; }
  .pg-js .pn .pg-dot, .pg-js .pn .pg-chart .pg-val { opacity: 0; }
  .pg-js .pn .pg-on .pg-bar { animation: pgCrescerY .7s cubic-bezier(.2,.75,.25,1) forwards; animation-delay: calc(var(--i, 0) * 45ms); }
  .pg-js .pn .pg-on .pg-hbar { animation: pgCrescerX .8s cubic-bezier(.2,.75,.25,1) forwards; animation-delay: calc(var(--i, 0) * 70ms); }
  .pg-js .pn .pg-on .pg-line { animation: pgDesenhar 1.1s ease-out forwards; }
  .pg-js .pn .pg-on .pg-dot { animation: pgSurgir .3s ease-out forwards; animation-delay: calc(250ms + var(--i, 0) * 60ms); }
  .pg-js .pn .pg-on .pg-val { animation: pgSurgir .4s ease-out .65s forwards; }
}
@keyframes pgCrescerY { to { transform: scaleY(1); } }
@keyframes pgCrescerX { to { transform: scaleX(1); } }
@keyframes pgDesenhar { to { stroke-dashoffset: 0; } }
@keyframes pgSurgir { to { opacity: 1; } }

/* Acompanhamento das integrações */
.pn-integ { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 10px; }
.pn-integ a { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid #E5E7EB; border-radius: 10px; color: inherit; text-decoration: none; transition: border-color .2s, background .2s; }
.pn-integ a:hover { border-color: #1A8C8C; background: #F4FAFA; }
.pn-integ i { flex: none; width: 10px; height: 10px; border-radius: 50%; margin-top: 5px; background: #9CA3AF; }
.pn-integ .em_dia i { background: #0E9494; box-shadow: 0 0 0 3px rgba(14,148,148,.15); }
.pn-integ .atrasado i { background: #D9774F; box-shadow: 0 0 0 3px rgba(217,119,79,.18); animation: pgPulsar 1.6s ease-in-out infinite; }
.pn-integ .aguardando i { background: #E0B341; }
.pn-integ strong { display: block; font-size: 13px; color: #1F2937; }
.pn-integ small { display: block; font-size: 12px; color: #6B7280; }
.pn-integ .atrasado small { color: #B4532A; font-weight: 600; }
@keyframes pgPulsar { 50% { box-shadow: 0 0 0 6px rgba(217,119,79,.05); } }
@media (prefers-reduced-motion: reduce) { .pn-integ .atrasado i { animation: none; } }
.pn-card-upd { font-size: 11.5px; color: #6B7280; }
.pn-card-upd.atrasado { color: #B4532A; font-weight: 600; }
.pn .pn-integ-sec { margin-bottom: 16px; }
.pn-card-top small.pn-card-upd { margin-top: 2px; }

/* Rótulos dos dados nos gráficos */
.pg-dl { font-size: 9.5px; fill: #4B5563; font-weight: 500; paint-order: stroke; stroke: #fff; stroke-width: 3px; stroke-linejoin: round; }
.pg-dl-ult { fill: #111827; font-weight: 700; font-size: 10.5px; }
@media (prefers-reduced-motion: no-preference) {
  .pg-js .pn .pg-chart .pg-dl { opacity: 0; }
  .pg-js .pn .pg-on .pg-dl { animation: pgSurgir .35s ease-out forwards; animation-delay: calc(450ms + var(--i, 0) * 45ms); }
}

/* "i" com a explicação do indicador */
.pn-info { position: relative; display: inline-flex; vertical-align: 1px; margin-left: 3px; cursor: help; outline: none; text-transform: none; letter-spacing: 0; }
.pn-info > i { display: inline-flex; align-items: center; justify-content: center; width: 15px; height: 15px; border-radius: 50%;
  border: 1px solid #9CA3AF; color: #6B7280; font: italic 600 10px/1 Georgia, serif; transition: background .15s, color .15s, border-color .15s; }
.pn-info:hover > i, .pn-info:focus > i { background: #0E9494; border-color: #0E9494; color: #fff; }
.pn-tip { position: absolute; z-index: 30; left: 50%; bottom: calc(100% + 8px); width: 260px; max-width: 70vw; transform: translate(-50%, 4px);
  background: #1F2937; color: #F9FAFB; font: 400 12px/1.5 Inter, Arial, sans-serif; text-align: left; padding: 9px 11px; border-radius: 8px;
  box-shadow: 0 10px 24px rgba(0,0,0,.18); opacity: 0; visibility: hidden; transition: opacity .15s, transform .15s, visibility .15s; pointer-events: none; white-space: normal; }
.pn-tip::after { content: ""; position: absolute; top: 100%; left: 50%; margin-left: -5px; border: 5px solid transparent; border-top-color: #1F2937; }
.pn-info:hover .pn-tip, .pn-info:focus .pn-tip { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.pn-kpi .pn-info .pn-tip { left: 0; transform: translate(0, 4px); }
.pn-kpi .pn-info:hover .pn-tip, .pn-kpi .pn-info:focus .pn-tip { transform: translate(0, 0); }
.pn-kpi .pn-info .pn-tip::after { left: 12px; }
.pn-head-dir .pn-info .pn-tip { left: auto; right: -6px; transform: translate(0, 4px); }
.pn-head-dir .pn-info:hover .pn-tip, .pn-head-dir .pn-info:focus .pn-tip { transform: translate(0, 0); }
.pn-head-dir .pn-info .pn-tip::after { left: auto; right: 8px; }
.pn-panel > header h4 .pn-info, .pn-bloco > header h4 .pn-info { vertical-align: 2px; }
@media (prefers-reduced-motion: no-preference) {
  .pg-js .pn .pg-hbar.pg-neg { transform-origin: 100% 50%; }
}

/* Botões do painel */
.pn-btn { display: inline-flex; align-items: center; gap: 6px; background: var(--teal); color: #fff !important; border: 1px solid var(--teal); border-radius: 8px; padding: 8px 16px; font: 600 13px/1.2 Inter, Arial, sans-serif; text-decoration: none !important; cursor: pointer; transition: background .15s, border-color .15s; white-space: nowrap; }
.pn-btn:hover { background: var(--teal-dark); border-color: var(--teal-dark); }
.pn-btn-sec { background: #fff; color: var(--teal-dark) !important; border-color: #D1D5DB; }
.pn-btn-sec:hover { background: #F4FAFA; border-color: var(--teal); }

/* Usuários e permissões */
.us-filtros { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.us-filtros button { background: #F3F4F6; border: 1px solid transparent; border-radius: 20px; padding: 5px 12px; font: 500 12.5px Inter, Arial, sans-serif; color: #4B5563; cursor: pointer; }
.us-filtros button em { font-style: normal; color: #9CA3AF; margin-left: 2px; }
.us-filtros button.on { background: #E6F4F4; border-color: var(--teal); color: var(--teal-deeper); }
.us-perfil { display: inline-block; font-size: 11.5px; font-weight: 600; padding: 2px 9px; border-radius: 20px; background: #F3F4F6; color: #374151; }
.us-p1 { background: #0D4A4D; color: #fff; } .us-p2 { background: #E6F4F4; color: #0D4A4D; } .us-p3 { background: #EEF2FF; color: #3730A3; } .us-p4 { background: #FEF3C7; color: #92400E; }
.us-sit { font-size: 12px; font-weight: 600; } .us-sit::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; margin-right: 6px; vertical-align: 1px; background: currentColor; }
.us-ativo { color: #15803D; } .us-pendente { color: #B45309; } .us-vencido { color: #B42318; } .us-desativado { color: #9CA3AF; }
.us-aviso { color: #B42318; font-size: 12px; }
.us-acoes-topo { flex-wrap: wrap; } .us-acoes-topo form { margin: 0; }
.us-form .pn-panel { margin-bottom: 16px; }
.us-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }
.us-grid label { display: flex; flex-direction: column; gap: 5px; font: 500 12px Inter, Arial, sans-serif; color: #4B5563; margin: 0; }
.us-grid input, .us-grid select { border: 1px solid #D1D5DB; border-radius: 8px; padding: 8px 10px; font: 14px Inter, Arial, sans-serif; color: #111827; background: #fff; }
.us-grid input:focus, .us-grid select:focus { outline: none; border-color: var(--teal); box-shadow: 0 0 0 3px rgba(26,140,140,.15); }
.us-dica { grid-column: 1 / -1; margin: 0; font-size: 12.5px; color: #4B5563; background: #F6FAFA; border-radius: 8px; padding: 8px 10px; }
.us-dica:empty { display: none; }
.us-empresas { display: grid; gap: 10px; }
.us-emp { border: 1px solid #E5E7EB; border-radius: 10px; padding: 10px 12px; transition: border-color .15s, background .15s; }
.us-emp.on { border-color: var(--teal); background: #F6FBFB; }
.us-emp-cab { display: flex; align-items: center; gap: 10px; margin: 0; cursor: pointer; font-weight: 400; }
.us-emp-cab input { width: 17px; height: 17px; accent-color: var(--teal); margin: 0; }
.us-emp-cab strong { display: block; font-size: 13.5px; color: #111827; }
.us-emp-cab small { color: #6B7280; font-size: 12px; }
.us-mods { display: none; flex-wrap: wrap; gap: 6px; margin: 10px 0 2px 27px; }
.us-emp.on .us-mods { display: flex; }
.us-mod { display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 5px 10px; border: 1px solid #D1D5DB; border-radius: 20px; background: #fff; font: 400 12.5px Inter, Arial, sans-serif; color: #374151; cursor: pointer; }
.us-mod input { margin: 0; accent-color: var(--teal); }
.us-mod:has(input:checked) { border-color: var(--teal); background: #E6F4F4; color: #0D4A4D; }
.us-mod em { font-style: normal; font-size: 10.5px; color: #9CA3AF; }
.us-rodape { display: flex; justify-content: flex-end; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 24px; }
.us-chk { display: inline-flex; align-items: center; gap: 6px; margin: 0; font: 400 13px Inter, Arial, sans-serif; color: #4B5563; }
.us-link { border-color: #FCD34D; background: #FFFBEB; margin-bottom: 16px; }
.us-link div { display: flex; gap: 8px; margin: 8px 0 6px; }
.us-link input { flex: 1; min-width: 0; border: 1px solid #D1D5DB; border-radius: 8px; padding: 8px 10px; font: 13px monospace; }
.us-link small { color: #92400E; }
.us-info-convite { font-size: 13px; color: #92400E; background: #FFFBEB; border: 1px solid #FDE68A; border-radius: 8px; padding: 9px 12px; }
.pn-troca { display: inline-flex; align-items: center; gap: 8px; font: 500 12px Inter, Arial, sans-serif; color: #6B7280; margin: 0 0 8px; }
.pn-troca select { border: 1px solid #D1D5DB; border-radius: 8px; padding: 5px 8px; font: 13px Inter, Arial, sans-serif; color: #111827; }
@media (max-width: 560px) { .us-grid { grid-template-columns: 1fr; } .us-mods { margin-left: 0; } }
.us-pend { border-color: #FDE68A; }
.us-pend-n { display: inline-block; min-width: 22px; padding: 1px 7px; border-radius: 11px; background: #FEF3C7; color: #92400E; font-size: 12px; text-align: center; vertical-align: 2px; }
.us-pend-barra { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin: 4px 0 8px; }
.us-btn-rem { background: #B42318; border-color: #B42318; } .us-btn-rem:hover { background: #912018; border-color: #912018; }
.us-pend-lista { max-height: 520px; overflow: auto; }

/* Abas do painel da empresa */
.pn-abas { display: flex; gap: 4px; border-bottom: 1px solid #E5E7EB; margin: -4px 0 16px; overflow-x: auto; }
.pn-abas a { padding: 9px 14px; font: 600 13px Inter, Arial, sans-serif; color: #6B7280; text-decoration: none; border-bottom: 2px solid transparent; margin-bottom: -1px; white-space: nowrap; transition: color .15s, border-color .15s; }
.pn-abas a:hover { color: var(--teal-dark); }
.pn-abas a.on { color: var(--teal-deeper); border-bottom-color: var(--teal); }

/* DRE gerencial */
.dre-aviso { background: #FFFBEB; border: 1px solid #FDE68A; color: #78350F; border-radius: 10px; padding: 10px 14px; font-size: 13px; margin-bottom: 16px; }
.dre-aviso a { font-weight: 600; margin-left: 6px; }
.dre-cab { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; flex-wrap: wrap; }
.dre-modos { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.dre-modos button[data-modo], .dre-tudo { background: #F3F4F6; border: 1px solid transparent; border-radius: 20px; padding: 5px 12px; font: 600 12.5px Inter, Arial, sans-serif; color: #4B5563; cursor: pointer; }
.dre-modos button.on { background: #E6F4F4; border-color: var(--teal); color: var(--teal-deeper); }
.dre-tudo { background: #fff; border-color: #D1D5DB; }
.dre-scroll { overflow-x: auto; margin: 0 -18px; padding: 0 18px; }
.dre-tab, .dre-sa { width: 100%; border-collapse: collapse; font: 12.5px/1.35 Inter, Arial, sans-serif; color: #1F2937; font-variant-numeric: tabular-nums; }
.dre-tab th, .dre-tab td, .dre-sa th, .dre-sa td { padding: 6px 8px; border-bottom: 1px solid #F1F2F4; white-space: nowrap; }
.dre-tab thead th, .dre-sa thead th { position: sticky; top: 0; background: #F6FAFA; color: #0D4A4D; font-weight: 600; border-bottom: 1px solid #D9E9E9; }
.dre-tab thead th small { display: block; font-weight: 400; color: #6B7280; font-size: 10.5px; }
.dre-tab tbody th, .dre-sa tbody th { text-align: left; font-weight: 400; }
.dre-tab tbody th { position: sticky; left: 0; background: #fff; z-index: 1; min-width: 250px; max-width: 320px; white-space: normal; }
.dre-tab thead th:first-child { position: sticky; left: 0; z-index: 2; }
.dre-tab .r, .dre-sa .r { text-align: right; }
.dre-tab td.parcial, .dre-tab th.parcial { background: #FAFAFA; color: #6B7280; }
.dre-tab td.total12, .dre-tab th.total12 { background: #F3F8F8; font-weight: 600; border-left: 1px solid #D9E9E9; border-right: 1px solid #D9E9E9; }
.dre-tab tr.dre-grupo th, .dre-sa tr.dre-grupo th { font-weight: 600; }
.dre-tab tr.dre-total th, .dre-tab tr.dre-total td, .dre-sa tr.dre-total th, .dre-sa tr.dre-total td { font-weight: 600; border-top: 1px solid #D1D5DB; }
.dre-tab tr.dre-destaque th, .dre-tab tr.dre-destaque td, .dre-sa tr.dre-destaque th, .dre-sa tr.dre-destaque td { font-weight: 700; background: #EEF7F7; border-top: 1px solid #BFDCDC; color: #0D4A4D; }
.dre-tab tr.dre-destaque th { background: #EEF7F7; }
.dre-tab tr.dre-destaque td.neg, .dre-sa tr.dre-destaque td.neg { color: #B42318; }
.dre-tab tr.nv1 th { padding-left: 26px; color: #374151; }
.dre-tab tr.nv2 th { padding-left: 46px; color: #6B7280; font-size: 12px; }
.dre-tab tr.nv2 td { color: #6B7280; font-size: 12px; }
.dre-tab td.neg, .dre-sa td.neg { color: #9A3412; }
.dre-abre { border: 0; background: none; width: 18px; padding: 0; margin-right: 2px; color: var(--teal); cursor: pointer; font-size: 11px; transition: transform .15s; }
.dre-abre[aria-expanded="true"] { transform: rotate(90deg); }
.dre-esp { display: inline-block; width: 20px; }
.dre-tab tr:has(.dre-abre) { cursor: pointer; }
.dre-tab tbody tr:hover th, .dre-tab tbody tr:hover td { background: #F9FBFB; }
.dre-tab .m-av, .dre-tab .m-ah { display: none; }
.dre-tab.modo-av .m-v, .dre-tab.modo-ah .m-v { display: none; }
.dre-tab.modo-av .m-av, .dre-tab.modo-ah .m-ah { display: inline; }
.dre-fora tr th, .dre-fora tr td { color: #9CA3AF; }
.dre-fora .dre-sep th { position: static; background: #FAFAFA; font: 600 11px Inter, Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; color: #6B7280; padding-top: 14px; }
.dre-sa td.av, .dre-sa td.ah { color: #6B7280; font-size: 12px; }
.dre-tab.modo-ah td.neg { color: #6B7280; }   /* no AH a cor vem da variação (favorável/desfavorável), não do sinal do valor */
.ah-fav { color: #067647; }
.ah-desf { color: #B42318; }
.dre-tab td .ah-fav, .dre-sa td .ah-fav, .pn-panel small .ah-fav { color: #067647; font-weight: 600; }
.dre-tab td .ah-desf, .dre-sa td .ah-desf, .pn-panel small .ah-desf { color: #B42318; font-weight: 600; }
.dre-sa thead th:first-child { min-width: 200px; }
.dp-tab select { border: 1px solid #D1D5DB; border-radius: 8px; padding: 6px 8px; font: 13px Inter, Arial, sans-serif; max-width: 320px; }
.dp-tab tr.dp-sug td { background: #FFFBEB; }
.dp-tab tr.dp-mudou td { background: #ECFDF3; }
.dp-tag { display: inline-block; margin-left: 6px; color: #B45309; font-weight: 600; font-size: 11px; }
@media (max-width: 560px) { .dre-tab tbody th { min-width: 170px; } }
.pn .pn-sa { margin-bottom: 16px; }
.pn-sa .dre-sa thead th:first-child { min-width: 280px; }
.dre-box { margin-bottom: 16px; }

/* ===== Painéis Resumo e mercado / Por trimestre ===== */
.pg-legenda { display: flex; flex-wrap: wrap; gap: 14px; font-size: 12px; color: #4B5563; margin: -2px 0 6px; }
.pg-legenda span { display: inline-flex; align-items: center; gap: 6px; }
.pg-legenda i { width: 10px; height: 10px; border-radius: 2px; display: inline-block; }
.pn-abas a.pn-aba-consultor small { font: 500 10px Inter, Arial, sans-serif; text-transform: uppercase; letter-spacing: .06em; color: #9CA3AF; margin-left: 4px; }
.rs-leitura ul { margin: 0; padding-left: 18px; font-size: 14px; line-height: 1.55; color: #374151; }
.rs-leitura li + li { margin-top: 6px; }
.rs-tab th small, .tri-tab th small { display: block; font-weight: 400; font-size: 11px; color: #9CA3AF; text-transform: none; letter-spacing: 0; }
.rs-tab tr.rs-atual { background: #F0FAFA; }
.rs-tab td, .tri-tab td { font-variant-numeric: tabular-nums; white-space: nowrap; }
.rs-tab sup { color: #9CA3AF; cursor: help; }
.tri-tab td small { display: block; font-size: 11px; color: #6B7280; }
.tri-tab td small.pn-neg { color: #B4532A; }
.tri-tab tr.tri-destaque th, .tri-tab tr.tri-destaque td { font-weight: 600; }
.tri-tab tr.tri-margem th, .tri-tab tr.tri-margem td { color: #4B5563; background: #FAFAFA; }
.tri-tab .tri-acum { border-left: 2px solid #E5E7EB; }
.rs-macro { margin: 8px 2px 0; }

/* ===== Setores e pontuação ===== */
.dr-ajuda { display: block; font-size: 11px; color: #6B7280; margin-top: 4px; }
.st-explica { font-size: 13px; color: #4B5563; margin: 0; line-height: 1.5; }
.st-tab td small { color: #6B7280; }
.st-faixas { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
.st-faixas fieldset { border: 1px solid #E5E7EB; border-radius: 10px; padding: 10px 14px 12px; margin: 0; }
.st-faixas legend { font: 600 13px Inter, Arial, sans-serif; padding: 0 6px; width: auto; border: 0; margin: 0; color: #111827; }
.st-faixas legend small { display: block; font-weight: 400; font-size: 11px; color: #6B7280; }
.st-faixas label { display: grid; grid-template-columns: 1fr 90px; align-items: center; gap: 2px 10px; font-size: 13px; color: #374151; margin: 8px 0 0; font-weight: 500; }
.st-faixas label input { grid-column: 2; grid-row: 1; padding: 5px 8px; border: 1px solid #D1D5DB; border-radius: 6px; text-align: right; }
.st-faixas label small { grid-column: 1; font-size: 11px; color: #9CA3AF; font-weight: 400; }
.st-soma { margin: 12px 0 0; font-size: 13px; }
.pt-topo { display: flex; gap: 24px; align-items: center; flex-wrap: wrap; }
.pt-nota { font: 600 56px/1 "Source Serif 4", Georgia, serif; color: #111827; }
.pt-nota small { font: 500 16px Inter, Arial, sans-serif; color: #9CA3AF; }
.pt-topo p { margin: 4px 0 0; font-size: 13px; color: #4B5563; max-width: 640px; }
.pt-barra { height: 10px; background: #F3F4F6; border-radius: 999px; overflow: hidden; display: flex; margin: 14px 0 6px; }
.pt-barra span { display: block; height: 100%; }
.pt-itens { display: grid; gap: 12px; }
.pt-item { border: 1px solid #E5E7EB; border-radius: 12px; padding: 14px 16px; display: grid; grid-template-columns: 1fr 220px; gap: 10px 20px; }
.pt-item h5 { margin: 0; font: 600 15px Inter, Arial, sans-serif; color: #111827; }
.pt-item h5 small { font-weight: 400; color: #6B7280; font-size: 12px; margin-left: 6px; }
.pt-item .pt-como { font-size: 12px; color: #6B7280; margin: 2px 0 8px; }
.pt-item .pt-acao { font-size: 14px; color: #1F2937; margin: 0; }
.pt-item.pt-ok .pt-acao { color: #0E7C7C; }
.pt-pts { text-align: right; }
.pt-pts b { font: 600 24px Inter, Arial, sans-serif; color: #111827; }
.pt-pts b small { font-size: 13px; color: #9CA3AF; font-weight: 500; }
.pt-regua { position: relative; height: 6px; background: linear-gradient(90deg, #F2C9B8, #F3F4F6 50%, #A7DADA); border-radius: 999px; margin: 10px 0 4px; }
.pt-regua i { position: absolute; top: -4px; width: 14px; height: 14px; border-radius: 50%; background: #0E9494; border: 2px solid #fff; box-shadow: 0 0 0 1px #0E9494; transform: translateX(-50%); }
.pt-regua-rot { display: flex; justify-content: space-between; font-size: 11px; color: #9CA3AF; }
.pt-ganho { display: inline-block; margin-top: 6px; font-size: 12px; color: #B4532A; font-weight: 600; }
@media (max-width: 720px) { .pt-item { grid-template-columns: 1fr; } .pt-pts { text-align: left; } }
.st-tab td.r { white-space: nowrap; }
.st-fonte { grid-column: 1 / -1; }
.st-fonte textarea { width: 100%; padding: 8px 10px; border: 1px solid #D1D5DB; border-radius: 8px; font: 13px Inter, Arial, sans-serif; margin-top: 4px; }
.st-det { margin-top: 4px; } .st-det summary { font-size: 11px; color: #0E7C7C; cursor: pointer; } .st-det small { display: block; max-width: 520px; line-height: 1.45; margin-top: 2px; }
.st-fonte select { width: 100%; border: 1px solid #D1D5DB; border-radius: 8px; padding: 4px; font-size: 13px; margin-top: 4px; }
.st-fonte > small { font-weight: 400; color: #6B7280; font-size: 11px; margin-left: 6px; }
.st-auto { color: #6B7280; font-size: 11px; }
.st-ref .pn-kpis { margin-bottom: 10px; }
.st-ref form { margin-top: 10px; }

/* ===== Auditoria · conciliação bancária ===== */
.au-form { display: grid; grid-template-columns: 1fr 1fr auto; gap: 12px 16px; align-items: end; }
.au-form label { display: flex; flex-direction: column; gap: 4px; font: 600 13px Inter, Arial, sans-serif; color: #374151; margin: 0; }
.au-form label small { font-weight: 400; color: #9CA3AF; font-size: 11px; }
.au-form input[type=file], .au-form select, .au-liga select { padding: 6px 8px; border: 1px solid #D1D5DB; border-radius: 8px; font: 13px Inter, Arial, sans-serif; background: #fff; }
.au-liga form { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; font-size: 13px; color: #374151; }
.au-alerta { color: #B45309; font-size: 12px; }
.pn-abas a small { font-weight: 400; color: #9CA3AF; font-size: 11px; margin-left: 4px; }
.au-meses tbody tr { cursor: pointer; } .au-meses tr.au-sel { background: #F0FAFA; }
.au-meses td small { color: #6B7280; }
.au-barra { display: flex; height: 10px; width: 140px; border-radius: 999px; overflow: hidden; background: #F3F4F6; }
.au-conciliado { background: #0E9494; } .au-divergente { background: #D9774F; } .au-sem_extrato { background: #F2C14E; } .au-sem_mov { background: #E5E7EB; } .au-futuro { background: #FAFAFA; }
.au-legenda { display: flex; flex-wrap: wrap; gap: 14px; font-size: 12px; color: #4B5563; margin-bottom: 10px; }
.au-legenda span { display: inline-flex; align-items: center; gap: 6px; } .au-legenda i { width: 12px; height: 12px; border-radius: 3px; display: inline-block; }
.au-cal { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; }
.au-ds { font: 600 11px Inter, Arial, sans-serif; color: #9CA3AF; text-align: center; text-transform: uppercase; letter-spacing: .05em; }
.au-dia { display: flex; flex-direction: column; justify-content: space-between; min-height: 58px; padding: 6px 8px; border-radius: 8px; text-decoration: none !important; color: #111827; }
.au-dia b { font: 600 14px Inter, Arial, sans-serif; } .au-dia small { font-size: 11px; }
.au-dia.au-conciliado { background: #D7EFEF; color: #0B6F6F; } .au-dia.au-divergente { background: #F8DCCF; color: #8A3A1A; }
.au-dia.au-sem_extrato { background: #FBEFC8; color: #7A5B07; } .au-dia.au-sem_mov { background: #F7F7F8; color: #9CA3AF; } .au-dia.au-futuro { background: transparent; color: #D1D5DB; border: 1px dashed #E5E7EB; }
.au-dia:hover { outline: 2px solid #0E9494; }
.au-lista td { font-size: 13px; } .au-lista td:first-child { white-space: nowrap; color: #6B7280; }
.au-cont { display: inline-block; background: #F3F4F6; border-radius: 999px; padding: 0 8px; font-size: 12px; color: #4B5563; margin-left: 4px; }
@media (max-width: 760px) { .au-form { grid-template-columns: 1fr; } .au-dia { min-height: 44px; padding: 4px; } .au-dia small { display: none; } }
.au-so-compara { margin: -4px 0 12px; font-size: 13px; color: #0B6F6F; background: #F0FAFA; border-radius: 8px; padding: 8px 12px; }

/* ---------- Setores: dados do setor e fontes ---------- */
.st-filtros { display: flex; gap: 12px; flex-wrap: wrap; align-items: flex-end; }
.st-grupo { font: 600 15px Inter, Arial, sans-serif; color: #111827; margin: 22px 0 10px; }
.st-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(380px, 1fr)); gap: 16px; }
.st-cards .pn-panel { margin: 0; display: flex; flex-direction: column; }
.st-ind header small { display: block; color: #6B7280; font-size: 12px; margin-top: 2px; }
.st-atual { display: flex; gap: 20px; flex-wrap: wrap; margin: 6px 0 8px; }
.st-atual > div { display: flex; flex-direction: column; min-width: 110px; }
.st-atual small { font-size: 11px; color: #6B7280; text-transform: uppercase; letter-spacing: .03em; }
.st-atual b { font: 600 22px Inter, Arial, sans-serif; color: #111827; line-height: 1.25; }
.st-atual em { font-style: normal; font-size: 12px; color: #4B5563; }
.st-atual .st-pos { color: #0E7C5A; } .st-atual .st-neg { color: #C2410C; }
.st-legenda-graf { font-size: 11px; color: #6B7280; margin: 4px 0 0; }
.st-fonte-ind { margin-top: auto; padding-top: 8px; font-size: 11px; color: #9CA3AF; border-top: 1px solid #F3F4F6; }
.st-indic { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
.st-indic fieldset { border: 1px solid #E5E7EB; border-radius: 10px; padding: 8px 14px 10px; margin: 0; }
.st-indic legend { font: 600 13px Inter, Arial, sans-serif; padding: 0 6px; width: auto; border: 0; margin: 0; color: #111827; }
.st-indic label { display: block; font-weight: 500; font-size: 13px; margin: 6px 0 0; }
.st-indic label small { color: #9CA3AF; font-weight: 400; font-size: 11px; }
.pn-tabela tr.pn-sep th { background: #F9FAFB; font: 600 12px Inter, Arial, sans-serif; text-transform: uppercase; letter-spacing: .04em; color: #6B7280; }
@media (max-width: 600px) { .st-cards { grid-template-columns: 1fr; } .st-atual b { font-size: 19px; } }

/* Painel personalizado · Comercial e CRM */
.crm-config { padding: 12px 18px; }
.crm-config summary { cursor: pointer; font-size: 13px; color: #374151; }
.crm-config-form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 14px; margin-top: 12px; }
.crm-config-form label { display: flex; flex-direction: column; gap: 4px; font-size: 12px; color: #6B7280; margin: 0; }
.crm-config-form label.crm-check { flex-direction: row; align-items: center; gap: 6px; color: #374151; font-size: 13px; }
.crm-config-form select, .crm-config-form input[type=month] { border: 1px solid #D1D5DB; border-radius: 6px; padding: 6px 8px; font-size: 13px; }
.crm-config-form small { flex-basis: 100%; color: #6B7280; }
.crm-leitura { margin: 0; padding-left: 18px; }
.crm-leitura li { margin: 4px 0; line-height: 1.5; }
.crm-resgate-acao { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 0 0 12px; font-size: 12px; color: #6B7280; }
.crm-resgate { border: 1px solid #E5E7EB; border-radius: 8px; padding: 8px 12px; margin-bottom: 8px; }
.crm-resgate summary { cursor: pointer; font-size: 13px; color: #374151; }
.crm-resgate .crm-qtd { float: right; background: #E6F4F4; color: #0B6E6E; border-radius: 10px; padding: 1px 8px; font-weight: 600; font-size: 12px; }
.crm-resgate table { margin-top: 8px; }
.us-mods-tit { flex-basis: 100%; color: #6B7280; font-size: 11.5px; margin-top: 4px; }

/* painel personalizado: produção e compras (OFs) */
.pn .pn-tabela tr.pn-sel > * { background: #F0F8F8; }
.pn .pn-tabela th a { color: inherit; text-decoration: underline dotted; }
.pn-sub { font: 600 13px Inter, Arial, sans-serif; color: #374151; margin: 14px 0 8px; }
.pn-rolagem { max-height: 520px; overflow-y: auto; }
.pn-rolagem-p { max-height: 300px; overflow-y: auto; }
.pn-rolagem thead th, .pn-rolagem-p thead th { position: sticky; top: 0; background: #fff; z-index: 1; }
.prd-obs { display: block; color: #6B7280; font-size: 12px; margin: 4px 0 8px; }
.prd-leitura { font-size: 13px; color: #374151; margin: 8px 0 0; line-height: 1.5; }
.crm-config-form input[type=text] { border: 1px solid #D1D5DB; border-radius: 6px; padding: 6px 8px; font-size: 13px; }
.pn .pn-tabela td.r { white-space: nowrap; }
.crm-alerta { background: #FDF3EC; border-left: 3px solid #D9774F; padding: 8px 12px; font-size: 13px; color: #7A3E1F; margin: 0 0 12px; border-radius: 4px; }
.pn-subabas { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0 0 18px; }
.pn-subabas a { display: flex; align-items: center; gap: 12px; padding: 14px 18px; border: 2px solid #D7E3E3; border-radius: 12px; background: #fff; text-decoration: none; color: #374151; transition: border-color .15s, background .15s; }
.pn-subabas a:hover { border-color: var(--teal); }
.pn-subabas a b { display: block; font: 700 15px Inter, Arial, sans-serif; color: #1F2937; }
.pn-subabas a small { display: block; font: 400 12px Inter, Arial, sans-serif; color: #6B7280; margin-top: 2px; }
.pn-subaba-n { flex: 0 0 34px; height: 34px; border-radius: 50%; background: #E6F2F2; color: var(--teal-deeper); font: 700 15px Inter, Arial, sans-serif; display: flex; align-items: center; justify-content: center; }
.pn-subabas a.on { border-color: var(--teal); background: #F0F8F8; box-shadow: 0 2px 6px rgba(14,148,148,.15); }
.pn-subabas a.on .pn-subaba-n { background: var(--teal); color: #fff; }
.pn-subabas a.on b { color: var(--teal-deeper); }
@media (max-width: 700px) { .pn-subabas { grid-template-columns: 1fr; } }
.pn .pn-tabela tr.prd-apagado > * { color: #9CA3AF; }
.pn .pn-tabela tr.prd-sugerida td:first-child { font-style: italic; }
.pn-vazio-i { color: #9CA3AF; }
.pn-agora { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 8px; }
.pn-agora-btn { padding: 5px 12px !important; font-size: 12px !important; }
.pn-agora-txt { font-size: 12px; color: #6B7280; }

.dp-tag.dp-tag-sis { color: #6B7280; font-weight: 500; }
.dp-tag.dp-tag-man { color: var(--teal-deeper); }

/* ---------- Topo e marca (2026-10) ---------- */
.nav-md .nav_title { height: auto; padding: 22px 12px 18px; display: flex; align-items: center; justify-content: center; border-bottom: 1px solid rgba(255,255,255,.08) !important; }
.nav-md .site_title.dr-marca, .site_title.dr-marca { display: flex; flex-direction: column; align-items: center; gap: 10px; justify-content: center; height: auto; padding: 0; line-height: 1; text-decoration: none; width: 100%; }
.dr-marca-ico { height: 58px; width: auto; opacity: .95; flex: 0 0 auto; }
.site_title.dr-marca .dr-marca-txt { display: flex; flex-direction: column; align-items: center; }
.site_title.dr-marca strong { font-family: 'Inter', Arial, sans-serif; font-weight: 700; font-size: 30px; letter-spacing: -.01em; color: #fff; }
.site_title.dr-marca small { font-family: 'Inter', Arial, sans-serif; font-size: 11px; font-weight: 600; letter-spacing: .34em; text-transform: uppercase; color: var(--teal-glow); margin-top: 7px; padding-left: .34em; }
.nav-sm .nav_title { height: 64px; padding: 0; display: flex; align-items: center; justify-content: center; }
.nav-sm .site_title.dr-marca { justify-content: center; }
.nav-sm .dr-marca-txt { display: none !important; }
.nav-sm .dr-marca-ico { height: 26px; }
.menu_section h3 { margin-top: 18px !important; }

/* itens do menu: seta sempre na mesma linha, à direita */
.nav-md .nav.side-menu > li > a { display: flex; align-items: center; gap: 2px; white-space: nowrap; letter-spacing: -.005em; }
.nav-md .nav.side-menu > li > a > span.fa { float: none !important; margin-left: auto; padding-left: 8px; font-size: 10px; opacity: .7; }

.top_nav .nav_menu { height: 64px; display: flex; align-items: center; padding: 0 12px 0 6px; border-bottom: 1px solid #E5E7EB; box-shadow: none; }
.top_nav .nav_menu > nav { width: 100%; display: flex; align-items: center; }
.top_nav .nav.toggle { padding: 0; margin: 0; float: none; }
.top_nav .toggle a { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 10px; padding: 0 !important; margin: 0 !important; font-size: 20px; color: var(--teal-dark); }
.top_nav .toggle a:hover { background: #EEF5F5; }
.top_nav .navbar-right { margin: 0 0 0 auto !important; display: flex; align-items: center; gap: 6px; float: none !important; flex-direction: row-reverse; }
.top_nav .navbar-right > li { float: none; }
.top_nav .nav > li > a.dr-sino { width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center; padding: 0 !important; color: #4B5563 !important; }
.top_nav .nav > li > a.dr-user { display: flex; align-items: center; gap: 10px; padding: 5px 10px 5px 6px !important; border-radius: 12px; border: 1px solid transparent; }
.top_nav .nav > li > a.dr-user:hover, .top_nav .nav .open > a.dr-user { background: #F4F8F8 !important; border-color: #E2ECEC; }
.dr-avatar { width: 34px; height: 34px; border-radius: 50%; background: linear-gradient(135deg, var(--teal) 0%, var(--teal-deeper) 100%); color: #fff; font: 700 13px Inter, Arial, sans-serif; display: flex; align-items: center; justify-content: center; letter-spacing: .02em; flex: 0 0 auto; }
.dr-user-txt { display: flex; flex-direction: column; line-height: 1.15; text-align: left; }
.dr-user-txt b { font: 600 13px Inter, Arial, sans-serif; color: #1F2937; max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dr-user-txt small { font: 500 10.5px Inter, Arial, sans-serif; color: #6B7280; text-transform: uppercase; letter-spacing: .08em; margin-top: 2px; }
.dr-user .fa-angle-down { color: #9CA3AF; font-size: 14px; }
.dr-user-menu { min-width: 220px !important; padding: 6px !important; margin-top: 8px !important; }
.dr-user-menu > li.dr-user-cab { padding: 8px 12px 10px; border-bottom: 1px solid #EEF0F2; margin-bottom: 4px; display: flex; flex-direction: column; }
.dr-user-menu > li.dr-user-cab b { font: 600 13px Inter, Arial, sans-serif; color: #111827; }
.dr-user-menu > li.dr-user-cab small { font: 500 11px Inter, Arial, sans-serif; color: #6B7280; }
.dr-user-menu > li > a { border-radius: 8px; padding: 9px 12px !important; font: 500 13px Inter, Arial, sans-serif; display: flex !important; align-items: center; gap: 10px; color: #374151 !important; }
.dr-user-menu > li > a .fa { width: 16px; text-align: center; color: #6B7280; }
@media (max-width: 767px) {
  .dr-user-txt, .dr-user .fa-angle-down { display: none; }
  .top_nav .nav > li > a.dr-user { padding: 4px !important; }
}

/* ---------- Meu perfil ---------- */
.dr-avatar img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; display: block; }
.pf-cab { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; padding: 24px !important; }
.pf-foto-wrap { position: relative; flex: 0 0 auto; }
.pf-foto { width: 120px; height: 120px; border-radius: 50%; overflow: hidden; background: linear-gradient(135deg, var(--teal) 0%, var(--teal-deeper) 100%); display: flex; align-items: center; justify-content: center; box-shadow: 0 0 0 4px #fff, 0 0 0 5px #DCE8E8; }
.pf-foto img { width: 100%; height: 100%; object-fit: cover; }
.pf-foto span { color: #fff; font: 700 38px Inter, Arial, sans-serif; letter-spacing: .02em; }
.pf-foto-btn { position: absolute; right: 2px; bottom: 2px; width: 36px; height: 36px; border-radius: 50%; background: #fff; border: 1px solid #D1D5DB; display: flex; align-items: center; justify-content: center; color: var(--teal-dark); cursor: pointer; margin: 0; box-shadow: 0 2px 6px rgba(0,0,0,.12); }
.pf-cab-txt { flex: 1 1 320px; min-width: 0; }
.pf-cab-txt h2 { font-family: 'Merriweather', Georgia, serif; font-size: 26px; margin: 0 0 4px; color: #111827; }
.pf-cab-txt p { margin: 0 0 10px; color: #4B5563; font-size: 14px; min-height: 1em; }
.pf-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.pf-chip { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; background: #F3F4F6; color: #374151; font: 500 12px Inter, Arial, sans-serif; }
.pf-chip-papel { background: #E6F2F2; color: var(--teal-deeper); text-transform: uppercase; letter-spacing: .08em; font-size: 11px; font-weight: 700; }
.pf-foto-acoes { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.pf-foto-acoes label.pn-btn { margin: 0; cursor: pointer; }
.pf-foto-acoes small { color: #6B7280; font-size: 12px; }
.pf-link { background: none; border: 0; color: #B4532A; font-size: 13px; padding: 0; text-decoration: underline; }
.pf-numeros { display: flex; gap: 10px; flex: 0 0 auto; }
.pf-numeros > div { min-width: 120px; padding: 12px 14px; border: 1px solid #E5E7EB; border-radius: 12px; background: #FAFBFB; }
.pf-numeros b { display: block; font: 600 20px 'Merriweather', Georgia, serif; color: #111827; }
.pf-numeros small { color: #6B7280; font-size: 11.5px; }
.pf-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 14px; }
.pf-grid label { display: flex; flex-direction: column; gap: 5px; margin: 0; font: 600 12px Inter, Arial, sans-serif; color: #4B5563; }
.pf-grid label.pf-largo { grid-column: 1 / -1; }
.pf-grid input, .pf-grid textarea { width: 100%; box-sizing: border-box; border: 1px solid #D1D5DB; border-radius: 8px; padding: 9px 11px; font: 400 14px Inter, Arial, sans-serif; color: #111827; background: #fff; }
.pf-grid input:focus, .pf-grid textarea:focus { outline: none; border-color: var(--teal); box-shadow: 0 0 0 3px rgba(14,148,148,.12); }
.pf-grid input:disabled { background: #F3F4F6; color: #6B7280; }
.pf-grid small { font-weight: 400; color: #9CA3AF; font-size: 11.5px; }
.pf-cartao { display: flex; gap: 18px; align-items: flex-start; padding: 18px; border: 1px solid #E5E7EB; border-radius: 14px; max-width: 720px; background: #fff; }
.pf-foto.pf-foto-p { width: 72px; height: 72px; flex: 0 0 auto; box-shadow: none; }
.pf-foto.pf-foto-p span { font-size: 24px; }
.pf-cartao-txt b { display: block; font: 600 16px Inter, Arial, sans-serif; color: #111827; }
.pf-cartao-txt small { color: #6B7280; font-size: 12.5px; }
.pf-cartao-txt p { margin: 10px 0 0; color: #374151; font-size: 13.5px; line-height: 1.55; }
.pf-cartao-acoes { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.pf-cartao-acoes .pn-btn { padding: 6px 12px !important; font-size: 12.5px !important; }
.pf-salvar { display: flex; justify-content: flex-end; margin: 4px 0 24px; }
.pf-salvar .pn-btn { padding: 10px 26px !important; font-size: 14px !important; }
@media (max-width: 760px) { .pf-grid { grid-template-columns: 1fr; } .pf-numeros { width: 100%; } .pf-numeros > div { flex: 1; min-width: 0; } }
/* filtro em pílulas (sub-aba de obras) */
.pn-filtro { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 12px; }
.pn-filtro a { padding: 5px 12px; border: 1px solid #D7E3E3; border-radius: 999px; font-size: 13px; color: #374151; text-decoration: none; background: #fff; }
.pn-filtro a small { color: #6B7280; margin-left: 4px; }
.pn-filtro a.on { background: var(--teal); border-color: var(--teal); color: #fff; }
.pn-filtro a.on small { color: #E6F2F2; }
/* barra lateral: a área de rolagem passava 4px da coluna (230px) e criava um degrau no fim da barra */
.nav-md .left_col .scroll-view { width: 230px !important; overflow-x: hidden; }
/* análises: pontos de atenção, documento, cenário e planos (BSC) */
.an-prio { display: inline-block; padding: 2px 8px; border-radius: 4px; font: 700 10px Inter, Arial, sans-serif; letter-spacing: .04em; }
.an-prio-alta { background: #FDE2E2; color: #B42318; } .an-prio-media { background: #FEF3C7; color: #92400E; } .an-prio-baixa { background: #E6F2F2; color: #0F5E5E; }
.an-sit { display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 12px; background: #F3F4F6; color: #374151; white-space: nowrap; }
.an-sit.an-n { background: #FDE2E2; color: #B42318; } .an-sit.an-a { background: #FEF3C7; color: #92400E; } .an-sit.an-p { background: #E0F2FE; color: #075985; } .an-sit.an-r { background: #DCFCE7; color: #166534; }
.an-doc { font-size: 14px; line-height: 1.6; color: #1F2937; max-width: 920px; }
.an-doc h2, .an-doc h3 { font: 700 16px Inter, Arial, sans-serif; color: #0F5E5E; margin: 18px 0 8px; } .an-doc h4 { font: 700 14px Inter, Arial, sans-serif; margin: 14px 0 6px; }
.an-doc table { border-collapse: collapse; margin: 8px 0 12px; font-size: 13px; } .an-doc th, .an-doc td { border-bottom: 1px solid #E5E7EB; padding: 5px 10px; text-align: right; } .an-doc th:first-child { text-align: left; }
.an-doc thead th { background: #E6F2F2; } .an-doc ul, .an-doc ol { padding-left: 20px; } .an-doc blockquote { border-left: 3px solid #0E9494; margin: 8px 0; padding: 4px 12px; color: #374151; background: #F0F8F8; }
.an-doc.an-editando { outline: 2px dashed #0E9494; outline-offset: 6px; padding: 4px; }
.an-rodape { margin-top: 14px; border-top: 1px solid #E5E7EB; padding-top: 12px; }
.an-cen { display: grid; grid-template-columns: minmax(260px, 340px) 1fr; gap: 24px; align-items: start; }
.an-cen-in label { display: block; font-size: 13px; color: #374151; margin-bottom: 10px; } .an-cen-in label span { display: block; margin-top: 3px; }
.an-cen-in input[type=number] { width: 90px; border: 1px solid #D1D5DB; border-radius: 6px; padding: 5px 8px; } .an-cen-in textarea, .an-estr { width: 100%; border: 1px solid #D1D5DB; border-radius: 6px; padding: 8px; font-size: 13px; }
@media (max-width: 900px) { .an-cen { grid-template-columns: 1fr; } }
.an-bsc { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; } @media (max-width: 1100px) { .an-bsc { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 640px) { .an-bsc { grid-template-columns: 1fr; } }
.an-bsc-col h5 { font: 700 13px Inter, Arial, sans-serif; text-transform: uppercase; letter-spacing: .05em; color: #0F5E5E; border-bottom: 2px solid #0E9494; padding-bottom: 6px; }
.an-plano { border: 1px solid #E5E7EB; border-left: 4px solid #F59E0B; border-radius: 8px; padding: 10px 12px; margin-bottom: 10px; background: #fff; font-size: 13px; }
.an-plano p { margin: 4px 0 6px; } .an-plano small { color: #6B7280; } .an-plano-E { border-left-color: #0EA5E9; } .an-plano-C { border-left-color: #16A34A; opacity: .8; } .an-plano-X { border-left-color: #9CA3AF; opacity: .6; }
.an-plano-form { display: grid; gap: 6px; margin-top: 8px; } .an-plano-form input, .an-plano-form select, .an-plano-form textarea { border: 1px solid #D1D5DB; border-radius: 6px; padding: 5px 8px; font-size: 13px; width: 100%; }
.an-novo { margin-top: 10px; } .an-novo summary, .an-plano summary { cursor: pointer; color: #0E7C7C; font-size: 13px; }
.an-diretrizes { display: block; width: 100%; font-size: 13px; } .an-diretrizes textarea { display: block; width: 100%; margin-top: 4px; border: 1px solid #D1D5DB; border-radius: 6px; padding: 8px; font: 13px/1.5 Inter, Arial, sans-serif; }
.kb-faixa { background: #F0F8F8; border: 1px solid #D7E3E3; border-radius: 8px; padding: 10px 14px; font-size: 13px; margin: 0 0 14px; }
.kb-item { border: 1px solid #E5E7EB; border-left: 4px solid #0E9494; border-radius: 8px; padding: 10px 14px; margin-bottom: 10px; background: #fff; }
.kb-item.kb-diretriz { border-left-color: #0F5E5E; } .kb-item.kb-fato { border-left-color: #0EA5E9; } .kb-item.kb-aprendizado { border-left-color: #F59E0B; }
.kb-cab { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; font-size: 13px; } .kb-cab small { color: #6B7280; }
.kb-texto { font-size: 13px; line-height: 1.55; color: #1F2937; margin: 8px 0; } .kb-acoes { display: flex; gap: 12px; align-items: flex-start; flex-wrap: wrap; }
.kb-acoes details { flex: 1 1 320px; } .kb-acoes summary { cursor: pointer; color: #0E7C7C; font-size: 13px; padding-top: 6px; }
.kb-linha { display: flex; gap: 6px; flex-wrap: wrap; } .kb-linha select { width: auto; flex: 1 1 160px; }
/* painel: ponto de atenção clicável → análise; análise: situação agora e títulos vencidos */
.pn-acoes a.pn-acao-link{color:inherit;text-decoration:none}
.pn-acoes a.pn-acao-link:hover{color:var(--teal-700,#0f766e);text-decoration:underline}
.pn-acoes a.pn-acao-link .fa{color:var(--teal-700,#0f766e);margin-left:2px}
.an-agora{margin:0 0 10px;font-size:13.5px}
.an-tabela{overflow-x:auto}
.an-tabela table{width:100%;border-collapse:collapse;font-size:12.5px}
.an-tabela th,.an-tabela td{padding:6px 8px;border-bottom:1px solid var(--gray-200,#e5e7eb);text-align:left;white-space:nowrap}
.an-tabela th{background:var(--gray-50,#f9fafb);font-weight:600}
.an-tabela .num{text-align:right}
.an-tabela tfoot td{border-bottom:0;font-weight:600}
/* simulador de cenários */
.sim-editando { background: #F0FDFA; border: 1px solid #99F6E4; border-radius: 8px; padding: 8px 12px; font-size: 13px; }
.sim-alerta { width: 100%; max-width: 900px; border: 1px solid #D1D5DB; border-radius: 6px; padding: 7px 8px; font-size: 13px; }
.sim-dica { margin: 10px 0 0; background: #FFFBEB; border: 1px solid #FDE68A; border-radius: 8px; padding: 8px 12px; font-size: 13px; }
.sim-grid { display: grid; grid-template-columns: minmax(260px, 330px) 1fr; gap: 24px; align-items: start; margin-bottom: 14px; }
.sim-inputs label { display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 13px; color: #374151; margin-bottom: 9px; }
.sim-inputs label small { color: #6B7280; }
.sim-inputs input[type=number] { width: 84px; border: 1px solid #D1D5DB; border-radius: 6px; padding: 5px 8px; text-align: right; }
.sim-kpis { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.sim-kpis .pn-kpi b, .bsc-lado .pn-kpi b { display: block; font-size: 22px; font-weight: 600; margin: 4px 0 2px; }
.sim-kpis .pn-kpi em, .bsc-lado .pn-kpi em { font-style: normal; font-size: 12px; color: #6B7280; }
.sim-graf { border: 1px solid #E5E7EB; border-radius: 10px; padding: 10px 12px 4px; margin-bottom: 14px; }
.sim-graf svg { width: 100%; height: 260px; display: block; }
.sim-leg { display: flex; flex-wrap: wrap; gap: 16px; font-size: 12px; color: #4B5563; margin-bottom: 4px; }
.sim-leg span::before { content: ''; display: inline-block; width: 14px; height: 4px; border-radius: 2px; margin-right: 6px; vertical-align: middle; }
.sim-leg .l-real::before { background: #CBD5E1; height: 10px; } .sim-leg .l-base::before { background: #9CA3AF; } .sim-leg .l-cen::before { background: #0E9494; } .sim-leg .l-acum::before { background: #F59E0B; }
#sim-svg .sg-grade { stroke: #F1F5F9; } #sim-svg .sg-zero { stroke: #94A3B8; } #sim-svg .sg-hoje { stroke: #CBD5E1; stroke-dasharray: 4 3; }
#sim-svg .sg-eixo { font: 10.5px Inter, Arial, sans-serif; fill: #6B7280; }
#sim-svg .sg-real { fill: #CBD5E1; } #sim-svg .sg-real.neg { fill: #FCA5A5; }
#sim-svg path { fill: none; stroke-width: 2.2; } #sim-svg path.sg-base { stroke: #9CA3AF; stroke-dasharray: 5 4; } #sim-svg path.sg-cen { stroke: #0E9494; } #sim-svg path.sg-acum { stroke: #F59E0B; stroke-width: 1.6; }
#sim-svg circle.sg-base { fill: #9CA3AF; } #sim-svg circle.sg-cen { fill: #0E9494; } #sim-svg circle.sg-acum { fill: #F59E0B; }
.sim-ajustes { margin: 0 0 12px; padding-left: 18px; font-size: 13.5px; line-height: 1.6; } .sim-ajustes .pn-vazio { list-style: none; margin-left: -18px; }
.sim-tipo { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; font-size: 13px; } .sim-tipo select { border: 1px solid #D1D5DB; border-radius: 6px; padding: 5px 8px; margin-left: 6px; }
#sim-tipo-why { color: #0F5E5E; }
.sim-est label { display: block; font-size: 13px; color: #374151; margin-bottom: 10px; }
.sim-est input[type=text] { display: block; width: 100%; max-width: 700px; border: 1px solid #D1D5DB; border-radius: 6px; padding: 7px 8px; margin-top: 3px; }
.sim-est select { border: 1px solid #D1D5DB; border-radius: 6px; padding: 5px 8px; margin-left: 6px; }
@media (max-width: 900px) { .sim-grid { grid-template-columns: 1fr; } }
/* tipos de estratégia */
.an-sit.est-correcao { background: #FEF2F2; color: #B91C1C; } .an-sit.est-crescimento { background: #ECFDF5; color: #047857; }
.an-sit.est-expansao { background: #EFF6FF; color: #1D4ED8; } .an-sit.est-eficiencia { background: #FFFBEB; color: #B45309; }
/* estratégias e BSC */
.bsc-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
.bsc-card { display: flex; flex-direction: column; gap: 5px; border: 1px solid #E5E7EB; border-radius: 10px; padding: 12px 14px; color: inherit; text-decoration: none; background: #fff; }
.bsc-card:hover { border-color: #0E9494; text-decoration: none; } .bsc-card.on { border-color: #0E9494; box-shadow: 0 0 0 2px #CCFBF1; } .bsc-card.off { opacity: .55; }
.bsc-card .an-sit { align-self: flex-start; } .bsc-card small { color: #6B7280; font-size: 12px; }
.bsc-prog { height: 6px; background: #F1F5F9; border-radius: 3px; overflow: hidden; } .bsc-prog i { display: block; height: 100%; background: #0E9494; }
.bsc-resumo { display: grid; grid-template-columns: 1fr 260px; gap: 24px; } .bsc-resumo h5 { font-weight: 700; font-size: 13px; margin: 14px 0 4px; color: #0F5E5E; }
.bsc-lado { display: flex; flex-direction: column; gap: 10px; } .bsc-status select { border: 1px solid #D1D5DB; border-radius: 6px; padding: 5px 8px; margin-left: 6px; }
.bsc-mapa { margin-top: 12px; } .bsc-mapa summary { cursor: pointer; font-weight: 600; color: #0F5E5E; }
@media (max-width: 900px) { .bsc-resumo { grid-template-columns: 1fr; } }
.an-est-lista { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.an-est-lista li { display: flex; flex-wrap: wrap; gap: 10px; align-items: baseline; font-size: 13px; } .an-est-lista small { color: #6B7280; }
/* releases */
.rel-linha { list-style: none; margin: 0; padding: 0; }
.rel-mes { font: 700 12px Inter, Arial, sans-serif; text-transform: uppercase; letter-spacing: .06em; color: #0F5E5E; margin: 18px 0 8px; }
.rel-mes:first-child { margin-top: 0; }
.rel-item { display: grid; grid-template-columns: 56px 1fr; gap: 14px; padding: 12px 0; border-bottom: 1px solid #F1F5F9; }
.rel-data { text-align: center; border-right: 2px solid #CCFBF1; padding-right: 10px; } .rel-data b { display: block; font-size: 22px; color: #0F5E5E; line-height: 1; } .rel-data small { color: #6B7280; text-transform: uppercase; font-size: 11px; }
.rel-cab { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; } .rel-cab small { color: #6B7280; }
.rel-corpo h4 { margin: 6px 0 4px; font-size: 15px; font-weight: 600; color: #111827; } .rel-corpo p { margin: 0 0 6px; font-size: 13.5px; color: #374151; }
.rel-meta { color: #6B7280; } .rel-acoes { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-start; margin-top: 8px; }
.rel-acoes details { flex: 1 1 100%; } .rel-acoes summary { cursor: pointer; color: #0F5E5E; font-size: 13px; } .rel-acoes .an-doc { margin-top: 8px; }
.rel-antigos { text-align: right; } .an-rel-hist { margin: 6px 0 0; }
/* contratos e cobrança (menu do usuário, só o master) */
.ct .pn-head-dir { flex-wrap: wrap; justify-content: flex-end; }
.ct .pn-voltar { display: inline-block; margin: -6px 0 10px; }
.ct-form .us-grid textarea, .ct-obs textarea { width: 100%; align-self: stretch; } .ct-form .us-grid textarea { border: 1px solid #D1D5DB; border-radius: 8px; padding: 8px 10px; font: 14px Inter, Arial, sans-serif; color: #111827; }
.ct-form .us-grid small { font-weight: 400; color: #6B7280; }
.ct-grid3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.ct-largo { grid-column: 1 / -1; }
.ct-check { flex-direction: row !important; align-items: center; gap: 8px !important; font-size: 13px !important; color: #374151 !important; }
.ct-check input { width: 17px; height: 17px; accent-color: var(--teal); margin: 0; }
.ct-obs { display: flex; flex-direction: column; gap: 5px; margin-top: 12px; font: 500 12px Inter, Arial, sans-serif; color: #4B5563; }
.ct-obs textarea { border: 1px solid #D1D5DB; border-radius: 8px; padding: 8px 10px; font: 14px Inter, Arial, sans-serif; }
.ct-arquivos { list-style: none; padding: 0; margin: 0 0 10px; } .ct-arquivos li { padding: 4px 0; } .ct-arquivos small { color: #6B7280; }
.ct-fim { justify-content: flex-end; }
.ct-duo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 16px; } .ct-duo .pn-panel { margin: 0; }
.ct .pn-panel { margin-bottom: 16px; }
.ct-filtros { display: flex; flex-wrap: wrap; gap: 12px 18px; align-items: flex-end; }
.ct-filtros label { display: flex; flex-direction: column; gap: 4px; font: 500 12px Inter, Arial, sans-serif; color: #4B5563; margin: 0; }
.ct-filtros select { border: 1px solid #D1D5DB; border-radius: 8px; padding: 6px 10px; font: 13.5px Inter, Arial, sans-serif; min-width: 170px; }
.ct-tot { margin-bottom: 16px !important; }
.ct-inline { display: inline-flex; flex-wrap: wrap; gap: 6px; align-items: center; justify-content: flex-end; }
.ct-inline input[type=text] { border: 1px solid #D1D5DB; border-radius: 6px; padding: 5px 8px; width: 80px; text-align: right; }
.ct-inline .pn-btn { padding: 6px 12px; }
.ct-reaj td.r small { display: block; color: #6B7280; margin-top: 4px; }
.ct-acoes { white-space: nowrap; text-align: right; }
.ct-acoes details { display: inline-block; margin-left: 10px; text-align: left; vertical-align: top; }
.ct-acoes summary { cursor: pointer; color: var(--teal-dark); font-size: 12.5px; font-weight: 600; list-style: none; }
.ct-acoes summary::-webkit-details-marker { display: none; }
.ct-acoes details[open] { display: block; margin: 6px 0 0; }
.ct-acao-form { display: grid; gap: 6px; padding: 8px 0; min-width: 220px; }
.ct-acao-form label { display: flex; flex-direction: column; gap: 3px; font: 500 11.5px Inter, Arial, sans-serif; color: #4B5563; margin: 0; }
.ct-acao-form input, .ct-acao-form select { border: 1px solid #D1D5DB; border-radius: 6px; padding: 5px 8px; font-size: 13px; }
.ct-acao-form .pn-btn { padding: 6px 12px; justify-content: center; }
.ct-acoes .pn-link { background: none; border: 0; padding: 0; color: var(--teal-dark); font-size: 12.5px; font-weight: 600; cursor: pointer; text-decoration: underline; }
.ct-parcelas td small, .ct-lista td small { color: #6B7280; }
.ct-lista tbody tr { cursor: pointer; }
.ct-hist { list-style: none; padding: 0; margin: 0; max-height: 320px; overflow-y: auto; }
.ct-hist li { padding: 6px 0; border-bottom: 1px solid #F3F4F6; font-size: 13px; color: #374151; } .ct-hist small { color: #6B7280; margin-right: 6px; }
@media (max-width: 900px) { .ct-duo, .ct-grid3 { grid-template-columns: minmax(0, 1fr) !important; } .ct-acoes { white-space: normal; } }
/* contratos: cobrança pelo Mercado Pago */
.ct-acoes .ct-acao-mini { display: inline-block; min-width: 0; padding: 0; margin-left: 10px; }
.ct-acoes details .ct-acao-mini { display: grid; margin: 0; }
.ct-acoes details small { white-space: normal; color: #6B7280; font-size: 11.5px; }
.ct-cmd { background: #0F2E30; color: #E6F4F4; border-radius: 8px; padding: 12px 14px; font-size: 12.5px; white-space: pre-wrap; word-break: break-all; margin: 0; }
.ct-form small.ct-check { font-weight: 400; }
/* Contratos: aba Boletos e Pix */
.pn .pn-kpis.pn-kpis-sm.ct-tot4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1100px) { .pn .pn-kpis.pn-kpis-sm.ct-tot4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) { .pn .pn-kpis.pn-kpis-sm.ct-tot4 { grid-template-columns: 1fr; } }
.ct-docs-acoes { display: flex; gap: 12px; justify-content: flex-end; align-items: center; flex-wrap: wrap; }
.ct-docs-acoes .ct-acao-mini { margin-left: 0 !important; }
/* Contratos: importar do PDF (Analista Dracar) */
.ct-imp { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; border: 1px dashed #9CC9C9 !important; background: #F6FAFA !important; }
.ct-imp > div { flex: 1 1 320px; min-width: 0; }
.ct-imp h4 { margin: 0 0 4px; }
.ct-imp small { color: #6B7280; }
.ct-imp input[type=file] { max-width: 100%; }
.ct-imp-lido { border-left: 4px solid #D9A400 !important; }
.ct-imp-avisos { margin: 8px 0 0; padding-left: 18px; color: #92400E; font-size: 13px; }
.ct-imp-espera { text-align: center; padding: 40px 20px !important; }
.ct-imp-espera h4 { margin: 14px 0 8px; display: block; text-align: center; }
.ct-imp-espera p { max-width: 560px; margin: 0 auto 10px; }
.ct-imp-gira { width: 36px; height: 36px; margin: 0 auto; border: 3px solid #D7ECEC; border-top-color: #0E9494; border-radius: 50%; animation: ct-gira 1s linear infinite; }
@keyframes ct-gira { to { transform: rotate(360deg); } }

/* contratos: cliente novo lido do PDF e condições especiais por período */
.ct-novo-cli { border: 1px dashed #D9A400; border-radius: 8px; padding: 10px 14px 4px; margin: 4px 0 8px; }
.ct-novo-cli legend { width: auto; border: 0; margin: 0; padding: 0 6px; font-size: 14px; }
.ct-novo-cli > small { display: block; color: #6B7280; margin-bottom: 6px; }
.ct-cnpj { display: flex; gap: 8px; align-items: center; }
.ct-cnpj input { flex: 1; min-width: 0; }
.ct-cond input, .ct-cond select { width: 100%; min-width: 80px; }
.ct-cond td { vertical-align: middle; }
.ct-cond-resumo { margin: 0 0 10px; padding-left: 18px; font-size: 13px; }

/* Configurações → Log de acesso (acessos.php) */
.acs-periodo { display: flex; gap: 6px; }
.pn-head .acs-periodo a { white-space: nowrap; background: #F3F4F6; border: 1px solid transparent; border-radius: 20px; padding: 5px 12px; font: 500 12.5px Inter, Arial, sans-serif; color: #4B5563; text-decoration: none; }
.pn-head .acs-periodo a.on { background: #E6F4F4; border-color: var(--teal); color: var(--teal-deeper); }
.acs-aviso .crm-alerta { margin: 0; }
.acs .pn-panel { margin-bottom: 16px; }
.dr-user-menu > li.dr-user-fim { border-top: 1px solid #EEF0F2; margin-top: 4px; padding-top: 4px; }
.acs-barras { display: flex; align-items: flex-end; gap: 3px; height: 90px; border-bottom: 1px solid #E5E7EB; }
.acs-dia { flex: 1; height: 100%; display: flex; align-items: flex-end; }
.acs-dia span { display: block; width: 100%; background: var(--teal); border-radius: 3px 3px 0 0; }
.acs-dia.acs-fds span { background: #8FC9C9; }
.acs-eixo { display: flex; justify-content: space-between; font-size: 11px; color: #9CA3AF; margin-top: 4px; }
.acs-tabela td { vertical-align: top !important; }
.acs-off td { color: #9CA3AF; }
.acs-nunca { color: #B45309; font-size: 12px; font-weight: 600; }
.acs-velho { color: #B42318; }
.acs-erro { color: #B42318; font-weight: 600; }
.acs-rolagem { max-height: 460px; overflow-y: auto; }
.dr-user-menu > li.dr-user-sep { padding: 10px 12px 4px; margin-top: 4px; border-top: 1px solid #EEF0F2; font: 600 10.5px Inter, Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #9CA3AF; }
