/*
 Theme Name: JusDial Child
 Template: jusdial
 Description: Child theme for JusDial - equal height listing cards fix
 Version: 1.0.0
*/


/* ==========================================================================
   EQUAL HEIGHT TYPE8 LISTING CARDS - Archive Page (Non-Isotope)
   
   Problem: With isotope OFF, the plugin uses a CSS float grid:
     .dtdr-column { float:left; margin-left:2% }
     .dtdr-one-third { width:32% }
     .dtdr-column.first { clear:both; margin-left:0 }
   Cards are only as tall as their content → unequal heights per row.
   
   Solution: Override with CSS Grid on the container. Grid rows are
   implicit, so all cells in a row share the tallest cell's height.
   Each card becomes a flex column so its bottom section stretches.
   
   Scoped to :not(.dtdr-listings-item-apply-isotope) so isotope pages
   are never affected.
   ========================================================================== */


/* --- Fix: Article contains floated children properly --- */

.dtdr-container > article {
    display: flex;
    flex-direction: column;
}


/* --- 0. Kill the 30px left/right margin on .dtdr-listings-container ---
   Plugin sets: div[class*="-output-data-container"] div[class*="-output-data-holder"]>.dtdr-listings-container { margin: 0 30px; }
   Only overridden in media queries for .dtdr-direct-list-items, NOT at desktop >1280px.
   This pushes the entire grid inward / to the right. */

.dtdr-listing-output-data-container.dtdr-direct-list-items .dtdr-listing-output-data-holder > .dtdr-listings-container {
    margin: 0 !important;
}


/* --- 1. Container: CSS Grid replaces the float+margin+clear grid ---
   Column count is driven by the widget's Columns setting via data-columns
   on .dtdr-listing-output-data-holder. Fallback: 1 column. --- */

.dtdr-listings-container:not(.dtdr-listings-item-apply-isotope) .dtdr-listings-item-container {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 30px 2%;
}

[data-columns="2"] .dtdr-listings-container:not(.dtdr-listings-item-apply-isotope) .dtdr-listings-item-container {
    grid-template-columns: repeat(2, 1fr);
}

[data-columns="3"] .dtdr-listings-container:not(.dtdr-listings-item-apply-isotope) .dtdr-listings-item-container {
    grid-template-columns: repeat(3, 1fr);
}

[data-columns="4"] .dtdr-listings-container:not(.dtdr-listings-item-apply-isotope) .dtdr-listings-item-container {
    grid-template-columns: repeat(4, 1fr);
}


/* --- 2. Cards: kill float grid, stretch to fill grid cell --- */

.dtdr-listings-container:not(.dtdr-listings-item-apply-isotope)
.dtdr-listings-item-container > .dtdr-listings-item-wrapper.dtdr-column {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    clear: none !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column;
}


/* --- 3. Top section: fixed by aspect-ratio, prevent flex shrink --- */

.dtdr-listings-container:not(.dtdr-listings-item-apply-isotope)
.dtdr-listings-item-wrapper.type8 > .dtdr-listings-item-top-section {
    flex-shrink: 0;
    float: none !important;
}


/* --- 4. Bottom section: grows to fill remaining card height --- */

.dtdr-listings-container:not(.dtdr-listings-item-apply-isotope)
.dtdr-listings-item-wrapper.type8 > .dtdr-listings-item-bottom-section {
    flex: 1;
    float: none !important;
    display: flex !important;
    flex-direction: column;
}


/* --- 5. Bottom content: flex column so we can push items apart --- */

.dtdr-listings-container:not(.dtdr-listings-item-apply-isotope)
.dtdr-listings-item-wrapper.type8 .dtdr-listings-item-bottom-section-content {
    flex: 1;
    display: flex !important;
    flex-direction: column;
}


/* --- 6. Override float/width on children (plugin sets float:left;width:100%) --- */

.dtdr-listings-container:not(.dtdr-listings-item-apply-isotope)
.dtdr-listings-item-wrapper.type8 .dtdr-listings-item-bottom-section-content > div {
    float: none !important;
    width: auto !important;
}


/* --- 7. Reorder type8 card layout: Title → Excerpt → Taxonomy/Pricing → Contact ---
   The title lives inside .dtdr-listings-group-item which has order:2 in the plugin,
   pushing it to the end. We dissolve the group wrappers with display:contents
   so individual children become flex items we can reorder. */

/* Dissolve group wrappers so children participate in the flex column */
.dtdr-listings-item-wrapper.type8 .dtdr-listings-item-bottom-section-content .dtdr-listings-group-item {
    display: contents !important;
    order: unset !important;
    border: none !important;
    padding: 0 !important;
}

.dtdr-listings-item-wrapper.type8 .dtdr-listings-item-bottom-section-content .dtdr-listings-group-title {
    display: contents !important;
}

/* Title: first */
.dtdr-listings-item-wrapper.type8 .dtdr-listings-item-bottom-section-content .dtdr-listings-item-title {
    order: -3 !important;
    padding-left: 0 !important;
    margin-bottom: 10px;
}

/* Excerpt: second */
.dtdr-listings-item-wrapper.type8 .dtdr-listings-item-bottom-section-content .dtdr-listings-excerpt {
    order: -2 !important;
    margin-bottom: 10px;
}

/* Contact details: third */
.dtdr-listings-item-wrapper.type8 .dtdr-listings-item-bottom-section-content .dtdr-listings-contactdetails-container {
    order: -1 !important;
}

/* Taxonomy/category: last, pushed to bottom of card */
.dtdr-listings-item-wrapper.type8 .dtdr-listings-item-bottom-section-content .dtdr-listings-taxonomy-container {
    order: 10 !important;
    margin-top: auto !important;
    padding-top: 15px;
    border-top: 1px solid var(--wdtBorderColor);
}

