/* Common Styles */ body { font-family: 'Inter', sans-serif; margin: 0; padding: 0; background: linear-gradient(135deg, #1e2746, #14172b); color: #d4d7e0; display: flex; justify-content: center; align-items: center; height: 100vh; overflow: hidden; } .login-page { display: flex; width: 900px; height: 500px; background: #252a4a; border-radius: 15px; box-shadow: 0 25px 45px rgba(0, 0, 0, 0.3), 0 10px 15px rgba(0, 0, 0, 0.1); overflow: hidden; } /* Updated Styles for the Welcome Section */ .welcome-section { flex: 1; background: linear-gradient(135deg, #374785, #243b55); /* Gradient for a modern look */ color: #ffffff; padding: 40px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2); /* Smooth shadow */ position: relative; overflow: hidden; } /* Decorative Elements */ .welcome-section::before { content: ''; position: absolute; top: -40px; right: -40px; width: 120px; height: 120px; background: rgba(255, 255, 255, 0.1); border-radius: 50%; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); } .welcome-section::after { content: ''; position: absolute; bottom: -30px; left: -30px; width: 80px; height: 80px; background: rgba(255, 127, 80, 0.2); border-radius: 50%; transform: rotate(45deg); } .welcome-section h1 { font-size: 36px; font-weight: bold; margin-bottom: 10px; letter-spacing: 1px; text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* Text shadow for a subtle 3D effect */ } .welcome-section p { font-size: 16px; max-width: 280px; /* Slightly increased width for better readability */ line-height: 1.6; color: #d1d5db; opacity: 0.9; /* Softened text color */ } .login-container { flex: 1; padding: 60px 40px; box-sizing: border-box; text-align: center; background: #1f2235; border-left: 3px solid #ff7f50; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); } .logo-image { width: 80px; /* Adjust this value to the desired size */ height: auto; /* Maintain aspect ratio */ margin-bottom: 20px; /* Adjust spacing below the logo */ } .input-group { margin-bottom: 20px; text-align: left; } .input-group label { display: flex; align-items: center; color: #a3a8b7; font-weight: 500; margin-bottom: 6px; font-size: 14px; transition: color 0.3s; } .input-group label i { margin-left: 8px; /* Add spacing between the icon and text */ margin-right: 0; /* Remove unnecessary right margin */ font-size: 18px; } .input-group input { width: calc(100% - 20px); /* Adjust the width to match the container */ padding: 12px 11px; border-radius: 8px; border: 1px solid #a3a8b7; background-color: #2c3048; color: #d4d7e0; transition: border-color 0.3s ease, box-shadow 0.3s, background-color 0.3s; outline: none; font-size: 15px; margin-top: 5px; /* Space between label and input */ } .input-group input:focus { border-color: #4d54c6; box-shadow: 0 0 12px rgba(77, 84, 198, 0.6); background-color: #343952; } .login-button { width: 100%; padding: 14px; border: none; border-radius: 8px; background-color: #00a884; color: #ffffff; font-size: 16px; font-weight: 600; cursor: pointer; transition: background-color 0.3s, transform 0.2s, box-shadow 0.3s; margin-top: 20px; letter-spacing: 0.5px; } .login-button:hover { background-color: #00a884bb; } .footer { text-align: center; padding: 20px 10px; background-color: #1a1d33; color: #d4d7e0; font-size: 14px; position: fixed; bottom: 0; width: 100%; box-shadow: 0 -4px 15px rgba(0, 0, 0, 0.5); border-top: 1px solid #2a2e46; letter-spacing: 0.5px; transition: background-color 0.3s; } .footer p { margin: 0; opacity: 0.9; font-weight: 500; letter-spacing: 0.3px; text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); } .footer a { color: #ff7f50; /* Vivid accent color for the link */ text-decoration: none; font-weight: 600; transition: color 0.3s, text-shadow 0.3s; } .password-wrapper { position: relative; } #password { width: calc(100% - 30px); padding-right: 10px; } .toggle-password { position: absolute; top: 50%; left: 10px; /* Moved to the left */ transform: translateY(-50%); cursor: pointer; color: #a3a8b7; font-size: 18px; transition: color 0.3s; } .toggle-password:hover { color: #4d54c6; } /* Remove built-in eye icons in password fields for WebKit-based browsers like Chrome and Safari */ input[type="password"]::-ms-reveal, input[type="password"]::-ms-clear { display: none; /* For Internet Explorer and Edge */ } input[type="password"]::-webkit-inner-spin-button, input[type="password"]::-webkit-outer-spin-button { -webkit-appearance: none; /* For Chrome, Safari, and Edge */ appearance: none; margin: 0; } input[type="password"] { -webkit-appearance: none; /* Remove built-in styling */ appearance: none; } #keycode-form { display: block; /* Default state for the Key Code form */ } #login-form { display: block; /* Default state for the Login form */ } .return-button { width: 100%; padding: 14px; border: none; border-radius: 8px; background-color: #ff7f50; color: #ffffff; font-size: 16px; font-weight: 600; cursor: pointer; transition: background-color 0.3s, transform 0.2s, box-shadow 0.3s; margin-top: 20px; letter-spacing: 0.5px; } .return-button:hover { background-color: #e67340; } .return-button i { margin-right: 8px; font-size: 16px; } /* Locked State Styles */ .locked { opacity: 0.5; /* Dimmed effect for disabled buttons and inputs */ cursor: not-allowed; /* Not-allowed cursor for disabled elements */ pointer-events: none; /* Disable clicking and interaction */ } /* Example for styling locked buttons */ .login-button.locked, .return-button.locked { background-color: #5a5a5a; /* Gray background for locked state */ color: #b5b5b5; /* Lighter text color */ box-shadow: none; /* Remove shadow */ } .input-group input.locked { background-color: #3a3a3a; /* Darker background for disabled input */ border-color: #5a5a5a; /* Gray border */ color: #b5b5b5; /* Lighter text color */ } /* Media Query for Small Screens */ @media (max-width: 768px) { .login-page { flex-direction: column; /* Stack content vertically */ height: auto; /* Allow height to adjust */ } .welcome-section { padding: 20px; } .login-container { padding: 20px; border-top: 3px solid #ff7f50; /* Add border for better separation */ border-left: none; } } /* Media Query for Extra Small Screens */ @media (max-width: 480px) { body { padding: 10px; /* Add padding to prevent content from touching edges */ } .welcome-section h1 { font-size: 24px; /* Reduce heading size */ } .welcome-section p { font-size: 14px; /* Reduce text size */ } .logo-image { width: 50px; /* Further reduce logo size */ } .input-group input { font-size: 14px; /* Reduce input text size */ } .login-button, .return-button { font-size: 12px; /* Further reduce button font size */ padding: 10px; } }