/* =====================================================
Penha França — Tema Bootstrap
Requisitos: títulos/labels #183a1a; placeholders #525252; texto #000000
Fonts: Inter (títulos) e Poppins (resto)
===================================================== */

:root{
  --pf-green:#183a1a;
  --pf-title:#000000;	
  --pf-placeholder:#525252;
  --pf-text:#000000;
}
html,body{
  font-family:'Poppins',system-ui,-apple-system,'Segoe UI',Roboto,Ubuntu,'Helvetica Neue',Arial,sans-serif;
  color:var(--pf-text);
  background:#f7f7f8;
}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Ubuntu,'Helvetica Neue',Arial,sans-serif;
  color:var(--pf-title);
}
label,.form-label,legend{ color:var(--pf-title); }
.form-control,.form-select,.form-check-input{ color:var(--pf-text); }
.form-control::placeholder{ color:var(--pf-placeholder); opacity:1; }
.form-control:focus{ box-shadow:none; border-color:rgba(24,58,26,.35); }
input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill{
  -webkit-text-fill-color: var(--pf-text);
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}

/* Layout centrado */
/*.checkin-section{ min-height:100vh; }*/
.form-card{ background:#fff; border-radius:.75rem; box-shadow:0 10px 30px rgba(0,0,0,.08); padding:1.25rem; }
@media (min-width:992px){ .form-card{ padding:2rem; } }

/* Compat com “image-holder” do template */
.image-holder img{ max-width:100%; height:auto; display:block; margin:0 auto; border-radius:.5rem; }

/* Botão no tom do título */
.btn-pf{ background:var(--pf-green); color:#fff; border:0; }
.btn-pf:hover{ background:var(--pf-green); color:#fff; border:0; }

/* Espaçamento entre blocos de campos como no template */
.form-row{ display:flex; gap:1rem; flex-wrap:wrap; }
.form-holder{ flex:1 1 240px; }
.w-100{ width:100% !important; }

/* Mantém os “setinhas” do template original ao lado dos datepicker */
.lnr.lnr-chevron-down{ position:absolute; right:1rem; top:50%; transform:translateY(-50%); pointer-events:none; }
.placeholder{ display:none; } /* placeholders sobrepostos não são necessários com labels visíveis */
.position-relative{ position:relative; }

/* Checkboxes estilo template */
.checkbox label { display:flex; align-items:flex-start; gap:.5rem; cursor:pointer; }
.checkbox .checkmark { display:none; }

/* Overlay de loading no formulário */
.form-loading-overlay{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.7); z-index:10; border-radius:.75rem;
}
.form-loading-spinner{
  display:flex; flex-direction:column; align-items:center; gap:.5rem;
  font-family:system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Arial; color:#183a1a;
}
/* garante que o container do form é posicionável */
.form-card{ position: relative; }
