/**
 * Auth pages (login, register, forgot/reset password) — light/dark via data-theme
 */
body.auth-page {
    --auth-bg: #1a1a2e;
    --auth-text: #ffffff;
    --auth-muted: rgba(255, 255, 255, 0.8);
    --auth-accent: #00d4ff;
    --auth-panel-bg: rgba(255, 255, 255, 0.05);
    --auth-panel-border: #00d4ff;
    --auth-input-border: rgba(255, 255, 255, 0.3);
    --auth-btn-bg: #00d4ff;
    --auth-btn-text: #1a1a2e;
    --auth-placeholder: rgba(255, 255, 255, 0.6);
}

html[data-theme="light"] body.auth-page {
    --auth-bg: #eef2f7;
    --auth-text: #1f2937;
    --auth-muted: #6b7280;
    --auth-accent: #2563eb;
    --auth-panel-bg: #ffffff;
    --auth-panel-border: #d1d5db;
    --auth-input-border: #cbd5e1;
    --auth-btn-bg: #2563eb;
    --auth-btn-hover: #1d4ed8;
    --auth-btn-text: #ffffff;
    --auth-link-color: #0ea5e9;
    --auth-link-hover: #0369a1;
    --auth-placeholder: #9ca3af;
}

body.auth-page {
    background: var(--auth-bg) !important;
}

body.auth-page,
body.auth-page h1,
body.auth-page h2,
body.auth-page h3,
body.auth-page p,
body.auth-page label,
body.auth-page span,
body.auth-page a:not(.auth-btn-primary) {
    color: var(--auth-text);
}

body.auth-page .back-home-btn {
    color: var(--auth-text);
    background: var(--auth-panel-bg);
    border-color: var(--auth-input-border);
}

body.auth-page .auth-wrapper {
    border-color: var(--auth-panel-border);
    box-shadow: 0 0 25px color-mix(in srgb, var(--auth-panel-border) 40%, transparent);
}

body.auth-page .field-wrapper input,
body.auth-page .field-wrapper select {
    color: var(--auth-text);
    border-bottom-color: var(--auth-input-border);
}

body.auth-page .auth-btn-primary,
body.auth-page .credentials-panel button[type="submit"] {
    background: var(--auth-btn-bg) !important;
    color: var(--auth-btn-text) !important;
}

body.auth-page .theme-auth-toggle {
    position: fixed;
    top: 25px;
    left: 25px;
    z-index: 1001;
    background: var(--auth-panel-bg);
    border: 1px solid var(--auth-input-border);
    color: var(--auth-text);
    width: 42px;
    height: 42px;
    border-radius: 10px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(10px);
}

html[dir="rtl"] body.auth-page .theme-auth-toggle {
    left: auto;
    right: 25px;
}

html[dir="ltr"] body.auth-page .theme-auth-toggle {
    right: auto;
    left: 25px;
}

body.auth-page .info-panel {
    background: linear-gradient(135deg, var(--auth-accent), color-mix(in srgb, var(--auth-accent) 60%, #000));
}

html[data-theme="light"] body.auth-page .info-panel {
    background: linear-gradient(135deg, #eef3fb, #dde6f2);
    color: #374151;
}

body.auth-page .alert-error {
    background: rgba(239, 68, 68, 0.15);
    border-color: #ef4444;
    color: var(--auth-text);
}

body.auth-page .alert-success {
    background: rgba(16, 185, 129, 0.15);
    border-color: #10b981;
    color: var(--auth-text);
}

/* Mobile Performance Optimizations */
@media (max-width: 991px) {
    * {
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }
    .back-home-btn, input, button, a {
        transition-property: transform, opacity !important;
    }
}
