@keyframes errorShake{0%{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-5px)}to{transform:translate(0)}}@keyframes pulseError{0%{box-shadow:0 0 #f56565b3}70%{box-shadow:0 0 0 10px #f5656500}to{box-shadow:0 0 #f5656500}}.error-shake{animation:errorShake .5s ease-in-out;border-color:#f56565!important;box-shadow:0 0 0 3px #f565654d!important}.pulse-error{animation:pulseError 1.5s infinite}.error-container,[id^=duplicate-error]{transition:opacity .3s ease-in-out,max-height .5s ease-in-out;max-height:0;overflow:hidden}.error-container:not(.hidden),[id^=duplicate-error]:not(.hidden){max-height:200px;margin-bottom:1rem;border-left:4px solid #f56565}.input-invalid{animation:errorShake .5s ease-in-out;border-color:#f56565!important}.validation-message{font-size:.85rem;color:#e53e3e;margin-top:.25rem;transition:all .3s ease-in-out}.readonly-field{cursor:not-allowed;background-color:#f3f4f6;border-color:#d1d5db;color:#4b5563;box-shadow:none!important;position:relative}html .readonly-field:focus{outline:none;border-color:#d1d5db;box-shadow:none}.readonly-field:hover:before{content:attr(data-tooltip);position:absolute;bottom:-25px;left:0;background-color:#000000b3;color:#fff;padding:3px 8px;border-radius:3px;font-size:12px;white-space:nowrap;z-index:10;opacity:0;transform:translateY(-5px);transition:opacity .3s,transform .3s}.readonly-field:hover:before{opacity:1;transform:translateY(0)}.readonly-message{position:absolute;z-index:50;background-color:#1f2937;color:#fff;padding:.25rem .75rem;border-radius:.25rem;font-size:.75rem;opacity:0;transition:opacity .3s ease;box-shadow:0 1px 3px #0000001a}
