/* ============================================================
   ViaLink Auth Pages Theme — Login / Register
   Glassmorphism card on dark gradient background.
   ============================================================ */

/* Override the full-screen background */
body.bg-full-screen-image,
body.blank-page {
    background: linear-gradient(135deg, #0a0a1a 0%, #1a0a2e 40%, #0a0a1a 100%) !important;
    min-height: 100vh;
    position: relative;
}

/* Subtle animated gradient overlay */
body.bg-full-screen-image::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(ellipse at 20% 50%, rgba(88, 48, 209, 0.15) 0%, transparent 50%),
        radial-gradient(ellipse at 80% 20%, rgba(0, 201, 167, 0.10) 0%, transparent 50%),
        radial-gradient(ellipse at 50% 80%, rgba(88, 48, 209, 0.08) 0%, transparent 50%);
    pointer-events: none;
    z-index: 0;
}

body.bg-full-screen-image .app-content {
    position: relative;
    z-index: 1;
}

/* Glass card */
body.bg-full-screen-image .card {
    background: rgba(255, 255, 255, 0.07) !important;
    -webkit-backdrop-filter: saturate(150%) blur(16px);
    backdrop-filter: saturate(150%) blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.10) !important;
    border-radius: 20px !important;
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.30) !important;
    overflow: hidden;
}

body.bg-full-screen-image .card .card-header {
    background: transparent !important;
    border-bottom: none !important;
}

body.bg-full-screen-image .card .card-body {
    background: transparent !important;
}

/* Logo */
body.bg-full-screen-image .card-title img {
    max-height: 60px;
    filter: brightness(0) invert(1) drop-shadow(0 0 8px rgba(88, 48, 209, 0.4));
}

/* Typography */
body.bg-full-screen-image .card-subtitle span,
body.bg-full-screen-image .card-subtitle,
body.bg-full-screen-image h6 {
    color: rgba(255, 255, 255, 0.60) !important;
}

body.bg-full-screen-image .line-on-side::before,
body.bg-full-screen-image .line-on-side::after {
    border-color: rgba(255, 255, 255, 0.10) !important;
}

/* Inputs */
body.bg-full-screen-image .form-control {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    border-radius: 10px !important;
    padding: 12px 16px;
    transition: all 0.3s ease;
}

body.bg-full-screen-image .form-control::placeholder {
    color: rgba(255, 255, 255, 0.40) !important;
}

body.bg-full-screen-image .form-control:focus {
    border-color: #5830D1 !important;
    box-shadow: 0 0 0 3px rgba(88, 48, 209, 0.20) !important;
    background: rgba(255, 255, 255, 0.12) !important;
}

body.bg-full-screen-image .form-control-position i {
    color: rgba(255, 255, 255, 0.40) !important;
}

/* Labels & links */
body.bg-full-screen-image label {
    color: rgba(255, 255, 255, 0.70) !important;
}

body.bg-full-screen-image a.card-link {
    color: #00C9A7 !important;
}

body.bg-full-screen-image a.card-link:hover {
    color: #5830D1 !important;
}

/* Primary button — gradient */
body.bg-full-screen-image .btn-outline-primary {
    background: linear-gradient(135deg, #5830D1, #00C9A7) !important;
    border: none !important;
    color: #ffffff !important;
    border-radius: 10px !important;
    font-weight: 600;
    padding: 12px;
    box-shadow: 0 4px 18px rgba(88, 48, 209, 0.30);
    transition: all 0.3s ease;
}

body.bg-full-screen-image .btn-outline-primary:hover {
    box-shadow: 0 6px 24px rgba(88, 48, 209, 0.45);
    transform: translateY(-2px);
}

/* Danger/register button */
body.bg-full-screen-image .btn-outline-danger {
    background: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    border-radius: 10px !important;
    font-weight: 500;
    padding: 12px;
    transition: all 0.3s ease;
}

body.bg-full-screen-image .btn-outline-danger:hover {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.25) !important;
}

/* Social buttons */
body.bg-full-screen-image .btn-social-icon {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    transition: all 0.3s ease;
}

body.bg-full-screen-image .btn-social-icon span {
    color: #ffffff !important;
}

body.bg-full-screen-image .btn-social-icon:hover {
    background: rgba(88, 48, 209, 0.20) !important;
    border-color: rgba(88, 48, 209, 0.30) !important;
    transform: translateY(-2px);
}

/* Checkbox */
body.bg-full-screen-image .chk-remember + label {
    color: rgba(255, 255, 255, 0.60) !important;
}

/* Radio buttons (register page) */
body.bg-full-screen-image input[type="radio"] + label,
body.bg-full-screen-image .rtl.row {
    color: rgba(255, 255, 255, 0.70) !important;
}

/* Card entrance animation */
body.bg-full-screen-image .card {
    animation: authFadeIn 0.6s ease both;
}

@keyframes authFadeIn {
    from {
        opacity: 0;
        transform: translateY(24px) scale(0.97);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* RTL-specific adjustments */
html[lang="ar"] body.bg-full-screen-image {
    font-family: 'Cairo', sans-serif;
}

html[lang="en"] body.bg-full-screen-image {
    font-family: 'Inter', sans-serif;
}
