/* ═══════════════════════════════════════════════════
   Mobile Filter Drawer — Find Jobs
   Hidden on desktop; slide-in panel on ≤767px
   ═══════════════════════════════════════════════════ */

/* Toggle bar: hidden on desktop, shown on mobile */
.mfj-filter-toggle-bar {
    display: none;
}

/* Backdrop overlay: sits behind the sidebar, covers page */
.mfj-sidebar-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    z-index: 1040;
    opacity: 0;
    transition: opacity 0.28s ease;
}

.mfj-sidebar-backdrop.is-visible {
    opacity: 1;
}

/* Close button inside sidebar: hidden on desktop */
.mfj-sidebar-close-btn {
    display: none;
}

@media (max-width: 1023px) {}

@media (max-width: 991px) {}


@media (max-width: 767px) {

    form#addSpecialityForm div#initialStep,
    form#jobCreationForm div#initialStep {
        margin: 0 0px;
    }

    form.mash-multi-step-form .constantHead {
        margin: 0 0px;
    }

    form.mash-multi-step-form .constantHead h2 {
        font-size: 28px;
    }

    form.mash-multi-step-form .constantHead p br {
        display: none;
    }

    form.mash-multi-step-form .constantHead p {
        font-size: 18px;
    }

    form#addSpecialityForm .need-selection .flex-row,
    form#jobCreationForm .need-selection .flex-row {
        flex-direction: column !important;
    }

    .form-step[job-step="3-2"] .tt-subjects-grid-v2 {
        grid-template-columns: repeat(1, minmax(160px, 1fr)) !important;
        margin: 0 0px !important;
    }

    .row.gap-15 {
        gap: 15px;
    }

    .care_seeker-dashboard .dashboard-intro {
        margin-top: 0;
        margin-bottom: 50px;
    }

    table.mash-table {
        width: 100%;
        table-layout: unset;
    }

    table.mash-table td,
    table.mash-table th {
        white-space: nowrap;
    }

    .dashboard-intro .profile-btns ul {
        justify-content: flex-start;
    }

    .care_provider-account-settings .general-view-fields {
        width: 100%;
    }

    .txt-large {
        font-size: 18px;
    }

    p.portal-sub-title {
        font-size: 18px;
    }

    .portal-body.care-provider button,
    .portal-body.care-provider .button,
    .portal-body.care-seeker button,
    .portal-body.care-seeker .button {
        font-size: 14px !important;
        padding: 12px 24px !important;
    }

    .portal-body.care-seeker .btn-small,
    .portal-body.care-provider .btn-small {
        font-size: 12px !important;
        padding: 12px !important;
        border: 1px solid;
    }

    .portal-body.care-provider h2,
    .portal-body.care-seeker h2 {
        font-size: 28px;
    }

    .portal-body.care-provider h3,
    .portal-body.care-seeker h3 {
        font-size: 24px;
    }

    .care_provider-account-settings .info-content-box label.form-label {
        font-size: 20px;
        line-height: 1;
    }

    .care_provider-account-settings .info-content-box .form-control {
        font-size: 16px;
    }

    .text-md-end {
        text-align: left;
    }

    .float-right-no-mob {
        float: none;
    }

    form#jobCreationForm .constantHead h2 span {
        display: none;
    }

    .aj-tab-item {
        font-size: 14px;
        padding: 12px 10px;

    }

    .mash-job-card .job-actions {
        flex-direction: row;
        margin-top: 0;
        justify-content: flex-start;
        padding: 0;
    }

    .mash-job-card {
        flex-direction: column;
    }

    /* ── Mobile filter drawer ── */

    /* Show the toggle bar above the job list */
    .mfj-filter-toggle-bar {
        display: flex;
        align-items: center;
        margin-bottom: 12px;
    }

    /* The toggle pill button */
    .mfj-filter-toggle-btn {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        padding: 9px 20px;
        background: #1A3A5F;
        color: #fff;
        border: none;
        border-radius: 999px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        font-family: 'Nunito', sans-serif;
        transition: background 0.2s;
    }

    .mfj-filter-toggle-btn:hover {
        background: #14304f;
    }

    .mfj-filter-toggle-btn i {
        font-size: 17px;
    }

    /* Show the backdrop */
    .mfj-sidebar-backdrop {
        display: block;
        /* controlled by JS opacity + z-index */
        pointer-events: none;
    }

    .mfj-sidebar-backdrop.is-visible {
        pointer-events: auto;
    }

    /* Sidebar: fixed, full-height, slides in from left */
    aside.srhjob-sidebar.mash-job-filter {
        position: fixed !important;
        top: 0;
        left: 0;
        height: 100dvh;
        /* full viewport height */
        width: min(85vw, 320px);
        /* max 320px or 85% of viewport */
        z-index: 1050;
        background: #fff;
        overflow-y: auto;
        padding: 20px 18px 30px;
        transform: translateX(-110%);
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        box-shadow: 4px 0 24px rgba(0, 0, 0, 0.18);
        margin-right: 0 !important;
        /* override desktop margin */
    }

    aside.srhjob-sidebar.mash-job-filter.is-open {
        transform: translateX(0);
    }

    /* Close ✕ button */
    .mfj-sidebar-close-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 14px;
        right: 14px;
        width: 34px;
        height: 34px;
        border-radius: 50%;
        border: 1.5px solid #dde3ec;
        background: #fff;
        color: #1A3A5F;
        font-size: 18px;
        cursor: pointer;
        padding: 0;
        line-height: 1;
        transition: background 0.18s;
    }

    .mfj-sidebar-close-btn:hover {
        background: #f0f4fa;
    }

    /* Lock body scroll when drawer is open */
    body.mfj-open {
        overflow: hidden;
    }

    /* care seeker */

    .seeker-jobs-heading-list ul {}

    .seeker-jobs-heading-list ul li a {
        padding: 10px 10px;
        font-size: 14px;

    }



    .portal-applicant-card .portal-applicant-card__top {
        margin-bottom: 15px;
    }

    .pv-container .about-section,
    .pv-container .reviews-section,
    .pv-section,
    .pv-container .questions-section {
        margin-left: 0;
    }

    .pv-container .review-content {
        margin-left: 0;
        padding-top: 10px;
        margin-top: 10px;
    }

    .pv-container .review-card-top {
        display: block;

    }

    .pv-container .pv-card {
        border-radius: 10px;
        padding: 10px;
    }

    .pv-container .pv-top {
        display: flex;
        flex-direction: column-reverse;
        gap: 15px;
    }

    .pv-container .pv-sub-info {
        flex-direction: column;
        align-items: baseline;
        gap: 0;
    }

    .pv-container .pv-sub-info span.pv-dot {
        visibility: hidden;
    }

    .pv-container .pv-stats {
        gap: 10px;
        flex-direction: column;
        align-items: baseline;
    }

    .pv-container .reviewer-name {
        font-size: 20px;
    }

    .pv-container .pv-tag-group {
        gap: 10px;
    }

    .portal-header .portal-hamburgers {
        width: 40px;
        height: 40px;
        border-radius: 5px;
    }

    .multi-step-form .form-step[data-step="3"] .role-selection .role-option {
        flex: 0 0 100%;
    }

    .role-card:hover,
    .care-card:hover,
    .role-option:focus-within .role-card,
    .care-option:focus-within .care-card {
        border-color: #fff !important;
        transform: none;
        box-shadow: none;
    }

    label.role-option {
        width: 100%;
    }

    .form-step h2.step-title {
        font-size: 28px;
    }

    .form-step .form-group {
        margin: 15px 0;
    }

    .header-upgrade-item.hide-mob {
        display: none !important;
    }

    .header-upgrade-item.pnav-item {
        display: block !important;
    }
}