/* Shared login + register page styles */
body {
    margin: 0;
    min-height: 100vh;
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: linear-gradient(180deg, #f3f7ff 0%, #e5f0ff 45%, #f7f9fd 100%);
    color: #1f2a42;
}

.auth-page {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 2rem;
}

.auth-card {
    width: min(520px, 100%);
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 24px 60px rgba(30, 50, 90, 0.12);
    padding: 2.25rem 2rem;
    border: 1px solid rgba(31, 42, 66, 0.08);
}

.brand {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 16px;
    color: white;
    font-weight: 700;
    font-size: 1.2rem;
    margin-bottom: 1rem;
}

.brand.login-brand {
    background: linear-gradient(135deg, #4f73ff 0%, #6fa6ff 100%);
}

.brand.register-brand {
    background: linear-gradient(135deg, #ffb347 0%, #ffcc33 100%);
}

.auth-card h2 {
    margin: 0;
    font-size: 2rem;
    letter-spacing: -0.03em;
    line-height: 1.1;
}

.auth-subtitle {
    margin: 0.75rem 0 2rem;
    color: #5a6784;
    line-height: 1.6;
}

.auth-form p {
    margin: 0 0 1rem;
}

.auth-form label {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: #344163;
}

.auth-form input,
.auth-form select,
.auth-form textarea {
    width: 100%;
    padding: 0.95rem 1rem;
    border: 1px solid #d7e0f4;
    border-radius: 14px;
    background: #fbfdff;
    font-size: 1rem;
    color: #25304f;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.auth-form input:focus,
.auth-form select:focus,
.auth-form textarea:focus {
    border-color: #4f73ff;
    box-shadow: 0 0 0 4px rgba(79, 115, 255, 0.15);
}

.auth-form button {
    width: 100%;
    margin-top: 0.75rem;
    padding: 1rem;
    border: none;
    border-radius: 14px;
    background: linear-gradient(135deg, #4f73ff 0%, #7fafff 100%);
    color: white;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.auth-form button:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 30px rgba(79, 115, 255, 0.2);
}

.auth-footer {
    margin: 1.5rem 0 0;
    text-align: center;
    font-size: 0.95rem;
    color: #5a6784;
}

.auth-footer a {
    color: #3f6bff;
    text-decoration: none;
    font-weight: 600;
}

.auth-footer a:hover {
    text-decoration: underline;
}

@media (max-width: 540px) {
    .auth-card {
        padding: 1.75rem 1.25rem;
    }
}
