@media (prefers-contrast:high){*{background-color:ButtonFace!important;color:ButtonText!important;border-color:ButtonText!important}a{color:LinkText!important}a:visited{color:VisitedText!important}button,input[type=button],input[type=submit]{background-color:ButtonFace!important;color:ButtonText!important;border:1px solid ButtonText!important}input,select,textarea{background-color:Field!important;color:FieldText!important;border:1px solid ButtonText!important}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.autism-safe-colors{--primary:#2563eb;--secondary:#7c3aed;--success:#059669;--warning:#d97706;--error:#dc2626;--calm:#10b981}.focus-ring-tight:focus-visible{outline:2px solid currentColor;outline-offset:1px}.focus-ring-loose:focus-visible{outline:3px solid currentColor;outline-offset:4px}.sr-announcement{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.sr-announcement[aria-live=assertive],.sr-announcement[aria-live=polite]{position:static!important;left:auto!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important}.autism-interface{--spacing-unit:8px;--spacing-xs:calc(var(--spacing-unit) * 1);--spacing-sm:calc(var(--spacing-unit) * 2);--spacing-md:calc(var(--spacing-unit) * 3);--spacing-lg:calc(var(--spacing-unit) * 4);--spacing-xl:calc(var(--spacing-unit) * 6);--font-weight-normal:400;--font-weight-medium:500;--font-weight-bold:600;--color-primary:#4c9eff;--color-secondary:#7c3aed;--color-calm:#10b981;--color-neutral:#6b7280;--color-warning:#f59e0b;--color-danger:#ef4444}.sensory-friendly{animation-play-state:paused;background-color:#f8fafc;color:#1f2937;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.button-states{background-color:var(--color-primary);color:#fff;border:2px solid var(--color-primary);transition:all .2s ease}.button-states:hover{background-color:#3b82f6;border-color:#3b82f6;transform:translateY(-1px)}.button-states:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}.button-states:active{transform:translateY(0);background-color:#1d4ed8}.button-states:disabled{opacity:.5;cursor:not-allowed;transform:none}.form-field-valid{border-color:var(--color-calm);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2310b981'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 13l4 4L19 7'/%3E%3C/svg%3E")}.form-field-invalid,.form-field-valid{background-repeat:no-repeat;background-position:right 12px center;background-size:20px}.form-field-invalid{border-color:var(--color-danger);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23ef4444'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 18L18 6M6 6l12 12'/%3E%3C/svg%3E")}.loading-gentle{background:linear-gradient(90deg,transparent,rgba(76,158,255,.1),transparent);background-size:200% 100%;animation:gentleLoading 2s infinite}@keyframes gentleLoading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.loading-gentle{animation:none;background:rgba(76,158,255,.05)}}@media (hover:none) and (pointer:coarse){a,button,input,select,textarea{min-height:44px;min-width:44px}.button-states:hover{transform:none}}@media (prefers-color-scheme:dark){.autism-interface{--color-primary:#60a5fa;--color-secondary:#a78bfa;--color-calm:#34d399;background-color:#1f2937;color:#f9fafb}.sensory-friendly{background-color:#374151;color:#f3f4f6}}@media print{*{background:#fff!important;color:#000!important}a[href]:after{content:" (" attr(href) ")";font-size:smaller}.accessibility-toolbar,.no-print,button[type=button],nav{display:none!important}input,select,textarea{border:1px solid #000!important}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-zoom-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-backdrop{position:fixed;inset:0;z-index:50}.animate-in{animation-duration:.2s;animation-timing-function:cubic-bezier(.4,0,.2,1);animation-fill-mode:both}.fade-in{animation-name:modal-fade-in}.zoom-in-95{animation-name:modal-zoom-in}@media (prefers-reduced-motion:reduce){.animate-in{animation-duration:.01ms!important;animation-iteration-count:1!important}}.modal-backdrop [data-focus-trap],.modal-backdrop [role=dialog]{outline:none}.modal-backdrop [role=dialog]:focus{outline:2px solid #2563eb;outline-offset:2px}