/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 *
 * Listing-related styles are scoped under .les-listing to prevent
 * cross-listing interference.  Old #id selectors for listing elements
 * have been replaced with class-based selectors under .les-listing.
 * All registration, menu, login, modal, and form styles are unchanged.
 */

/* ================================
   Collection Centre Card
================================ */
label {
    color: #000;
}
.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row select:focus,
textarea:focus,
.stakeholderRegistrationForm input:focus,
.stakeholderRegistrationForm select:focus,
select:focus,.paFilterContainer select:focus,
.paFilterContainer .choices.is-focused,.searchInput:focus,
.punaravartanRegisterForm .choices.is-focused,
.choices.is-focused,
.punaravartanVolunteerFormRow input:focus,
.punaravartanVolunteerFormRow select:focus,
.punaravartanVolunteerFormRow textarea:focus {
    border: 2px solid #a9cb52 !important;
}
.collection-centre-card {
    padding: 20px;
    border-radius: 12px;
    background: #fbf7f2;
    border: 2px solid #efdecd;
    margin-bottom: 40px;
}
select,.choices__inner {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='none' stroke='rgba(40,40,40,.8)' stroke-linecap='round' stroke-width='12'%3E%3Cpath d='m2.7 2.3 46.4 54.9L95.5 2.3'/%3E%3C/svg%3E")!important;
    background-position: calc(100% - .7em) calc(50% + .15em) !important;
    background-repeat: no-repeat !important;
    background-size: .85em !important;
    margin-bottom: 0px!important;
}
/* ================================
   Drop Pin Link
================================ */
.drop-pin-link {
    color: #0073e6;
    font-size: 13px;
    text-decoration: none;
    margin-left: 6px;
    font-weight: 500;
}
.drop-pin-link:hover {
    text-decoration: underline;
    color: #005bb5;
}

/* ================================
   Plus/Minus Buttons Container
================================ */
.plusMinusButtons {
    display: flex;
    gap: 16px;
    margin-top: 22px;
    align-items: center;
}
.plusMinusButtons button {
    border: none;
    border-radius: 10px;
    padding: 14px 26px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    line-height: 1.3;
}
.addCta {
    background-color: #a4c744;
    color: #ffffff;
    min-width: 130px;
    text-align: center;
}
.addCta:hover {
    background-color: #8fb137;
    transform: translateY(-1px);
}
.removeCta {
    background-color: #dc3545;
    color: #ffffff;
    min-width: 100px;
    text-align: center;
}
.removeCta:hover {
    background-color: #c82333;
    transform: translateY(-1px);
}
.plusMinusButtons button:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(0, 115, 230, 0.2);
}

@media (max-width: 768px) {
    .collection-centre-card { padding: 18px; }
    .plusMinusButtons {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }
    .plusMinusButtons button {
        width: 100%;
        min-width: 0;
        text-align: center;
    }
}

/* ================================
   General Focus / Accessibility
================================ */
a:focus, input:focus, button:focus, select:focus, textarea:focus, .button:focus {
    outline: none !important;
}

/* ================================
   WooCommerce Account
================================ */
.woocommerce-account { background-color: #e3dac9; }
.required {
    text-decoration: none !important;
    color: rgb(170, 0, 0);
    font-weight: 700;
}
.woocommerce-message {
    color: green !important;
    font-weight: 500;
    background-color: #fff !important;
    margin: 10px 0 0 !important;
}
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
    border-radius: 3px !important;
    outline: none !important;
}
p.form-row.loginCheckboxDiv label { margin-right: 1rem; }
.margin40pxBottom { margin-bottom: 40px !important; }

.accountDetailsForm .required {
    visibility: visible !important;
}

/* Icons */
.locationIcon, .fa-calendar-days, .pinCodeIcon { color: #fcb86f; }

/* Searchable dropdown */
.choices {
    margin-bottom: 0 !important;
    height: 42px !important;
    width: 160px;
}
.choices[data-type*=select-one]::after { content: none !important; }
.punaravartanRegisterForm .choices {
    width: 100%;
    height: 52px !important;
    padding: 0 15px !important;
    border-radius: 5px !important;
    border: 2px solid #efdecd !important;
    background-color: #fff !important;
    display: flex;
    align-items: center;
}
.choices__list--dropdown .choices__item--selectable.is-highlighted,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
    background-color: #efdecd !important;
}
.choices__list { padding: 0 !important; left: 0 !important; }
.choices__list--single .choices__item { font-size: 16px !important; }
.choices[data-type*=select-one] .choices__input { padding: 5px; }
.choices__placeholder { opacity: 1; }

