/* Accessibility Toolbar Styles */
.gsu-a11y-toolbar { position: fixed; left: 0; top: 50%; transform: translateY(-50%); z-index: 99999; }
.a11y-toolbar-toggle { background: var(--gsu-primary, #0039A6); color: #fff; border: none; width: 44px; height: 44px; font-size: 20px; cursor: pointer; border-radius: 0 8px 8px 0; }
.a11y-toolbar-panel { position: absolute; left: 44px; top: 0; background: #fff; border: 2px solid var(--gsu-primary, #0039A6); border-radius: 0 8px 8px 0; padding: 16px; min-width: 200px; box-shadow: 2px 2px 10px rgba(0,0,0,0.15); }
.a11y-toolbar-panel h3 { font-size: 14px; margin-bottom: 12px; color: var(--gsu-primary); }
.a11y-toolbar-panel button { display: block; width: 100%; text-align: left; padding: 8px 12px; border: 1px solid #e0e0e0; border-radius: 4px; background: #fff; cursor: pointer; margin-bottom: 4px; font-size: 13px; }
.a11y-toolbar-panel button:hover { background: #f0f0f0; }
.a11y-toolbar-panel button:focus { outline: 3px solid var(--gsu-primary); }

body.a11y-high-contrast { filter: contrast(1.5); }
body.a11y-large-text { font-size: 120% !important; }
body.a11y-large-text * { font-size: inherit !important; }
body.a11y-reduced-motion * { animation: none !important; transition: none !important; }
body.a11y-dyslexia-font, body.a11y-dyslexia-font * { font-family: 'OpenDyslexic', 'Comic Sans MS', sans-serif !important; }
body.a11y-highlight-links a { outline: 3px solid #ff0 !important; background: rgba(255,255,0,0.2) !important; }
