Files
quality_recticel/py_app/app/static/css/login.css

216 lines
4.0 KiB
CSS

/* Login Page Specific Styles */
.login-page {
display: flex;
align-items: center;
justify-content: space-between;
height: 100vh;
background-color: #f4f4f9;
padding: 0 20px;
}
.logo-container {
width: 100%;
text-align: center;
margin-bottom: 10px;
}
.login-logo {
max-height: 90vh;
width: auto;
}
.form-container {
width: 600px;
background: #fff;
padding: 15px 30px;
border-radius: 5px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
margin: 0;
align-self: center;
}
.form-container h2 {
text-align: center;
margin-bottom: 15px;
}
.form-container form {
display: flex;
flex-direction: column;
}
.form-container label {
margin-bottom: 5px;
font-weight: bold;
}
.form-container input {
margin-bottom: 10px;
padding: 8px;
border: 1px solid #ccc;
border-radius: 3px;
font-size: 16px; /* Prevents zoom on iOS */
}
.form-container button {
padding: 10px;
background-color: #007bff;
color: #fff;
border: none;
border-radius: 3px;
cursor: pointer;
font-size: 16px;
}
.form-container button:hover {
background-color: #0056b3;
}
/* Hide the header only on the login page */
body.light-mode.login-page header,
body.dark-mode.login-page header {
display: none;
}
/* Mobile Responsive Design */
/* Tablet styles (768px and down) */
@media screen and (max-width: 768px) {
.login-page {
flex-direction: column;
justify-content: center;
padding: 20px 15px;
gap: 20px;
}
.logo-container {
margin-bottom: 0;
}
.login-logo {
max-height: 30vh;
max-width: 80vw;
}
.form-container {
width: 100%;
max-width: 400px;
padding: 20px 25px;
}
}
/* Mobile styles (480px and down) */
@media screen and (max-width: 480px) {
.login-page {
padding: 15px 10px;
gap: 15px;
}
.login-logo {
max-height: 25vh;
max-width: 85vw;
}
.form-container {
padding: 20px 20px;
border-radius: 8px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.form-container h2 {
font-size: 1.5em;
margin-bottom: 20px;
}
.form-container input {
padding: 12px;
font-size: 16px;
border-radius: 5px;
margin-bottom: 15px;
}
.form-container button {
padding: 12px;
font-size: 16px;
border-radius: 5px;
font-weight: 600;
}
.form-container label {
font-size: 14px;
margin-bottom: 8px;
}
}
/* Small mobile styles (320px and down) */
@media screen and (max-width: 320px) {
.login-page {
padding: 10px 8px;
}
.login-logo {
max-height: 20vh;
max-width: 90vw;
}
.form-container {
padding: 15px;
width: calc(100% - 16px);
}
.form-container h2 {
font-size: 1.3em;
}
}
/* Landscape orientation adjustments */
@media screen and (max-height: 500px) and (orientation: landscape) {
.login-page {
flex-direction: row;
justify-content: space-around;
align-items: center;
gap: 20px;
}
.logo-container {
flex: 1;
margin-bottom: 0;
}
.login-logo {
max-height: 80vh;
max-width: 40vw;
}
.form-container {
flex: 1;
max-width: 350px;
align-self: center;
}
}
/* Touch device optimizations */
@media (hover: none) and (pointer: coarse) {
.form-container input {
min-height: 44px; /* Apple's recommended touch target size */
}
.form-container button {
min-height: 44px;
font-weight: 600;
}
.form-container button:active {
background-color: #004494;
transform: translateY(1px);
}
}
/* High DPI displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
.login-logo {
image-rendering: -webkit-optimize-contrast;
image-rendering: crisp-edges;
}
}