/* ASEMANEEHA PHASE640 */
/* Public login page only */

/* Keep the original cover and welcome layout */

.asem-login-shell-640 {
    width: 100%;
    max-width: 760px;
    box-sizing: border-box;
    margin-inline: auto;
    padding: 12px 18px 34px;
    font-family: Vazir,Tahoma,sans-serif;
}

.asem-login-shell-640 > div:first-child {
    width: min(42%,210px) !important;
    max-width: 210px;
    margin-inline: auto;
}

.asem-login-shell-640 > div:first-child img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 190px;
    object-fit: contain;
    margin-inline: auto;
}

.asem-login-shell-640 > div:nth-child(2) p {
    font-family: Vazir,Tahoma,sans-serif !important;
    line-height: 1.9;
    letter-spacing: 0;
}

/* Shared visual frame for all four login stages */

.asem-login-card-640 {
    box-sizing: border-box !important;
    width: min(100%,460px) !important;
    max-width: 460px !important;

    margin: 18px auto 0 !important;
    padding: 25px 26px 28px !important;

    border-radius: 20px !important;
    border: 1px solid rgba(255,255,255,.26) !important;

    background: linear-gradient(
        140deg,
        rgba(7,73,84,.23),
        rgba(4,54,68,.30)
    ) !important;

    box-shadow: 0 14px 40px rgba(6,36,43,.17);
}

.asem-login-card-640,
.asem-login-card-640 p,
.asem-login-card-640 span {
    font-family: Vazir,Tahoma,sans-serif;
}

.asem-login-card-640 input[type="tel"],
.asem-login-card-640 input[type="text"],
.asem-login-card-640 input[type="password"],
.asem-login-card-640 input[type="number"] {
    box-sizing: border-box;
    max-width: 100%;
    min-height: 44px;

    border-radius: 12px;
    font-family: Vazir,Tahoma,sans-serif;
    font-size: 15px;
}

.asem-login-card-640 input:focus-visible {
    outline: 2px solid #ffbd59;
    outline-offset: 2px;
}

.asem-login-card-640 button {
    font-family: Vazir,Tahoma,sans-serif;
    transition:
        background-color .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

.asem-login-card-640 button:focus-visible {
    outline: 2px solid #ffbd59;
    outline-offset: 3px;
}

.asem-login-card-640 button:disabled {
    cursor: not-allowed;
}

/* Ensure long phone labels do not overflow */

.asem-login-card-640 [dir="ltr"] {
    max-width: 100%;
}

/* Mobile refinement */

@media (max-width: 767px) {
    .asem-login-shell-640 {
        max-width: 100%;
        padding: 12px 12px 28px;
    }

    .asem-login-shell-640 > div:first-child {
        width: min(38%,160px) !important;
    }

    .asem-login-shell-640 > div:nth-child(2) p {
        font-size: 19px !important;
    }

    .asem-login-card-640 {
        width: 100% !important;
        max-width: 100% !important;

        margin-top: 16px !important;
        padding: 22px 16px 25px !important;

        border-radius: 17px !important;
    }

    .asem-login-card-640 input[type="tel"],
    .asem-login-card-640 input[type="text"],
    .asem-login-card-640 input[type="password"],
    .asem-login-card-640 input[type="number"] {
        font-size: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .asem-login-card-640 button {
        transition: none;
    }
}