*,*:before,*:after{box-sizing:border-box}body{background-color:#f1f5f9;color:#1f2933}.app-main{display:flex;align-items:center;justify-content:center}.login-wrapper{width:100%;padding:2rem}.login-card{width:380px;margin:0 auto;padding:2.5rem 2rem;background-color:#fff;border-radius:12px;box-shadow:0 20px 45px #0f172a1a}.login-title{margin:0 0 1.5rem;font-size:1.5rem;text-align:center;color:#0f172a}.login-form{display:flex;flex-direction:column;gap:1.25rem}.form-error{padding:.75rem;border:1px solid #f87171;border-radius:8px;background-color:#fee2e2;color:#991b1b;font-size:.95rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{font-weight:600;color:#1f2937}.form-field input{padding:.75rem;border:1px solid #cbd5f5;border-radius:8px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.form-field input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f640}.submit-button{padding:.85rem;font-size:1rem;font-weight:600;color:#fff;background-color:#2563eb;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease,transform .1s ease}.submit-button:hover{background-color:#1d4ed8}.submit-button:active{transform:translateY(1px)}@media(max-width:480px){.login-card{padding:2rem 1.5rem}}
