2025-10-20 13:24:46 +02:00

147 lines
2.2 KiB
CSS

/* General layout */
body {
margin: 0;
font-family: 'Roboto', 'RobotoDraft', Helvetica, Arial, sans-serif;
background-color: #29292e;
color: #e5e7eb;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100vh;
}
/* Container */
.container {
width: 90%;
max-width: 500px;
padding: 2rem;
box-sizing: border-box;
}
/* Header */
.header {
text-align: center;
margin-bottom: 2rem;
}
.logo {
height: 150px;
}
.subtitle {
color: #b0b0b5;
font-size: 1.2rem;
line-height: 1.4;
}
/* Card */
.card {
background-color: #242429;
border-radius: 12px;
padding: 2rem;
box-shadow: 0 0 20px rgba(0, 0, 0, 0.25);
}
.card h2 {
margin-top: 0;
color: #f3f4f6;
text-align: center;
}
/* Form */
form {
display: flex;
flex-direction: column;
margin-top: 1.5rem;
}
label {
font-size: 0.9rem;
color: #c5c6ca;
margin-bottom: 0.3rem;
}
.required {
color: #ef5350;
}
input[type='text'] {
background-color: #1b1b1f;
border: 1px solid #3c3c44;
color: #f9fafb;
padding: 0.75rem;
border-radius: 8px;
outline: none;
font-size: 1rem;
margin-bottom: 1.2rem;
transition: border-color 0.2s ease;
}
input[type='text']:focus {
border-color: #cecece;
}
.error-message {
color: #f87171;
font-size: 0.85rem;
margin-top: 0;
margin-bottom: 1rem;
height: 1rem;
}
/* Button */
button {
background-color: #4caf50;
color: white;
font-weight: 600;
border: none;
padding: 0.9rem;
border-radius: 8px;
cursor: pointer;
font-size: 1rem;
transition: background-color 0.2s;
}
button:hover:enabled {
background-color: #43a047;
}
button:disabled {
opacity: 0.5;
cursor: not-allowed;
}
/* Footer */
.footer {
text-align: center;
margin-top: 2rem;
color: #9ca3af;
font-size: 0.8rem;
}
/* Responsive adjustments */
@media (max-width: 480px) {
.container {
max-width: 90%;
padding: 1.5rem;
}
.subtitle {
font-size: 1rem;
}
.card {
padding: 1.5rem;
}
.logo {
height: 100px;
}
button {
padding: 0.8rem;
font-size: 0.95rem;
}
}