/* Presentation applies only to the optional shortcode component. Native Bricks
   layouts own their styling; only hidden states apply to both routes. */
[data-bpc-root] [hidden] { display:none !important; }
.bpc-checker { --bpc-ink:var(--coverage-ink, #153442); --bpc-gold:var(--coverage-accent, #b69836); box-sizing:border-box; width:100%; max-width:44rem; padding:clamp(1.25rem,3vw,2rem); background:#fff; color:var(--bpc-ink); border:1px solid #deded6; border-radius:6px; font-family:inherit; scroll-margin-top:2rem; }
.bpc-checker *, .bpc-checker *::before, .bpc-checker *::after { box-sizing:border-box; }
.bpc-checker::before { content:""; display:block; width:2.5rem; height:3px; background:var(--bpc-gold); margin-bottom:1rem; }
.bpc-checker .bpc-title { margin:0 0 .65rem; color:inherit; font-family:inherit; font-size:clamp(1.5rem,2.4vw,2rem); font-weight:600; line-height:1.15; }
.bpc-checker .bpc-intro { margin:0 0 1.3rem; font-size:1rem; line-height:1.5; }
.bpc-checker label { display:block; margin-bottom:.5rem; font-size:1rem; font-weight:600; }
.bpc-checker form { margin:0; }
.bpc-checker .bpc-input-row { display:flex; gap:.65rem; flex-wrap:wrap; }
.bpc-checker input[data-bpc-input] { flex:1 1 12rem; width:0; min-width:0; max-width:100%; min-height:48px; border:1px solid #8f9da4; border-radius:4px; background:#fff; color:var(--bpc-ink); padding:.75rem .85rem; font:inherit; font-size:16px; line-height:1.3; }
.bpc-checker button[data-bpc-submit] { flex:0 1 auto; min-height:48px; max-width:100%; padding:.8rem 1.2rem; border:1px solid var(--bpc-ink); border-radius:4px; background:var(--bpc-ink); color:#fff; font:inherit; font-size:1rem; font-weight:600; line-height:1.25; cursor:pointer; }
.bpc-checker button[data-bpc-submit]:hover { background:#224c5d; }
.bpc-checker :is(input,select,button,a):focus-visible { outline:3px solid #a47b13; outline-offset:3px; }
.bpc-checker input[aria-invalid="true"] { border:2px solid #a42b27; }
.bpc-checker button:disabled, .bpc-checker input:disabled { opacity:.65; cursor:default; }
.bpc-checker [data-bpc-message] { margin:0; font-size:1rem; line-height:1.5; overflow-wrap:anywhere; }
.bpc-checker .bpc-result[data-state] { margin-top:1rem; padding:1rem; border-radius:4px; border-left:3px solid #587b40; background:#eef4e9; }
.bpc-checker .bpc-result:is([data-state="confirm"],[data-state="outside"]) { background:#f8f2df; border-color:#9d7d26; }
.bpc-checker .bpc-result:is([data-state="invalid"],[data-state="unknown"]) { background:#fbefed; border-color:#a42b27; }
.bpc-checker [data-bpc-enquiry] { display:inline-flex; align-items:center; min-height:44px; margin-top:.35rem; font-weight:600; color:var(--bpc-ink); text-decoration:underline; text-underline-offset:3px; }
.bpc-checker .bpc-note { margin:1rem 0 0; font-size:.875rem; line-height:1.5; color:#4f626b; }
@media (max-width:480px) { .bpc-checker .bpc-input-row { flex-direction:column; } .bpc-checker input[data-bpc-input], .bpc-checker button[data-bpc-submit] { flex:auto; width:100%; } }

.bpc-checker select[data-bpc-country] { width:100%; max-width:100%; min-height:48px; margin:0 0 1rem; padding:.75rem; font:inherit; font-size:16px; border:1px solid #8f9da4; border-radius:4px; color:var(--bpc-ink); background:#fff; }