/* Pricing: alongside taxonomy section */
.dtdr-listings-item-wrapper.type8 .dtdr-listings-item-bottom-section-content .dtdr-listings-item-bottom-pricing-holder {
    order: 11 !important;
}


/* --- 8. Pagination spacing --- */

.dtdr-listing-output-data-container .dtdr-pagination {
    margin-bottom: 40px;
}


/* --- 8a. Hide excerpt title (dtdr_excerpt_title) — only show the actual excerpt --- */

.dtdr-listings-excerpt p > span:first-child {
    display: none;
}


/* --- 8b. Reset base ul padding on all listing ULs and ensure consistent spacing --- */

.dtdr-listings-item-wrapper.type8 ul {
    padding-left: 0;
}

.dtdr-listings-item-wrapper.type8 .dtdr-listings-contactdetails-list p {
    padding-left: 10px;
}


/* --- 9. Taxonomy image + text: image stays left, text stays right with gap ---
   Plugin uses position:absolute on the img and padding-left:50px on text.
   When text wraps it collides with the image. Fix: proper flex layout. */

/* Make the taxonomy image not absolute — let it flow naturally */
.dtdr-listings-item-wrapper.type8 .dtdr-listings-taxonomy-list li a .dtdr-listings-taxonomy-image img {
    position: static !important;
    flex-shrink: 0;
}

/* The <a> is already display:flex + align-items:center, just add a gap */
.dtdr-listings-item-wrapper.type8 .dtdr-listings-taxonomy-list li:first-child a {
    gap: 10px;
}

/* Remove the padding-left hack since image is now in flow */
.dtdr-listings-item-wrapper.type8 .dtdr-listings-taxonomy-list li a span:not(:first-child) {
    padding-left: 0 !important;
}

/* Title also used padding-left:50px to align with text — keep it for visual alignment */


/* --- 10. Subcategory items (type1): compact + full-width + red bg icon ---
   Scoped to .dtdr-subcategories-section so this only affects archive pages.
   The plugin sets justify-content:center and width:40% on meta-data,
   wasting space. We left-align and let meta fill remaining width. */

/* Left-align items instead of centering; reduce bottom margin */
.dtdr-subcategories-section .dtdr-listing-taxonomy-item.type1 {
    margin-bottom: 15px !important;
    justify-content: flex-start !important;
}

/* Meta-data: fill remaining space instead of fixed 40% */
.dtdr-subcategories-section .dtdr-listing-taxonomy-item.type1 .dtdr-listing-taxonomy-meta-data {
    flex: 1 1 auto !important;
    width: auto !important;
}

/* Reduce gap between icon and text */
.dtdr-subcategories-section .dtdr-listing-taxonomy-item.type1 .dtdr-listing-taxonomy-icon-image {
    margin-right: 15px !important;
}

/* Span icon: red background instead of red border */
.dtdr-subcategories-section .dtdr-listing-taxonomy-item.type1 .dtdr-listing-taxonomy-icon-image span {
    border: none !important;
    background-color: var(--wdtPrimaryColor) !important;
    color: #fff !important;
    width: 50px;
    height: 50px;
}

/* Hover: slightly darker background, keep white icon */
.dtdr-subcategories-section .dtdr-listing-taxonomy-item.type1:hover .dtdr-listing-taxonomy-icon-image span {
    background-color: var(--wdtHeadAltColor) !important;
    border: none !important;
    color: #fff !important;
}

/* Tighten meta spacing */
.dtdr-subcategories-section .dtdr-listing-taxonomy-item.type1 .dtdr-listing-taxonomy-meta-data h3 {
    margin-bottom: 5px;
    line-height: 1.3;
}


/* --- 11. Header wrapper bottom margin --- */

#header-wrapper {
    margin-bottom: 80px !important;
}


/* ==========================================================================
   RESPONSIVE BREAKPOINTS
   
   Override the plugin's fixed-width .dtdr-container at every breakpoint.
   Plugin (common.css) sets: 1080px / 900px / 710px / 420px / max-width:290px
   — these prevent the container from using available space.
   We reset to width:auto so it follows the parent's padding/max-width.
   ========================================================================== */

/* 1281–1440: plugin sets width:1080px → remove */
@media only screen and (min-width: 1281px) and (max-width: 1440px) {
    .dtdr-container {
        width: auto !important;
    }
}

/* 1025–1280: plugin sets width:900px → remove */
@media only screen and (min-width: 1025px) and (max-width: 1280px) {
    .dtdr-container {
        width: auto !important;
    }
}

/* Tablet 768–1024: plugin sets width:710px → remove
   + listing grid → 2 columns
   + fix subcategory nth-child(even) margin-right that causes uneven spacing */
@media only screen and (min-width: 768px) and (max-width: 1024px) {
    .dtdr-container {
        width: auto !important;
    }
    #header-wrapper {
        margin-bottom: 60px !important;
    }
    .dtdr-listings-container:not(.dtdr-listings-item-apply-isotope) .dtdr-listings-item-container {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    /* Plugin gives even items margin-right:0 and first+even margin-right:2%
       causing uneven gutters. Reset both to equal spacing. */
    .dtdr-column.dtdr-one-third.first.dtdr-listing-taxonomy-item:nth-child(even),
    .dtdr-column.dtdr-one-third.dtdr-listing-taxonomy-item:nth-child(even) {
        margin-right: 0 !important;
    }
    .dtdr-column.dtdr-one-third.dtdr-listing-taxonomy-item {
        width: calc(50% - 1%) !important;
        margin: 0 2% 20px 0 !important;
    }
    .dtdr-column.dtdr-one-third.dtdr-listing-taxonomy-item:nth-child(2n) {
        margin-right: 0 !important;
    }
}

