/*!
 * BAV 2.0 — Public objection page (Story 11.21, art. 21).
 *
 * Layout only. Every visual primitive (tokens, .bav-btn/.bav-btn--primary,
 * type scale, focus ring) comes from bav-components.css, which is declared as
 * this stylesheet's dependency — so the BAV CTA style guide holds
 * automatically: NO border-radius, 14px vertical rhythm, gold accent.
 *
 * No mockup exists for this page in ux-design-directions.html (verified at
 * implementation), so the CSS-extraction hard gate had nothing to extract:
 * this builds on the existing component vocabulary and reuses the
 * bav-matching-buyer.css layout language deliberately, so the two pages of the
 * accountless buyer arc look like one product. Alan reviews the live Dev page
 * before Prod.
 *
 * Mobile-first; every tap target is >= 44px (the .bav-btn base is 48px).
 * Enqueued ONLY on the page-matching-opposition.php template.
 */.bav-op-page{padding:var(--bav-space-2xl,40px) 0;background:var(--bav-bg-surface,#f7f7f5);min-height:400px}.bav-op{max-width:620px;margin:0 auto;text-align:left}.bav-op__title{font-family:var(--bav-font-family);font-size:var(--bav-font-size-2xl, 28px);font-weight:var(--bav-font-weight-semibold,600);color:var(--bav-text);line-height:1.25;margin:0 0 14px}.bav-op__lead{font-size:var(--bav-font-size-base, 16px);color:var(--bav-text-secondary);line-height:1.6;margin:0 0 14px}.bav-op__lead--warning{border-left:3px solid var(--bav-accent,#c8a45c);padding-left:14px;color:var(--bav-text)}.bav-op__error{font-size:var(--bav-font-size-sm, 14px);color:var(--bav-danger,#b32d2e);margin:0 0 14px}.bav-op__confirmation{margin:0 0 28px}.bav-op__confirmation:focus{outline:2px solid var(--bav-accent,#c8a45c);outline-offset:6px}.bav-op__confirmation:focus:not(:focus-visible){outline:0}.bav-op__form{margin:28px 0 0}.bav-op__field{margin:0 0 14px}.bav-op__label{display:block;font-size:var(--bav-font-size-sm, 14px);font-weight:var(--bav-font-weight-semibold,600);color:var(--bav-text);margin:0 0 8px}.bav-op__input{width:100%;min-height:48px;padding:0 14px;font-size:var(--bav-font-size-base, 16px);color:var(--bav-text);background:var(--bav-bg,#fff);border:var(--bav-border-width,1px) solid var(--bav-border,#e2e2dd);border-radius:var(--bav-radius-none,0)}.bav-op__input[aria-invalid=true]{border-color:var(--bav-danger,#b32d2e)}.bav-op__hint{font-size:var(--bav-font-size-sm, 14px);color:var(--bav-text-secondary);line-height:1.5;margin:8px 0 0}.bav-op__submit{width:100%}.bav-op__withdraw{margin:28px 0 0;padding:28px 0 0;border-top:var(--bav-border-width,1px) solid var(--bav-border,#e2e2dd)}.bav-op__submit--secondary{background:0 0;color:var(--bav-text);border:var(--bav-border-width,1px) solid var(--bav-border,#e2e2dd)}.bav-op__again,.bav-op__legal{font-size:var(--bav-font-size-sm, 14px);color:var(--bav-text-secondary);margin:28px 0 0}.bav-op__hp,.bav-op__hp input,.bav-op__hp label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;border:0!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;clip-path:inset(50%)!important;white-space:nowrap!important}@media (min-width:600px){.bav-op__submit{width:auto;min-width:260px}}