*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;color:#2c3e50;background-color:#f8f9fa}main{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem}h1{font-size:2rem;color:#34495e}h1,p{margin-bottom:1rem}p{color:#5a6c7d}a{color:#3498db;text-decoration:none}a:hover{text-decoration:underline}a:focus{outline:2px solid #3498db;outline-offset:2px}button,input{font-family:inherit;font-size:1rem}button{background-color:#3498db;color:white;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;transition:background-color .2s}button:hover{background-color:#2980b9}button:focus{outline:2px solid #3498db;outline-offset:2px}button:disabled{background-color:#95a5a6;cursor:not-allowed}input[type=password],input[type=text]{width:100%;padding:.75rem;border:1px solid #bdc3c7;border-radius:4px;font-size:1rem}input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px rgba(52,152,219,.1)}label{display:block;margin-bottom:.5rem;font-weight:500;color:#34495e}.card{background:white;border-radius:8px;padding:2rem;box-shadow:0 2px 4px rgba(0,0,0,.1);max-width:400px;width:100%}.form-group{margin-bottom:1.5rem}.error{color:#e74c3c;background-color:#fadbd8;padding:.75rem;border-radius:4px;margin-bottom:1rem}.user-info{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #ecf0f1;color:#7f8c8d}form{width:100%}