/* ========================================
   QUALITY ACADEMY – SOCIAL CHAT BUTTON
   Compatible with Social Chat 8.6.4
======================================== */

/* Desktop button */
.qlwapp .qlwapp__button {
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18) !important;
    transition:
        background-color 0.25s ease,
        transform 0.25s ease,
        box-shadow 0.25s ease !important;
}

.qlwapp .qlwapp__button:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22) !important;
}

/* Mobile: show only a compact circular WhatsApp icon */
@media (max-width: 768px) {

    .qlwapp .qlwapp__container,
    .qlwapp__container.qlwapp-is-mobile {
        position: fixed !important;
        right: 16px !important;
        left: auto !important;
        bottom: calc(18px + env(safe-area-inset-bottom)) !important;
        width: auto !important;
    }

    .qlwapp .qlwapp__button,
    .qlwapp .qlwapp__button--button {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 56px !important;
        min-width: 56px !important;
        max-width: 56px !important;

        height: 56px !important;
        min-height: 56px !important;
        max-height: 56px !important;

        margin: 0 !important;
        padding: 0 !important;
        gap: 0 !important;

        border: none !important;
        border-radius: 50% !important;
        overflow: hidden !important;
        box-sizing: border-box !important;

        background-color: #25D366 !important;
        color: #FFFFFF !important;

        box-shadow: 0 5px 18px rgba(0, 0, 0, 0.24) !important;
    }

    /* Hide “Chat on WhatsApp” on mobile */
    .qlwapp .qlwapp__button .qlwapp__text {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Centre and enlarge the WhatsApp icon */
    .qlwapp .qlwapp__button .qlwapp__icon {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 28px !important;
        line-height: 1 !important;
        color: #FFFFFF !important;
    }

    .qlwapp .qlwapp__button img.qlwapp__icon {
        width: 28px !important;
        height: 28px !important;
        object-fit: contain !important;
    }
}

/* Quality Academy My Account mobile layout */
@media only screen and (max-width: 767px) {

    /* Reorder account content before navigation */
    body.woocommerce-account .woocommerce {
        display: flex !important;
        flex-direction: column !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content {
        order: 1 !important;
        width: 100% !important;
        float: none !important;
        margin: 0 0 24px !important;
    }

    body.woocommerce-account #my-account-menu {
        order: 2 !important;
        width: 100% !important;
        float: none !important;
        margin-top: 10px !important;
    }

    /* Hide Dashboard shortcut banners on mobile */
    body.woocommerce-account .qa-dashboard-banners {
        display: none !important;
    }
}
/* Quality Academy protected-content screen */

body:has(.qa-password-form) .fl-page-content {
    min-height: 650px;
    background: #F7F7F7;
}

body:has(.qa-password-form) .fl-post-title,
body:has(.qa-password-form) .entry-title {
    max-width: 680px;
    margin: 55px auto 22px;
    padding: 0 20px;
    color: #2E2E2E;
    font-family: "Montserrat", Arial, sans-serif;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.35;
    text-align: center;
    text-transform: uppercase;
}

.qa-password-form {
    box-sizing: border-box;
    max-width: 650px;
    margin: 0 auto 70px;
    padding: 42px 45px;
    background: #FFFFFF;
    border-top: 4px solid #F8791B;
    border-radius: 7px;
    box-shadow: 0 5px 22px rgba(0, 0, 0, 0.08);
    font-family: "Montserrat", Arial, sans-serif;
    text-align: center;
}

.qa-password-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 78px;
    height: 78px;
    margin: 0 auto 20px;
    background: #FFF0E5;
    border-radius: 50%;
    font-size: 32px;
}

.qa-password-form h2 {
    margin: 0 0 14px;
    color: #2E2E2E;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
}

.qa-password-intro {
    max-width: 510px;
    margin: 0 auto 25px !important;
    color: #686868;
    font-size: 16px;
    line-height: 1.7;
}

.qa-password-form label {
    display: block;
    margin: 0 0 8px;
    color: #2E2E2E;
    font-size: 14px;
    font-weight: 700;
    text-align: left;
}

.qa-password-fields {
    display: flex;
    gap: 10px;
}

.qa-password-fields input[type="password"] {
    box-sizing: border-box;
    flex: 1;
    min-width: 0;
    height: 50px;
    padding: 0 15px;
    background: #FFFFFF;
    border: 1px solid #D8D8D8;
    border-radius: 5px;
    color: #2E2E2E;
    font-family: "Montserrat", Arial, sans-serif;
    font-size: 15px;
}

.qa-password-fields input[type="password"]:focus {
    border-color: #F8791B;
    outline: none;
    box-shadow: 0 0 0 3px rgba(248, 121, 27, 0.14);
}

.qa-password-fields input[type="submit"] {
    height: 50px;
    padding: 0 22px;
    background: #F8791B;
    border: 1px solid #F8791B;
    border-radius: 5px;
    color: #FFFFFF;
    font-family: "Montserrat", Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.qa-password-fields input[type="submit"]:hover {
    background: #D9600C;
    border-color: #D9600C;
}

.qa-password-help {
    margin: 20px 0 0 !important;
    color: #777777;
    font-size: 13px;
    line-height: 1.6;
}

@media (max-width: 767px) {
    body:has(.qa-password-form) .fl-post-title,
    body:has(.qa-password-form) .entry-title {
        margin-top: 35px;
        font-size: 22px;
    }

    .qa-password-form {
        margin-right: 18px;
        margin-left: 18px;
        padding: 32px 22px;
    }

    .qa-password-form h2 {
        font-size: 21px;
    }

    .qa-password-fields {
        flex-direction: column;
    }

    .qa-password-fields input[type="password"],
    .qa-password-fields input[type="submit"] {
        width: 100%;
    }
}