.fhn-preferences{box-sizing:border-box;max-width:850px;margin:1.5rem auto;padding:clamp(1rem,4vw,2rem);border:1px solid #cdd9d2;border-radius:14px;background:#fff;color:#24382c;line-height:1.6}
.fhn-preferences *{box-sizing:border-box}
.fhn-preferences h2{margin:0 0 .75rem;color:inherit;font-size:1.65em}
.fhn-preferences fieldset{min-width:0;margin:1.5rem 0;padding:0;border:0}
.fhn-preferences legend{padding:0;margin:0 0 .6rem;font-size:1.1em;font-weight:700;color:inherit}
.fhn-preferences .fhn-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:.6rem}
.fhn-preferences .fhn-option{display:flex;align-items:flex-start;gap:.65rem;padding:.7rem .85rem;border:1px solid #cdd9d2;border-radius:7px;cursor:pointer;overflow-wrap:anywhere}
.fhn-preferences .fhn-option:has(input:checked){background:#edf5ef;border-color:#376548}
.fhn-preferences input[type=checkbox]{flex:0 0 auto;width:1.15rem;height:1.15rem;margin:.25rem 0 0;accent-color:#315f43}
.fhn-preferences .fhn-info,.fhn-preferences .fhn-notice{padding:.8rem 1rem;background:#eff4f1;border-left:4px solid #376548}
.fhn-preferences .fhn-error{padding:.8rem 1rem;background:#fff0ef;border-left:4px solid #ae2925;color:#81211e}
.fhn-preferences .fhn-help{font-size:.92em}
.fhn-preferences .fhn-actions{display:flex;flex-wrap:wrap;gap:.7rem}
.fhn-preferences .fhn-primary,.fhn-preferences .fhn-secondary{display:inline-block;padding:.75rem 1.1rem;border:1px solid #315f43;border-radius:6px;font:inherit;font-weight:600;text-decoration:none;cursor:pointer;line-height:1.4;white-space:normal}
.fhn-preferences .fhn-primary{background:#315f43;color:#fff}
.fhn-preferences .fhn-secondary{background:#fff;color:#315f43}
.fhn-preferences :is(button,a,input):focus-visible{outline:3px solid #b06a15;outline-offset:3px}
.fhn-preferences button:disabled{opacity:.5;cursor:not-allowed}
