/* ============================================================
 * AFM Secure File Transfer — Login Page
 * ============================================================
 *
 * Loaded via nginx sub_filter on /web/client/login.
 * Restyles SFTPGo's WebClient login to match the AFM brand.
 * ============================================================ */


/* ------------------------------------------------------------
 * BRAND COLOR VARIABLES
 * ------------------------------------------------------------ */

:root,
[data-bs-theme="dark"] {
    --bs-primary: #eba708 !important;
    --bs-primary-rgb: 235, 167, 8 !important;
    --bs-link-color: #eba708 !important;
    --bs-link-hover-color: #ffc02e !important;
    --primary: #eba708 !important;
    --kt-primary: #eba708 !important;
    --kt-primary-active: #ffc02e !important;
    --kt-primary-hover: #ffc02e !important;
}


/* ------------------------------------------------------------
 * PAGE BACKGROUND + LAYOUT
 * ------------------------------------------------------------ */

body {
    background-color: #0a0a0a !important;
    min-height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Hide SFTPGo's default chrome - we replace with our own */
.app-header,
#kt_app_header,
.app-footer,
footer,
[class*="footer"]:not(.afm-login-footer) {
    display: none !important;
}

/* Strip SFTPGo's layout containers down so our content can breathe */
.app-wrapper,
.app-main,
.app-content,
.app-container,
[class*="app-container"] {
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
}


/* ------------------------------------------------------------
 * AFM HEADER
 * Same treatment as the WebClient page for consistency.
 * ------------------------------------------------------------ */

.afm-login-header {
    display: flex !important;
    align-items: center !important;
    padding: 1.5rem 2.5rem !important;
    background-color: #0a0a0a !important;
    border-bottom: 1px solid #1f1f1f !important;
}

.afm-login-header img {
    height: 42px !important;
    width: auto !important;
    margin-right: 1.25rem !important;
}

.afm-login-header .afm-login-title {
    color: #fff !important;
    font-size: 1.4rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    white-space: nowrap !important;
}


/* ------------------------------------------------------------
 * CENTERED LOGIN CARD
 * The container that wraps SFTPGo's login form. We override
 * its defaults to give it our dark card aesthetic.
 * ------------------------------------------------------------ */

/* The outermost container that holds the form needs to center itself */
form,
.card,
.card.bg-body,
.card-body.bg-body {
    max-width: 480px !important;
    width: 100% !important;
    margin: 4rem auto !important;
}

.card,
.card.bg-body,
.card-body,
.card-body.bg-body,
form .card {
    background-color: #141414 !important;
    border: 1px solid #1f1f1f !important;
    border-radius: 14px !important;
    padding: 2.25rem 2rem !important;
}

/* SFTPGo's "Sign In" title gets the modal-style typography treatment */
h1, h2, h3, .h1, .h2, .h3 {
    color: #fff !important;
    font-size: 1.55rem !important;
    font-weight: 600 !important;
    letter-spacing: -0.005em !important;
    margin-bottom: 1.75rem !important;
}


/* ------------------------------------------------------------
 * FORM INPUTS
 * ------------------------------------------------------------ */

.form-control,
input[type="text"],
input[type="password"] {
    background-color: #0a0a0a !important;
    border: 1px solid #2a2a2a !important;
    color: #fff !important;
    padding: 0.85rem 1rem !important;
    border-radius: 8px !important;
    font-size: 0.95rem !important;
    transition: border-color 200ms ease, box-shadow 200ms ease !important;
}

.form-control::placeholder {
    color: #555 !important;
}

.form-control:focus {
    border-color: #eba708 !important;
    box-shadow: 0 0 0 3px rgba(235, 167, 8, 0.12) !important;
    background-color: #0a0a0a !important;
    color: #fff !important;
    outline: none !important;
}

/* Form labels (if SFTPGo uses them) */
label,
.form-label {
    color: #bbb !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    margin-bottom: 0.4rem !important;
}


/* ------------------------------------------------------------
 * SIGN IN BUTTON
 * ------------------------------------------------------------ */

button[type="submit"],
.btn-primary,
.btn-primary:not(:disabled):not(.disabled) {
    background-color: #eba708 !important;
    border-color: #eba708 !important;
    color: #000 !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    letter-spacing: 0.01em !important;
    padding: 0.9rem 1rem !important;
    border-radius: 9px !important;
    transition: background-color 180ms ease, transform 80ms ease !important;
}

button[type="submit"]:hover,
button[type="submit"]:focus,
button[type="submit"]:active,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:not(:disabled):not(.disabled):hover,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled):focus,
.btn-primary:not(:disabled):not(.disabled).active {
    background-color: #ffc02e !important;
    border-color: #ffc02e !important;
    color: #000 !important;
    box-shadow: none !important;
}

