/*
  ND UI Refresh (safe overrides)
  - Tipografia mais moderna
  - Botões e cards com cantos e sombras suaves
  - Inputs mais legíveis
  - Pequenos ajustes de espaçamento
*/

:root{
  --nd-radius-lg: 18px;
  --nd-radius-md: 14px;
  --nd-radius-sm: 12px;
  --nd-shadow-sm: 0 6px 18px rgba(15, 23, 42, .06);
  --nd-shadow-md: 0 12px 32px rgba(15, 23, 42, .10);
  --nd-text: #0f172a;
  --nd-muted: rgba(15, 23, 42, .65);
}

html, body{
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
               Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  color: var(--nd-text);
}

h1, h2, h3, .uk-h1, .uk-h2, .uk-h3{
  letter-spacing: -0.01em;
}

.uk-heading-line > :before,
.uk-heading-line > :after{
  border-bottom-color: rgba(15,23,42,.10);
}

/* Cards */
.uk-card,
.nd-lead .nd-card{
  border-radius: var(--nd-radius-lg);
}

.uk-card-default{
  border: 1px solid rgba(15,23,42,.06);
  box-shadow: var(--nd-shadow-sm);
}

.uk-card-default:hover{
  box-shadow: var(--nd-shadow-md);
}

/* Botões */
.uk-button{
  border-radius: var(--nd-radius-sm);
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0;
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
}

.uk-button:hover{
  transform: translateY(-1px);
  filter: brightness(1.02);
}

.uk-button-primary{
  box-shadow: 0 10px 24px rgba(30, 135, 240, .18);
}

.uk-button-secondary{
  box-shadow: 0 10px 24px rgba(0, 0, 0, .10);
}

/* Inputs */
.uk-input,
.uk-select,
.uk-textarea{
  border-radius: var(--nd-radius-sm);
  border-color: rgba(15,23,42,.12);
}

.uk-input:focus,
.uk-select:focus,
.uk-textarea:focus{
  border-color: rgba(30,135,240,.55);
  box-shadow: 0 0 0 4px rgba(30,135,240,.12);
}

/* Badges / pills */
.uk-label,
.nd-lead .nd-hero-badge{
  border-radius: 999px;
}

/* Rodapé / textos pequenos */
.uk-text-meta,
.uk-article-meta{
  color: var(--nd-muted);
}

/* Melhor leitura em blocos longos */
.uk-article p,
.uk-container p{
  line-height: 1.65;
}

/* =============================================================
   ND Conecta — checkbox de aceite de termos (quadrado)
   Força visual quadrado apenas no checkbox dos termos.
   ============================================================= */
input.uk-checkbox.nd-terms-square,
input.nd-terms-square{
  -webkit-appearance: none;
  appearance: none;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  border: 1px solid #cfcfcf;
  border-radius: 3px !important;
  background: #fff !important;
  background-image: none !important;
  display: inline-block;
  position: relative;
  vertical-align: middle;
}

input.uk-checkbox.nd-terms-square:focus,
input.nd-terms-square:focus{
  outline: none;
  border-color: var(--primary-color, #1e87f0);
  box-shadow: 0 0 0 2px rgba(30,135,240,.15);
}

input.uk-checkbox.nd-terms-square:checked,
input.nd-terms-square:checked{
  background: var(--primary-color, #1e87f0) !important;
  border-color: var(--primary-color, #1e87f0);
}

input.uk-checkbox.nd-terms-square:checked::after,
input.nd-terms-square:checked::after{
  content: '';
  position: absolute;
  left: 5px;
  top: 2px;
  width: 4px;
  height: 8px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
