/* ===== ALTSERVE WEBMAIL - CLEAN THEME ===== */

body.task-login {
    background: linear-gradient(135deg, #f0f4ff 0%, #ffffff 40%, #eef0ff 100%);
    min-height: 100vh;
}

/* Logo above the card - centered */
#logo,
#layout-content #logo,
#login-form #logo,
img#logo {
    display: block !important;
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 auto 20px auto !important;
    object-fit: contain !important;
}


/* Only on login page make it bigger */
body.task-login #logo,
body.task-login img#logo {
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
    margin: 0 auto 20px auto !important;
}

/* Login card */
#login-form {
    background: #ffffff !important;
    border: 1px solid rgba(99, 102, 241, 0.15) !important;
    border-radius: 20px !important;
    box-shadow: 0 20px 60px rgba(79, 70, 229, 0.10), 0 4px 20px rgba(0,0,0,0.05) !important;
    padding: 36px 36px 28px 36px !important;
}

/* Input group */
.input-group {
    margin-bottom: 16px !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    border: 1.5px solid #e0e4f0 !important;
}

.input-group:focus-within {
    border-color: #6366f1 !important;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.10) !important;
}

.input-group-text {
    background-color: #f5f7ff !important;
    border: none !important;
    color: #6366f1 !important;
}

#login-form input[type="text"],
#login-form input[type="password"] {
    background-color: #f9faff !important;
    border: none !important;
    color: #1a1a3e !important;
    font-size: 15px !important;
    padding: 12px 14px !important;
}

#login-form input::placeholder {
    color: #aab0cc !important;
}

/* LOGIN button */
button.mainaction {
    background: linear-gradient(90deg, #00c6ff 0%, #4f46e5 55%, #7c3aed 100%) !important;
    border: none !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    letter-spacing: 1.5px !important;
    padding: 13px !important;
    width: 100% !important;
    margin-top: 8px !important;
    cursor: pointer !important;
    box-shadow: 0 4px 20px rgba(99, 102, 241, 0.30) !important;
    transition: opacity 0.2s, transform 0.15s;
}

button.mainaction:hover {
    opacity: 0.88 !important;
    transform: translateY(-2px) !important;
}

/* Footer */
#login-footer {
    color: #aab0cc !important;
    font-size: 12px !important;
    text-align: center !important;
    margin-top: 20px !important;
}



/* ===== OVERRIDE DEFAULT ROUNDCUBE LOGIN STYLES ===== */

.task-login #layout-content {
    text-align: center !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 100vh !important;
}

.task-login #logo,
#logo,
img#logo {
    display: block !important;
    position: static !important;
    top: auto !important;
    max-height: none !important;
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
    height: auto !important;
    margin: 0 auto 20px auto !important;
}

#login-form {
    position: static !important;
    top: auto !important;
    margin: 0 auto !important;
    width: 95% !important;
    max-width: 380px !important;
}



/* Login page logo - BIG */
body.task-login #logo,
body.task-login img#logo {
    display: block !important;
    position: static !important;
    top: auto !important;
    max-height: none !important;
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 auto 20px auto !important;
}

/* After login menu logo - SMALL */
body:not(.task-login) #layout-menu .popover-header img,
body:not(.task-login) #taskmenu img,
body:not(.task-login) img#logo {
    max-height: 40px !important;
    max-width: 120px !important;
    width: auto !important;
    min-width: unset !important;
    padding: 4px !important;
}

/* After login - show icon only logo */
body:not(.task-login) #layout-menu .popover-header img,
body:not(.task-login) img#logo {
    content: url('https://webmail.altserve.in/skins/elastic/images/altserve-icon.png') !important;
    max-height: 56px !important;
    width: auto !important;
    min-width: unset !important;
    padding: 2px !important;
}


/* Force light mode on login page - all devices */
@media (prefers-color-scheme: dark) {
    body.task-login {
        background: linear-gradient(135deg, #f0f4ff 0%, #ffffff 40%, #eef0ff 100%) !important;
        color: #1a1a3e !important;
    }

    body.task-login #login-form {
        background: #ffffff !important;
        border-color: rgba(99, 102, 241, 0.15) !important;
        color: #1a1a3e !important;
    }

    body.task-login #login-form input[type="text"],
    body.task-login #login-form input[type="password"] {
        background-color: #f9faff !important;
        color: #1a1a3e !important;
        border-color: #e0e4f0 !important;
    }

    body.task-login .input-group-text {
        background-color: #f5f7ff !important;
        color: #6366f1 !important;
        border-color: #e0e4f0 !important;
    }

    body.task-login #login-footer {
        color: #aab0cc !important;
    }
}

/* ===== DARK MODE SUPPORT FOR LOGIN PAGE ===== */
/*@media (prefers-color-scheme: dark) {

    body.task-login {
        background: linear-gradient(135deg, #0d0d1a 0%, #111133 50%, #0d0d1a 100%) !important;
    }

    body.task-login #login-form {
        background: #1a1a2e !important;
        border-color: rgba(99, 102, 241, 0.25) !important;
        box-shadow: 0 20px 60px rgba(0,0,0,0.3) !important;
    }

    body.task-login #login-form input[type="text"],
    body.task-login #login-form input[type="password"] {
        background-color: #16213e !important;
        color: #ffffff !important;
        border-color: rgba(99, 102, 241, 0.35) !important;
    }

    body.task-login #login-form input::placeholder {
        color: rgba(255,255,255,0.35) !important;
    }

    body.task-login .input-group {
        border-color: rgba(99, 102, 241, 0.35) !important;
    }

    body.task-login .input-group-text {
        background-color: #16213e !important;
        color: #6366f1 !important;
        border-color: rgba(99, 102, 241, 0.35) !important;
    }

    body.task-login #login-footer {
        color: rgba(255,255,255,0.3) !important;
    }

    body.task-login #logo,
    body.task-login img#logo {
        filter: brightness(1.1) !important;
    }
}*/