@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.button-enhanced:hover,.card-hover:hover,.input-enhanced:focus{transform:none!important}}.enhanced-focus:focus-visible{outline:3px solid hsl(var(--primary));outline-offset:2px;border-radius:4px;box-shadow:0 0 0 1px hsl(var(--background)),0 0 0 4px hsl(var(--primary)/.2)}@media (prefers-contrast:high){.enhanced-focus:focus-visible{outline:4px solid;outline-offset:2px;box-shadow:none}.card-hover:hover{border:3px solid;transform:none}.button-enhanced:focus-visible{outline:3px solid;outline-offset:2px}.input-enhanced:focus{outline:2px solid;outline-offset:1px;transform:none}.error-message{background-color:#fff;border:2px solid #dc2626;padding:.25rem;border-radius:.25rem}}.form-step-enter{opacity:0;transform:translateX(20px);will-change:opacity,transform}.form-step-enter-active{opacity:1;transform:translateX(0);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);will-change:auto}.form-step-exit{opacity:1;transform:translateX(0);will-change:opacity,transform}.form-step-exit-active{opacity:0;transform:translateX(-20px);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);will-change:auto}.progress-bar{transition:width .5s cubic-bezier(.4,0,.2,1);will-change:width}.card-hover{transition:all .2s cubic-bezier(.4,0,.2,1);will-change:transform,box-shadow}.card-hover:hover{transform:translateY(-2px);box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.button-enhanced{position:relative;overflow:hidden;transition:all .2s cubic-bezier(.4,0,.2,1);will-change:transform,box-shadow}.button-enhanced:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s cubic-bezier(.4,0,.2,1);will-change:left}.button-enhanced:hover:before{left:100%}.button-enhanced:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.button-enhanced:active{transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,.1);transition-duration:.1s}.input-enhanced{transition:all .2s cubic-bezier(.4,0,.2,1);will-change:transform,box-shadow,border-color}.input-enhanced:focus{transform:scale(1.01);box-shadow:0 0 0 3px hsl(var(--primary)/.1);border-color:hsl(var(--primary))}.file-upload-area{transition:all .2s cubic-bezier(.4,0,.2,1);will-change:transform,border-color,background-color}.file-upload-area.drag-active{transform:scale(1.02);border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.05)}.file-upload-area:hover{border-color:hsl(var(--primary)/.5);background-color:hsl(var(--surface))}.error-message{animation:slideInError .3s cubic-bezier(.4,0,.2,1)}@keyframes slideInError{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.success-message{animation:slideInSuccess .3s cubic-bezier(.4,0,.2,1)}@keyframes slideInSuccess{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.save-status{animation:slideInFromRight .3s cubic-bezier(.4,0,.2,1)}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(100px)}to{opacity:1;transform:translateX(0)}}.loading-spinner{animation:spin 1s linear infinite;will-change:transform}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.pulse-animation{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;will-change:opacity}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.checkbox-enhanced,.radio-enhanced{transition:all .15s cubic-bezier(.4,0,.2,1);will-change:transform}.checkbox-enhanced:checked,.radio-enhanced:checked{transform:scale(1.05)}.form-section{animation:fadeInUp .4s cubic-bezier(.4,0,.2,1)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.skip-link{transition:all .2s cubic-bezier(.4,0,.2,1);transform:translateY(-100%)}.skip-link:focus{transform:translateY(0);box-shadow:0 4px 12px rgba(0,0,0,.15)}@media (prefers-color-scheme:dark){.button-enhanced:before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent)}.enhanced-focus:focus-visible{box-shadow:0 0 0 1px hsl(var(--background)),0 0 0 4px hsl(var(--primary)/.3)}}@media print{.button-enhanced,.file-upload-area,.save-status,.skip-link{display:none!important}.form-section{-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid;margin-bottom:1rem}.enhanced-focus:focus-visible{outline:2px solid #000;box-shadow:none}*{color:#000!important}*,.error-message{background:#fff!important}.error-message{border:2px solid #000!important}}@media (max-width:768px){.button-enhanced:hover,.card-hover:hover{transform:none}.button-enhanced,.checkbox-enhanced,.input-enhanced,.radio-enhanced{min-height:44px;min-width:44px}.enhanced-focus:focus-visible{outline:4px solid hsl(var(--primary));outline-offset:2px}}.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:active,.sr-only:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}.focus-trap{position:relative}.focus-trap:after,.focus-trap:before{content:"";position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}*{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.button-enhanced,.card-hover,.file-upload-area,.input-enhanced{transform:translateZ(0);backface-visibility:hidden}.loading-spinner,.pulse-animation{contain:layout style paint}.keyboard-user .enhanced-focus:focus{outline:3px solid hsl(var(--primary));outline-offset:2px}@media (prefers-contrast:high){.button-enhanced,.card-hover,.input-enhanced{border:2px solid}}@media (forced-colors:active){.enhanced-focus:focus-visible{outline:2px solid;outline-offset:2px}.error-message{border:2px solid;background:Canvas;color:CanvasText}.button-enhanced:before{display:none}}