.store-choice { display: flex; gap: .75rem; align-items: center; padding: 1rem; border: 1px solid var(--store-border); border-radius: var(--store-radius-sm); background: var(--store-surface); cursor: pointer; font-size: .9rem; }
.store-choice[hidden] { display: none; }
fieldset[aria-invalid="true"] > legend { color: var(--store-field-danger, #b42318); }
fieldset[aria-invalid="true"] .store-choice { border-color: var(--store-field-danger, #b42318); }
.store-choice > input { flex: 0 0 auto; inline-size: 1.1rem; block-size: 1.1rem; margin: 0; accent-color: var(--store-accent); }
.store-choice:has(input:checked) { border-color: var(--store-accent); box-shadow: inset 0 0 0 1px var(--store-accent); }
.store-choice:has(input:focus-visible) { outline: var(--store-focus-width) solid var(--store-focus-color); outline-offset: 3px; }
.store-choice:has(input:disabled) { opacity: .55; cursor: not-allowed; }
.store-choice__body { display: grid; flex: 1 1 auto; min-inline-size: 0; gap: .2rem; overflow-wrap: anywhere; }
.store-choice__label { font-weight: 500; }
.store-choice__body small { color: var(--store-muted); font-size: .8rem; font-weight: 400; }
.store-choice__amount { flex: 0 0 auto; font-weight: 500; white-space: nowrap; }
.store-choice__icon { display: flex; flex: 0 0 auto; }
.store-choice__logo { flex: 0 0 auto; inline-size: 4rem; block-size: 2rem; padding: .2rem; object-fit: contain; border-radius: var(--store-radius-sm); background: var(--store-brand-logo-surface); }
.store-choice--flag { position: relative; display: grid; place-items: center; inline-size: 3rem; block-size: 3rem; padding: .5rem; gap: 0; border-radius: var(--store-radius-sm); }
.store-choice--flag > input { position: absolute; opacity: 0; inline-size: 1px; block-size: 1px; }
.store-choice--flag .store-choice__logo { inline-size: 1.75rem; block-size: 1.3125rem; padding: 0; background: transparent; border-radius: .15rem; object-fit: cover; }
.store-choice--flag:has(input:focus-visible), .store-choice--flag[aria-current="true"]:focus-visible { outline-offset: -3px; }
.store-choice--flag:has(input:checked), .store-choice--flag[aria-current="true"] { border: 3px solid var(--store-accent); padding: calc(.5rem - 2px); box-shadow: none; }
.store-choice--flag[aria-current="true"] { cursor: default; }
.store-choice--flag:has(input:checked)::after, .store-choice--flag[aria-current="true"]::after { content: ""; position: absolute; inset-inline-end: .2rem; inset-block-end: .2rem; inline-size: .3rem; block-size: .3rem; border-radius: 50%; background: var(--store-accent); }
.store-choice--flag .is-fallback { display: none; }
.store-choice--flag:hover { background: var(--store-surface-soft, var(--store-surface)); }
.store-choice__icon svg { inline-size: 1.4rem; block-size: 1.4rem; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }

.store-choice:has(input[aria-invalid="true"]) { border-color: var(--store-field-danger, #b42318); box-shadow: inset 0 0 0 1px var(--store-field-danger, #b42318); }
