/* =====================================================================
   FDW Customer Dashboard — login.css
   Split-screen login: image left, form-card right.
   Mobile: stacks; image becomes top-banner.
===================================================================== */

body.fdw-cd-login {
    background: var(--c-navy-950);
}

.fdw-cd-app.fdw-cd-login-screen {
    width: 100%;
}

.fdw-cd-app .login-screen {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    min-height: 100vh;
    width: 100%;
}
@media (max-width: 980px) {
    .fdw-cd-app .login-screen {
        grid-template-columns: 1fr;
        grid-template-rows: 28vh 1fr;
        min-height: auto;
    }
}


/* ----------- Left side: Image / Hero ----------- */
.fdw-cd-app .login-hero {
    position: relative;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    display: flex; flex-direction: column; justify-content: center;
    padding: var(--s-12);
    color: var(--c-white);
}
@media (max-width: 980px) {
    .fdw-cd-app .login-hero { padding: var(--s-6); }
}
.fdw-cd-app .login-hero::after {
    content: '';
    position: absolute;
    bottom: 0; right: 0;
    width: 60%; height: 60%;
    background: radial-gradient(circle at bottom right, rgba(201,169,97,.18), transparent 60%);
    pointer-events: none;
}

.fdw-cd-app .login-hero__copy {
    position: relative; z-index: 1;
    max-width: 480px;
}
.fdw-cd-app .login-hero__eyebrow {
    display: inline-block;
    font-size: .7rem;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--c-gold-400);
    font-weight: 700;
    margin-bottom: var(--s-4);
    padding: 6px 14px;
    background: rgba(201,169,97,.15);
    border-radius: var(--r-pill);
    border: 1px solid rgba(201,169,97,.25);
}
.fdw-cd-app .login-hero__title {
    font-family: var(--font-display);
    font-size: clamp(1.8rem, 3.5vw, 2.6rem);
    font-weight: 500;
    letter-spacing: -.02em;
    line-height: 1.15;
    color: var(--c-white);
    margin-bottom: var(--s-4);
}
.fdw-cd-app .login-hero__title em {
    font-style: italic;
    color: var(--c-teal-300);
    font-weight: 400;
}
.fdw-cd-app .login-hero__sub {
    color: rgba(255,255,255,.78);
    font-size: 1rem;
    line-height: 1.6;
}

.fdw-cd-app .login-hero__footer {
    position: absolute;
    bottom: var(--s-12);
    left: var(--s-12);
    z-index: 1;
    font-size: .8rem;
    color: rgba(255,255,255,.5);
}
@media (max-width: 980px) {
    .fdw-cd-app .login-hero__copy,
    .fdw-cd-app .login-hero__footer { display: none; }
}


/* ----------- Right side: Form ----------- */
.fdw-cd-app .login-form-wrap {
    display: flex; align-items: center; justify-content: center;
    padding: var(--s-12) var(--s-8);
    background: var(--c-slate-50);
    position: relative;
    overflow-y: auto;
}
@media (max-width: 980px) {
    .fdw-cd-app .login-form-wrap { padding: var(--s-8) var(--s-5); }
}

.fdw-cd-app .login-card {
    width: 100%;
    max-width: 440px;
    padding: var(--s-10) var(--s-8);
    background: var(--c-white);
    border-radius: var(--r-xl);
    box-shadow: var(--sh-xl);
    border: 1px solid var(--c-slate-200);
    animation: fdw-fade-in .6s var(--ease) both;
}

.fdw-cd-app .login-card__head {
    text-align: center;
    margin-bottom: var(--s-8);
}
.fdw-cd-app .login-card__title {
    font-family: var(--font-display);
    font-size: 1.7rem;
    font-weight: 500;
    letter-spacing: -.02em;
    color: var(--c-navy-900);
    margin-bottom: 8px;
}
.fdw-cd-app .login-card__sub {
    color: var(--c-slate-500);
    font-size: .92rem;
}

.fdw-cd-app .login-row {
    display: flex; justify-content: space-between; align-items: center;
    margin-bottom: var(--s-6);
    flex-wrap: wrap; gap: var(--s-3);
}
.fdw-cd-app .login-row a {
    color: var(--c-teal-500);
    font-size: .85rem;
    font-weight: 600;
    transition: color .2s;
}
.fdw-cd-app .login-row a:hover { color: var(--c-navy-900); }

.fdw-cd-app .login-card__foot {
    text-align: center;
    margin-top: var(--s-6);
    color: var(--c-slate-500);
    font-size: .88rem;
}
.fdw-cd-app .login-card__foot a {
    color: var(--c-teal-500);
    font-weight: 600;
}
.fdw-cd-app .login-card__foot a:hover { text-decoration: underline; }


/* ----------- Auth view toggle (login <-> register) ----------- */
.fdw-cd-app .fdw-auth-view { display: none; }
.fdw-cd-app .fdw-auth-view.is-active { display: block; }

/* WooCommerce error styling tweak so it sits inside our card cleanly */
.fdw-cd-app .woocommerce-error,
.fdw-cd-app .woocommerce-info,
.fdw-cd-app .woocommerce-message,
.woocommerce-account.fdw-cd-login .woocommerce-error,
.woocommerce-account.fdw-cd-login .woocommerce-info,
.woocommerce-account.fdw-cd-login .woocommerce-message {
    border-radius: var(--r-sm);
    padding: 12px 16px;
    font-size: .9rem;
    background: rgba(239,68,68,.06);
    color: #b91c1c;
    border: 1px solid rgba(239,68,68,.2);
    margin: 0 auto var(--s-4);
    max-width: 440px;
    list-style: none;
}
.fdw-cd-app .woocommerce-message,
.woocommerce-account.fdw-cd-login .woocommerce-message {
    background: rgba(16,185,129,.06);
    color: #047857;
    border-color: rgba(16,185,129,.2);
}
