.high-contrast{--accessibility-bg-primary:#000000;--accessibility-bg-secondary:#1a1a1a;--accessibility-text-primary:#ffffff;--accessibility-text-secondary:#cccccc;--accessibility-accent:#00ff00;--accessibility-border:#666666}.high-contrast *{background-color:var(--accessibility-bg-primary)!important;color:var(--accessibility-text-primary)!important;border-color:var(--accessibility-border)!important}.high-contrast .bg-gray-700,.high-contrast .bg-gray-800,.high-contrast .bg-gray-900{background-color:#000000!important}.high-contrast .bg-gray-100,.high-contrast .bg-gray-50,.high-contrast .bg-white{background-color:#1a1a1a!important;color:#ffffff!important}.high-contrast .text-blue-400,.high-contrast .text-blue-600,.high-contrast .text-purple-400,.high-contrast .text-purple-600{color:var(--accessibility-accent)!important}.large-text{font-size:calc(1rem * var(--accessibility-text-scale, 1.25))}.large-text h1{font-size:calc(2.25rem * var(--accessibility-text-scale, 1.25))}.large-text h2{font-size:calc(1.875rem * var(--accessibility-text-scale, 1.25))}.large-text h3{font-size:calc(1.5rem * var(--accessibility-text-scale, 1.25))}.large-text .text-sm{font-size:calc(.875rem * var(--accessibility-text-scale, 1.25))}.large-text .text-xs{font-size:calc(.75rem * var(--accessibility-text-scale, 1.25))}.reduced-motion *,.reduced-motion :after,.reduced-motion :before{animation-duration:var(--accessibility-animation-speed,.01ms)!important;animation-iteration-count:1!important;transition-duration:var(--accessibility-animation-speed,.01ms)!important;scroll-behavior:auto!important}.reduced-motion .animate-pulse,.reduced-motion .animate-spin{animation:none!important}.color-blind-assist .bg-blue-600{background-color:#0066cc!important;background-image:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,255,255,.1) 0,rgba(255,255,255,.1) 4px)}.color-blind-assist .bg-green-600{background-color:#009900!important;background-image:repeating-linear-gradient(-45deg,transparent,transparent 2px,rgba(255,255,255,.1) 0,rgba(255,255,255,.1) 4px)}.color-blind-assist .bg-red-600{background-color:#cc0000!important;background-image:repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(255,255,255,.1) 0,rgba(255,255,255,.1) 4px)}.color-blind-assist .bg-yellow-600{background-color:#cccc00!important;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 4px)}.simplified-ui{--tw-gradient-from:transparent;--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.simplified-ui .bg-gradient-to-b,.simplified-ui .bg-gradient-to-br,.simplified-ui .bg-gradient-to-r{background:#f3f4f6!important;background-image:none!important}.simplified-ui .shadow-2xl,.simplified-ui .shadow-lg,.simplified-ui .shadow-xl{box-shadow:0 1px 3px 0 rgba(0,0,0,.1)!important}.simplified-ui .rounded-2xl,.simplified-ui .rounded-3xl{border-radius:.5rem!important}.focus-assist :focus{outline:3px solid #0066cc!important;outline-offset:2px!important;box-shadow:0 0 0 5px rgba(0,102,204,.3)!important}.focus-assist a:focus,.focus-assist button:focus,.focus-assist input:focus,.focus-assist select:focus,.focus-assist textarea:focus{background-color:#e6f3ff!important;border-color:#0066cc!important}.accessibility-toolbar{position:fixed;top:0;left:0;right:0;background:#1f2937;color:white;padding:10px;text-align:center;z-index:2000;font-size:14px;border-bottom:2px solid #374151}.accessibility-toolbar button{background:#374151;color:white;border:1px solid #4b5563;padding:5px 10px;margin:0 5px;border-radius:3px;cursor:pointer}.accessibility-toolbar button:hover{background:#4b5563}.accessibility-toolbar button.active{background:#3b82f6;border-color:#2563eb}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (min-width:768px){.skip-link:focus-visible{top:6px}}.focus-trap{position:relative}.focus-trap:after,.focus-trap:before{content:"";position:absolute;width:1px;height:1px;opacity:0}@media (max-width:768px){.large-text{font-size:calc(1rem * 1.4)}}