button[type="submit"]:active {
    transform: translateY(1px) !important;
}


/* ------------------------------------------------------------
 * LINKS
 * ------------------------------------------------------------ */

a, a:hover {
    color: #eba708 !important;
}


/* ------------------------------------------------------------
 * HIDE UNWANTED LINKS
 * ------------------------------------------------------------ */

a[href*="/web/admin"],
a[href*="admin/login"],
a[href*="forgot-password"],
a[href*="forgot_password"],
[data-kt-login-option="webadmin"] {
    display: none !important;
}

[data-kt-language-toggle] {
    display: none !important;
}


/* ------------------------------------------------------------
 * COMPLIANCE FOOTER
 * Same treatment as the upload page for brand consistency.
 * ------------------------------------------------------------ */

.afm-login-footer {
    text-align: center !important;
    padding: 1.5rem 2rem 2rem 2rem !important;
    color: #666 !important;
    font-size: 0.85rem !important;
    line-height: 1.7 !important;
    background-color: #0a0a0a !important;
    border-top: 1px solid #1f1f1f !important;
    margin: 3rem auto 0 auto !important;
    max-width: 1000px !important;
    width: 100% !important;
}

.afm-login-footer strong {
    color: #999 !important;
    font-weight: 600 !important;
}

.afm-login-footer .afm-login-warn {
    color: #555 !important;
    margin-top: 0.5rem !important;
    font-size: 0.8rem !important;
    line-height: 1.6 !important;
    max-width: 760px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* ============================================================
 * LOGIN PAGE POLISH
 *
 * SFTPGo's default login shows a black-boxed logo on a lighter
 * card that clashes with the dark AFM palette. We flatten the
 * logo, align the card with the internal panels' look, and
 * tighten the vertical rhythm.
 * ============================================================ */

html.afm-login-mode body {
    background: #0a0a0b !important;
}

/* The login card: match the dark panel treatment used elsewhere */
html.afm-login-mode .card,
html.afm-login-mode [class*="card"] {
    background: #101012 !important;
    border: 1px solid #232327 !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.4) !important;
}

/* Brand lockup at the top of the form */
html.afm-login-mode .afm-login-brand {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 0.75rem !important;
    margin-bottom: 2rem !important;
}

html.afm-login-mode .afm-login-logo {
    height: 48px !important;
    width: auto !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
}

/* The "Secure File Transfer" text next to the logo — center it under */
html.afm-login-mode .afm-login-brand h1,
html.afm-login-mode .afm-login-brand h2,
html.afm-login-mode .afm-login-brand span {
    color: #f2f2f2 !important;
    font-size: 1.15rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    text-align: center !important;
    white-space: nowrap !important;
}

/* Inputs: consistent dark fields with amber focus */
html.afm-login-mode .form-control {
    background: #0b0b0d !important;
    border: 1px solid #2a2a2f !important;
    border-radius: 10px !important;
    color: #eee !important;
    padding: 0.85rem 1rem !important;
    transition: border-color 0.15s !important;
}

html.afm-login-mode .form-control:focus {
    border-color: #eba708 !important;
    box-shadow: 0 0 0 3px rgba(235, 167, 8, 0.12) !important;
    background: #0b0b0d !important;
    color: #fff !important;
}

/* Sign-in button matches the primary amber used across the app */
html.afm-login-mode #sign_in_submit {
    background: #eba708 !important;
    border: none !important;
    border-radius: 10px !important;
    color: #000 !important;
    font-weight: 700 !important;
    padding: 0.85rem !important;
    transition: background-color 0.15s, transform 0.05s !important;
}

html.afm-login-mode #sign_in_submit:hover {
    background: #ffc21e !important;
}

html.afm-login-mode #sign_in_submit:active {
    transform: translateY(1px) !important;
}

/* Hide the separator + orphaned area left behind after removing the
 * WebAdmin link on the login page. */
html.afm-login-mode #sign_in_form .separator,
html.afm-login-mode #sign_in_form hr,
html.afm-login-mode #sign_in_form [class*="separator"] {
    display: none !important;
}