/* Personal accessibility preferences. No external dependencies or telemetry. */
#personal-accessibility { --pa-navy: #0b2b50; --pa-gold: #c3a658; font: 16px/1.5 Arial, sans-serif; color: #152b40; }
#personal-accessibility * { box-sizing: border-box; }
#personal-accessibility .pa-launcher { position: fixed; left: 16px; bottom: 16px; z-index: 10000; width: 48px; height: 48px; display: grid; place-items: center; padding: 0; color: #fff; background: var(--pa-navy); border: 2px solid var(--pa-gold); border-radius: 50%; cursor: pointer; box-shadow: 0 6px 18px #071c3547; }
#personal-accessibility dialog { width: min(410px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow: auto; margin: auto; padding: 24px; border: 1px solid #c3a658; border-radius: 16px; background: #fff; color: #152b40; box-shadow: 0 20px 70px #071c3555; }
#personal-accessibility dialog::backdrop { background: #071c3566; }
#personal-accessibility .pa-heading { display: flex; align-items: start; gap: 12px; }
#personal-accessibility h2 { margin: 0 0 12px; font: bold 22px/1.3 Arial, sans-serif; color: var(--pa-navy); }
#personal-accessibility p { margin: 0 0 18px; }
#personal-accessibility button, #personal-accessibility select { font: inherit; cursor: pointer; }
#personal-accessibility .pa-close { margin-left: auto; flex-shrink: 0; width: 40px; height: 40px; padding: 0; border: 1px solid #8796a6; border-radius: 8px; background: #fff; color: var(--pa-navy); font-size: 26px; }
#personal-accessibility .pa-size { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 18px; margin-bottom: 14px; font-weight: bold; }
#personal-accessibility select { min-height: 44px; width: 100%; padding: 8px; background: #fff; color: #152b40; border: 1px solid #8796a6; border-radius: 6px; }
#personal-accessibility .pa-option { display: flex; align-items: center; gap: 12px; min-height: 48px; border-bottom: 1px solid #dce2e8; cursor: pointer; }
#personal-accessibility input { width: 20px; height: 20px; accent-color: var(--pa-navy); flex-shrink: 0; }
#personal-accessibility .pa-reset { margin: 20px 0 14px; min-height: 44px; width: 100%; padding: 10px; border: 0; border-radius: 7px; color: white; background: var(--pa-navy); }
#personal-accessibility .pa-note { font-size: 13px; color: #465567; }
#personal-accessibility :focus-visible { outline: 3px solid #125fcc; outline-offset: 3px; }
#personal-accessibility .pa-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
html.pa-large-text .pa-content [style*="--pa-base-size"] { font-size: calc(var(--pa-base-size) * var(--pa-text-scale)) !important; }
html.pa-spacing .pa-content :is(p,li,a,label,h1,h2,h3,h4,blockquote) { line-height: 1.8 !important; letter-spacing: .08em !important; word-spacing: .12em !important; }
html.pa-links .pa-content a { text-decoration: underline !important; text-underline-offset: .2em; }
html.pa-contrast .pa-content, html.pa-contrast .pa-content * { color: #fff !important; background-color: #101820 !important; background-image: none !important; border-color: #fff !important; text-shadow: none !important; }
html.pa-contrast .pa-content a { color: #ffe18a !important; }
html.pa-contrast .pa-content :focus-visible { outline: 3px solid #ffe18a !important; outline-offset: 3px; }
html.pa-motion, html.pa-motion *, html.pa-motion *::before, html.pa-motion *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
html.pa-motion .reveal, html.pa-motion .logo-entrance-pending, html.pa-motion .logo-entrance-active { opacity: 1 !important; transform: none !important; }
html.pa-motion .brand, html.pa-motion .footer-brand > a { transform: none !important; }
@media (forced-colors: active) { #personal-accessibility .pa-launcher { border-color: ButtonText; } }
#personal-accessibility .pa-statement { text-align: center; margin: 18px 0 0; }
#personal-accessibility .pa-statement a { color: var(--pa-navy); text-decoration: underline; text-underline-offset: 3px; }
#personal-accessibility .pa-size select { min-width: 0; }
#personal-accessibility .pa-reset,
#personal-accessibility .pa-close { transition: box-shadow 200ms ease; }
#personal-accessibility .pa-reset:hover,
#personal-accessibility .pa-close:hover { box-shadow: 0 3px 9px rgba(7, 28, 53, 0.2); }
@media (prefers-reduced-motion: reduce) {
    #personal-accessibility .pa-reset,
    #personal-accessibility .pa-close { transition: none; }
}
/* Grow toward the page so the enlarged launcher stays inside the window. */
#personal-accessibility .pa-launcher {
    transform: scale(1);
    transform-origin: bottom left;
    transition: transform 1s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (hover: hover) {
    #personal-accessibility .pa-launcher:hover { transform: scale(1.2); }
}
@media (prefers-reduced-motion: reduce) {
    #personal-accessibility .pa-launcher { transition: none; transform: none; }
}
html.pa-motion #personal-accessibility .pa-launcher { transform: none; }