/* Mobile ≤767: plugin sets width:420px → remove + listing grid → 1 column */
@media only screen and (max-width: 767px) {
    .dtdr-container {
        width: auto !important;
    }
    #header-wrapper {
        margin-bottom: 40px !important;
    }
    .dtdr-listings-container:not(.dtdr-listings-item-apply-isotope) .dtdr-listings-item-container {
        grid-template-columns: 1fr;
        gap: 20px 0;
    }
}

/* Small mobile ≤479: plugin sets max-width:290px → remove */
@media only screen and (max-width: 479px) {
    .dtdr-container {
        max-width: none !important;
    }
}

/*
 * Cart & Checkout WooCommerce overrides have been moved to
 * woocommerce-overrides.css (loaded at priority 60 after the
 * parent theme's inline WooCommerce CSS).
 */


/* ==========================================================================
   ADD LISTING FORM — Compact Design + Featured Image + Social + Hours Fix

   The parent theme's layout.css targets .page-id-979 specifically. Our Add
   Listing page has a different ID, so the compact form styles never apply.
   These rules use .page-template-tpl-listing (no page-id) as the base
   selector so they work for ANY page using the tpl-listing.php template.
   ========================================================================== */

/* --- Shorthand --- */
/* P = .page-template-tpl-listing form.dtdr-add-listing */

/* --- Form container --- */

.page-template-tpl-listing form.dtdr-add-listing {
    padding: 30px 40px !important;
    background-color: var(--wdtAccentTxtColor);
    box-shadow: rgba(var(--wdtHeadAltColorRgb), .1) 0 0 10px;
    border-radius: var(--wdtRadius_3X);
    margin-bottom: 10px;
}

/* --- Section holders --- */

.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder {
    margin-bottom: 10px !important;
    padding: 0 !important;
}

/* --- Hide section intros & notes (like parent theme design) --- */

.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder-intro {
    display: none !important;
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-notes {
    display: none !important;
}

/* --- Section content: 2-col grid --- */

.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder-content {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 15px !important;
    padding-top: 15px !important;
}

/* Sections that need single column */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder:nth-child(1) .dtdr-dashbord-section-holder-content,
.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder:nth-child(2) .dtdr-dashbord-section-holder-content,
.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder:nth-child(3) .dtdr-dashbord-section-holder-content,
.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder:nth-child(6) .dtdr-dashbord-section-holder-content,
.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder:nth-child(7) .dtdr-dashbord-section-holder-content {
    grid-template-columns: 100%;
}

/* Contact section (4th): Website spans full width */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder:nth-child(4) > .dtdr-dashbord-section-holder-content > .dtdr-dashboard-option-item:first-child {
    grid-column: 1 / -1;
}

/* Location: full-width items */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-column.dtdr-one-column {
    grid-column: 1 / -1;
}

/* --- Option items: flex column --- */

.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashboard-option-item {
    display: flex;
    flex-direction: column;
    margin-bottom: 0 !important;
}

/* --- Labels: compact --- */

.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder-content .dtdr-dashboard-option-item label {
    font-size: 14px !important;
    margin-bottom: 6px !important;
    font-weight: var(--wdtFontWeight_Ext) !important;
    color: var(--wdtHeadAltColor) !important;
}

/* --- Inputs: compact --- */

.page-template-tpl-listing form.dtdr-add-listing input[type="text"],
.page-template-tpl-listing form.dtdr-add-listing input[type="url"],
.page-template-tpl-listing form.dtdr-add-listing input[type="email"],
.page-template-tpl-listing form.dtdr-add-listing input[type="tel"],
.page-template-tpl-listing form.dtdr-add-listing textarea {
    padding: 10px !important;
    padding-left: 0 !important;
    font-size: 14px !important;
}

/* --- Chosen selects: compact single trigger --- */

.page-template-tpl-listing form.dtdr-add-listing .chosen-container-single .chosen-single {
    padding: 8px 10px !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    min-height: 38px !important;
    box-sizing: border-box;
}

/* Chosen dropdown body */
.page-template-tpl-listing form.dtdr-add-listing .chosen-container-single .chosen-drop {
    padding: 0 10px 10px !important;
}

/* Chosen results list */
.page-template-tpl-listing form.dtdr-add-listing .chosen-container-single .chosen-results {
    max-height: 220px !important;
}

.page-template-tpl-listing form.dtdr-add-listing .chosen-container-single .chosen-results li {
    font-size: 13px !important;
    padding: 6px 6px !important;
    line-height: 1.3 !important;
}

/* Chosen search box inside dropdown */
.page-template-tpl-listing form.dtdr-add-listing .chosen-container-single .chosen-search input[type="text"] {
    padding: 8px !important;
    font-size: 13px !important;
}

/* Chosen multi-select (category) */
.page-template-tpl-listing form.dtdr-add-listing .chosen-container-multi .chosen-choices {
    padding: 4px !important;
    min-height: 38px !important;
    font-size: 13px !important;
}

.page-template-tpl-listing form.dtdr-add-listing .chosen-container-multi .chosen-choices li.search-field input[type="text"] {
    padding: 4px 6px !important;
    font-size: 13px !important;
    height: auto !important;
}

.page-template-tpl-listing form.dtdr-add-listing .chosen-container-multi .chosen-choices li.search-choice {
    padding: 4px 20px 4px 6px !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
}

.page-template-tpl-listing form.dtdr-add-listing .chosen-container-multi .chosen-results li {
    font-size: 13px !important;
    padding: 6px 6px !important;
}

/* Chosen arrow pseudo-elements: compact */
.page-template-tpl-listing form.dtdr-add-listing .chosen-container-single .chosen-single:before,
.page-template-tpl-listing form.dtdr-add-listing .chosen-container-single .chosen-single:after {
    width: 10px;
}

.page-template-tpl-listing form.dtdr-add-listing .chosen-container-single .chosen-single:before {
    right: 22px;
}

.page-template-tpl-listing form.dtdr-add-listing .chosen-container-single .chosen-single:after {
    right: 14px;
}

/* --- Selection box (wrapper): ensure sizing --- */

.page-template-tpl-listing form.dtdr-add-listing .selection-box {
    width: 100%;
}

.page-template-tpl-listing form.dtdr-add-listing .selection-box .chosen-container {
    width: 100% !important;
}

/* --- Half-width columns: full width (grid handles side-by-side) --- */

.page-template-tpl-listing form.dtdr-add-listing .dtdr-one-half {
    width: 100% !important;
    margin: 0 !important;
}

/* --- Buttons --- */

.page-template-tpl-listing form.dtdr-add-listing a.custom-button-style {
    border-radius: var(--wdtRadius_2X);
}

.page-template-tpl-listing form.dtdr-add-listing a.custom-button-style.dtdr-add-listing-button {
    width: 100%;
    text-align: center;
    border-radius: var(--wdtRadius_2X);
}

/* --- Hide the wp.media Upload button (replaced by file input) --- */

.page-template-tpl-listing form.dtdr-add-listing .dtdr-upload-media-items-container input[type="button"].dtdr-upload-media-item-button.multiple,
.page-template-tpl-listing form.dtdr-add-listing .dtdr-upload-media-items-container input.dtdr-upload-media-item-reset {
    display: none !important;
}

/* --- Gallery file input: dashed label --- */

.z-gallery-upload-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    border: 2px dashed var(--wdtBorderColor);
    background: none;
    color: var(--wdtPrimaryColor);
    padding: 20px 16px;
    border-radius: var(--wdtRadius_2X);
    font-size: 13px;
    transition: border-color 0.2s, color 0.2s;
    margin-top: 10px;
    width: 100%;
    box-sizing: border-box;
}

