Files
Parking/css/auth.css
2026-03-11 17:18:34 +01:00

166 lines
3.2 KiB
CSS

/* ============================================
AUTHENTIFICATION - STYLES
============================================ */
.auth-page {
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
background: linear-gradient(135deg, var(--bg-darker) 0%, var(--bg-dark) 50%, var(--primary-dark) 100%);
position: relative;
overflow: hidden;
}
.auth-page::before {
content: '';
position: absolute;
top: -50%;
left: -50%;
width: 200%;
height: 200%;
background: radial-gradient(circle, rgba(99, 102, 241, 0.1) 0%, transparent 50%);
animation: rotate 30s linear infinite;
}
@keyframes rotate {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
.auth-container {
position: relative;
z-index: 1;
width: 100%;
max-width: 420px;
padding: 20px;
}
.auth-box {
background: var(--bg-card);
border-radius: var(--border-radius);
padding: 40px;
border: 1px solid var(--border);
box-shadow: var(--shadow-lg);
backdrop-filter: blur(10px);
}
.auth-logo {
text-align: center;
margin-bottom: 32px;
}
.auth-logo .logo-icon {
font-size: 4rem;
display: block;
margin-bottom: 16px;
}
.auth-logo h1 {
font-size: 1.8rem;
font-weight: 700;
background: linear-gradient(135deg, var(--primary-light) 0%, var(--primary) 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
margin-bottom: 8px;
}
.auth-logo p {
color: var(--text-muted);
font-size: 0.95rem;
}
.auth-form h2 {
font-size: 1.3rem;
margin-bottom: 24px;
text-align: center;
}
.auth-form .form-group {
margin-bottom: 20px;
}
.auth-form .form-group label {
display: block;
margin-bottom: 8px;
font-size: 0.9rem;
font-weight: 500;
color: var(--text-secondary);
}
.auth-form .form-control {
width: 100%;
padding: 14px 16px;
background: var(--bg-dark);
border: 1px solid var(--border);
border-radius: var(--border-radius-sm);
color: var(--text-primary);
font-size: 1rem;
transition: var(--transition);
}
.auth-form .form-control:focus {
outline: none;
border-color: var(--primary);
box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.2);
}
.auth-form .btn-block {
width: 100%;
padding: 14px;
margin-top: 8px;
}
.auth-switch {
text-align: center;
margin-top: 20px;
color: var(--text-muted);
font-size: 0.9rem;
}
.auth-switch a {
color: var(--primary-light);
text-decoration: none;
font-weight: 600;
}
.auth-switch a:hover {
text-decoration: underline;
}
.auth-message {
margin-top: 16px;
padding: 12px 16px;
border-radius: var(--border-radius-sm);
font-size: 0.9rem;
text-align: center;
}
.auth-message.error {
background: rgba(239, 68, 68, 0.1);
border: 1px solid var(--danger);
color: var(--danger);
}
.auth-message.success {
background: rgba(16, 185, 129, 0.1);
border: 1px solid var(--success);
color: var(--success);
}
/* Responsive */
@media (max-width: 480px) {
.auth-box {
padding: 24px;
}
.auth-logo .logo-icon {
font-size: 3rem;
}
.auth-logo h1 {
font-size: 1.5rem;
}
}