.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}.sr-only.focus-within:not-sr-only,.sr-only:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}.high-contrast{--tw-bg-white:#000000;--tw-bg-gray-50:#000000;--tw-bg-gray-100:#000000;--tw-text-gray-900:#ffffff;--tw-text-gray-800:#ffffff;--tw-text-gray-700:#ffffff;--tw-text-gray-600:#ffffff;--tw-text-gray-500:#ffffff;--tw-border-gray-200:#ffffff;--tw-border-gray-300:#ffffff}.high-contrast *{background-color:black!important;color:white!important;border-color:white!important}.high-contrast img,.high-contrast svg,.high-contrast video{filter:invert(1) contrast(2)}.high-contrast .bg-blue-500,.high-contrast .bg-green-500,.high-contrast .bg-orange-500,.high-contrast .bg-red-500{background-color:white!important;color:black!important}.large-text{font-size:120%!important}.large-text *{font-size:inherit!important}.large-text .text-xs{font-size:.875rem!important}.large-text .text-sm{font-size:1rem!important}.large-text .text-base{font-size:1.125rem!important}.large-text .text-lg{font-size:1.25rem!important}.large-text .text-xl{font-size:1.5rem!important}.large-text .text-2xl{font-size:1.875rem!important}.large-text .text-3xl{font-size:2.25rem!important}.reduce-motion,.reduce-motion *,.reduce-motion :after,.reduce-motion :before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reduce-motion .animate-bounce,.reduce-motion .animate-ping,.reduce-motion .animate-pulse,.reduce-motion .animate-spin{animation:none!important}.focus-visible:focus,:focus{outline:2px solid #3b82f6;outline-offset:2px}.skip-link{position:absolute;top:-40px;left:6px;background:#3b82f6;color:white;padding:8px;text-decoration:none;z-index:100;border-radius:0 0 4px 4px}.skip-link:focus{top:0}.keyboard-navigation :focus{outline:3px solid #fbbf24;outline-offset:2px}:root{--accessibility-font-scale:1;--accessibility-line-height:1.5}*{font-size:calc(1em * var(--accessibility-font-scale));line-height:var(--accessibility-line-height)}.dark .high-contrast{--tw-bg-black:#ffffff;--tw-bg-gray-900:#ffffff;--tw-bg-gray-800:#ffffff;--tw-text-white:#000000;--tw-text-gray-100:#000000;--tw-text-gray-200:#000000}.dark.high-contrast *{background-color:white!important;color:black!important;border-color:black!important}.dark.high-contrast img,.dark.high-contrast svg,.dark.high-contrast video{filter:invert(0) contrast(2)}a:focus,button:focus,input:focus,select:focus,textarea:focus{outline:2px solid #3b82f6;outline-offset:2px;box-shadow:0 0 0 4px rgba(59,130,246,.1)}a,button,input[type=button],input[type=reset],input[type=submit]{min-height:44px;min-width:44px}label{cursor:pointer}input:invalid,select:invalid,textarea:invalid{border-color:#ef4444;box-shadow:0 0 0 1px #ef4444}input:invalid:focus,select:invalid:focus,textarea:invalid:focus{outline-color:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.1)}.error-message{color:#ef4444;font-size:.875rem;margin-top:.25rem}.error-message:before{content:"⚠ ";font-weight:700}.success-message{color:#10b981;font-size:.875rem;margin-top:.25rem}.success-message:before{content:"✓ ";font-weight:700}.loading{position:relative}.loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.reduce-motion .loading:after{animation:none;border:2px solid #3b82f6}table{border-collapse:collapse}th{text-align:left;font-weight:700}th[scope=col]{border-bottom:2px solid #374151}th[scope=row]{border-right:2px solid #374151}.modal-backdrop{background-color:rgba(0,0,0,.5)}.modal{max-height:90vh;overflow-y:auto}.tooltip{position:relative}.tooltip[aria-describedby]{cursor:help}.progress-bar{background-color:#e5e7eb;border-radius:9999px;overflow:hidden}.progress-fill{height:100%;background-color:#3b82f6;transition:width .3s ease}.reduce-motion .progress-fill{transition:none}.carousel-button{background-color:rgba(0,0,0,.5);color:white;border:none;padding:.5rem;cursor:pointer}.carousel-button:hover{background-color:rgba(0,0,0,.7)}.carousel-button:focus{outline:2px solid #3b82f6;outline-offset:2px}@media print{.no-print{display:none!important}*{background:white!important;color:black!important}a:after{content:" (" attr(href) ")"}}@media (max-width:640px){.large-text{font-size:110%!important}}@media (max-width:480px){.large-text{font-size:105%!important}}.colorblind-friendly{--color-primary:#0066cc;--color-secondary:#ff6600;--color-success:#009900;--color-warning:#ffcc00;--color-error:#cc0000}@media (prefers-contrast:high){*{border-color:ButtonText}button{background-color:ButtonFace;color:ButtonText;border:1px solid ButtonText}a{color:LinkText}a:visited{color:VisitedText}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}