/*
 * SIGEF JBE - UX Consistência 100
 * Ajuste leve, sem alterar lógica: botões, cards, tabelas, formulários e estados.
 */
:root{
  --jbe-radius-xl:18px;
  --jbe-radius-lg:14px;
  --jbe-border:#e5edf5;
  --jbe-text:#102033;
  --jbe-muted:#667085;
  --jbe-bg-soft:#f7fafc;
  --jbe-shadow:0 14px 36px rgba(15, 35, 58, .08);
}
body{font-feature-settings:"kern" 1;text-rendering:optimizeLegibility;}
.card,.card-ui,.jbe-card,.dashboard-card,.metric-card,.table-card,.form-card{
  border-radius:var(--jbe-radius-xl)!important;
  border:1px solid var(--jbe-border)!important;
  box-shadow:var(--jbe-shadow)!important;
}
.btn,.btn-head,.btn-primary,.btn-soft,.btn-outline-primary,.btn-outline-secondary{
  border-radius:12px!important;
  min-height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  font-weight:600;
}
.btn-sm{min-height:32px;border-radius:10px!important;font-size:.82rem!important;}
.form-control,.form-select,input[type="text"],input[type="number"],input[type="email"],input[type="password"],textarea,select{
  border-radius:12px!important;
  border-color:#d8e3ee!important;
  min-height:40px;
}
.form-control:focus,.form-select:focus,textarea:focus,select:focus{
  box-shadow:0 0 0 .18rem rgba(15, 76, 129, .14)!important;
  border-color:#2b7bbf!important;
}
table.table{font-size:.88rem;}
.table thead th{font-size:.78rem;text-transform:none;letter-spacing:.01em;color:#475467;background:#f8fafc;white-space:nowrap;}
.table td,.table th{vertical-align:middle!important;}
.badge,.badge-soft,.state-line{border-radius:999px!important;font-weight:600;}
.section-title,h1,h2,h3{letter-spacing:-.015em;color:var(--jbe-text);}
.section-sub,.muted,.text-muted,.table-meta{color:var(--jbe-muted)!important;}
.hero,.page-hero,.jbe-hero{border-radius:22px!important;}
.metric-value{letter-spacing:-.03em;}
.bi,.jbe-icon,[class^="icon-"]{line-height:1;vertical-align:-.12em;}
.actions,.hero-actions,.table-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;}
@media (max-width: 768px){
  .container,.container-fluid{padding-left:14px!important;padding-right:14px!important;}
  .card,.card-ui,.jbe-card{border-radius:16px!important;}
  .btn,.btn-head{width:100%;}
  .table-responsive{border-radius:14px;border:1px solid var(--jbe-border);}
}
@media print{
  .btn,.hero-actions,.no-print,nav,aside{display:none!important;}
  .card,.card-ui,.jbe-card{box-shadow:none!important;border-color:#d9dee8!important;}
}
