.bfwc { --checkup-plum: #48243e; --checkup-ink: #301f2c; --checkup-paper: #fbf5e9; max-width: 58rem; margin: 2rem auto; color: var(--checkup-ink); }
.bfwc form, .bfwc [data-results], .bfwc-method { border: 1px solid #d7c8d1; border-radius: 1rem; background: var(--checkup-paper); padding: clamp(1rem, 4vw, 2rem); margin-block: 1.25rem; }
.bfwc [hidden] { display: none !important; }
.bfwc label, .bfwc summary { font-weight: 650; }
.bfwc summary { cursor: pointer; }
.bfwc-row { display: flex; flex-wrap: wrap; align-items: stretch; gap: .75rem; }
.bfwc input:not([type=checkbox]) { flex: 1 1 15rem; min-width: 0; width: 100%; box-sizing: border-box; padding: .65rem .8rem; border: 1px solid #7d6776; border-radius: .45rem; background: white; color: var(--checkup-ink); font: inherit; }
.bfwc button { border: 1px solid transparent; background: var(--checkup-plum); color: #fff; padding: .65rem 1.05rem; border-radius: .45rem; cursor: pointer; font: inherit; font-weight: 650; }
.bfwc button:disabled { opacity: .75; cursor: wait; }
.bfwc :focus-visible { outline: 3px solid #36724c; outline-offset: 3px; }
.bfwc-consent { display: block; margin: 1rem 0; }
.bfwc-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.bfwc-scores { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); gap: .65rem; }
.bfwc-scores div { background: #fff; border: 1px solid #d7c8d1; border-radius: .5rem; padding: .65rem; }
.bfwc-scores dd { margin: 0; font-weight: 700; }
.bfwc-findings { padding-inline-start: 1.35rem; }
.bfwc-findings li + li { margin-top: .8rem; }
.bfwc [data-results] { overflow-wrap: anywhere; }