/* ================================
   Dashboard Navigation
================================ */
.avartanMyAccount { width: 100% !important; }
.avartanNavigation { width: 100% !important; }
.avartanNavigation ul {
    display: flex;
    justify-content: center;
    align-items: center;
    border: none !important;
    gap: 5px !important;
    flex-wrap: wrap;
    margin-top: 0;
    border-bottom: 1px solid #a9cb52 !important;
}
.avartanNavigation li { border: none !important; }
.avartanNavigation ul li a {
    padding: 15px 10px !important;
    color: #212529;
    text-decoration: none;
    border-radius: 0;
    font-weight: 500;
}
.avartanNavigation ul li.is-active a {
    color: #fff !important;
    border-color: #a9cb52;
    background: #a9cb52;
    padding: 30px;
}
.avartanNavigation ul li.is-active a:after { display: none !important; }
ul.woocommerce-error li, .woocommerce-error:before {
    color: #b81c23 !important;
    font-weight: 500;
}
.woocommerce-error { background-color: #fff !important; margin: 10px 0 0 !important; }
nav.woocommerce-MyAccount-navigation.avartanNavigation {
    padding-top: 0 !important;
    position: relative;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin-top: 0 !important; }
.woocommerce-MyAccount-content.avartanMyAccount { padding: 30px; }

/* ================================
   Avatar / Menu
================================ */
a.stakeholderDisplayLink { color: #fff !important; }
li.stakeholderTypeIconAndLabel { position: absolute; left: 10px; top: 10px; }
.displayStakeholderIcon { width: 35px; }
a.stakeholderDisplayLink { padding: 0 !important; }
.stakeholderTypeDisplayDiv, .startEndDateCloumn, .registerCtaDiv {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}
.stakeholderTypeDisplayDiv p { margin: 0; font-weight: 500; font-size: 12px; color: #353535; }
.stakeholderTypeDisplayDiv i.fa-regular.fa-circle-user { font-size: 35px; color: #A9CB52; }
.displayStakeholderDetails { text-align: left; }
.menuStakeholderDetails { padding: .4em 1.4em; }
.menuStakeholderDetails img { width: 30px !important; }
.menuStakeholderDetails p, .menuStakeholderDetails span { font-size: 12px !important; font-weight: 500; color: #353535; }
.menuStakeholderDetails span, span.displayStakeholderType { color: #69381c; font-size: 12px; }
#main-nav li > .sub-menu { width: 230px !important; }

/* ================================
   Registration Form
================================ */
.punaravartanMyAccountLoginColumn { display: flex; justify-content: space-between; }
.punaravartanMyAccountColumn { display: flex; justify-content: space-between; padding: 50px 0; }
.punaravartanMyAccountColumnRegister, .partnershipFormDiv { display: flex; justify-content: center; padding: 50px 0; }
.stakeholderLoginForm input { border-radius: 3px !important; }
p.form-row.loginCheckboxDiv { display: flex; gap: 5px; justify-content: space-between; flex-wrap: wrap; }
p.form-row.loginCheckboxDiv label, label.lns-checkbox {
    display: flex !important;
    align-items: center;
    width: max-content;
    gap: 8px;
    margin-right: 0;
    font-size: 14px;
}
.loginCheckboxDiv::after, .loginCheckboxDiv::before { content: none !important; }
.form-row.loginCheckboxDiv a, .registerCtaDiv a {
    width: max-content;
    font-size: 14px;
    text-decoration: underline;
    text-underline-offset: 4px;
}
.loginImageDiv.col-5 {
    background-image: url(https://punaravartan.org/wp-content/uploads/2025/01/login-image.jpeg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 3px;
}
.formMainHeading { font-size: 32px; font-weight: 700; }
.punaravartanLoginForm { padding: 50px 30px; }
.woocommerce-LostPassword.lost_password {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    flex-direction: row-reverse;
    margin-bottom: 0;
}
.woocommerce-LostPassword.lost_password .punaravartanCta { width: 100%; }
.punaravartanRegisterForm { width: 80% !important; max-width: 100% !important; padding-top: 30px !important; }
.punaravartanMyAccountColumn textarea, .punaravartanMyAccountColumnRegister textarea { min-height: 100px !important; }
.stakeholderRegistrationForm input { margin: 0 !important; }
.stakeholderRegistrationForm select, .stakeholderRegistrationForm textarea { min-height: 52px !important; max-height: 52px !important; }
.stakeholderRegistrationForm, .registerFormDiv, .woocommerce form.login {
    border: 0 !important;
    padding: 0 !important;
    margin: 1em 0 !important;
    text-align: left;
    border-radius: 5px;
    background-color: transparent !important;
}
.punaravartanRegisterForm input,
.stakeholderRegistrationForm select,
.stakeholderRegistrationForm textarea,
.stakeholderLoginForm input,
.partnershipForm select,
.partnershipForm textarea,
.woocommerce-Input,
.searchInput,
.paFilterContainer select,
.paFilterContainer .choices,
.punaravartanVolunteerFormRow input,
.punaravartanVolunteerFormRow select{
    width: 100% !important;
    border-radius: 6px !important;
    border: 2px solid #efdecd !important;
    height: 52px !important;
    padding: 0 15px !important;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
}
.punaravartanVolunteerFormRow textarea{
    width: 100% !important;
    border-radius: 6px !important;
    border: 2px solid #efdecd !important;
    min-height: 70px !important;
}

input#typeOfMaterial { cursor: not-allowed; color: #aaa; }
p#stakeholderType_field { display: flex; align-items: center; gap: 15px; padding-bottom: 20px; }
.punaravartanRegisterForm .form-row-two-column { display: flex; justify-content: space-between; gap: 15px; align-items: baseline; }
.punaravartanRegisterForm .form-column, .woocommerce-privacy-policy-text p { width: 100% !important; padding-bottom: 20px; }
.woocommerce form .form-row { padding: 0 0 20px !important; margin: 0 !important; }
.formContainer { margin-bottom: 1rem; }
.punaravartanMyAccountColumnRegister p { margin-bottom: 0 !important; width: 100%; }
.form-row-two-column p label { display: block; margin-bottom: 5px; }
.form-column label, label.tooltip-label { margin-bottom: 5px; }
input#mandatoryConsent, input#rememberme, label.lns-checkbox input,
.punaravartanRegisterForm input[type="checkbox"],
input[type=checkbox]{
    width: 5px !important;
    padding: 0 !important;
    height: 5px !important;
    border: 2px solid #efdecd !important;
    border-radius: 6px !important;
    margin-right: 0;
    text-align: left !important;
}
.punaravartanRadioButton {
    display: flex;
    gap: 15px;
    align-items: center;
    flex-wrap: wrap;
    padding: 20px;
    border-radius: 12px;
    background: #fbf7f2;
    border: 2px solid #efdecd;
    margin-bottom: 40px;
}
button.show-password-input {
    background-color: transparent !important;
}
.punaravartanRegisterForm span.wpcf7-list-item label {
    display: flex !important;
    gap: 5px;
}
.punaravartanRegisterForm .wpcf7-checkbox {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.punaravartanRegisterForm span.wpcf7-list-item {
    margin-left: 0px;
}
.idolSizeInfoNote{
    align-items: flex-start;
    gap: 10px;
    width: 100%;
    background: #ffeec6;
    border: 1px solid #f2aa02;
    border-radius: 6px;
    padding: 12px 16px;
    box-sizing: border-box;
    font-size: 13.5px;
    line-height: 1.55;
    color: #000;
    margin-bottom: 20px;
}
.paRadioLabel { width: 100%; font-size: 18px; font-weight: 600; color: #000; }
.paRadioItem { display: flex; align-items: center; gap: 5px; }
.punaravartanRadioButton input[type=radio] {
    width: 20px !important;
    height: 20px !important;
    padding: 0 !important;
    border-radius: 50px !important;
    border: 2px solid #69381c !important;
}
input[type="radio"]:checked:before { background-color: #944e27 !important; }
input[type="checkbox"]:checked:before {
    border-left: 2px solid #944e27 !important;
    border-bottom: 2px solid #944e27 !important;
    margin-left: 4px !important;
    margin-bottom: 3px !important;
}
.punaravartanRadioButton input[type="radio"]:checked + label { font-weight: 600 !important; }
.punaravartanRadioButton .woocommerce-input-wrapper label { margin-bottom: 0 !important; margin-right: 10px; }
.punaravartanRegisterForm .form-select:focus { box-shadow: none !important; }
.punaravartanCta, .closeButton, .punaravartanSaveCta, .showInterestButton, .geoProximitySearchMe,
.partnershipCtaDiv input[type="submit"], .woocommerce-Button, .punaravartanSingleRow input[type=submit] {
    background-color: #A9CB52 !important;
    border: 2px solid #A9CB52 !important;
    border-radius: 10px !important;
    height: 56px;
    font-size: 16px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}
.punaravartanRadioButton
{
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 columns */
    gap: 10px 20px; /* row-gap column-gap */
    width: stretch;
}

/* Make heading take full width */
.punaravartanRadioButton .paRadioLabel,
.punaravartanRadioButton .section-caption
{
    grid-column: span 2;
}

/* Each radio item */
.punaravartanRadioButton .paRadioItem
{
    display: flex;
    align-items: center;
    gap: 8px;
}
.woocommerce-button.button.alt.switch-to-register { background-color: #fff !important; color: #A9CB52 !important; border: 2px solid #A9CB52 !important; }
.woocommerce-button.button.alt.switch-to-register:hover { background-color: #A9CB52 !important; color: #fff !important; transform: translateY(-1px); }
.punaravartanCta:hover, .closeButton:hover, .woocommerce a.button:hover, .punaravartanSaveCta:hover,
.geoProximitySearchMe:hover, .partnershipCtaDiv input[type="submit"]:hover,
.woocommerce-Button:hover, .punaravartanSingleRow input[type=submit]:hover {
    background-color: #000 !important;
    border-color: #000 !important;
    transform: translateY(-1px);
    color: #fff !important;
}
label.lns-checkbox { margin-top: 10px; width: 100%; }
label.tooltip-label { width: 100%; }
.lesCheckboxesContainer { gap: 20px; align-items: center; padding: 10px 0; width: 100%; }
.inward-transport-inner-div, .collection-tanks-inner-div, .outward-transport-inner-div { margin-top: 10px; }
.form-row-two-column.collection-tanks-inner-div .form-column,
.form-row-two-column.inward-transport-inner-div .form-column,
.form-row-two-column.outward-transport-inner-div .form-column { padding-bottom: 0 !important; }
.plusMinusButtons, .inwardTransportExtraFields { display: flex; flex-direction: column; gap: 10px; margin: auto; }
.inwardTransportExtraFields, .outwardTransportExtraFields { position: relative; top: 14px; }
.plusCta, .minusCta { color: #944e27; border-radius: 50px; }
.plusCta:hover, .minusCta:hover { color: #000; cursor: pointer; }
.alert.alert-info:focus-visible { outline: none; }
.clayCollectorExtraFields, .collectionTanksExtraFields { position: relative; bottom: 15px; }
.openMapDialogBox { max-width: 50% !important; }
.btn-collectionTanksLocation\[\] { margin-bottom: 10px; }

/* Facilitator Dashboard */
#facilitatorServicesHeading { text-align: center; border-bottom: 1px solid #fff; }
.facilitatorNameField { width: 200px; }
.facilitatorServicesOfferings { padding-bottom: 10px; }
.facilitatorNameField i.fas.fa-sort-asc.col-asc,
.facilitatorCity i.fas.fa-sort-asc.col-asc,
.facilitatorPinCode i.fas.fa-sort-asc.col-asc { top: 40% !important; }
.facilitatorNameField i.fas.fa-sort-desc.col-desc,
.facilitatorCity i.fas.fa-sort-desc.col-desc,
.facilitatorPinCode i.fas.fa-sort-desc.col-desc { bottom: 40% !important; }
.facilitatorServicesOfferingsHeading {
    margin-bottom: 5px;
    color: #3d2b1f;
    font-weight: 500;
    font-size: 14px;
    background: #efdecd;
    border-radius: 3px;
    padding: 8px;
}

.locationDiv, .calenderDiv, .pinCodeDiv { display: flex; align-items: center; gap: 10px; padding-bottom: 5px; }
.showInterestButton { margin: 10px 5px !important; padding: 5px 15px !important; }
.collectionTankContainer:nth-child(1) { border: none; }
.collectionTankContainer { border-top: 1px solid #ddd; padding: 5px 0; }

/* ================================
   LISTING WRAPPER (base)
================================ */
.les-listing { opacity: 1; transition: opacity 0.15s ease; width: 100%;    overflow: auto;}
.les-listing.loading { opacity: 0.4; pointer-events: none; cursor: wait !important; }
/* ================================
   Table Wrapper — scoped under .les-listing
================================ */
.les-listing .table-wrapper,
.table-wrapper {
    width: 100%;
    margin: 0 0 30px;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e8e0d5;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}

th#fullAddressHeading {
    min-width: 150px !important;
}
td[data-label="Address"] {
    text-wrap: auto;
    white-space: normal;
    word-break: break-word;
}
/* ================================
   Stakeholder / Listing Table
================================ */
.les-listing table,
.stakeholderListingTable {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    padding: 0;
    table-layout: auto;
    white-space: nowrap;
    background-color: #ffffff;
}
.les-listing table th,
.les-listing table td,
.stakeholderListingTable th,
.stakeholderListingTable td {
    padding: 14px 18px;
    text-align: left;
}
.les-listing table thead th,
.stakeholderListingTable thead th {
    background-color: #fdf4e8;
    color: #3d2b1f;
    font-weight: 700;
    position: relative;
    top: 0;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-right: 1px solid #ede5d8;
    /* border-bottom: 2px solid #e0d4c4; */
    vertical-align: middle;
}
.les-listing table thead th:last-child,
.stakeholderListingTable thead th:last-child {
    border-right: none;
}

/* Sortable column header hover */
.les-listing table th.sortable {
    cursor: pointer;
    user-select: none;
    transition: background-color 0.15s ease;
}
.les-listing table th.sortable:hover { background-color: #ede5d8; }

/* Sort active indicator */
.les-listing table th.sort-active { background-color: #ede5d8; }
.les-listing table th.sort-asc .col-asc  { color: #a9cb52; font-weight: 900; }
.les-listing table th.sort-desc .col-desc { color: #a9cb52; font-weight: 900; }

a.approveStakeholder, a.viewStakeholderDetail { font-size: 12px !important; }
a.approveStakeholder:hover, a.viewStakeholderDetail:hover { color: #000 !important; }

.les-listing table tbody tr,
.stakeholderListingTable tbody tr {
    background-color: #ffffff;
    transition: background-color 0.15s ease;
}
.les-listing table tbody tr:nth-child(even),
.stakeholderListingTable tbody tr:nth-child(even) {
    background-color: #fdfaf6;
}
.les-listing table tbody tr:hover,
.stakeholderListingTable tbody tr:hover {
    background-color: #fdf4e8;
}

.les-listing table thead,
.les-listing table tbody,
.stakeholderListingTable thead,
.stakeholderListingTable tbody { border-color: #e8e0d5 !important; border-width: 1px !important; }

/* Sort icons */
.les-listing table th i.fas.fa-sort-asc.col-asc,
.stakeholderListingTable th i.fas.fa-sort-asc.col-asc {
    position: absolute;
    right: 8px;
    top: 28%;
    cursor: pointer;
    color: #bfb0a0;
    font-size: 11px;
}
.les-listing table th i.fas.fa-sort-desc.col-desc,
.stakeholderListingTable th i.fas.fa-sort-desc.col-desc {
    position: absolute;
    bottom: 28%;
    right: 8px;
    cursor: pointer;
    color: #bfb0a0;
    font-size: 11px;
}
.les-listing table th i:hover,
.stakeholderListingTable th i:hover { color: #a9cb52 !important; }

.les-listing table td,
.stakeholderListingTable td {
    color: #2c2420;
    border-bottom: 1px solid #f0e8db;
    border-right: none;
    font-size: 14px;
}
.les-listing table tbody tr:last-child td,
.stakeholderListingTable tbody tr:last-child td {
    border-bottom: none;
}

/* Action links in table */
.les-listing table td a,
.stakeholderListingTable td a {
    text-decoration: none;
    font-size: 13px !important;
    margin: 0 4px !important;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 6px;
    transition: all 0.15s ease;
    display: inline-block;
}

/* More Details link */
.les-listing table td a.viewStakeholderDetail,
.stakeholderListingTable td a.viewStakeholderDetail {
    color: #a9cb52 !important;
    /* background: rgba(169, 203, 82, 0.1);
    border: 1px solid rgba(169, 203, 82, 0.3); */
}
.les-listing table td a.viewStakeholderDetail:hover,
.stakeholderListingTable td a.viewStakeholderDetail:hover {
    /* background: #a9cb52;
    color: #fff !important;
    border-color: #a9cb52; */
}

/* Approve link */
.les-listing table td a.approveStakeholder,
.stakeholderListingTable td a.approveStakeholder {
    color: #2d7a3a !important;
    background: rgba(45, 122, 58, 0.08);
    border: 1px solid rgba(45, 122, 58, 0.2);
}
.les-listing table td a.approveStakeholder:hover,
.stakeholderListingTable td a.approveStakeholder:hover {
    background: #2d7a3a;
    color: #fff !important;
    border-color: #2d7a3a;
}

/* Unapprove / reject link styling */
.les-listing table td a[class*="unapprove"],
.les-listing table td a[class*="reject"],
.stakeholderListingTable td a[class*="unapprove"],
.stakeholderListingTable td a[class*="reject"] {
    color: #c0392b !important;
    /* background: rgba(192, 57, 43, 0.08);
    border: 1px solid rgba(192, 57, 43, 0.2); */
}
.les-listing table td a[class*="unapprove"]:hover,
.les-listing table td a[class*="reject"]:hover,
.stakeholderListingTable td a[class*="unapprove"]:hover,
.stakeholderListingTable td a[class*="reject"]:hover {
    /* background: #c0392b;
    color: #fff !important; */
}

.actions a:hover { text-decoration: none; }
/* Patnership */
/* Container */
.file-upload-field {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  
  /* Label */
  .tooltip-label {
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 6px;
  }
  
  /* Info icon */
  .info-icon {
    width: 16px;
    height: 16px;
    font-size: 12px;
    border-radius: 50%;
    background: #efdecd;
    color: #333;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
  }
  
  /* Tooltip */
  .info-icon:hover + .tooltip-text,
  .info-icon:focus + .tooltip-text {
    display: block;
  }
  
  /* Upload box */
  .file-upload-wrapper {
    position: relative;
    border: 2px dashed #efdecd !important;
    border-radius: 8px;
    padding: 20px;
    text-align: center;
    transition: all 0.3s ease;
    cursor: pointer;
  }
  
  /* Focus state (your requirement) */
  .file-upload-wrapper:focus-within {
    border: 2px solid #a9cb52 !important;
  }
  
  /* Input hidden but clickable */
  .file-input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
  }
  
  /* Placeholder text */
  .file-upload-placeholder {
    font-size: 14px;
    color: #000;
  }
  
  /* Hint text */
  .file-hint {
    font-size: 12px;
    color: #000;
  }

  /* volunteer */
  .punaravartanVolunteerFormRow br {
    display: none;
}
.punaravartanVolunteerFormRow p{
    margin-bottom: 20px;
}
/* ================================
   Filter Bar — polished card look
================================ */

/* .les-filter-bar,
.searchBarRow.filterRow {
    background: #ffffff;
    border: 1px solid #e8e0d5;
    border-radius: 12px;
    padding: 18px 20px;
    margin-bottom: 16px;
    box-shadow: 0 1px 6px rgba(0,0,0,0.05);
} */

/* Per-filter label + control group */
.paFilterContainer {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.paFilterContainer .labelRow label,
.les-listing .searchBarRow label,
.searchBarRow label {
    font-weight: 600;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #8a7060;
    padding-bottom: 0;
}

/* Search input */
.les-listing .searchBarRow input[type="text"],
.les-listing .searchBarRow input[type="search"],
.searchBarRow input[type="text"] {
    padding: 9px 40px 9px 12px;
    border: 2px solid #efdecd !important;
    border-radius: 6px;
    width: 100%;
    background-color: #fdfaf6;
    margin: 0 !important;
    font-size: 14px;
    color: #2c2420;
    transition: border-color 0.15s ease;
}
.les-listing .searchBarRow input[type="text"]:focus,
.les-listing .searchBarRow input[type="search"]:focus {
    border-color: #a9cb52 !important;
    background-color: #fff;
}
.les-listing .searchInput,
.searchBarRow input {
    margin: 0 !important;
    border-radius: 8px !important;
    border-color: #ddd !important;
}
.les-listing .startEndDateCloumn input,
.startEndDateCloumn input {
    padding: 9px 12px !important;
    border-radius: 8px !important;
    border: 1.5px solid #ddd !important;
    background-color: #fdfaf6 !important;
    font-size: 14px !important;
    color: #2c2420 !important;
    transition: border-color 0.15s ease !important;
}
.les-listing .startEndDateCloumn input:focus,
.startEndDateCloumn input:focus {
    border-color: #a9cb52 !important;
    background-color: #fff !important;
}

/* Dropdown selects */
.les-listing .cityFilter,
.les-listing .numberOfFields,
.les-listing .approvalFilter,
.searchBarRow select,
.dropdown-selected {
    padding: 9px 32px 9px 12px !important;
    border:2px solid #efdecd !important;
    border-radius: 6px !important;
    background-color: #fff !important;
    min-height: auto !important;
    font-size: 14px !important;
    color: #2c2420 !important;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke-linecap='round' width='100' height='100' stroke='rgba(100,80,60,.7)' stroke-width='3'%3E%3Cpolyline points='2.7,2.3 49.1,57.2 95.5,2.3 '/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-size: 11px !important;
    background-position: calc(100% - 10px) calc(50% + 2px) !important;
    margin-bottom: 0;
    cursor: pointer;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.choices__inner{
    background-color: #fff !important;
    border: none;
    padding: 0px!important;
    display: flex;
    align-items: center;
}
.les-listing .cityFilter:focus,
.les-listing .numberOfFields:focus,
.les-listing .approvalFilter:focus,
.searchBarRow select:focus {
    border-color: #a9cb52 !important;
    box-shadow: 0 0 0 3px rgba(169, 203, 82, 0.15) !important;
    background-color: #fff !important;
    outline: none !important;
}
.les-listing .cityFilter:hover,
.les-listing .numberOfFields:hover,
.les-listing .approvalFilter:hover {
    border-color: #c4b8aa !important;
}

/* Preserve Choices.js inner styling */
.choices__list { padding: 0 !important; left: 0 !important; }
.choices__list--single .choices__item { font-size: 16px !important; }
.choices[data-type*=select-one] .choices__input { padding: 5px; }
.choices__placeholder { opacity: 1; }

/* Rows / approval selects */
.les-listing .numberOfFields,
.les-listing .approvalFilter,
select#approvalStatusFilter,
select#numberOfFields {
    width: fit-content !important;
    padding-right: 32px !important;
}

/* ================================
   Filter Row Layout
================================ */
.les-listing .filterRow,
.filterRow {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    justify-content: space-between;
    width: 100%;
}
.les-listing .searchColumn,
.searchColumn { position: relative; }

/* WRAPPER */
.filterWrapper
{
    width: 100%;
}

/* ===== TOP BAR ===== */
.topBar
{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    flex-wrap:wrap;
    gap: 10px;
}

/* SEARCH */
.searchBox
{
    position: relative;
    flex-grow: 1;
}

.searchInput
{
    padding-left: 35px!important;
    margin: 0px !important;
}

.searchIcon
{
    position: absolute;
    left: 10px;
    top: 26px;
    transform: translateY(-50%);
    color: #000;
}

/* ACTION BUTTONS */
.topActions
{
    display: flex;
    justify-content: end;
    flex-grow: 1;
    gap: 10px;
    
}

.filterToggleBtn,
.exportBtn
{
    border: 1px solid #ddd;
    background: #fff;
    padding: 8px 14px;
    border-radius: 8px;
    cursor: pointer;
}

/* ===== ADVANCED FILTER ===== */
.advancedFilterCard
{
    display: none;
    border: 2px solid #efdecd !important;
    border-radius: 6px;
    padding: 20px;
    margin-bottom: 20px;
}

.advancedFilterCard.active
{
    display: block;
}

/* Advanced filter card — hidden until .open is toggled by JS */
.les-filter-bar .advancedFilterCard {
    display: none !important;
}

.les-filter-bar .advancedFilterCard.open {
    display: block !important;
}

/* TITLE */
.filterTitle
{
    margin-bottom: 15px;
    font-weight: 600;
}

/* GRID */
.filterGrid
{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    align-items: self-end;
    gap: 20px;
}

/* LABEL */
/* .paFilterContainer label
{
    font-size: 12px;
    color: #6b7280;
} */

/* SELECT */
/* .paFilterContainer .choices{
    width: 100%;
    height: 52px!important;
} */
/* .paFilterContainer .choices__inner{
    height: 52px;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
} */
.choices__list--dropdown, .choices__list[aria-expanded]{
    border-color: #efdecd !important;
}
.choices[data-type*=select-one] .choices__input{
    border-radius: 0px!important;
    border: none;
    border-bottom: 1px solid #efdecd!important;
}

/* ACTIONS */
.filterActions
{

}

/* APPLY BUTTON */
.applyFiltersBtn
{
    background: #84c341;
    color: #fff;
    padding: 10px 18px;
    border-radius: 8px;
    border: none;
}

/* CLEAR */
.clearFilters
{
    background: transparent;
    border: none;
    color: #6b7280;
}
/* ================================================
   Search Column — label on top, input+button in a row
   HTML structure (from PHP template):
     <div class="searchColumn">
       <label>...</label>
       <input class="searchInput" type="search">
       <button class="searchBtn">...</button>
     </div>
   Strategy: make .searchColumn a column container,
   then pull input+button into a row using negative
   margin trick won't work — instead we use a
   CSS grid with named areas so label spans full
   width and input+button share one row.
================================================ */
.les-listing .searchColumn,
.searchColumn {
    display: grid !important;
    grid-template-columns: 1fr 42px;
    grid-template-rows: auto 38px;
    grid-template-areas:
        "label label"
        "input btn";
    gap: 6px 0;
    /* min-width: 260px;
    max-width: 360px; */
    align-items: center;
    position: static !important;
}

.les-listing .searchColumn > label,
.searchColumn > label {
    grid-area: label;
    font-weight: 600;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #8a7060;
    margin-bottom: 0;
    line-height: 1.4;
    white-space: normal;
    order: unset;
}

.les-listing .searchColumn .searchInput,
.les-listing .searchColumn input[type="search"],
.les-listing .searchColumn input[type="text"],
.searchColumn .searchInput,
.searchColumn input[type="search"],
.searchColumn input[type="text"] {
    grid-area: input;
    width: 100% !important;
    height: 38px !important;
    padding: 9px 12px !important;
    border-radius: 8px 0 0 8px !important;
    border: 1.5px solid #ddd !important;
    border-right: none !important;
    background-color: #fdfaf6 !important;
    font-size: 14px !important;
    color: #2c2420 !important;
    margin: 0 !important;
    box-sizing: border-box;
    order: unset;
    position: static !important;
    flex: unset !important;
}
.les-listing .searchColumn .searchInput:focus,
.les-listing .searchColumn input[type="search"]:focus,
.searchColumn input[type="search"]:focus {
    border-color: #a9cb52 !important;
    background-color: #fff !important;
    outline: none !important;
}
button, input[type=reset], input[type=submit]
{
        background-color: #A9CB52 !important;
}
.les-listing .searchBtn,
button#stakeholderSearchButton,
button#partnerSearchButton {
    grid-area: btn;
    position: static !important;
    width: 42px !important;
    height: 38px !important;
    background-color: #A9CB52 !important;
    border: 2px solid #A9CB52 !important;
    border-radius: 0 8px 8px 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer;
    transition: background-color 0.15s ease;
    order: unset;
    color: #fff;
}
.les-listing .searchBtn:hover,
button#stakeholderSearchButton:hover,
button#partnerSearchButton:hover {
    background-color: #8fb137 !important;
    border-color: #8fb137 !important;
    transform: translateY(0);
}
.les-listing .searchBtn i,
button#stakeholderSearchButton i,
button#partnerSearchButton i {
    color: #fff;
    font-size: 14px;
}

.les-listing .DropdownRow,
.DropdownRow {
    display: flex;
    gap: 10px;
    align-items: flex-end;
    justify-content: flex-end;
}

/* Clear filters / export buttons */
.les-listing .clearFilters,
.les-listing .exportBtn,
.filterRow a,
#clearFilters,
.ancherTagToButton {
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 13px;
    width: max-content;
    height: 52px;
    border-radius: 10px;
    vertical-align: middle;
    padding: 0 16px;
    border: none;
    cursor: pointer;
    transition: all 0.15s ease;
    gap: 6px;
    white-space: nowrap;
}

/* Clear filters — secondary muted style */
.les-listing .clearFilters,
#clearFilters,
button.clearFilters {
    color: #a9cb52 !important;
    background-color: #fff!important;
    border: 2px solid #a9cb52 !important;
}
.les-listing .clearFilters:hover,
button.clearFilters:hover {
    background-color: #a9cb52!important;
    color: #fff !important;
    cursor: pointer;
}

/* Export button — accent green */
.les-listing .exportBtn,
button.exportBtn,
#exportStakeholderButton {
    color: #A9CB52 !important;
    background-color: #fff !important;
    border: 2px solid #A9CB52 !important;
}
.les-listing .exportBtn:hover,
button.exportBtn:hover {
    background-color: #8fb137 !important;
    border-color: #8fb137 !important;
    color: #fff !important;
    cursor: pointer;
}

i.fa-regular.fa-circle-xmark { margin-left: 5px; }
.filterRow a:hover i.fa-regular.fa-circle-xmark { color: #b81c23; }

.stakeholderPagination.paginationContainer { text-align: center; margin-bottom: 30px; }

/* ================================
   Connect / Interest
================================ */
.interestSent { color: green; font-size: 14px; margin-bottom: 0 !important; }
.interestSent::after { content: '\1F5F8'; color: green; font-size: 20px; margin-left: 5px; }

/* ================================
   Approval Popup
================================ */
.userApprovalStatusBox .modal-content { height: auto !important; }
.userApprovalStatusBox button.btn.btn-secondary, .userApprovalStatusBox .btn-close { background-color: #3d2b1f; color: #fff; border-color: #3d2b1f; }

/* CampaignList */
.collectionTankList { padding: 0; font-weight: 600; }
.collectionTankList li { margin-bottom: 5px; font-weight: 400; }
.passwordHeading { margin-top: 10px; }

/* ================================
   Collection Centre Table specific
================================ */
.les-listing th#campainLocationHeading { width: 400px !important; }
.centreLocationContainer { text-wrap: wrap; }
.les-listing th#stakeholderPhone,
.les-listing th#stakeholderCityHeading { min-width: 170px; }
.les-listing th#stakeholderPinCodeHeading { min-width: 120px; }
.les-listing th#pickupAvailablilityHeading { min-width: 190px; }

/* Grid for collection centre inline fields */
.campaignContainer { display: grid !important; grid-template-columns: repeat(3, 1fr); }
.campaignContainer .clayCollectorExtraFields { width: 100%; flex-direction: row; flex-wrap: wrap; }

/* ================================
   Geo Proximity
================================ */
.cityDropdownDiv { margin: 40px 0; padding: 0 30px; }
.cityDropdownDiv h4 { font-size: 18px; text-transform: capitalize; margin-bottom: 10px; }
.cityDropdownDiv input, .geoRegionFieldSelect, .searchOptionsDropdown { width: fit-content; margin: 0 10px !important; border-radius: 3px !important; }
input.geoProximitySearchMe { margin: 0 !important; font-weight: 500; text-transform: capitalize; border-radius: 30px !important; }
.geoPincodeErrorMessage { color: #b81c23; }

/* ================================
   Partnership Form
================================ */
.partnershipForm br { display: none; }
.partnershipForm p { margin-bottom: 0 !important; }
.partnershipForm input { margin: 0 !important; }
.partnershipForm textarea { max-height: 70px !important; min-height: 40px; }
.partnershipCtaDiv { margin-top: 20px; width: fit-content; height: 44px; }
.partnershipCtaDiv input[type="submit"] { border-radius: 30px !important; border: none !important; }
.wpcf7 input[type="file"] { border: none !important; padding: 10px 0 0 !important; }
form.wpcf7-form.invalid { display: flex; justify-content: center; flex-direction: column; align-items: center; }
.wpcf7-response-output { position: relative; bottom: 30px; }

/* ================================
   Membership Card
================================ */
.membershipCardDiv { display: flex; flex-direction: column; align-items: flex-start; gap: 15px; margin-top: 10px; padding: 20px; background-color: #f8f2e8; border-radius: 3px; }
.membershipCardDiv h3 { margin: 0 !important; }
.punaravartanMyAccountColumnRegister { padding-top: 0 !important; }

/* ================================
   Modal
================================ */
.woocommerce-lost-password .woocommerce { padding: 30px 30px 10px; }
.modal { display: none; position: fixed; z-index: 9999; padding-top: 100px; width: 100%; height: 100%; background-color: rgba(0,0,0,0.4); }
.modal-content { background-color: #fff; margin: auto; border: 1px solid #888;     max-height:max-content!important; }
.approvalMessage p{
    margin-bottom: 0px!important;
}
.modal-body{
    padding: 16px;
}
.punaravartanModalFooter button,
.modal-footer button {
    font-size: 14px !important;
    height: 40px;
    margin: 0px;
}
.punaravartanModalHeader,.modal-header {
    padding: 16px;
}
.punaravartanModalFooter,
.modal-footer {
    padding: 16px !important;
}
.punaravartanModalContent { height: fit-content !important; }
.close-modal { color: #aaa; float: right; font-size: 28px; font-weight: bold; }
.modal-footer { gap: 15px; }
.close-modal:hover, .close-modal:focus { color: #000; text-decoration: none; cursor: pointer; }
span.approvedText { color: green; }
span.unApprovedText { color: #b81c23; }
.modal-body.table-responsive th { font-weight: 500; }

/* ================================
   Page Loader
================================ */
#lesPopup { display: none; }
.popupBox { display: none; position: fixed; z-index: 999; padding-top: 100px; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0,0,0,0.4); }
.popupBox-content { position: fixed; background-color: #fefefe; margin: auto; padding: 0; border: 1px solid #888; width: 50%; box-shadow: 0 4px 8px 0 rgba(0,0,0,.2), 0 6px 20px 0 rgba(0,0,0,.19); -webkit-animation-duration: 0.4s; animation-duration: 0.4s; margin-top: 2%; left: 10%; right: 10%; }
.listingPageLoaderDiv { text-align: center; }
.listingPageLoaderDiv h3 { color: #fff !important; }
.listingPageLoaderContent { background-color: transparent !important; box-shadow: none !important; z-index: 999 !important; border: none !important; position: absolute; top: calc(50% - 45px); left: calc(50% - 45px); }
.listingPageLoader { width: 40px; height: 40px; border-radius: 50%; display: inline-block; position: relative; border: 2px solid #754021; box-sizing: border-box; animation: rotation 1s linear infinite; }
.listingPageLoader::after { content: ''; box-sizing: border-box; position: absolute; left: 4px; top: 4px; border: 2px solid #fff; width: 12px; height: 12px; border-radius: 50%; }
@keyframes rotation { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
.loader { border: 15px solid #227d83; border-radius: 50%; border-top: 15px solid #f3f3f3; width: 75px; height: 75px; -webkit-animation: spin 2s linear infinite; animation: spin 2s linear infinite; margin: 0 auto; }
.woocommerce .loader::before { display: none !important; }
@-webkit-keyframes spin { 0% { -webkit-transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); } }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

/* ================================
   Tooltip
================================ */
.tooltip-label { position: relative; }
.tooltip-label:hover .tooltip-text { visibility: visible; opacity: 1; }
.tooltip-text {
    visibility: hidden;
    background-color: #EDDACB;
    color: #000;
    text-align: center;
    padding: 5px 10px;
    border-radius: 3px;
    font-size: 14px;
    position: absolute;
    bottom: 120%;
    right: 0;
    z-index: 1;
    opacity: 0;
    transition: opacity 0.3s;
    width: 100%;
}
.tooltip-text::before {
    content: '';
    position: absolute;
    top: 100%;
    left: 20px;
    width: 0;
    height: 0;
    border: .5em solid transparent;
    border-top-color: #EDDACB;
    transform: translate(-50%, 0);
}
.fa-info {
    color: #3d2b1f;
    cursor: pointer;
    position: relative;
    bottom: 3px;
    padding: 5px;
    border: 1px solid #3d2b1f;
    border-radius: 100%;
    font-size: 8px;
    line-height: 3px !important;
    margin-left: 5px;
    width: 15px;
    height: 15px;
}
.filter-tooltip-container { position: relative; display: inline-block; }
.filter-tooltip-container .filter-tooltip-text { visibility: hidden; width: 200px; background-color: #000; color: #fff; text-align: center; border-radius: 5px; padding: 5px; position: absolute; bottom: 125%; left: 50%; transform: translateX(-50%); opacity: 0; transition: opacity 0.3s; }
.filter-tooltip-container:hover .filter-tooltip-text { visibility: visible; opacity: 1; }

/* ================================
   Map
================================ */
#collection-centre-map { height: 500px; }

/* ================================
   Pagination — polished
================================ */
.paginationDiv,
.paginationContainer,
.stakeholderPagination {
    margin: 24px 0 8px;
    font-size: 14px;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 4px;
}
.paginationDiv input#pageNumber {
    width: 48px;
    text-align: center;
    margin: 0 4px !important;
    border: 1.5px solid #ddd !important;
    border-radius: 8px !important;
    height: 36px !important;
    padding: 0 8px !important;
    font-size: 14px !important;
    color: #2c2420 !important;
}
span#substract, span#addition { font-size: 20px !important; }

.pageLink {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    margin: 0 2px;
    color: #69381c;
    cursor: pointer;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    border-radius: 8px;
    border: 1.5px solid transparent;
    transition: all 0.15s ease;
}
.pageLink:hover {
    color: #3d2b1f !important;
    background-color: #f5ede3;
    border-color: #e0d0bc;
    text-decoration: none;
}
.pageLink.active {
    color: #fff !important;
    background-color: #a9cb52;
    border-color: #a9cb52;
}
.pageLink.active:hover {
    background-color: #8fb137;
    border-color: #8fb137;
    border-bottom: none;
}

.pageArrow {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    cursor: pointer;
    font-size: 16px;
    color: #69381c;
    border-radius: 8px;
    border: 1.5px solid #e8e0d5;
    background: #fff;
    transition: all 0.15s ease;
    margin: 0 2px;
}
.pageArrow.disabled {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}
.pageArrow i { font-size: 14px; }
.pageArrow:hover:not(.disabled) {
    color: #3d2b1f !important;
    background-color: #f5ede3;
    border-color: #c4b8aa;
}

/* Showing X-Y of Z text — separate element above pagination */
.stakeholderPagination.paginationContainer {
    margin-bottom: 30px;
    color: #8a7060;
    font-size: 13px;
}

#memberDetailsModal .btn-close:hover, .btn-close:hover { background-color: #A9CB52 !important; color: #fff !important; }
#memberDetailsModal table#memberDetailsTable { border: 1px solid #dee2e6;}

/* ================================
   RESPONSIVE BREAKPOINTS
================================ */

/* ≥768px */
@media (min-width: 768px) {
    .woocommerce-notices-wrapper { display: flex; justify-content: center; }
}

/* ≤1200px */
@media (max-width: 1200px) {
    .avartanNavigation ul { gap: 10px !important; }
    .les-listing .filterRow,
    .filterRow { flex-wrap: wrap; }
    .les-listing .DropdownRow,
    .les-listing .searchColumn,
    .DropdownRow,
    .searchColumn { justify-content: flex-start; width: 100%; }
}

/* ≤1100px */
@media (max-width: 1100px) {
    .menuStakeholderDetails p, .menuStakeholderDetails span { color: #fff !important; }
}

/* ≤1024px */
@media (max-width: 1024px) {
    .punaravartanRegisterForm { width: 85% !important; }
    .openMapDialogBox { max-width: 60% !important; }
}

/* ≤991px */
@media (max-width: 991.98px) {
    .avartanNavigation ul { gap: 25px; }
    .punaravartanRegisterForm { width: 90% !important; max-width: 100% !important; }
    button.addAnotherFieldButton, button.removeFieldButton { margin-bottom: 2%; margin-top: 0 !important; }

    select#approvalStatusFilter { width: 40%; }
    .les-listing .approvalFilter { width: 40%; }

    .form-row-two-column.flex { flex-direction: column; }
    .clayCollectorExtraFields { flex-direction: row; top: -10px !important; margin: 0 !important; position: relative; }
    .campaignContainer { grid-template-columns: 1fr !important; }
    .punaravartanRadioButton .woocommerce-input-wrapper label { margin-right: 0; }
    .punaravartanMyAccountColumnRegister { padding-top: 0 !important; }
    .punaravartanMyAccountColumn, .punaravartanMyAccountColumnRegister, .partnershipFormDiv { padding: 50px; }
    p#stakeholderType_field { flex-direction: column; align-items: flex-start; gap: 0; }

    .les-listing table thead th { min-width: 140px; }
}

/* ≤767px */
@media (max-width: 767.99px) {
    ul#paAccountMenuBar { justify-content: flex-end; }
    .woocommerce-notices-wrapper { padding: 0 30px; }
    .woocommerce-MyAccount-content.avartanMyAccount { margin-top: 0 !important; }
    select.account-menu-dropdown { width: 100%; border-radius: 3px; background-color: #fdf7ec; }
    #paAccountMenuDropdown { padding: 30px 30px 0; }
    label.account-menu-label { padding: 10px; font-weight: 500; color: #212529; }
    nav.woocommerce-MyAccount-navigation.avartanNavigation { padding-top: 0 !important; padding-bottom: 0; }

    .les-listing table thead th,
    .stakeholderListingTable thead th { min-width: 160px !important; }

    .punaravartanRegisterForm { width: 100% !important; max-width: 100% !important; padding-top: 30px !important; }
    .avartanMyAccount .punaravartanRegisterForm { padding-top: 0 !important; }
    .punaravartanRegisterForm .form-row-two-column { flex-direction: column !important; gap: 0 !important; align-items: flex-start; }

    /* Listing filter row — stack on mobile */
    .les-listing .searchBarRow,
    .searchBarRow { flex-wrap: wrap !important; }
    .les-listing .searchColumn,
    .searchColumn { width: 100%; max-width: 100%; min-width: 0; }
    .les-listing .DropdownRow,
    .DropdownRow { width: 100%; justify-content: flex-start !important; flex-wrap: wrap; }
    .les-listing .filterRow,
    .filterRow { gap: 5px; }
    .les-listing .clearFilters,
    .les-listing .exportBtn { width: 100%; box-sizing: border-box; text-align: center; }

    .les-listing .approvalFilter,
    select#approvalStatusFilter { width: 70%; }

    .plusMinusButtons, .inwardTransportExtraFields { flex-direction: row; margin: 10px 0 0; }
    .collectionTanksExtraFields { margin: 25px 0 0; }
    .inwardTransportExtraFields, .outwardTransportExtraFields { position: relative; top: 0; }
    .clayCollectorExtraFields { top: 0; margin-top: 0 !important; margin-bottom: 10px !important; }
    .formContainer.stakeholderFormField .tooltip-text { width: 100% !important; }
    #memberDetailsTable th { min-width: 170px !important; }
    .cityDropdownDiv form { display: flex; }
    input.geoProximityPincode { margin: 0; }

    /* Mobile card view — stack cells as definition list */
    .les-listing table.stakeholderListingTable thead { display: none; }
    .les-listing table.stakeholderListingTable tbody tr {
        display: block;
        border: 2px solid  #efdecd;
        margin-bottom: 12px;
        border-radius: 6px;
        overflow: hidden;
        background: #fff;
        /* box-shadow: 0 2px 8px rgba(0,0,0,0.06); */
    }
    /* .les-listing table.stakeholderListingTable tbody tr:hover {
        background: #fff;
        box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    } */
    .les-listing table.stakeholderListingTable tbody td {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr);
        align-items: center;
        gap: 0px;
        padding: 11px 16px;
        border: none;
        border-bottom: 1px solid #f0e8db;
        white-space: normal;
        font-size: 14px;
        width: 100%;
        box-sizing: border-box;
    }
    .les-listing table.stakeholderListingTable tbody td:last-child {
        border-bottom: none;
        background-color: #fdfaf6;
        display: flex !important;
        gap: 10px;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .les-listing table.stakeholderListingTable tbody td::before {
        content: attr(data-label);
        font-weight: 600;
        /* font-size: 11px; */
        text-transform: uppercase;
        letter-spacing: 0.4px;
        /* color: #8a7060; */
        padding-top: 2px;
    }
    .les-listing table.stakeholderListingTable tbody td:last-child::before{
        content: none;
    }

    /* Filter bar on mobile */
    .les-filter-bar,
    .searchBarRow.filterRow {
        border-radius: 6px;
    }
    .paFilterContainer {
        width: 100%;
    }
    .les-listing .cityFilter,
    .les-listing .numberOfFields,
    .les-listing .approvalFilter {
        width: 100% !important;
    }

    /* Pagination on mobile */
    .paginationDiv,
    .paginationContainer,
    .stakeholderPagination {
        gap: 3px;
        flex-wrap: wrap;
        flex-direction: row !important;
    }
    .pageLink {
        min-width: 32px;
        height: 32px;
        font-size: 13px;
        margin: 0 1px;
        display: inline-flex !important;
        flex-direction: row !important;
    }
    .pageArrow {
        width: 32px;
        height: 32px;
        display: inline-flex !important;
        flex-direction: row !important;
    }

    .openMapDialogBox { max-width: 100% !important; }
    /* filter */
    .filterGrid{
        grid-template-columns: repeat(2, 1fr);
    }
    .topActions{
        justify-content: space-between;
    }
    /* table */
    .les-listing table thead, .les-listing table tbody, .stakeholderListingTable thead, .stakeholderListingTable tbody{
        border:none;
    }
/* modal table */
.modal-body table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    padding: 0;
    table-layout: auto;
    white-space: nowrap !important;
    background-color: #ffffff;
    border: none !important;
}
.modal-body tbody {
    border: 2px solid #efdecd;
    border-radius: 6px !important;
}
.modal-body tr {
    border-radius: 0px;
    overflow: hidden;
    background: #fff;
    display: grid !important;
    grid-template-columns: repeat(1, 1fr);
    align-items: center;
    gap: 0px;
    padding: 11px 16px;
    border: none;
    border-bottom: 1px solid #f0e8db;
    white-space: normal;
    font-size: 14px;
    width: 100%;
    box-sizing: border-box;
}
.modal-body th,
.modal-body td{
    padding: 0px!important;
    border-bottom: none!important;
    box-sizing: border-box;
    word-break: break-word;
}
.modal-body th{
    font-weight: 600!important;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
    
}

/* ≤576px */
@media (max-width: 576px) {
    .punaravartanLoginForm { width: 100% !important; max-width: 100% !important; }
    .loginImageDiv.col-5 { display: none; }
    .punaravartanMyAccountColumn, .punaravartanMyAccountColumnRegister, .partnershipFormDiv { padding-left: 30px !important; padding-right: 30px !important; }
    .avartanNavigation ul { flex-direction: column !important; gap: 15px; display: none !important; }
    .avartanNavigation li { width: 80% !important; }
    p.form-row.loginCheckboxDiv label { width: 100%; padding-bottom: 10px; }
    .punaravartanCta { font-size: 0.8em !important; }
    .punaravartanRadioButton .woocommerce-input-wrapper label { width: 86%; }
    .cityDropdownDiv form { display: block !important; }
    .cityDropdownDiv select, .cityDropdownDiv input { margin-bottom: 10px; width: 100% !important; }
    input.geoProximityPincode, .geoRegionFieldSelect { margin: 0 0 10px !important; }
    .les-listing .table-wrapper,
    .table-wrapper { padding: 0 !important; }
    .membershipCardDiv { padding: 15px !important; }
    .punaravartanRadioButton { flex-direction: column; align-items: flex-start !important; }
    li.stakeholderTypeIconAndLabel { position: relative !important; width: 100% !important; left: 0 !important; margin-bottom: 0 !important; padding-top: 30px; }
    .stakeholderTypeDisplayDiv { padding: 0 30px; }
    .filterGrid{
        grid-template-columns: repeat(1, 1fr);
    }
    .filterActions button {
        flex-grow: 1;
    }
    /* mobile card */
    .les-listing table.stakeholderListingTable tbody td{
        grid-template-columns: repeat(1, 1fr);
        padding: 5px 10px;
    }
}

/* ≤375px */
@media (max-width: 375px) {
    .punaravartanCta { margin-top: 1rem !important; font-size: 0.8em !important; }
    .punaravartanRadioButton .woocommerce-input-wrapper label { margin-right: 0 !important; width: 80% !important; }
    .startEndDateCloumn { flex-wrap: wrap; }
    .startEndDateCloumn div { width: 100%; }
}