.z-gallery-upload-label:hover {
    border-color: var(--wdtPrimaryColor);
}

.z-gallery-upload-label input[type="file"] {
    display: none !important;
}

.z-gallery-upload-label .z-gallery-limit-note {
    font-size: 12px;
    color: var(--wdtBodyTxtColor);
    opacity: 0.6;
}

/* Gallery preview strip */
.z-gallery-preview-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.z-gallery-preview-strip .z-gallery-preview-thumb {
    position: relative;
    width: 80px;
    height: 80px;
    border-radius: var(--wdtRadius_2X);
    overflow: hidden;
    border: 2px solid var(--wdtBorderColor);
}

.z-gallery-preview-strip .z-gallery-preview-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.z-gallery-preview-strip .z-gallery-preview-thumb .z-gallery-thumb-remove {
    position: absolute;
    top: 2px;
    right: 2px;
    background: rgba(231,76,60,0.9);
    color: #fff;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 9px;
}


/* ==========================================================================
   BUSINESS HOURS — Bigger time selectors
   ========================================================================== */

.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list {
    margin-left: 0;
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list > li {
    display: flex !important;
    align-items: center;
    gap: 12px;
    margin-bottom: 8px !important;
    grid-template-columns: unset !important;
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span {
    display: flex;
    align-items: center;
    color: var(--wdtHeadAltColor);
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span.dtdr-business-hours-label {
    min-width: 90px;
    flex-shrink: 0;
    font-size: 13px;
    font-weight: 600;
}

/* Time select spans (start & end): flexible and wider */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span.dtdr-business-hours-starttime,
.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span.dtdr-business-hours-endtime {
    flex: 1;
    min-width: 150px;
}

/* Ensure Chosen container fills the time span */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span .selection-box {
    width: 100%;
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span .selection-box .chosen-container {
    width: 100% !important;
}

/* Time chosen-single: comfortable size */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list .chosen-container-single .chosen-single {
    padding: 8px 30px 8px 10px !important;
    font-size: 13px !important;
    min-height: 36px !important;
}

/* Time chosen results: adequate height */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list .chosen-container-single .chosen-results {
    max-height: 200px !important;
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list .chosen-container-single .chosen-results li {
    padding: 6px 8px !important;
    font-size: 13px !important;
}

/* 24-hour format checkbox */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-24hour-format-holder {
    margin-top: 10px;
}

/* Empty div spacer in business hours — hide */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li > div:empty {
    display: none;
}


/* ==========================================================================
   FEATURED IMAGE UPLOADER — File input approach
   ========================================================================== */

.z-featured-img-wrap {
    position: relative;
}

.z-featured-img-preview {
    position: relative;
    display: inline-block;
    margin-bottom: 10px;
    max-width: 180px;
}

.z-featured-img-preview img {
    width: 100%;
    height: auto;
    border-radius: var(--wdtRadius_2X);
    border: 2px solid var(--wdtBorderColor);
    display: block;
}

.z-featured-img-remove {
    position: absolute;
    top: -8px;
    right: -8px;
    background: #e74c3c;
    color: #fff;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 11px;
    z-index: 2;
}

/* File input styled as dashed button */
.z-featured-img-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    border: 2px dashed var(--wdtBorderColor);
    background: none;
    color: var(--wdtPrimaryColor);
    padding: 10px 16px;
    border-radius: var(--wdtRadius_2X);
    font-size: 13px;
    transition: border-color 0.2s, color 0.2s;
}

.z-featured-img-label:hover {
    border-color: var(--wdtPrimaryColor);
}

.z-featured-img-label input[type="file"] {
    display: none !important;
}


/* ==========================================================================
   SOCIAL ITEMS

   The Chosen.js init wraps each <select> in a <div class="selection-box">.
   That wrapper has `clear:both; position:relative` from fields.css which
   makes it appear as its own block element breaking the row layout.

   Fix: make .selection-box transparent (display:contents) so the
   .chosen-container sits directly in the flex row as if the wrapper
   didn't exist. The dropdown then opens naturally from the container.
   ========================================================================== */

/* Container */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container {
    overflow: visible;
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container:not(:empty) {
    margin-bottom: 12px;
}

/* Each social item row — flex layout */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section,
.page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder-content .dtdr-social-item-details-container .dtdr-social-item-section {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    gap: 10px;
    background: #fff;
    position: relative;
    overflow: visible;
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section:not(:last-child) {
    margin-bottom: 10px !important;
}

/*
 * KEY FIX: Hide Select2 container — WooCommerce's SelectWoo auto-inits on
 * the same <select> that Chosen.js targets, creating a duplicate dropdown.
 * Only Chosen should be visible.
 */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section > .select2 {
    display: none !important;
}

/*
 * .selection-box: Override fields.css "clear:both; position:relative"
 * Keep it as a real block so Chosen's positioning works, but make it
 * a properly-sized flex item (not a full-width block).
 */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .selection-box {
    display: block !important;
    clear: none !important;
    float: none !important;
    position: relative !important;
    flex: 0 0 180px;
    width: 180px;
    margin: 0 !important;
    padding: 0 !important;
}

/* Kill the pseudo-element decorations from fields.css */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .selection-box::before,
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .selection-box::after {
    display: none !important;
}

/* Chosen container inside .selection-box: fill its parent */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .selection-box .chosen-container,
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .chosen-container {
    width: 100% !important;
    margin: 0 !important;
}

/*
 * Safety net: Chosen copies classes from the <select> including
 * select2-hidden-accessible which hides elements with clip/position/1px.
 * Override those styles on .chosen-container so it's always visible.
 */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .chosen-container.select2-hidden-accessible {
    position: relative !important;
    clip: auto !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: visible !important;
}

/*
 * Height matching: Chosen trigger = .chosen-single has padding: 8px 10px;
 * min-height: 38px. Give the text input the same box model so they align.
 */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .selection-box .chosen-container-single .chosen-single {
    padding: 8px 10px !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    min-height: 38px !important;
    box-sizing: border-box;
    display: flex;
    align-items: center;
}

/* Text input (social URL): fills remaining space, same height as Chosen */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section > input[type='text'] {
    flex: 1 1 auto;
    min-width: 0;
    margin-bottom: 0 !important;
    box-sizing: border-box;
    padding: 8px 10px !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    min-height: 38px !important;
}

/* Options (remove + sort): inline, not absolute */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .dtdr-social-item-section-options {
    display: flex !important;
    align-items: center;
    gap: 6px;
    position: static !important;
    transform: none !important;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    flex-flow: row !important;
    flex: 0 0 auto;
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .dtdr-social-item-section-options > span {
    margin-left: 0 !important;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    transition: background-color 0.2s;
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .dtdr-social-item-section-options > span:hover {
    background: rgba(0,0,0,0.05);
}

.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .dtdr-social-item-section-options > span.dtdr-sort-features {
    cursor: grab;
}

/* Add social button: compact */
.page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container + .custom-button-style,
.page-template-tpl-listing form.dtdr-add-listing a.dtdr-add-social-details {
    margin-top: 0 !important;
    font-size: 13px;
}

/* Hide clone template */
.page-template-tpl-listing form.dtdr-add-listing #dtdr-social-details-section-to-clone {
    display: none !important;
}


/* ==========================================================================
   ADD LISTING RESPONSIVE
   ========================================================================== */

/* Tablet (≤1024px) */
@media only screen and (max-width: 1024px) {
    .page-template-tpl-listing form.dtdr-add-listing {
        padding: 25px 30px !important;
    }

    .page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .selection-box {
        flex: 0 0 160px;
        width: 160px;
    }
}

/* Mobile (≤767px) */
@media only screen and (max-width: 767px) {
    .page-template-tpl-listing form.dtdr-add-listing {
        padding: 20px 15px !important;
    }

    .page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder-content {
        grid-template-columns: 100% !important;
        grid-gap: 10px !important;
    }

    /* Business hours: stack vertically */
    .page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list > li {
        flex-wrap: wrap !important;
    }

    .page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span.dtdr-business-hours-label {
        flex: 0 0 100%;
        margin-bottom: 4px;
    }

    .page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span.dtdr-business-hours-starttime,
    .page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span.dtdr-business-hours-endtime {
        flex: 1 1 45%;
        min-width: 120px;
    }

    /* Social items: stack */
    .page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section,
    .page-template-tpl-listing form.dtdr-add-listing .dtdr-dashbord-section-holder-content .dtdr-social-item-details-container .dtdr-social-item-section {
        flex-wrap: wrap !important;
    }

    .page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section .selection-box {
        flex: 0 0 100%;
        width: 100%;
    }

    .page-template-tpl-listing form.dtdr-add-listing .dtdr-social-item-details-container .dtdr-social-item-section > input[type='text'] {
        flex: 1 1 100%;
    }

    /* Gallery previews smaller */
    .z-gallery-preview-strip .z-gallery-preview-thumb {
        width: 60px;
        height: 60px;
    }
}

/* Small mobile (≤479px) */
@media only screen and (max-width: 479px) {
    .page-template-tpl-listing form.dtdr-add-listing {
        padding: 15px 12px !important;
    }

    .page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span.dtdr-business-hours-starttime,
    .page-template-tpl-listing form.dtdr-add-listing .dtdr-business-hours-list li span.dtdr-business-hours-endtime {
        flex: 0 0 100%;
    }
}

/* ===== My Listings page (WooCommerce My Account) ===== */
.zawzor-my-listings table { border-collapse: collapse; }
.zawzor-my-listings th,
.zawzor-my-listings td { padding: 10px 12px; text-align: left; border-bottom: 1px solid #eee; }
.zawzor-my-listings th { background: #f8f8f8; font-weight: 600; }

.zawzor-status-badge {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 3px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
}
.zawzor-status-published { background: #d4edda; color: #155724; }
.zawzor-status-pending   { background: #fff3cd; color: #856404; }
.zawzor-status-draft     { background: #e2e3e5; color: #383d41; }
.zawzor-status-other     { background: #cce5ff; color: #004085; }

.zawzor-my-listings td a.button { margin-right: 5px; padding: 5px 10px; font-size: 13px; }

/* ===== Required field validation ===== */
.zawzor-field-error input,
.zawzor-field-error textarea,
.zawzor-field-error select,
.zawzor-field-error .chosen-container { border-color: #dc3545 !important; }
.zawzor-field-error-msg { color: #dc3545; font-size: 12px; margin-top: 4px; font-weight: 600; display: block; }

/* Force error summary text to red (overrides any inherited white/invisible color) */
.dtdr-dashboard-notices.dtdr-warning-notice,
.dtdr-dashboard-notices.dtdr-warning-notice ul,
.dtdr-dashboard-notices.dtdr-warning-notice ul li,
.dtdr-dashboard-notices.dtdr-warning-notice p {
    color: #dc3545 !important;
}

/* ===== Checkout thank-you CTA ===== */
.zawzor-thankyou-cta {
    text-align: center;
    padding: 30px 20px;
    margin: 25px 0;
    background: #fce4e4;
    border: 2px solid #dc3545;
    border-radius: 8px;
}
.zawzor-thankyou-cta h3 {
    margin: 0 0 8px;
    font-size: 20px;
    color: #b71c1c;
}
.zawzor-thankyou-cta p {
    margin: 0 0 15px;
    color: #333;
    font-size: 15px;
}
.zawzor-thankyou-cta .zawzor-thankyou-btn {
    display: inline-block;
    background: #dc3545 !important;
    color: #fff !important;
    border: none !important;
    padding: 12px 30px !important;
    font-size: 16px !important;
    font-weight: 600;
    border-radius: 6px;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.2s;
}
.zawzor-thankyou-cta .zawzor-thankyou-btn:hover {
    background: #b71c1c !important;
}


/* ==========================================================================
   MY PACKAGE (WooCommerce My Account endpoint)
   ========================================================================== */

.zawzor-my-package { max-width: 750px; }

.zawzor-my-package h3 { margin: 0 0 15px; font-size: 20px; }

.zawzor-package-info {
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    margin-bottom: 20px;
}

.zawzor-package-info table {
    width: 100%;
    border-collapse: collapse;
}

.zawzor-package-info th,
.zawzor-package-info td {
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f0;
    font-size: 14px;
    vertical-align: middle;
}

.zawzor-package-info th {
    text-align: left;
    width: 180px;
    color: #fff;
    font-weight: 500;
    padding: 10px;
}

.zawzor-package-info td {
    color: #222;
    font-weight: 600;
}

.zawzor-package-info tr:last-child th,
.zawzor-package-info tr:last-child td {
    border-bottom: none;
}

/* Package status badges */
.zawzor-badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 3px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.zawzor-badge-valid    { background: #d4edda; color: #155724; }
.zawzor-badge-pro      { background: #cce5ff; color: #004085; }
.zawzor-badge-expiring { background: #fff3cd; color: #856404; }
.zawzor-badge-expired  { background: #f8d7da; color: #721c24; }
.zawzor-badge-free     { background: #e2e3e5; color: #383d41; }

/* Package action buttons */
.zawzor-package-actions {
    margin-top: 20px;
}

.zawzor-package-actions h4 {
    margin: 0 0 12px;
    font-size: 15px;
    color: #333;
}

.zawzor-pkg-btns {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.zawzor-pkg-btns .zawzor-pkg-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    box-sizing: border-box;
    padding: 14px 20px;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s;
    border: 2px solid #ddd;
    background: #fff;
    color: #333;
}

.zawzor-pkg-btns .zawzor-pkg-btn strong {
    font-size: 15px;
    font-weight: 600;
}

.zawzor-pkg-btns .zawzor-pkg-btn .zawzor-pkg-price {
    font-weight: 600;
    color: #0073aa;
}

.zawzor-pkg-btns .zawzor-pkg-btn:hover {
    background: #e53935;
    border-color: #e53935;
    color: #fff;
}

.zawzor-pkg-btns .zawzor-pkg-btn:hover .zawzor-pkg-price {
    color: #fff;
}

.zawzor-pkg-btns .zawzor-pkg-btn:hover strong {
    color: #fff;
}

/* No package state */
.zawzor-no-package {
    text-align: center;
    padding: 40px 20px;
}

.zawzor-no-package p {
    font-size: 15px;
    color: #666;
    margin: 0 0 20px;
}

/* ==========================================================================
   VIDEO SECTION (Add Listing form)
   ========================================================================== */

/* Video template selector */
.page-template-tpl-listing select[name="zawzor_video_template_id"] + .chosen-container {
    max-width: 500px;
}

/* ==========================================================================
   VIDEO SECTION (Single Listing page)
   ========================================================================== */
.zawzor-listing-video-section {
    margin: 0;
    padding: 0;
    border: 0;
}

.zawzor-listing-video-content {
    position: relative;
    width: 100%;
}

.zawzor-listing-video-content video {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px;
    background: #000;
}

.zawzor-listing-video-content iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    border: 0;
    border-radius: 6px;
}

.z-video-preview-link {
    margin-top: 8px;
}

.z-video-preview-anchor {
    color: #0073aa;
    text-decoration: none;
    font-size: 13px;
}

.z-video-preview-anchor:hover {
    text-decoration: underline;
}

/* ==========================================================================
   VIDEO TEMPLATES GRID ([video_templates_grid] shortcode)
   ========================================================================== */
.zawzor-video-grid {
    display: grid;
    grid-template-columns: repeat(var(--z-vid-cols, 3), 1fr);
    gap: 20px;
}

@media (max-width: 768px) {
    .zawzor-video-grid {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .zawzor-video-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

.zawzor-video-grid-item {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0,0,0,0.08);
}

.zawzor-video-grid-player video,
.zawzor-video-grid-player iframe {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    background: #000;
}

.zawzor-video-grid-title {
    padding: 10px 14px;
    font-size: 14px;
    font-weight: 600;
    color: #222;
}

.z-video-preview-anchor .fas {
    margin-right: 3px;
    font-size: 11px;
}

/* Browse all videos link */
p > a > .fas.fa-film {
    margin-right: 4px;
}

/* ==========================================================================
   MY PACKAGE RESPONSIVE
   ========================================================================== */

@media only screen and (max-width: 767px) {
    .zawzor-package-info {
        padding: 16px 18px;
    }

    .zawzor-package-info th {
        width: 120px;
        font-size: 13px;
    }
    .zawzor-package-info td {
        font-size: 13px;
    }

    .zawzor-pkg-btns {
        flex-direction: column;
    }

    .zawzor-pkg-btns .zawzor-pkg-btn {
        justify-content: space-between;
    }
}

@media only screen and (max-width: 479px) {
    .zawzor-package-info th,
    .zawzor-package-info td {
        display: block;
        width: 100%;
        padding: 4px 0;
    }

    .zawzor-package-info th {
        border-bottom: none;
        padding-top: 10px;
    }

    .zawzor-package-info td {
        border-bottom: 1px solid #f0f0f0;
        padding-bottom: 10px;
    }
}

/* ==========================================================================
   VIDEO-CATEGORY TAXONOMY ARCHIVE
   ========================================================================== */

.zawzor-video-archive-wrap {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
}

.zawzor-video-archive-title {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 10px;
}

.zawzor-video-archive-desc {
    color: #666;
    margin-bottom: 30px;
    font-size: 15px;
}

/* ==========================================================================
   VIDEO-CATEGORY CATEGORIES GRID  — [video_template_categories_grid]
   ========================================================================== */

.vt-wrap {
    margin: 0 auto;
}

.vt-heading {
    font-size: 34px;
    font-weight: 800;
    margin: 0 0 28px;
    color: #111;
}

.vt-cat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 120px;
    row-gap: 44px;
}

.vt-cat-card {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    text-decoration: none;
}

.vt-dot {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: #e60000;
    flex: 0 0 34px;
    margin-top: 6px;
}

.vt-cat-text { display: inline-block; }

.vt-cat-name {
    display: block;
    font-size: 22px;
    font-weight: 800;
    color: #111;
    line-height: 1.2;
}

.vt-cat-count {
    display: block;
    margin-top: 8px;
    font-size: 14px;
    color: #6b7280;
}

.vt-cat-card:hover .vt-cat-name { text-decoration: underline; }

@media (max-width: 1024px) {
    .vt-cat-grid { grid-template-columns: repeat(2, 1fr); column-gap: 60px; }
}

@media (max-width: 767px) {
    .vt-cat-grid { grid-template-columns: 1fr; column-gap: 0; }
}

/* =====================================================
   Packages Archive — responsive 3-column card grid
   ===================================================== */

.zawzor-packages-archive {
    padding: 40px 0 60px;
}

.zawzor-packages-archive__title {
    margin-bottom: 36px;
    text-align: center;
}

.zawzor-packages-archive__title h1 {
    font-size: 32px;
    font-weight: 700;
    margin: 0;
}

.zawzor-packages-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.zawzor-package-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    overflow: hidden;
    transition: box-shadow 0.2s ease;
}

.zawzor-package-card:hover {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.10);
}

.zawzor-package-card__thumb {
    display: block;
    overflow: hidden;
}

.zawzor-package-card__thumb img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
    transition: transform 0.25s ease;
}

.zawzor-package-card:hover .zawzor-package-card__thumb img {
    transform: scale(1.04);
}

.zawzor-package-card__title {
    padding: 16px 20px 8px;
    font-size: 18px;
    font-weight: 600;
    margin: 0;
    line-height: 1.35;
    flex: 1;
}

.zawzor-package-card__title a {
    color: #111;
    text-decoration: none;
}

.zawzor-package-card__title a:hover {
    color: #e60000;
}

.zawzor-package-card__price {
    padding: 0px 20px 8px;
    font-size: 17px;
    font-weight: 700;
    color: #e60000;
}

.zawzor-package-card__price del {
    color: #9ca3af;
    font-weight: 400;
    font-size: 15px;
}

.zawzor-package-card__price ins {
    text-decoration: none;
}

.zawzor-package-card__readmore {
    display: inline-block;
    margin: 0 20px 20px;
    padding: 8px 20px;
    background: #e60000;
    color: #fff;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    align-self: flex-start;
    transition: background 0.2s ease;
}

.zawzor-package-card__readmore:hover {
    background: #c20000;
    color: #fff;
}

.zawzor-packages-archive__none {
    text-align: center;
    color: #6b7280;
    padding: 40px 0;
}

/* Tablet: 2 columns */
@media (max-width: 1024px) {
    .zawzor-packages-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }
}

/* Mobile: 1 column */
@media (max-width: 767px) {
    .zawzor-packages-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .zawzor-packages-archive__title h1 {
        font-size: 24px;
    }
}

/* =====================================================
   Single Package — clean table, no coupon, 70px bottom
   ===================================================== */

.zawzor-single-package {
    padding-bottom: 70px;
}

.zawzor-single-package__thumb {
    margin-bottom: 24px;
}

.zawzor-single-package__thumb img {
    max-width: 100%;
    height: auto;
    border-radius: 6px;
    display: block;
}

.zawzor-single-package__title {
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 24px;
}

.zawzor-package-table {
    width: 100%;
    table-layout: auto;
    border-collapse: collapse;
    font-size: 15px;
}

.zawzor-package-table th,
.zawzor-package-table td {
    padding: 14px 18px;
    text-align: left;
    border: 1px solid #e5e7eb;
    vertical-align: middle;
}

.zawzor-package-table .dtdr-item-status-details {
    padding: 0;
}

.zawzor-package-table thead th {
    background: #f9fafb;
    font-weight: 600;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #374151;
    white-space: nowrap;
}

.zawzor-package-table tbody td {
    color: #111;
}

.zawzor-package-table .dtdr-payment-details {
    white-space: nowrap;
}

@media (max-width: 767px) {
    .zawzor-package-table,
    .zawzor-package-table thead,
    .zawzor-package-table tbody,
    .zawzor-package-table th,
    .zawzor-package-table td,
    .zawzor-package-table tr {
        display: block;
    }
    .zawzor-package-table thead {
        display: none;
    }
    .zawzor-package-table td {
        padding: 10px 14px;
        border-top: none;
        position: relative;
    }
    .zawzor-package-table td::before {
        content: attr(data-label);
        display: block;
        font-weight: 600;
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        color: #6b7280;
        margin-bottom: 4px;
    }
}

/* ==========================================================================
   ADD LISTING – GUEST / NO-PACKAGE PROMPT  (text left, box right)
   ========================================================================== */

.zawzor-addlisting-prompt {
    padding: 40px 20px !important;
    box-shadow: none !important;
}

.zawzor-addlisting-prompt__row {
    display: flex;
    gap: 40px;
    align-items: center;
    text-align: left;
}

.zawzor-addlisting-prompt__left {
    flex: 1 1 50%;
}

.zawzor-addlisting-prompt__left h2 {
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 14px;
    color: #111;
}

.zawzor-addlisting-prompt__left p {
    font-size: 16px;
    line-height: 1.65;
    color: #444;
    margin: 0 0 12px;
}

.zawzor-addlisting-prompt__left ul {
    list-style: none;
    padding: 0 0 0 20px;
    margin: 10px 0 16px;
}

.zawzor-addlisting-prompt__left ul li {
    position: relative;
    padding-left: 16px;
    margin-bottom: 8px;
    font-size: 15px;
    line-height: 1.6;
    color: #111;
}

.zawzor-addlisting-prompt__left ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 7px;
    height: 7px;
    background: #e60000;
    border-radius: 50%;
}

.zawzor-addlisting-prompt__right {
    flex: 1 1 40%;
    background: #fff;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.10);
    border-radius: 10px;
    padding: 32px 28px;
    text-align: center;
    align-self: stretch;
    align-content: center;
}

.zawzor-addlisting-prompt__right h3 {
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 10px;
}

.zawzor-addlisting-prompt__right p {
    font-size: 14px;
    color: #555;
    margin: 0 0 16px;
}

@media (max-width: 767px) {
    .zawzor-addlisting-prompt__row {
        flex-direction: column;
        gap: 24px;
    }
}


.wdt-posts-list-wrapper .wdt-overlap-style.wdt-post-entry .blog-entry .entry-thumb {
    margin-bottom: 0;
    overflow: hidden;
    border-radius: var(--wdtRadius_3X);
    aspect-ratio: 3 / 2;
    object-fit: cover;
    object-position: center center;
}

.post-meta {
    display: none !important;
}

/* ==========================================================================
   SINGLE BLOG POST LAYOUT OVERRIDES (JusDial Minimal)
   - Keep image natural size (no stretching)
   - Left align image/title/content blocks
   ========================================================================== */

.single-post .blog-single-entry.post-minimal .entry-thumb.single-preview-img,
.single-post .blog-single-entry.post-minimal .entry-thumb.single-preview-img .blog-image {
    text-align: left !important;
}

.single-post .blog-single-entry.post-minimal .blog-image img,
.single-post .blog-single-entry.post-minimal .blog-image iframe,
.single-post .blog-single-entry.post-minimal .blog-image .wdt-video-wrap {
    display: block !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

.single-post .blog-single-entry.post-minimal .post-header,
.single-post .blog-single-entry.post-minimal .post-meta,
.single-post .blog-single-entry.post-minimal .single-entry-body,
.single-post .blog-single-entry.post-minimal #comments {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
}

.single-post .blog-single-entry.post-minimal .single-entry-title,
.single-post .blog-single-entry.post-minimal .post-header .single-entry-title,
.single-post .blog-single-entry.post-minimal .post-header .single-entry-title h1,
.single-post .blog-single-entry.post-minimal .post-header .single-entry-date,
.single-post .blog-single-entry.post-minimal .post-header .single-entry-categories {
    text-align: left !important;
}


