.eda-caregiver {
  --caregiver-ink: #12354a;
  --caregiver-accent: #1b665f;
  color: var(--caregiver-ink);
  background: #f2f7f6;
  border: 1px solid #d4e3df;
  border-radius: 24px;
  padding: clamp(1rem, 3vw, 2.5rem);
  max-width: 850px;
  margin-inline: auto;
  overflow-wrap: anywhere;
}
.eda-caregiver *, .eda-caregiver *::before, .eda-caregiver *::after { box-sizing: border-box; }
.eda-caregiver [hidden] { display: none !important; }
.eda-caregiver .eda-caregiver__enable { min-width: 0; border: 0; padding: 0; margin: 0; }
.eda-caregiver h2 { color: var(--caregiver-ink); font-size: clamp(1.45rem, 3vw, 1.9rem); line-height: 1.3; margin: 0 0 1rem; }
.eda-caregiver p { line-height: 1.65; margin: 0 0 1.25rem; }
.eda-caregiver a { color: #125c56; text-decoration: underline; text-underline-offset: .2em; }
.eda-caregiver .eda-caregiver__privacy { font-size: .95rem; }
.eda-caregiver .eda-caregiver__progress { font-weight: 700; margin-block: 1.5rem; color: var(--caregiver-accent); }
.eda-caregiver .eda-caregiver__question { min-width: 0; border: 0; border-bottom: 1px solid #d4e3df; padding: .25rem 0 1.25rem; margin: 0 0 1.4rem; }
.eda-caregiver .eda-caregiver__question legend { float: none; width: 100%; padding: 0; margin: 0 0 .75rem; font-size: 1rem; font-weight: 650; line-height: 1.55; color: var(--caregiver-ink); }
.eda-caregiver .eda-caregiver__choices { display: flex; flex-wrap: wrap; gap: .6rem; }
.eda-caregiver .eda-caregiver__choices label { display: inline-flex; align-items: center; gap: .6rem; min-height: 48px; padding: .65rem .9rem; border: 1px solid #819f99; border-radius: 12px; background: #fff; cursor: pointer; font-weight: 500; line-height: 1.4; }
.eda-caregiver .eda-caregiver__choices label:has(input:checked) { border-color: var(--caregiver-accent); box-shadow: inset 0 0 0 1px var(--caregiver-accent); background: #e1f1ec; }
.eda-caregiver input[type="radio"], .eda-caregiver input[type="checkbox"] { appearance: auto; -webkit-appearance: auto; accent-color: var(--caregiver-accent); width: 1.25rem; height: 1.25rem; min-width: 1.25rem; flex: 0 0 1.25rem; padding: 0; margin: 0; }
.eda-caregiver .eda-caregiver__field { display: grid; gap: .45rem; margin-bottom: 1.25rem; font-weight: 650; }
.eda-caregiver .eda-caregiver__field input { width: 100%; max-width: 100%; min-height: 48px; padding: .75rem .9rem; color: var(--caregiver-ink); background: #fff; border: 1px solid #819f99; border-radius: 10px; font: inherit; font-weight: 400; }
.eda-caregiver .eda-caregiver__data-notice { padding: 1.25rem; margin-block: 1.5rem; border-radius: 12px; background: #fff; font-size: .95rem; }
.eda-caregiver .eda-caregiver__data-notice p:last-child { margin-bottom: 0; }
.eda-caregiver .eda-caregiver__consent { display: flex; align-items: flex-start; gap: .8rem; padding: 1rem; border: 1px solid #819f99; border-radius: 12px; background: #fff; line-height: 1.6; cursor: pointer; }
.eda-caregiver .eda-caregiver__consent input { margin-top: .2rem; }
.eda-caregiver .eda-caregiver__actions { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; margin-top: 1.5rem; }
.eda-caregiver .eda-caregiver__button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; max-width: 100%; padding: .8rem 1.25rem; border: 2px solid var(--caregiver-accent); border-radius: 12px; background: var(--caregiver-accent); color: #fff; font: inherit; font-weight: 700; line-height: 1.4; text-align: center; cursor: pointer; }
.eda-caregiver .eda-caregiver__button--back { color: var(--caregiver-accent); background: #fff; }
.eda-caregiver .eda-caregiver__button:hover:not(:disabled) { filter: brightness(.92); }
.eda-caregiver .eda-caregiver__button:disabled { opacity: .6; cursor: default; }
.eda-caregiver :focus-visible { outline: 3px solid #a44021; outline-offset: 4px; }
.eda-caregiver h2:focus { outline-offset: 6px; }
.eda-caregiver .eda-caregiver__error { padding: 1rem; border: 2px solid #a33729; border-radius: 12px; background: #fff1ed; color: #76271d; font-weight: 600; }
.eda-caregiver .eda-caregiver__question--invalid { border-bottom-color: #a33729; }
.eda-caregiver input[aria-invalid="true"] { outline: 2px solid #a33729; outline-offset: 3px; }
.eda-caregiver .eda-caregiver__status { padding: 1rem; border-radius: 12px; background: #e1f1ec; font-weight: 600; }
.eda-caregiver .eda-caregiver__contact { margin-top: 1.75rem; padding-top: 1.25rem; border-top: 1px solid #d4e3df; }
.eda-caregiver .eda-caregiver__sr, .eda-caregiver .eda-caregiver__honeypot { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (max-width: 480px) {
  .eda-caregiver { border-radius: 16px; }
  .eda-caregiver .eda-caregiver__choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .eda-caregiver .eda-caregiver__choices label { padding-inline: .65rem; }
  .eda-caregiver .eda-caregiver__actions { align-items: stretch; flex-direction: column-reverse; }
  .eda-caregiver .eda-caregiver__button { width: 100%; }
  .eda-caregiver .eda-caregiver__data-notice { padding: 1rem; }
}
