.form-group{margin-bottom:var(--space-5)}.form-label.required:after{content:" *";color:var(--color-danger)}.input-wrapper{position:relative}.input-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--color-text-muted);font-size:var(--text-lg);pointer-events:none;transition:color var(--transition-fast)}.form-control:focus~.input-icon,.input-wrapper:focus-within .input-icon{color:var(--color-primary)}.password-toggle{position:absolute;right:var(--space-2);top:50%;transform:translateY(-50%);width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;background:none;border:0;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast);z-index:2}.password-toggle:hover{color:var(--color-primary);background:var(--color-surface-alt)}.password-toggle:focus-visible{outline:none;color:var(--color-primary);box-shadow:var(--focus-ring)}.form-actions{display:flex;gap:var(--space-3);margin-top:var(--space-5)}.form-actions .btn{flex:1}.btn-full{width:100%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.animate-fadeIn{animation:fadeIn var(--transition-slow) var(--ease-out)}.animate-fadeInUp{animation:fadeInUp .6s var(--ease-out) both}.animate-fadeInDown{animation:fadeInDown .6s var(--ease-out) both}.animate-slideInRight{animation:slideInRight .6s var(--ease-out) both}.animate-slideInLeft{animation:slideInLeft .6s var(--ease-out) both}.animate-shake{animation:shake .5s var(--ease-in-out)}.spinner{display:inline-block;width:1rem;height:1rem;flex-shrink:0;border:2px solid var(--color-primary-hover);border-top-color:var(--color-on-primary);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ac-wrap{position:relative}.ac-suggestions{position:absolute;top:calc(100% + var(--space-1));left:0;right:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-dropdown);max-height:300px;overflow-y:auto;z-index:var(--z-dropdown);display:none}.ac-item{padding:var(--space-3) var(--space-4);cursor:pointer;border-bottom:1px solid var(--color-divider);color:var(--color-text-secondary);font-size:var(--text-md);line-height:var(--leading-snug);transition:background-color var(--transition-fast)}.ac-item:last-child{border-bottom:none}.ac-item:hover,.ac-item.ac-active{background:var(--color-primary-soft)}.ac-item mark{background:var(--color-warning-soft);color:var(--color-text-primary);padding:0;border-radius:2px;font-weight:var(--weight-bold)}.ac-item small{display:inline-block;margin-top:var(--space-1);font-size:var(--text-base);color:var(--color-text-muted)}.ac-item small.d-block{display:block!important}
