.axpa-system { width:100%; min-width:0; margin:1.5rem 0; clear:both; }
.axpa-system, .axpa-system * { box-sizing:border-box; }
.axpa-system-group { margin:1.2rem 0; padding:0; min-width:0; border:0; }
.axpa-system-group legend { font-weight:700; margin-bottom:.6rem; }
.axpa-system-option { display:flex; align-items:center; flex-wrap:wrap; gap:.75rem; padding:.8rem; margin:.5rem 0; border:1px solid #bbb; border-radius:6px; cursor:pointer; }
.axpa-system-option.is-selected { border-color:#2271b1; background:#f0f7fc; box-shadow:inset 0 0 0 1px #2271b1; }
.axpa-system-option:focus-within { outline:2px solid #2271b1; outline-offset:2px; }
.axpa-system-option.is-unavailable { opacity:.6; cursor:not-allowed; }
.axpa-system-option input[type=radio] { appearance:auto; position:static; opacity:1; width:18px; height:18px; margin:0; flex:0 0 18px; }
.axpa-system-option img { width:48px; height:48px; object-fit:contain; }
.axpa-system-option-name { flex:1 1 140px; min-width:0; overflow-wrap:anywhere; }
.axpa-system-option-name small { display:block; }
.axpa-system-option strong { overflow-wrap:anywhere; }
.axpa-system-benefits { background:#f6f7f7; border-radius:6px; padding:1rem; }
.axpa-system-benefits p { margin:.5rem 0 0; }
.axpa-system-total { font-size:1.15em; padding-top:1rem; }
.axpa-system-incomplete { color:#a00; }
.axpa-system [hidden] { display:none !important; }
