/* Pass10 public usability fixes. No book/runtime/provider or form-contract changes. */
html:has(body.beg-ui-v1){scroll-padding-top:112px}
:where(body.beg-ui-v1,body.beg-companion-ui) :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #a56b20;outline-offset:3px;box-shadow:0 0 0 2px #fff}
:where(body.beg-ui-v1,body.beg-companion-ui) :is(a,button,input,select,textarea,summary,[tabindex]){scroll-margin-block:112px 20px}
:where(body.beg-ui-v1,body.beg-companion-ui) :is(main,.shell-panel,.shell-footer) :is(h1,h2,h3,h4,p,li,pre,a,button){overflow-wrap:anywhere}
:where(body.beg-ui-v1,body.beg-companion-ui) :is(button,summary){min-height:44px}
:where(body.beg-ui-v1,body.beg-companion-ui) main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px;max-width:100%;min-width:0}
:where(body.beg-ui-v1,body.beg-companion-ui) :is(.contact-consent,.brief-checks label){min-height:44px;cursor:pointer}
body.beg-ui-v1 .shell-footer nav>a{min-height:44px}
body.beg-ui-v1 .shell-section-nav{scroll-padding-inline:12px;padding-inline:5px;gap:24px}
body.beg-ui-v1 .shell-section-nav a{white-space:normal;flex-shrink:0;max-width:calc(100vw - 60px)}
body.beg-ui-v1 :is(.ui-layer-controls,.en-handoff-tabs,.hc-gallery-tabs){flex-wrap:wrap;min-width:0}
body.beg-ui-v1 :is(.ui-layer-controls,.en-handoff-tabs,.hc-gallery-tabs) button{white-space:normal;max-width:100%;height:auto;min-height:44px}
body.beg-ui-v1 main :is(.ui-hero-grid,.en-hero-grid,.hc-hero-grid,.pub-hero-grid,.iq-hero-grid)>*{min-width:0}
/* Entire guide scrolls at short heights: its title, close action and privacy message remain reachable. */
body.beg-ui-v1 .assistant-backdrop{align-items:end;justify-items:end;padding:10px;overflow:auto;overscroll-behavior:contain}
body.beg-ui-v1 .assistant-dialog{display:block;width:min(480px,calc(100vw - 20px));max-height:calc(var(--beg-visible-height,100dvh) - 20px);overflow-y:auto;overflow-x:hidden;border-radius:6px;background:#102533;color:#e8eff4;scroll-padding-top:90px;scroll-padding-bottom:15px}
body.beg-ui-v1 .assistant-dialog>header{position:sticky;top:0;z-index:2;background:#102533;padding:16px 18px;align-items:center;gap:16px;min-height:76px;flex-shrink:0}
body.beg-ui-v1 .assistant-dialog>header span{color:#dec18b;font-size:10px}
body.beg-ui-v1 .assistant-dialog>header span::after{content:none}
body.beg-ui-v1 .assistant-dialog h2{font-family:var(--ui-font);font-size:24px;line-height:1.3;letter-spacing:-.02em}
body.beg-ui-v1 .assistant-dialog .assistant-close{width:44px;min-width:44px;height:44px;padding:4px;border:1px solid #9bb1c0;border-radius:3px;color:#fff;background:#102533;cursor:pointer;line-height:1}
body.beg-ui-v1 .assistant-dialog .assistant-boundary{margin:0;padding:16px 18px;color:#c6d6df;font-size:13px;line-height:1.6}
body.beg-ui-v1 .assistant-suggestions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 18px 14px;overflow:visible}
body.beg-ui-v1 .assistant-suggestions button{width:100%;min-width:0;max-width:none;min-height:44px;white-space:normal;padding:10px 11px;border-radius:3px;font-size:12px;line-height:1.5;text-align:left;overflow-wrap:anywhere}
body.beg-ui-v1 .assistant-messages{display:grid;min-height:72px;max-height:300px;height:auto;overflow:auto;overscroll-behavior:contain;scroll-padding:10px;padding:15px 18px}
body.beg-ui-v1 .assistant-message{max-width:100%;min-width:0;overflow-wrap:anywhere}
body.beg-ui-v1 .assistant-form{padding:15px 18px;background:#0c1c27}
body.beg-ui-v1 .assistant-form :is(input,button){font-size:16px;min-height:48px;border-radius:3px}
body.beg-ui-v1 .assistant-form button{padding:10px 14px;color:#152d3c;background:#dec18b}
body.beg-ui-v1 .assistant-dialog :focus-visible{outline-color:#eccf93;box-shadow:0 0 0 2px #102533}
/* Generated validation feedback adds semantics without changing submitted fields. */
body.beg-ui-v1 .beg-field-error{display:block;color:#982b2b;font:400 13px/1.6 var(--ui-font);margin-top:2px}
body.beg-ui-v1 [data-contact-form] [aria-invalid=true]{border:2px solid #982b2b}
@media(max-width:580px){html:has(body.beg-ui-v1){scroll-padding-top:92px}:where(body.beg-ui-v1,body.beg-companion-ui) :is(a,button,input,select,textarea,summary,[tabindex]){scroll-margin-top:92px}body.beg-ui-v1 .assistant-dialog>header{padding:12px 14px;min-height:72px}body.beg-ui-v1 .assistant-suggestions{grid-template-columns:1fr}body.beg-ui-v1 .shell-section-nav{gap:20px}}
@media(max-height:520px){body.beg-ui-v1 .shell-header{position:relative}html:has(body.beg-ui-v1){scroll-padding-top:16px}body.beg-ui-v1 .shell-panel{max-height:calc(100dvh - 20px)}body.beg-ui-v1 .assistant-messages{max-height:180px}body.beg-ui-v1 .hc-viewer{max-height:calc(100dvh - 12px)}body.beg-ui-v1 .hc-viewer-head{position:relative}}
@media(prefers-reduced-motion:reduce){:where(body.beg-ui-v1,body.beg-companion-ui) *, :where(body.beg-ui-v1,body.beg-companion-ui) *::before,:where(body.beg-ui-v1,body.beg-companion-ui) *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){:where(body.beg-ui-v1,body.beg-companion-ui) :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid Highlight;box-shadow:none}body.beg-ui-v1 .beg-field-error{color:CanvasText}body.beg-ui-v1 :is(button,[role=tab],summary,[aria-current=page]){border-color:ButtonText}}
@media print{:where(body.beg-ui-v1,body.beg-companion-ui) details::details-content{content-visibility:visible!important;display:block!important;height:auto!important}:where(body.beg-ui-v1,body.beg-companion-ui) main details>*:not(summary){display:block!important}body.beg-ui-v1 .assistant-backdrop,body.beg-ui-v1 .beg-field-error{display:none!important}}

body.beg-ui-v1 [data-contact-form] .contact-consent .beg-field-error{grid-column:2}
body.beg-ui-v1 [data-contact-form] :is(input,textarea,select)[aria-invalid=true]{border-color:#982b2b!important}
