/*
 Theme Name: RentalHive Child
 Theme URI: https://359share.com
 Description: Child тема за RentalHive
 Author: Вашето име
 Template: rentalhive
 Version: 1.0
*/

/* ==========================================================================
   359SHARE DESIGN TOKENS (see .agents/rules/design-system.md)
   Action buttons = --share-radius-btn. Status badges/chips = --share-radius-pill.
   Never hard-code border-radius on new buttons.
   ========================================================================== */
:root {
    --share-radius-btn: 12px;
    --share-radius-btn-sm: 10px;
    --share-radius-pill: 9999px;
    --share-radius-card: 18px;
    --share-radius-field: 10px;
    --share-btn-height: 44px;
}

/* 🔹 Typography & Global Rendering */
body {
    background-color: #ffffff !important;
    font-family: 'Inter', sans-serif !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: transparent;
    color: #404040;
}

h1, h2, h3, h4, h5, h6, .hp-listing__title, .desktop-header-links a, .sticky-add-btn {
    font-family: 'Outfit', sans-serif !important;
    font-weight: 600;
    letter-spacing: -0.02em;
}

/* Form Elements Focus Glow */
input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus, input[type="number"]:focus, textarea:focus, select:focus, .hp-form__field:focus {
    outline: none !important;
    border-color: #f2bb63 !important;
    box-shadow: 0 0 0 4px rgba(242, 187, 99, 0.2) !important;
    transition: all 0.2s ease-in-out;
}

/* Button Polish */
.button, .button--primary, button[type="submit"], .hp-listing__action, .sticky-add-btn {
    transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.2s ease-out !important;
}

.button:hover, .button--primary:hover, button[type="submit"]:hover, .hp-listing__action:hover, .sticky-add-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 8px 16px rgba(0,0,0,0.08), 0 4px 8px rgba(242, 187, 99, 0.2) !important;
}

.button:active, .button--primary:active, button[type="submit"]:active, .hp-listing__action:active, .sticky-add-btn:active {
    transform: translateY(1px) scale(0.98);
    box-shadow: 0 2px 4px rgba(0,0,0,0.05) !important;
}

.site-header, 
.site-content, 
.site-footer {
    background-color: transparent !important;
}

.hp-container {
    max-width: 1200px;
    margin: auto;
    padding: 20px;
}

/* 🔹 Breadcrumb стилове */
.share-breadcrumbs ul li {
    display: flex;
    align-items: center;
    color: #666;
}
.share-breadcrumbs ul li a {
    color: #333;
    text-decoration: none;
    transition: color 0.2s;
}

.hp-breadcrumb {
    font-size: 16px;
    margin-bottom: 20px;
}

.hp-breadcrumb a {
    text-decoration: none;
    color: #2b2b2b;
}

.hp-breadcrumb a:hover {
    text-decoration: underline;
}

.breadcrumb-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    scrollbar-width: none;
    -ms-overflow-style: none;
    margin-top: 10px;
    margin-bottom: 8px;
    padding-left: 0;
}

.breadcrumb-wrapper::-webkit-scrollbar {
    display: none;
}

ul.breadcrumb {
    display: inline-flex;
    align-items: baseline;
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 14px;
    gap: 0;
    white-space: nowrap;
}

ul.breadcrumb li {
    display: inline;
    color: #666;
    font-size: 14px;
    line-height: 1.4;
}

ul.breadcrumb li i.fa-home {
    margin-right: 4px;
    font-size: 13px;
    vertical-align: -1px;
}

ul.breadcrumb li + li::before {
    content: "›";
    color: #999;
    margin: 0 8px;
    font-size: 14px;
}

ul.breadcrumb li a {
    color: #2b2b2b;
    text-decoration: none;
}

ul.breadcrumb li.current strong {
    font-weight: 600;
    color: #333;
}

ul.breadcrumb li a:hover {
    text-decoration: underline;
}

ul.breadcrumb li.current a {
    font-weight: bold;
}

body.home ul.breadcrumb {
    display: none !important;
}

body.archive ul.breadcrumb,
body.tax-hp_listing_category ul.breadcrumb,
body.search ul.breadcrumb {
    margin-top: 10px;
    margin-bottom: 30px;
}

/* 📦 Карта на обява */
.hp-listings-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
}

.hp-listings-grid > * {
    display: flex;
}

.hp-listing-item {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    height: auto;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    transition: all 0.3s ease;
    flex-grow: 1;
    border: none;
}

.hp-listing-item:hover {
    transform: translateY(-4px);
}

.hp-listing__image {
    overflow: hidden;
    border-radius: 12px;
}

.hp-listing__image img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    border-radius: 12px;
    transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.hp-listing-item:hover .hp-listing__image img {
    transform: scale(1.05);
}

.hp-listing__content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-grow: 1;
    margin-top: 10px;
}

.hp-listing__title {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: nowrap;
    font-size: 18px;
    margin: 0;
    line-height: 1.3;
    min-height: calc(1.3em * 2);
}

.hp-listing__title a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    line-height: 1.3;
    max-height: calc(1.3em * 2);
    flex: 1;
}

.hp-listing__verified-badge.hp-icon {
    color: #3fb950;
    font-size: 14px;
    margin-left: 4px;
    margin-top: 2px;
    flex-shrink: 0;
}

.hp-listing__details,
.hp-listing__meta {
    font-size: 14px;
    color: #777;
    margin-top: 8px;
}

.hp-listing__footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
}

.hp-listing__attribute--price {
    font-weight: bold;
    font-size: 16px;
    color: #222;
}

.hp-listing__actions {
    display: flex;
    gap: 10px;
    align-items: center;
}

.hp-listing__action {
    color: #555;
    font-size: 16px;
    transition: color 0.2s;
}

.hp-listing__action:hover {
    color: #000;
}

.hp-pagination {
    text-align: center;
    margin-top: 20px;
}

/* 1. Hero Gallery (Mosaic) - Scope ONLY to single listing view pages */
body.single-hp_listing .site-main,
body.single-hp_listing .site-content,
body.single-hp_listing .hp-page,
body.single-hp_listing .site-header {
    padding-top: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.hp-page__header.share-hero-section,
.share-hero-section {
    background-color: transparent !important;
    padding-bottom: 12px !important;
    padding-top: 10px !important; /* Compact top spacing below sticky header */
    display: block !important; 
    margin-top: 0 !important;
}

@media (max-width: 768px) {
    .hp-page__header.share-hero-section,
    .share-hero-section {
        padding-top: 8px !important;
        padding-bottom: 10px !important;
    }
}
.share-hero-section .hp-page__title {
    margin-bottom: 8px;
    margin-top: 0 !important;
}
.share-title-actions-wrapper {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    width: 100% !important;
    gap: 16px !important;
    position: relative !important;
}
.share-title-actions-wrapper .hp-listing__actions--secondary,
.share-title-actions-wrapper .share-icon-actions,
.share-hero-section .share-icon-actions {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    flex-shrink: 0 !important;
    list-style: none !important;
}
/* Hide stray favorite icons outside of share-icon-actions */
.share-hero-section .hp-listing__action--favorite {
    display: none !important;
}
/* Show and style BOTH buttons identically inside share-icon-actions */
.share-hero-section .share-icon-actions .share-action-icon,
.share-hero-section .share-icon-actions .share-share-btn,
.share-hero-section .share-icon-actions .hp-listing__action--favorite,
.hp-listing .share-hero-section .share-icon-actions .hp-listing__action--favorite,
.hp-listing .share-title-actions-wrapper .hp-listing__action--favorite {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    max-width: 40px !important;
    max-height: 40px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    border: 1px solid #e0e0e0 !important;
    color: #222222 !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
    text-shadow: none !important;
    cursor: pointer !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    z-index: 2 !important;
    flex-shrink: 0 !important;
    line-height: 1 !important;
    transition: all 0.2s ease !important;
}
.share-hero-section .share-icon-actions .share-action-icon:hover,
.share-hero-section .share-icon-actions .share-share-btn:hover,
.share-hero-section .share-icon-actions .hp-listing__action--favorite:hover,
.hp-listing .share-hero-section .share-icon-actions .hp-listing__action--favorite:hover {
    background: #f7f7f7 !important;
    border-color: #cccccc !important;
    color: #000000 !important;
    transform: translateY(-1px) scale(1.04) !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.12) !important;
}
.share-hero-section .share-icon-actions .share-action-icon:active,
.share-hero-section .share-icon-actions .share-share-btn:active,
.share-hero-section .share-icon-actions .hp-listing__action--favorite:active,
.hp-listing .share-hero-section .share-icon-actions .hp-listing__action--favorite:active {
    transform: translateY(0) scale(0.98) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08) !important;
}
/* Hide text inside icon toggle — show icon only */
.share-hero-section .share-icon-actions span,
.share-hero-section .share-icon-actions .hp-listing__action--favorite span {
    display: none !important;
}
/* Force icon styles inside both buttons to be identical */
.share-hero-section .share-icon-actions .share-action-icon i,
.share-hero-section .share-icon-actions .share-action-icon svg,
.share-hero-section .share-icon-actions .share-share-btn i,
.share-hero-section .share-icon-actions .share-share-btn svg,
.share-hero-section .share-icon-actions .hp-listing__action--favorite i,
.share-hero-section .share-icon-actions .hp-listing__action--favorite svg,
.hp-listing .share-hero-section .share-icon-actions .hp-listing__action--favorite i {
    font-size: 16px !important;
    width: 16px !important;
    height: 16px !important;
    line-height: 16px !important;
    color: #222222 !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    text-shadow: none !important;
    filter: none !important;
    transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
}
/* Active Heart State: [data-state="active"], .hp-state--active, .active */
.share-hero-section .share-icon-actions .hp-listing__action--favorite[data-state="active"],
.share-hero-section .share-icon-actions .hp-listing__action--favorite.hp-state--active,
.share-hero-section .share-icon-actions .hp-listing__action--favorite.active,
.hp-listing .share-hero-section .share-icon-actions .hp-listing__action--favorite[data-state="active"],
.hp-listing .share-hero-section .share-icon-actions .hp-listing__action--favorite.hp-state--active,
.hp-listing .share-hero-section .share-icon-actions .hp-listing__action--favorite.active {
    background: #fff5f7 !important;
    border-color: #ff385c !important;
    color: #ff385c !important;
}

.share-hero-section .share-icon-actions .hp-listing__action--favorite[data-state="active"]:hover,
.share-hero-section .share-icon-actions .hp-listing__action--favorite.hp-state--active:hover,
.share-hero-section .share-icon-actions .hp-listing__action--favorite.active:hover {
    background: #ffe6eb !important;
    border-color: #e01541 !important;
}

.share-hero-section .share-icon-actions .hp-listing__action--favorite[data-state="active"] i,
.share-hero-section .share-icon-actions .hp-listing__action--favorite[data-state="active"] svg,
.share-hero-section .share-icon-actions .hp-listing__action--favorite.hp-state--active i,
.share-hero-section .share-icon-actions .hp-listing__action--favorite.hp-state--active svg,
.share-hero-section .share-icon-actions .hp-listing__action--favorite.active i,
.share-hero-section .share-icon-actions .hp-listing__action--favorite.active svg,
.hp-listing .share-hero-section .share-icon-actions .hp-listing__action--favorite[data-state="active"] i,
.hp-listing .share-hero-section .share-icon-actions .hp-listing__action--favorite.hp-state--active i,
.hp-listing .share-hero-section .share-icon-actions .hp-listing__action--favorite.active i {
    color: #ff385c !important; /* Airbnb vivid pink-red */
}
.share-title-inner-wrapper {
    width: 100% !important;
    max-width: calc(100% - 120px) !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
}
.share-title-inner-wrapper h1,
.share-title-inner-wrapper .hp-listing__title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    margin: 0 !important;
    line-height: 1.25 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    text-align: left !important;
}
@media (max-width: 768px) {
    .share-title-inner-wrapper {
        max-width: calc(100% - 90px) !important;
    }
    .share-title-inner-wrapper h1,
    .share-title-inner-wrapper .hp-listing__title {
        font-size: 20px !important;
        line-height: 1.25 !important;
    }
}
.share-breadcrumbs-wrapper {
    display: block !important;
    width: 100% !important;
    margin-bottom: 0px !important;
}
.share-breadcrumbs-wrapper .breadcrumb-wrapper {
    margin-top: 3px !important;
    margin-bottom: 6px !important;
}
.hp-listing--view-page .hp-page__topbar {
    display: none !important;
}

.share-mosaic-gallery {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 24px !important;
    max-height: 400px;
}
.share-mosaic-left {
    height: 100%;
}
.share-mosaic-left a, .share-mosaic-left img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.share-mosaic-right {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 8px;
    height: 100%;
}
.share-mosaic-item {
    position: relative;
    height: 100%;
}
.share-mosaic-item a, .share-mosaic-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.share-mosaic-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.share-mosaic-btn {
    background: rgba(255, 255, 255, 0.9);
    padding: 8px 16px;
    border-radius: var(--share-radius-btn);
    font-weight: 600;
    font-size: 14px;
    color: #111;
    display: flex;
    align-items: center;
    gap: 8px;
}
.share-mosaic-btn:hover {
    background: #fff;
}
.share-hero-gallery .hp-listing__images {
    width: 100%;
}
.share-hero-gallery img {
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

/* 3. Right Sidebar & Booking Widget (responsive layout handled in section 4) */
.share-sticky-sidebar {
    box-sizing: border-box;
}

.share-sticky-sidebar .widget,
.share-sticky-sidebar .hp-widget {
    background: #fff;
    padding: 24px;
    border-radius: 12px;
    border: 1px solid #e1e8ed;
    box-shadow: 0 8px 24px rgba(0,0,0,0.08);
    margin-bottom: 24px;
}

/* Remove nested widget styling inside the unified booking card */
.share-booking-widget .widget,
.share-booking-widget .hp-widget {
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    margin-bottom: 20px !important;
}
.share-booking-widget .widget:last-child,
.share-booking-widget .hp-widget:last-child {
    margin-bottom: 0 !important;
}

/* Booking Widget Typography */
.share-booking-widget .hp-listing__attribute--price {
    font-size: 24px;
    font-weight: 700;
    color: #111;
    margin-bottom: 4px;
    display: block;
}

/* Date Picker styling */
.share-booking-widget .hp-form--booking {
    border: 1px solid #b0b0b0;
    border-radius: 8px;
    padding: 12px;
    margin-bottom: 16px;
    background: #fff;
}

/* CTA Buttons */
.share-booking-widget .button--primary,
.share-booking-widget button[type="submit"] {
    width: 100%;
    border-radius: var(--share-radius-btn);
    padding: 14px;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 12px;
}
.share-booking-widget .hp-listing__actions--primary a.button {
    width: 100%;
    background: #fff;
    border: 1px solid #111;
    color: #111;
    border-radius: var(--share-radius-btn);
    padding: 14px;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    display: block;
}
.share-booking-widget .hp-listing__actions--primary a.button:hover {
    background: #f7f7f7;
}

/* 🖼️ Галерия */
.listing-gallery {
    margin-bottom: 30px;
}

.listing-gallery-wrapper {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 10px;
    margin-bottom: 20px;
}

.gallery-item--main img,
.gallery-item--thumb img,
.gallery-placeholder img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 8px;
    transition: transform 0.3s ease;
}

.gallery-item--main img:hover {
    transform: scale(1.03);
}

.gallery-item--overlay .gallery-overlay-text {
    position: absolute;
    background: rgba(0,0,0,0.6);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    color: #fff;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
}

.listing-gallery-mobile {
    display: none;
    margin-bottom: 20px;
}

@media (max-width: 768px) {
    .listing-gallery-wrapper {
        display: none;
    }
    .listing-gallery-mobile {
        display: block;
    }

    /* 🧭 Mobile Category Slider (2 реда OLX стил) */
    [class*="hp-listing-categories"], .hp-categories-block {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 12px;
        padding: 12px;
    }

    [class*="hp-listing-categories"] > article, .hp-categories-block > article {
        width: 70px;
        text-align: center;
    }

    .hp-listing-category__image img {
        width: 60px;
        height: 60px;
        object-fit: cover;
        border-radius: 50%;
        margin-bottom: 5px;
    }

    .hp-listing-category__name {
        font-size: 12px;
        line-height: 1.2;
        display: block;
    }

    /* 📱 Responsive Search Block */
    .hp-form--wide.hp-form--listing-search {
        padding: 16px;
        background: #fff;
        border-radius: 14px;
        box-shadow: 0 4px 14px rgba(0,0,0,0.05);
        margin: 10px 14px;
    }

    .hp-form--listing-search input[type="search"],
    .hp-form--listing-search input[type="text"] {
        font-size: 16px;
        padding: 12px;
        border-radius: 12px;
        margin-bottom: 10px;
        width: 100%;
    }

    .hp-form--listing-search button[type="submit"] {
        font-size: 16px;
        padding: 12px 20px;
        border-radius: 12px;
        width: 100%;
        background: linear-gradient(to right, #444, #222);
        color: #fff;
        border: none;
    }
}



/* =======================================
   OLX-style Dynamic Category Selector
   ======================================= */
body.is-category-selection-step {
    background-color: #f8f9fa !important;
}
.wizard-category-container {
    max-width: 1000px;
    margin: 40px auto;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.05);
    overflow: hidden;
    min-height: 600px;
    position: relative;
}
.category-selector-wrapper {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: flex;
    flex-direction: column;
    background: #fff;
}
/* Slide Animations */
.category-selector-wrapper.slide-left {
    animation: slideOutLeft 0.15s ease-in forwards;
}
.category-selector-wrapper.slide-in-right {
    animation: slideInRight 0.15s ease-out forwards;
}
.category-selector-wrapper.slide-right {
    animation: slideOutRight 0.15s ease-in forwards;
}
.category-selector-wrapper.slide-in-left {
    animation: slideInLeft 0.15s ease-out forwards;
}
@keyframes slideOutLeft { to { transform: translateX(-100%); opacity: 0; } }
@keyframes slideInRight { from { transform: translateX(100%); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
@keyframes slideOutRight { to { transform: translateX(100%); opacity: 0; } }
@keyframes slideInLeft { from { transform: translateX(-100%); opacity: 0; } to { transform: translateX(0); opacity: 1; } }

/* Header */
.category-selector-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid #eee;
    background: #fff;
    z-index: 10;
}
.category-back-btn {
    background: none;
    border: none;
    font-size: 20px;
    color: #333;
    cursor: pointer;
    padding: 10px;
    transition: opacity 0.2s;
}
.category-back-btn:hover {
    opacity: 0.7;
}
.category-selector-header h2 {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
}
.category-header-title {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.category-header-title img {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    margin-bottom: 4px;
    object-fit: cover;
}
.category-header-title i {
    font-size: 24px;
    margin-bottom: 4px;
    color: #555;
}
.category-header-title h2 {
    font-size: 16px;
    color: #333;
    margin: 0;
}

/* List / Grid */
.category-selector-list.is-mobile-list {
    flex-grow: 1;
    overflow-y: auto;
    padding: 0;
}

/* Mobile Overrides (Sliding List) */
@media(max-width: 768px) {
    .wizard-category-container {
        margin: 0;
        border-radius: 0;
        box-shadow: none;
        height: 100vh;
    }
    .category-selector-item {
        background: transparent;
        border: none;
        border-bottom: 1px solid #eee;
        border-radius: 0;
        padding: 16px 20px;
        display: flex;
        align-items: center;
        cursor: pointer;
    }
}

/* Desktop Cascading Columns (OLX Style) */
@media(min-width: 769px) {
    .category-selector-wrapper.is-desktop {
        flex-direction: column;
    }
    
    .desktop-header {
        border-bottom: 1px solid #e0e0e0;
        background: #f8f9fa;
        padding: 24px 32px;
    }
    .desktop-header h2 {
        margin: 0;
        font-size: 24px;
        color: #002f34; /* OLX dark blue/green */
    }
    
    .category-cascading-container {
        display: flex;
        flex-direction: row;
        flex-grow: 1;
        overflow-x: auto;
        overflow-y: hidden;
        background: #fff;
    }
    
    .category-cascading-col {
        width: 320px; /* Fixed width for columns like OLX */
        min-width: 320px;
        border-right: 1px solid #f2f4f5;
        overflow-y: auto;
        padding: 16px 0;
        background: #fff;
    }
    
    /* Root column has slightly different background on OLX sometimes, but white is fine */
    
    .category-selector-item {
        display: flex;
        align-items: center;
        padding: 13px 20px;
        cursor: pointer;
        transition: all 0.15s ease;
        border: none;
        border-left: 4px solid transparent !important;
        border-radius: 0;
        background: #fff;
        color: #2b2b2b;
        position: relative;
    }
    
    .category-selector-item:hover {
        background: #fafaf9;
        color: #002f34;
    }
    
    .category-selector-item.is-selected {
        background: #fff8ec !important; /* 359Share warm golden tint */
        border-left: 4px solid #f2bb63 !important; /* Signature brand accent bar */
        font-weight: 600 !important;
    }

    .category-selector-item.is-selected .cat-name {
        color: #002f34 !important;
        font-weight: 600 !important;
    }

    .category-selector-item.is-selected .cat-icon-wrapper {
        background: #ffffff !important;
        box-shadow: 0 2px 8px rgba(242, 187, 99, 0.3) !important;
        border: 1px solid rgba(242, 187, 99, 0.4) !important;
    }

    .category-selector-item.is-selected .cat-arrow {
        color: #e09b2d !important;
        opacity: 1 !important;
        transform: translateX(3px);
    }
    
    .cat-icon-wrapper {
        width: 40px;
        height: 40px;
        background: #f4f6f8;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-right: 14px;
        flex-shrink: 0;
        transition: all 0.15s ease;
    }
    
    .cat-icon-img {
        width: 24px;
        height: 24px;
        object-fit: contain;
    }
    
    .cat-icon-fa {
        font-size: 18px;
        color: #002f34;
    }
    
    .cat-name {
        flex-grow: 1;
        font-size: 15px;
        color: #2b2b2b;
        transition: color 0.15s ease;
    }
    
    .cat-arrow {
        color: #7f9799;
        font-size: 13px;
        opacity: 0.7;
        transition: all 0.15s ease;
    }
}

/* OLX Grid View Styles */
.olx-category-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    padding: 24px;
    background: #f2f4f5;
    overflow-y: auto;
    flex-grow: 1;
}

@media (min-width: 769px) {
    .olx-category-grid {
        grid-template-columns: repeat(4, 1fr);
        padding: 32px;
    }
}

.olx-category-card {
    display: flex;
    flex-direction: row;
    align-items: center;
    background: #fff;
    border-radius: 8px;
    padding: 16px;
    cursor: pointer;
    box-shadow: 0 2px 4px rgba(0,0,0,0.04);
    transition: box-shadow 0.2s, transform 0.2s;
}

.olx-category-card:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    transform: translateY(-2px);
}

.card-icon-wrapper {
    width: 48px;
    height: 48px;
    background: #eef2f5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 16px;
    flex-shrink: 0;
}

.card-icon-wrapper .cat-icon-img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.card-icon-wrapper .cat-icon-fa {
    font-size: 24px;
    color: #002f34;
}

.card-title {
    font-size: 15px;
    font-weight: 600;
    color: #002f34;
    line-height: 1.3;
}

/* Category Search */
.category-search-container {
    position: relative;
    width: 100%;
    max-width: 600px;
    margin-top: 16px;
}

.category-search-input {
    width: 100%;
    padding: 14px 14px 14px 48px;
    border: 1px solid #cdd0d5;
    border-radius: 4px;
    font-size: 16px;
    color: #002f34;
    outline: none;
    transition: border-color 0.2s;
}

.category-search-input:focus {
    border-color: #002f34;
}

.search-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #7f9799;
    font-size: 18px;
}

/* ==========================================================================
   V2: 359SHARE / AIRBNB STYLE SEARCH RESULTS OVERRIDE
   ========================================================================== */

:root {
    --v2-accent: #f1ba62;
    --v2-accent-hover: #e0aa53;
}

/* 1. Header Layout */
.hp-template--listings-view-page .hp-page__header {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px !important;
    margin: 24px 0 32px 0 !important;
    flex-wrap: wrap;
    position: relative !important;
}

/* 2. Unified Search Form Styling (Lake.com / Airbnb Elevated Pill) - Scoped to in-page header only */
.hp-template--listings-view-page .hp-page__header .hp-form--listing-search {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 50px !important;
    padding: 6px 8px 6px 20px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.25s ease !important;
    margin: 0 !important;
    width: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
}

.hp-template--listings-view-page .hp-form--listing-search:hover {
    border-color: #d4d4d4 !important;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.12) !important;
}

/* Inner Row / Fields */
.hp-template--listings-view-page .hp-form--listing-search .hp-row,
.hp-template--listings-view-page .hp-form--listing-search .hp-form__fields {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    margin: 0 !important;
    gap: 0 !important;
}

.hp-template--listings-view-page .hp-form--listing-search .hp-col-sm-4,
.hp-template--listings-view-page .hp-form--listing-search .hp-form__field {
    width: auto !important;
    padding: 4px 16px !important;
    margin: 0 !important;
    position: relative !important;
}

.hp-template--listings-view-page .hp-form--listing-search .hp-form__field--search,
.hp-template--listings-view-page .hp-form--listing-search .hp-col-sm-4:first-child {
    border-right: 1px solid #ebebeb !important;
    min-width: 200px !important;
    padding-left: 4px !important;
}

.hp-form--listing-search .hp-form__field--location,
.hp-template--listings-view-page .hp-form--listing-search .hp-form__field--location,
.hp-template--listings-view-page .hp-form--listing-search .hp-col-sm-4:nth-child(2) {
    min-width: 180px !important;
    position: relative !important;
}

.hp-form--listing-search .hp-form__field--location input,
.hp-template--listings-view-page .hp-form--listing-search .hp-form__field--location input {
    padding-right: 36px !important;
}

.hp-form--listing-search .hp-form__field--location a,
.hp-template--listings-view-page .hp-form--listing-search .hp-form__field--location a {
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #94a3b8 !important;
    z-index: 5 !important;
    cursor: pointer !important;
}

.hp-form--listing-search .hp-form__field--location a i,
.hp-template--listings-view-page .hp-form--listing-search .hp-form__field--location a i {
    display: none !important;
}

.hp-form--listing-search .hp-form__field--location a::before,
.hp-template--listings-view-page .hp-form--listing-search .hp-form__field--location a::before {
    content: "\f3c5" !important;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    font-size: 13px !important;
    color: #94a3b8 !important;
}

.hp-template--listings-view-page .hp-form--listing-search .hp-form__field--category {
    display: none !important;
}

/* Inputs */
.hp-template--listings-view-page .hp-form--listing-search input,
.hp-template--listings-view-page .hp-form--listing-search select {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    padding: 6px 0 !important;
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #3d3d3d !important;
    width: 100% !important;
    min-height: auto !important;
}

.hp-template--listings-view-page .hp-form--listing-search input::placeholder {
    color: #a3a3a3 !important;
    font-weight: 400 !important;
}

.hp-template--listings-view-page .hp-form--listing-search label {
    display: none !important;
}

/* Submit Button - Consistent with Homepage Capsule */
.hp-template--listings-view-page .hp-form--listing-search .hp-form__footer,
.hp-template--listings-view-page .hp-form--listing-search .hp-form__field--submit {
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    flex: none !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
}

.hp-template--listings-view-page .hp-form--listing-search button[type="submit"] {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 0 24px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    width: auto !important;
    min-width: 110px !important;
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 48px !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.45) !important;
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    margin-left: 6px !important;
}

.hp-template--listings-view-page .hp-form--listing-search button[type="submit"] span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #1e2022 !important;
    line-height: 1 !important;
    visibility: visible !important;
    opacity: 1 !important;
    gap: 8px !important;
}

.hp-template--listings-view-page .hp-form--listing-search button[type="submit"] span::before {
    content: '\f002' !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 14px !important;
    color: #1e2022 !important;
    display: inline-block !important;
    line-height: 1 !important;
}

.hp-template--listings-view-page .hp-form--listing-search button[type="submit"] span::after {
    display: none !important;
}

.hp-template--listings-view-page .hp-form--listing-search button[type="submit"]::before,
.hp-template--listings-view-page .hp-form--listing-search button[type="submit"]::after {
    display: none !important;
    content: none !important;
}

.hp-button--listing-filter {
    display: none !important;
}

.hp-template--listings-view-page .hp-form--listing-search button[type="submit"]:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    color: #1e2022 !important;
    transform: scale(1.04) !important;
    box-shadow: 0 6px 18px rgba(242, 187, 99, 0.6) !important;
}

.hp-template--listings-view-page .hp-form--listing-search button[type="submit"]:hover span,
.hp-template--listings-view-page .hp-form--listing-search button[type="submit"]:hover span::before {
    color: #1e2022 !important;
}

.hp-template--listings-view-page .hp-form--listing-search button[type="submit"]:active {
    transform: scale(0.98) !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.3) !important;
}

/* 3. Filters Button - Matching 48px Capsule */
.hp-template--listings-view-page .v2-filters-btn {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 50px !important;
    padding: 0 22px !important;
    height: 48px !important;
    min-height: 48px !important;
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #3d3d3d !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06) !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

.hp-template--listings-view-page .v2-filters-btn:hover {
    background: #fafaf9 !important;
    border-color: #d4d4d4 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08) !important;
}

/* Completely remove stray search alert heart / modal triggers from header */
.hp-template--listings-view-page .hp-menu--search-alert,
.hp-template--listings-view-page .hp-menu__item--search-alert,
.hp-template--listings-view-page a[href="#search_alert_modal"],
.hp-template--listings-view-page .hp-link--search-alert,
.hp-template--listings-view-page a.hp-page__action--listing-filter {
    display: none !important;
}

/* 3.5 Topbar: Clean Flex Layout with Result Count and Sort Dropdown */
.hp-template--listings-view-page .hp-page__topbar,
.post-type-archive-hp_listing .hp-page__topbar,
.tax-hp_listing_category .hp-page__topbar,
.hp-page--listings-view-page .hp-page__topbar,
.hp-page__topbar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 14px 0 24px 0 !important;
    padding: 12px 18px !important;
    background: #ffffff !important;
    border: 1px solid #f1f5f9 !important;
    border-radius: 16px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
    width: 100% !important;
    box-sizing: border-box !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}

.hp-template--listings-view-page .hp-page__topbar .hp-result-count,
.hp-template--listings-view-page .hp-page__topbar .hp-page__counts,
.hp-result-count {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #475569 !important;
    letter-spacing: -0.01em !important;
    text-transform: none !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.hp-result-count::before {
    content: "" !important;
    display: inline-block !important;
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #f2bb63 !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.25) !important;
}

.hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort,
.hp-form--listing-sort {
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort .hp-form__fields,
.hp-form--listing-sort .hp-form__fields {
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort .hp-form__field,
.hp-form--listing-sort .hp-form__field {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 !important;
}

.hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort label,
.hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort .hp-field__label,
.hp-form--listing-sort label,
.hp-form--listing-sort .hp-field__label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    margin: 0 !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

/* Select2 Modern Pill Restyling for Sorting */
.hp-form--listing-sort .select2-container,
.hp-template--listings-view-page .hp-form--listing-sort .select2-container {
    margin: 0 !important;
    width: auto !important;
}

.hp-form--listing-sort .select2-container .select2-selection--single,
.hp-template--listings-view-page .hp-form--listing-sort .select2-container .select2-selection--single {
    height: 40px !important;
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 9999px !important;
    padding: 0 38px 0 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
}

.hp-form--listing-sort .select2-container .select2-selection--single:hover,
.hp-template--listings-view-page .hp-form--listing-sort .select2-container .select2-selection--single:hover {
    background: #ffffff !important;
    border-color: #f2bb63 !important;
    box-shadow: 0 3px 12px rgba(242, 187, 99, 0.2) !important;
}

.hp-form--listing-sort .select2-container.select2-container--open .select2-selection--single,
.hp-template--listings-view-page .hp-form--listing-sort .select2-container.select2-container--open .select2-selection--single {
    background: #ffffff !important;
    border-color: #f2bb63 !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.25) !important;
}

.hp-form--listing-sort .select2-container .select2-selection__rendered,
.hp-template--listings-view-page .hp-form--listing-sort .select2-container .select2-selection__rendered {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #1e2022 !important;
    padding: 0 !important;
    line-height: 38px !important;
}

.hp-form--listing-sort .select2-container .select2-selection__arrow,
.hp-template--listings-view-page .hp-form--listing-sort .select2-container .select2-selection__arrow {
    height: 38px !important;
    right: 12px !important;
    width: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.hp-form--listing-sort .select2-container .select2-selection__arrow b,
.hp-template--listings-view-page .hp-form--listing-sort .select2-container .select2-selection__arrow b {
    border-color: #64748b transparent transparent transparent !important;
    border-width: 5px 4px 0 4px !important;
    transition: transform 0.2s ease !important;
}

.hp-form--listing-sort .select2-container.select2-container--open .select2-selection__arrow b,
.hp-template--listings-view-page .hp-form--listing-sort .select2-container.select2-container--open .select2-selection__arrow b {
    border-color: transparent transparent #64748b transparent !important;
    border-width: 0 4px 5px 4px !important;
}

.hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort select {
    appearance: none !important;
    -webkit-appearance: none !important;
    background: #ffffff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512' fill='%2364748b'%3E%3Cpath d='M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z'/%3E%3C/svg%3E") no-repeat right 14px center / 10px !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 9999px !important;
    padding: 0 36px 0 16px !important;
    height: 40px !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #1e2022 !important;
    cursor: pointer !important;
    outline: none !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
    margin: 0 !important;
}

.hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort select:hover {
    border-color: #f2bb63 !important;
    box-shadow: 0 3px 12px rgba(242, 187, 99, 0.2) !important;
}

/* Hide RentalHive native static map block & map toggle */
#map,
.hp-map,
.hp-listing__map,
.hp-template--listings-view-page #map,
.hp-template--listings-view-page .hp-map,
.post-type-archive-hp_listing #map,
.post-type-archive-hp_listing .hp-map,
.hp-template--listings-view-page .hp-page__topbar .hp-link--hide-map,
.hp-template--listings-view-page .hp-page__topbar .hp-listing__map-toggle {
    display: none !important;
}

/* Hide message button on cards in search view */
.hp-template--listings-view-page .hp-listing__action--message,
.hp-template--listings-view-page .hp-listing__actions--primary .hp-listing__action--message,
.hp-template--listings-view-page .hp-listing__actions--secondary .hp-listing__action--message {
    display: none !important;
}

/* 4. Filter Modal Strict Styling for Desktop & Mobile */
/* Modal Content Box - only cosmetic styles */
.v2-filter-modal .hp-modal__content {
    background: #fff !important;
    border-radius: 16px !important;
    padding: 30px !important;
    width: 100% !important;
    max-width: 600px !important;
    max-height: 90vh !important;
    overflow-y: auto !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.2) !important;
}

/* Modal Header/Title (if any) */
.v2-filter-modal .hp-modal__header {
    margin-bottom: 20px !important;
    font-size: 20px !important;
    font-weight: 600 !important;
}

/* 5. Expand Grid & Hide Sidebar Visually */
.hp-template--listings-view-page .hp-page__content {
    flex: 0 0 100% !important;
    max-width: 100% !important;
}

/* 2. Hide Sidebar completely since filters are in a modal */
.hp-template--listings-view-page .hp-page__sidebar {
    display: none !important;
}

/* Grid Layout: 3 Columns on Desktop, 4 Columns on Large Desktop */
@media (min-width: 1024px) {
    .hp-template--listings-view-page .hp-grid__item {
        flex: 0 0 33.333333% !important;
        max-width: 33.333333% !important;
    }
}
@media (min-width: 1440px) {
    .hp-template--listings-view-page .hp-grid__item {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }
}

/* ==========================================================
   359SHARE AIRBNB-GRADE INTERACTIVE MAP VIEW (LEAFLET)
   ========================================================== */

/* 1. Map View Modal Container (Full-screen overlay) */
.share-airbnb-map-view {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 2147483640 !important;
    background: #f8fafc !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity 0.28s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.28s !important;
}

.share-airbnb-map-view.is-active {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

body.share-map-active {
    overflow: hidden !important;
}

/* 2. Leaflet Canvas (Full viewport) */
.share-leaflet-map-canvas {
    width: 100% !important;
    height: 100% !important;
    background: #e2e8f0 !important;
}

/* 3. Top Floating Navigation Bar */
.share-map-topbar {
    position: absolute !important;
    top: 24px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 1000 !important;
    background: rgba(255, 255, 255, 0.96) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    box-shadow: 0 10px 30px -4px rgba(0, 0, 0, 0.18), 0 2px 6px rgba(0, 0, 0, 0.04) !important;
    border-radius: 50px !important;
    padding: 6px 14px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    max-width: 90vw !important;
}

.share-map-back-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: #f1f5f9 !important;
    border: none !important;
    border-radius: 40px !important;
    padding: 8px 16px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #1e2022 !important;
    cursor: pointer !important;
    transition: all 0.18s ease !important;
}

.share-map-back-btn:hover {
    background: #e2e8f0 !important;
    transform: scale(1.02) !important;
}

.share-map-counter-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: #475569 !important;
    padding: 0 6px !important;
    white-space: nowrap !important;
}

.share-map-counter-badge strong {
    color: #1e2022 !important;
    font-weight: 700 !important;
}

.share-map-counter-badge i {
    color: #f2bb63 !important;
}

.share-map-close-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    background: #f1f5f9 !important;
    border: none !important;
    border-radius: 50% !important;
    font-size: 20px !important;
    line-height: 1 !important;
    color: #64748b !important;
    cursor: pointer !important;
    transition: all 0.18s ease !important;
    padding: 0 !important;
}

.share-map-close-btn:hover {
    background: #e2e8f0 !important;
    color: #1e2022 !important;
    transform: scale(1.08) !important;
}

/* 4. Airbnb Floating Toggle Button (Bottom Center) */
.v2-floating-map-btn {
    position: fixed !important;
    bottom: 32px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    background: #1e2022 !important;
    color: #ffffff !important;
    border: none !important;
    padding: 13px 24px !important;
    border-radius: 40px !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    font-size: 14.5px !important;
    letter-spacing: -0.01em !important;
    cursor: pointer !important;
    z-index: 2147483645 !important;
    box-shadow: 0 8px 24px -2px rgba(0, 0, 0, 0.3), 0 2px 6px rgba(0, 0, 0, 0.12) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), background 0.2s, box-shadow 0.2s !important;
    user-select: none !important;
}

.v2-floating-map-btn i {
    color: #f2bb63 !important;
    font-size: 14px !important;
    transition: transform 0.2s ease !important;
}

.v2-floating-map-btn:hover {
    transform: translateX(-50%) scale(1.05) !important;
    background: #000000 !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4) !important;
}

.v2-floating-map-btn:active {
    transform: translateX(-50%) scale(0.97) !important;
}

/* 5. Airbnb Price Badge Marker Pins (Custom L.divIcon) */
.share-airbnb-price-pin {
    background: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.12) !important;
    border-radius: 28px !important;
    padding: 6px 11px !important;
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    box-shadow: 0 4px 14px -1px rgba(0, 0, 0, 0.18), 0 1px 3px rgba(0, 0, 0, 0.08) !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    transition: transform 0.18s cubic-bezier(0.16, 1, 0.3, 1), background 0.18s, color 0.18s, box-shadow 0.18s !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transform-origin: center center !important;
}

.share-airbnb-price-pin:hover {
    background: #1e2022 !important;
    color: #ffffff !important;
    transform: scale(1.15) !important;
    z-index: 9999 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.32) !important;
}

.share-airbnb-price-pin.is-active,
.share-airbnb-price-pin.is-selected {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    transform: scale(1.2) !important;
    box-shadow: 0 8px 24px rgba(242, 187, 99, 0.7) !important;
    z-index: 10000 !important;
}

/* 6. Airbnb Mini-Card Popup (Attached to Marker) */
.leaflet-popup-content-wrapper {
    padding: 0 !important;
    border-radius: 20px !important;
    box-shadow: 0 16px 40px -4px rgba(0, 0, 0, 0.25), 0 4px 12px rgba(0, 0, 0, 0.1) !important;
    overflow: hidden !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.leaflet-popup-content {
    margin: 0 !important;
    line-height: 1.4 !important;
    width: 290px !important;
    max-width: 85vw !important;
}

.leaflet-popup-tip-container {
    display: none !important; /* Airbnb uses clean floating card without arrow tip */
}

.share-airbnb-popup-card {
    display: flex !important;
    flex-direction: column !important;
    background: #ffffff !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    position: relative !important;
}

.share-popup-thumb-wrap {
    position: relative !important;
    width: 100% !important;
    height: 170px !important;
    background: #f1f5f9 !important;
    overflow: hidden !important;
}

.share-popup-thumb-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.3s ease !important;
}

.share-airbnb-popup-card:hover .share-popup-thumb-wrap img {
    transform: scale(1.04) !important;
}

.share-popup-category-badge {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(8px) !important;
    border-radius: 20px !important;
    padding: 4px 10px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em !important;
}

.share-popup-close-x {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    background: rgba(0, 0, 0, 0.6) !important;
    color: #ffffff !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    z-index: 10 !important;
    transition: background 0.18s ease !important;
}

.share-popup-close-x:hover {
    background: rgba(0, 0, 0, 0.85) !important;
}

.share-popup-body {
    padding: 14px 16px 16px 16px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.share-popup-meta-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    font-size: 12px !important;
    color: #64748b !important;
    font-weight: 500 !important;
}

.share-popup-location {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 190px !important;
}

.share-popup-location i {
    color: #f2bb63 !important;
}

.share-popup-rating {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
}

.share-popup-rating i {
    color: #f2bb63 !important;
}

.share-popup-title {
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    color: #1e2022 !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    margin: 0 !important;
}

.share-popup-title:hover {
    color: #f2bb63 !important;
}

.share-popup-action-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-top: 4px !important;
    padding-top: 10px !important;
    border-top: 1px solid #f1f5f9 !important;
}

.share-popup-price-wrap {
    display: flex !important;
    align-items: baseline !important;
    gap: 3px !important;
}

.share-popup-price-val {
    font-size: 17px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
}

.share-popup-price-period {
    font-size: 12px !important;
    color: #64748b !important;
    font-weight: 500 !important;
}

.share-popup-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    padding: 7px 14px !important;
    border-radius: 12px !important;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(242, 187, 99, 0.4) !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

.share-popup-btn:hover {
    transform: translateY(-1px) scale(1.02) !important;
    box-shadow: 0 6px 16px rgba(242, 187, 99, 0.6) !important;
    color: #1e2022 !important;
}

/* Mobile responsive adjustments */
@media (max-width: 768px) {
    .share-map-topbar {
        top: 16px !important;
        width: calc(100% - 24px) !important;
        justify-content: space-between !important;
        padding: 6px 10px !important;
        gap: 6px !important;
    }
    .share-map-back-btn {
        padding: 6px 12px !important;
        font-size: 13px !important;
    }
    .share-map-counter-badge {
        font-size: 13px !important;
        padding: 0 4px !important;
    }
    .v2-floating-map-btn {
        bottom: 24px !important;
        padding: 12px 20px !important;
        font-size: 14px !important;
    }
}

/* Removed duplicate sidebar logic */

/* 4. Host Info (Moved to main column) */
.v2-main-content .hp-vendor,
.hp-listing--view-page .hp-page__content > .hp-vendor,
.hp-listing--view-page .hp-page__content .hp-vendor {
    border-top: 1px solid #ebebeb;
    border-bottom: 1px solid #ebebeb;
    padding: 2rem 0 !important;
    margin: 2rem 0 !important;
    display: flex;
    align-items: center;
    gap: 1.5rem;
}
.v2-main-content .hp-vendor .hp-vendor__image img,
.hp-listing--view-page .hp-page__content .hp-vendor .hp-vendor__image img {
    border-radius: 50% !important;
    width: 72px !important;
    height: 72px !important;
    object-fit: cover;
}
.v2-main-content .hp-vendor .hp-vendor__name,
.hp-listing--view-page .hp-page__content .hp-vendor .hp-vendor__name {
    font-size: 1.25rem !important;
    font-weight: 600 !important;
    color: #222 !important;
}
.v2-main-content .hp-vendor .hp-vendor__registered-date,
.hp-listing--view-page .hp-page__content .hp-vendor .hp-vendor__registered-date {
    color: #717171 !important;
    font-size: 0.9rem !important;
}
/* Ensure it's hidden in the sidebar if PHP move failed */
.hp-page__sidebar .hp-vendor {
    display: none !important;
}

/* 4. Filter Modal (Desktop Override) */
.v2-filter-modal .hp-modal__content {
    background: #fff;
    border-radius: 16px;
    padding: 30px;
    width: 90%;
    max-width: 500px;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 20px 60px rgba(0,0,0,0.2);
}
.v2-filter-modal form button[type="submit"] {
    background-color: var(--v2-accent) !important;
    color: #fff !important;
    border-radius: var(--share-radius-btn) !important;
}

/* ==========================================================================
   359SHARE STYLE - SINGLE LISTING VIEW OVERRIDES
   ========================================================================== */

/* 1. Page Background (359Share style) */
body.single-hp_listing,
body.single-hp_listing #page, 
body.single-hp_listing .site-content,
body.single-hp_listing .site-main {
    background-color: #f4f6f8 !important; 
}

/* 2. Hero Gallery */
.share-hero-gallery {
    border-radius: 16px !important;
    overflow: hidden !important;
    margin-bottom: 2rem !important;
    background: transparent !important;
}

/* 3. Main Content Card (Left Column) */
.share-main-card {
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 32px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.03) !important;
    margin-bottom: 2rem !important;
    border: 1px solid #ebebeb !important;
}

.share-main-card .hp-listing__title {
    font-size: 2.25rem !important;
    font-weight: 800 !important;
    color: #222 !important;
    margin-bottom: 0.5rem !important;
    line-height: 1.2 !important;
}

.share-main-card .hp-listing__details--primary {
    font-size: 1rem !important;
    color: #717171 !important;
    font-weight: 500 !important;
    margin-bottom: 2rem !important;
}

/* 4. Single Listing Columns & Sticky Sidebar Grid Layout */
/* Ancestor overflow reset to guarantee sticky behavior */
body.single-hp_listing,
body.single-hp_listing #page,
body.single-hp_listing .site,
body.single-hp_listing .site-content,
body.single-hp_listing .site-container,
body.single-hp_listing .hp-page,
body.single-hp_listing .container {
    overflow: visible !important;
}

/* Mobile & Tablet (< 1024px): 1 Column Clean Layout */
@media (max-width: 1023px) {
    .hp-page--listing-view-page .hp-page__columns,
    body.single-hp_listing .hp-page__columns,
    .hp-listing--view-page .hp-page__columns {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 24px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .hp-page--listing-view-page .hp-page__content,
    body.single-hp_listing .hp-page__content,
    .share-main-card {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        float: none !important;
        box-sizing: border-box !important;
        margin-bottom: 24px !important;
    }

    .hp-page--listing-view-page .hp-page__sidebar,
    body.single-hp_listing .hp-page__sidebar,
    .share-sticky-sidebar {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        border: 0 !important;
        pointer-events: none !important;
        visibility: hidden !important;
    }

    /* Hide conflicting generic bottom nav on single listing */
    body.single-hp_listing .mobile-bottom-nav {
        display: none !important;
    }

    body.single-hp_listing {
        padding-bottom: 85px !important;
    }
}

/* Default: Hide mobile gallery top nav on desktop and tablet */
.share-mobile-gallery-top-nav {
    display: none !important;
}

/* ------------------------------------- */
/* Mobile Single Listing (Airbnb/Lake Benchmark) */
/* ------------------------------------- */
@media (max-width: 768px) {
    /* 1. Mobile Container & Layout Spacing */
    body.single-hp_listing .site-content > .container {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    /* 2. Hide bulky breadcrumbs on mobile */
    body.single-hp_listing .share-breadcrumbs-wrapper {
        display: none !important;
    }

    /* 3. Reorder Hero Section: Gallery #1 (Top), Title #2 */
    body.single-hp_listing .share-hero-section,
    .hp-page__header.share-hero-section,
    body.single-hp_listing .hp-page__header.share-hero-section,
    .share-hero-section {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
        margin-bottom: 0 !important;
    }
    body.single-hp_listing .share-hero-section > .share-hero-gallery,
    body.single-hp_listing .share-hero-gallery {
        order: 1 !important;
        margin-top: 4px !important;
        margin-bottom: 0 !important;
        position: relative !important;
        border-radius: 20px !important;
        overflow: hidden !important;
    }

    /* Floating Glass Navigation Buttons over Hero Image (Airbnb mobile benchmark) */
    .share-mobile-gallery-top-nav {
        position: absolute !important;
        top: 14px !important;
        left: 14px !important;
        right: 14px !important;
        z-index: 25 !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        pointer-events: none !important;
    }
    .share-mobile-gallery-top-nav .share-mobile-glass-actions {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        pointer-events: auto !important;
    }
    .share-mobile-gallery-top-nav .share-mobile-glass-btn {
        pointer-events: auto !important;
        width: 42px !important;
        height: 42px !important;
        border-radius: 50% !important;
        background: rgba(255, 255, 255, 0.92) !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        border: 1px solid rgba(255, 255, 255, 0.8) !important;
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #1e2022 !important;
        font-size: 15px !important;
        cursor: pointer !important;
        text-decoration: none !important;
        transition: transform 0.15s ease, background 0.15s ease !important;
    }
    .share-mobile-gallery-top-nav .share-mobile-glass-btn:active {
        transform: scale(0.92) !important;
        background: #ffffff !important;
    }
    .share-mobile-gallery-top-nav .share-favorite-glass-btn[data-state="active"] i,
    .share-mobile-gallery-top-nav .share-favorite-glass-btn.is-active i {
        color: #e11d48 !important;
    }

    body.single-hp_listing .share-hero-section > .share-title-actions-wrapper,
    body.single-hp_listing .share-title-actions-wrapper {
        order: 2 !important;
        margin-top: 10px !important;
        margin-bottom: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        width: 100% !important;
    }
    body.single-hp_listing .share-title-inner-wrapper {
        width: 100% !important;
    }
    body.single-hp_listing .hp-listing__title {
        font-size: 22px !important;
        font-weight: 800 !important;
        color: #1e2022 !important;
        line-height: 1.25 !important;
        margin: 0 !important;
        letter-spacing: -0.3px !important;
    }
    body.single-hp_listing .share-icon-actions {
        display: none !important;
    }

    /* 4. Main Card appearance on mobile */
    body.single-hp_listing .share-main-card {
        padding: 18px 16px !important;
        border-radius: 20px !important;
        border: 1px solid #f0f0f0 !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, 0.04) !important;
        margin-top: 12px !important;
        margin-bottom: 24px !important;
    }

    /* 5. Airbnb Mobile Sticky Bottom Booking Bar */
    .share-mobile-booking-bar {
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 9999 !important;
        background: rgba(255, 255, 255, 0.98) !important;
        backdrop-filter: blur(16px) !important;
        -webkit-backdrop-filter: blur(16px) !important;
        border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
        box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.08) !important;
        padding-bottom: env(safe-area-inset-bottom, 0px) !important;
    }
    .share-mbar-content {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 12px 18px !important;
        gap: 12px !important;
    }
    .share-mbar-price {
        font-size: 20px !important;
        font-weight: 800 !important;
        color: #1e2022 !important;
        letter-spacing: -0.3px !important;
    }
    .share-mbar-unit {
        font-size: 13px !important;
        color: #717171 !important;
        font-weight: 500 !important;
    }
    .share-mbar-dates {
        font-size: 12.5px !important;
        color: #d97706 !important;
        font-weight: 600 !important;
        text-decoration: underline !important;
        display: flex !important;
        align-items: center !important;
        gap: 5px !important;
        margin-top: 2px !important;
    }
    .share-mbar-btn {
        background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
        color: #1e2022 !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        padding: 12px 24px !important;
        border-radius: 14px !important;
        border: none !important;
        cursor: pointer !important;
        box-shadow: 0 4px 16px rgba(242, 187, 99, 0.45) !important;
        transition: transform 0.15s ease, box-shadow 0.15s ease !important;
    }
    .share-mbar-btn:active {
        transform: scale(0.96) !important;
    }
    .share-mbar-btn.share-mbar-btn--select {
        background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
        color: #1e2022 !important;
        box-shadow: 0 4px 16px rgba(242, 187, 99, 0.45) !important;
    }
}

/* Pixel-Perfect Single Listing Alignment Benchmark */
body.single-hp_listing .site-content > .container {
    max-width: 1240px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

body.single-hp_listing .share-breadcrumbs-wrapper,
body.single-hp_listing .share-title-actions-wrapper,
body.single-hp_listing .share-hero-gallery-wrapper,
body.single-hp_listing .share-hero-gallery {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

body.single-hp_listing .share-breadcrumbs-wrapper {
    margin-bottom: 6px !important;
}

body.single-hp_listing .share-title-actions-wrapper {
    margin-bottom: 14px !important;
}

body.single-hp_listing .share-hero-gallery {
    margin-bottom: 24px !important;
}

body.single-hp_listing .share-hero-gallery .hp-listing__images {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.single-hp_listing .hp-listing--view-page {
    display: block !important;
    width: 100% !important;
}

/* Desktop (>= 1024px): 2 Columns Grid with Sticky Booking Card */
@media (min-width: 1024px) {
    body.single-hp_listing .share-listing-columns,
    body.single-hp_listing .hp-row.hp-page__columns,
    body.single-hp_listing .hp-page__columns,
    .hp-page--listing-view-page .hp-page__columns {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 380px !important;
        gap: 40px !important;
        align-items: start !important;
        position: relative !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 24px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body.single-hp_listing .hp-page__content,
    body.single-hp_listing .share-main-card,
    .share-main-card {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 32px 36px 36px 36px !important;
        box-sizing: border-box !important;
        float: none !important;
        flex: none !important;
        background: #ffffff !important;
        border-radius: 16px !important;
        border: 1px solid #ebebeb !important;
        box-shadow: 0 4px 12px rgba(0,0,0,0.03) !important;
    }

    body.single-hp_listing .hp-page__sidebar,
    body.single-hp_listing .share-sticky-sidebar,
    .share-sticky-sidebar {
        float: none !important;
        flex: none !important;
        position: -webkit-sticky !important;
        position: sticky !important;
        top: 105px !important;
        height: fit-content !important;
        max-height: calc(100vh - 120px) !important;
        overflow-y: visible !important;
        z-index: 45 !important;
        width: 380px !important;
        max-width: 380px !important;
        min-width: 380px !important;
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    body.single-hp_listing .share-sticky-sidebar .share-booking-widget,
    body.single-hp_listing .hp-page__sidebar .share-booking-widget,
    .share-sticky-sidebar .share-booking-widget {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    body.admin-bar.single-hp_listing .hp-page__sidebar,
    body.admin-bar.single-hp_listing .share-sticky-sidebar,
    body.admin-bar .share-sticky-sidebar {
        top: 137px !important;
    }
}

.share-booking-widget {
    border-radius: 16px !important;
    padding: 24px !important;
    background: #ffffff !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
    border: 1px solid #ebebeb !important;
}

.share-booking-widget .hp-listing__attributes--primary {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 24px !important;
}

.share-booking-widget .hp-listing__attributes--primary .hp-listing__attribute {
    background: transparent !important;
    padding: 0 !important;
    text-align: left !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #666 !important;
    margin-bottom: 0 !important;
}

.share-booking-widget .hp-listing__attributes--primary .hp-listing__attribute--price {
    font-size: 1.75rem !important;
    font-weight: 700 !important;
    color: #222 !important;
}

/* CTA Buttons inside Booking Widget */
.share-booking-widget .hp-form__button {
    width: 100% !important;
    padding: 16px 24px !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    font-size: 1.05rem !important;
    transition: all 0.2s ease !important;
    margin-bottom: 1rem !important;
}

.share-booking-widget button[type="submit"] {
    background-color: var(--v2-accent, #f1ba62) !important;
    color: #fff !important;
    border: none !important;
}
.share-booking-widget button[type="submit"]:hover {
    background-color: var(--v2-accent-hover, #e0aa53) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(241, 186, 98, 0.3) !important;
}

.share-booking-widget .hp-listing__action--message {
    background-color: transparent !important;
    color: #222 !important;
    border: 1.5px solid #222 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 14px 24px !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    font-size: 1.05rem !important;
    transition: all 0.2s ease !important;
    margin-bottom: 1.5rem !important;
}
.share-booking-widget .hp-listing__action--message:hover {
    background-color: rgba(0, 0, 0, 0.03) !important;
    transform: translateY(-2px) !important;
}

/* 5. Hide Tabs & Fix Vertical Layout */
body[class*="hp_listing"] .hp-menu--tabbed,
.hp-listing--view-page .hp-menu--tabbed {
    display: none !important;
}

body[class*="hp_listing"] .hp-tab-content,
body[class*="hp_listing"] .hp-tab-content[style],
.hp-listing--view-page .hp-tab-content {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    position: static !important;
    height: auto !important;
    overflow: visible !important;
    margin-bottom: 3rem !important;
    padding-bottom: 3rem !important;
    border-bottom: 1px solid #ebebeb !important;
}

.hp-listing--view-page .hp-tab-content:last-child {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.hp-listing--view-page .hp-tab-content > h2,
.hp-listing--view-page .hp-section > .hp-section__title {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    margin-bottom: 1.5rem !important;
    color: #222 !important;
}

/* 6. Description with "Show More" functionality */
.hp-listing--view-page .hp-listing__description {
    color: #222 !important;
    line-height: 1.6 !important;
    font-size: 1rem !important;
}
.hp-listing__description.v2-collapsed {
    max-height: 180px;
    overflow: hidden;
    position: relative;
}
.hp-listing__description.v2-collapsed::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80px;
    background: linear-gradient(transparent, #ffffff);
}
.v2-show-more-btn {
    background: none;
    border: none;
    color: #222;
    font-weight: 600;
    text-decoration: underline;
    cursor: pointer;
    padding: 0;
    font-size: 1rem;
    margin-top: 0.5rem;
}

/* 7. Reviews Grid */
.hp-listing--view-page #reviews ul.hp-reviews {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 24px;
    padding: 0;
    list-style: none;
}

.hp-listing--view-page #reviews .hp-review {
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    border: 1px solid #ebebeb;
    box-shadow: 0 4px 12px rgba(0,0,0,0.02);
}

.hp-listing--view-page .hp-review__header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.hp-listing--view-page .hp-review__image img {
    border-radius: 50% !important;
    width: 48px !important;
    height: 48px !important;
    object-fit: cover;
}

.hp-listing--view-page .hp-review__name {
    font-weight: 600 !important;
    font-size: 1.05rem !important;
    color: #222 !important;
}

.hp-listing--view-page .hp-review__created-date {
    color: #717171 !important;
    font-size: 0.85rem !important;
}

.hp-listing--view-page .hp-review__rating {
    color: var(--v2-accent) !important;
    margin-bottom: 12px !important;
}

.share-section-title {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #222 !important;
    margin-top: 0 !important;
    margin-bottom: 20px !important;
}

/* 8. Attributes Grid (Specifications / Amenities) */
.hp-listing--view-page .hp-listing__attributes--secondary,
.hp-listing--view-page .hp-listing__attributes--ternary {
    display: block !important;
    margin-top: 36px !important;
    padding-top: 32px !important;
    border-top: 1px solid #e8ecef !important;
}

.hp-listing--view-page .hp-listing__attributes--secondary::before {
    content: "Характеристики";
    display: block;
    font-family: 'Outfit', sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    margin-bottom: 20px !important;
    letter-spacing: -0.01em;
}

.hp-listing--view-page .hp-listing__attributes--secondary .hp-row,
.hp-listing--view-page .hp-listing__attributes--ternary .hp-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    margin: 0 !important;
}

.hp-listing--view-page .hp-listing__attributes--secondary [class*="hp-col-"],
.hp-listing--view-page .hp-listing__attributes--ternary [class*="hp-col-"] {
    flex: 0 0 calc(50% - 8px) !important;
    max-width: calc(50% - 8px) !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

@media (max-width: 600px) {
    .hp-listing--view-page .hp-listing__attributes--secondary .hp-row,
    .hp-listing--view-page .hp-listing__attributes--ternary .hp-row {
        gap: 10px !important;
    }
    .hp-listing--view-page .hp-listing__attributes--secondary [class*="hp-col-"],
    .hp-listing--view-page .hp-listing__attributes--ternary [class*="hp-col-"] {
        flex: 0 0 calc(50% - 5px) !important;
        max-width: calc(50% - 5px) !important;
    }
    .hp-listing--view-page .hp-listing__attributes--secondary .hp-listing__attribute,
    .hp-listing--view-page .hp-listing__attributes--ternary .hp-listing__attribute {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 6px !important;
        padding: 12px 14px !important;
        min-height: 84px !important;
        justify-content: flex-start !important;
        border-radius: 12px !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
    }
    .hp-listing--view-page .hp-listing__attributes--secondary .hp-listing__attribute i,
    .hp-listing--view-page .hp-listing__attributes--ternary .hp-listing__attribute i {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        font-size: 14px !important;
        border-radius: 8px !important;
        margin-bottom: 2px !important;
    }
    .hp-attr-label {
        font-size: 11px !important;
        color: #717171 !important;
        font-weight: 500 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.02em !important;
        line-height: 1.2 !important;
        display: block !important;
    }
    .hp-attr-value {
        font-size: 13.5px !important;
        color: #2b2b2b !important;
        font-weight: 600 !important;
        line-height: 1.3 !important;
        margin-left: 0 !important;
        display: block !important;
    }
}

.hp-attr-label {
    color: #717171;
    font-weight: 500;
}
.hp-attr-value {
    color: #2b2b2b;
    font-weight: 600;
    margin-left: 4px;
}

.hp-listing--view-page .hp-listing__attributes--secondary .hp-listing__attribute,
.hp-listing--view-page .hp-listing__attributes--ternary .hp-listing__attribute {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 14px 18px !important;
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    border-radius: 12px !important;
    color: #2b2b2b !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
}

.hp-listing--view-page .hp-listing__attributes--secondary .hp-listing__attribute:hover {
    background: #ffffff !important;
    border-color: #d4d4d4 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
    transform: translateY(-1px);
}

.hp-listing--view-page .hp-listing__attributes--secondary .hp-listing__attribute i,
.hp-listing--view-page .hp-listing__attributes--ternary .hp-listing__attribute i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 10px !important;
    color: #2b2b2b !important;
    font-size: 15px !important;
    text-align: center !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
    margin: 0 !important;
}

/* 5. Listing Cards Overrides */
.hp-listing {
    border: none !important;
    background: transparent !important;
}

.hp-listing__image {
    border-radius: 20px !important;
    overflow: hidden;
    aspect-ratio: 1/1;
    margin-bottom: 12px;
}

.hp-listing__image img {
    object-fit: cover !important;
    height: 100% !important;
    transition: transform 0.3s ease;
}

.hp-listing:hover .hp-listing__image img {
    transform: scale(1.05);
}

.hp-listing__details {
    padding: 0 !important;
}

.hp-listing__title {
    font-size: 16px !important;
    font-weight: 600 !important;
    margin-bottom: 4px !important;
    color: #222 !important;
}

.hp-listing__categories {
    font-size: 14px !important;
    color: #717171 !important;
}

.hp-listing__price {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #222 !important;
    margin-top: 6px !important;
}

/* Favorite Heart Icon (Catalog / Grid Cards ONLY) */
.hp-listing--view-block .hp-listing__action--favorite,
.hp-grid .hp-listing:not(.share-hero-section) .hp-listing__action--favorite {
    position: absolute;
    top: 16px;
    right: 16px;
    color: #fff;
    font-size: 24px;
    z-index: 10;
    background: transparent !important;
    border: none !important;
    text-shadow: 0 2px 4px rgba(0,0,0,0.3);
    padding: 0;
}
.hp-listing--view-block .hp-listing__action--favorite.hp-state--active,
.hp-grid .hp-listing:not(.share-hero-section) .hp-listing__action--favorite.hp-state--active {
    color: var(--v2-accent) !important;
}

/* 6. Mobile Responsiveness */
@media (max-width: 768px) {
    .v2-search-header-container {
        flex-direction: column;
        gap: 12px;
        margin: 20px 0;
    }
    
    .v2-search-pill {
        flex-direction: column;
        border-radius: 20px;
        padding: 12px;
        width: 100%;
    }
    
    .v2-search-pill-keyword {
        border-right: none;
        border-bottom: 1px solid #eee;
        width: 100%;
    }
    
    .v2-search-pill-keyword input,
    .v2-search-pill-location input {
        width: 100%;
    }
    
    .v2-search-pill-btn {
        width: 100%;
        border-radius: 12px;
        margin-top: 12px;
        margin-left: 0;
    }
    
    .v2-filters-btn {
        width: 100%;
        justify-content: center;
    }
}

/* ------------------------------------- */
/* Listing Title Metadata Bar (Airbnb Benchmark) */
/* ------------------------------------- */
.share-listing-meta-bar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 10px;
    font-family: 'Outfit', sans-serif;
    font-size: 15px;
    color: #555555;
}
.share-listing-meta-bar a.share-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #2b2b2b;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.15s ease;
}
.share-listing-meta-bar a.share-meta-item:hover {
    color: #2b2b2b;
    text-decoration: underline;
}
.share-listing-meta-bar .share-meta-star {
    color: #f59e0b;
    font-size: 14px;
}
.share-listing-meta-bar .share-meta-count {
    color: #717171;
    font-weight: 400;
}
.share-listing-meta-bar .share-meta-dot {
    color: #d4d4d4;
    font-weight: bold;
}

/* ------------------------------------- */
/* Hero Gallery Grid (359Share Style)    */
/* ------------------------------------- */
.share-hero-gallery-wrapper {
    margin-top: 20px;
    width: 100%;
}
.share-hero-gallery {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}
.share-hero-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease, filter 0.3s ease;
    cursor: zoom-in;
}
.share-hero-gallery img:hover {
    transform: scale(1.02);
}
.share-hero-gallery-5 {
    display: flex;
    gap: 8px;
    height: 460px;
    border-radius: 16px;
    overflow: hidden;
}
.share-gallery-main {
    flex: 1;
    overflow: hidden;
    position: relative;
    border-radius: 16px 0 0 16px;
}
.share-gallery-side {
    flex: 1;
    display: flex;
    gap: 8px;
}
.share-gallery-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.share-gallery-col img {
    flex: 1;
    height: calc(50% - 4px);
}
.share-gallery-side .share-gallery-col:last-child img:first-child {
    border-radius: 0 16px 0 0;
}
.share-gallery-side .share-gallery-col:last-child img:last-child {
    border-radius: 0 0 16px 0;
}
.share-btn-show-all {
    position: absolute;
    bottom: 20px;
    right: 20px;
    background: #ffffff;
    color: #2b2b2b;
    border: 1px solid #d4d4d4;
    padding: 9px 16px;
    border-radius: var(--share-radius-btn);
    font-family: 'Outfit', sans-serif;
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s ease;
    z-index: 10;
}
.share-btn-show-all:hover {
    background: #fafaf9;
    border-color: #a3a3a3;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
}
.share-hero-gallery-3 {
    display: flex;
    gap: 8px;
    height: 420px;
    border-radius: 16px;
    overflow: hidden;
}
.share-hero-gallery-3 .share-gallery-main {
    flex: 2;
    border-radius: 16px 0 0 16px;
}
.share-hero-gallery-simple {
    display: flex;
    height: 460px;
    max-height: 480px;
    border-radius: 16px;
    overflow: hidden;
    gap: 8px;
}
.share-hero-gallery-simple img {
    flex: 1;
    height: 100%;
    border-radius: 16px;
    object-fit: cover;
}
.share-gallery-desktop {
    display: block;
    width: 100%;
}
.share-gallery-mobile {
    display: none;
}

@media (max-width: 768px) {
    .share-gallery-desktop {
        display: none !important;
    }
    .share-gallery-mobile {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        border-radius: 16px !important;
        overflow: hidden !important;
        background: #2b2b2b !important;
        box-shadow: 0 4px 16px rgba(43, 43, 43, 0.08) !important;
    }
    .share-gallery-mobile__track {
        display: flex !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scroll-behavior: smooth !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .share-gallery-mobile__track::-webkit-scrollbar {
        display: none !important;
    }
    .share-gallery-mobile__slide {
        flex: 0 0 100% !important;
        min-width: 100% !important;
        width: 100% !important;
        height: 290px !important;
        max-height: 290px !important;
        scroll-snap-align: start !important;
        position: relative !important;
        overflow: hidden !important;
    }
    .share-gallery-mobile__slide img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
        border-radius: 0 !important;
    }
    .share-gallery-mobile__counter {
        position: absolute !important;
        bottom: 12px !important;
        right: 12px !important;
        background: rgba(43, 43, 43, 0.72) !important;
        backdrop-filter: blur(8px) !important;
        -webkit-backdrop-filter: blur(8px) !important;
        color: #ffffff !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        padding: 4px 10px !important;
        border-radius: 999px !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 5px !important;
        pointer-events: none !important;
        z-index: 10 !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
    }
    .share-gallery-mobile__all-btn {
        position: absolute !important;
        bottom: 12px !important;
        left: 12px !important;
        background: rgba(255, 255, 255, 0.92) !important;
        backdrop-filter: blur(8px) !important;
        -webkit-backdrop-filter: blur(8px) !important;
        color: #2b2b2b !important;
        border: none !important;
        border-radius: 50% !important;
        width: 34px !important;
        height: 34px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 13px !important;
        cursor: pointer !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
        z-index: 10 !important;
        transition: transform 0.15s ease !important;
    }
    .share-gallery-mobile__all-btn:active {
        transform: scale(0.92) !important;
    }
}

/* ------------------------------------- */
/* Booking Widget (359Share Style)       */
/* Sidebar sticky positioning is defined in section 4 */
.hp-widget--booking-make {
    background: #fff;
    border: 1px solid #ebebeb;
    border-radius: 12px;
    padding: 24px !important;
    box-shadow: 0 6px 16px rgba(0,0,0,0.12) !important;
}
.hp-widget--booking-make .hp-listing__price {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #111 !important;
    margin-bottom: 16px;
    display: block;
}
.hp-widget--booking-make .hp-field--date_range {
    border: 1px solid #b0b0b0 !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    font-size: 16px !important;
    margin-bottom: 24px !important;
    width: 100% !important;
}
.hp-form--booking-make button[type="submit"],
.share-booking-widget .hp-form--booking-make button[type="submit"] {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    padding: 14px 20px !important;
    border-radius: 9999px !important;
    width: 100% !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 6px 20px rgba(242, 187, 99, 0.42) !important;
    transition: all 0.2s ease !important;
}
.hp-form--booking-make button[type="submit"]:hover,
.share-booking-widget .hp-form--booking-make button[type="submit"]:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    color: #1e2022 !important;
    transform: scale(1.02) !important;
    box-shadow: 0 8px 24px rgba(242, 187, 99, 0.55) !important;
}
.hp-listing__action--message {
    border-radius: 9999px !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #1e2022 !important;
    background: #ffffff !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    width: 100% !important;
    padding: 13px 24px !important;
    text-align: center;
    display: block;
    transition: all 0.2s ease !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.02) !important;
}
.hp-listing__action--message:hover {
    background: #f8fafc !important;
    border-color: #cbd5e1 !important;
    color: #1e2022 !important;
    transform: translateY(-1px) !important;
}
    margin-top: 12px;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
}
.hp-listing__action--message:hover {
    background: #fafaf9 !important;
    border-color: #2b2b2b !important;
    color: #2b2b2b !important;
    transform: translateY(-1px);
}

/* ------------------------------------- */
/* Anchor Tabs & Layout (359Share Style) */
/* ------------------------------------- */
html {
    scroll-behavior: smooth;
}
.share-anchor-tabs {
    display: flex;
    gap: 28px;
    border-bottom: 1px solid #ebebeb;
    margin-bottom: 28px;
    position: sticky;
    top: 90px;
    background: #ffffff;
    z-index: 40;
    margin-top: 0 !important;
    margin-left: -36px !important;
    margin-right: -36px !important;
    padding: 12px 36px 0 36px !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
@media (max-width: 768px) {
    .share-anchor-tabs {
        position: static !important;
        top: auto !important;
        gap: 16px !important;
        margin-top: 0 !important;
        margin-left: -16px !important;
        margin-right: -16px !important;
        padding: 8px 16px 12px 16px !important;
        border-bottom: 1px solid #f3f3f3 !important;
        scrollbar-width: none !important;
    }
    .share-anchor-tabs::-webkit-scrollbar {
        display: none !important;
    }
}

/* Airbnb-style Trust & Guarantee Highlights */
.share-highlights-box {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 16px 0 20px 0;
    margin-bottom: 22px;
    border-bottom: 1px solid #f3f3f3;
}
.share-highlight-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}
.share-highlight-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 10px;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    color: #2b2b2b;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    margin-top: 1px;
}
.share-highlight-body {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.share-highlight-body strong {
    font-size: 14.5px;
    font-weight: 600;
    color: #2b2b2b;
}
.share-highlight-body span {
    font-size: 13px;
    color: #717171;
    line-height: 1.4;
}
.share-anchor-tab {
    padding: 12px 0;
    color: #717171;
    font-weight: 600;
    font-size: 15px;
    text-decoration: none !important;
    border: none;
    border-bottom: 2px solid transparent;
    background: transparent;
    font-family: inherit;
    line-height: inherit;
    transition: all 0.2s ease;
    white-space: nowrap;
    cursor: pointer;
    outline: none;
    box-shadow: none;
    margin: 0;
}
.share-anchor-tab:hover,
.share-anchor-tab.active {
    color: #222222;
    border-bottom-color: #222222;
    background: transparent;
}
#listing-description,
#listing-attributes,
#listing-calendar-section,
#listing-location,
#listing-vendor,
#listing-reviews,
#reviews,
.hp-template--listing-view-page .hp-page__content > .hp-section {
    scroll-margin-top: 140px; /* Offset for sticky header + tabs */
}
@media (max-width: 768px) {
    #listing-description,
    #listing-attributes,
    #listing-calendar-section,
    #listing-location,
    #listing-vendor,
    #listing-reviews,
    #reviews,
    .hp-template--listing-view-page .hp-page__content > .hp-section {
        scroll-margin-top: 110px;
    }
}

/* Sub-title metadata bar at top of Main Card (Location, Host, Rating, Category) */
.share-main-card-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px 16px !important;
    padding-top: 4px !important;
    padding-bottom: 20px !important;
    margin-bottom: 22px !important;
    border-bottom: 1px solid #f3f3f3 !important;
    font-size: 15px !important;
    color: #555555 !important;
}
.share-main-meta-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}
.share-main-meta-item strong {
    color: #3d3d3d !important;
}
.share-main-meta-item i {
    font-size: 14px !important;
}
.share-meta-dot {
    color: #d4d4d4 !important;
    font-weight: bold !important;
    user-select: none !important;
}

/* Large Inline Calendar (359Share Style) */
.share-large-calendar-section {
    margin: 36px 0 !important;
    scroll-margin-top: 140px;
}
.share-large-calendar-section input {
    display: none !important;
}
.share-calendar-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 20px;
}
.share-calendar-title {
    font-size: 22px;
    font-weight: 700;
    color: #222;
    margin: 0 0 4px 0;
}
.share-calendar-subtitle {
    font-size: 14px;
    color: #717171;
    margin: 0;
}
.share-clear-dates {
    color: var(--v2-accent, #f1ba62);
    font-weight: 600;
    font-size: 14px;
    text-decoration: underline;
    white-space: nowrap;
    margin-top: 4px;
}
.share-clear-dates:hover {
    color: var(--v2-accent-hover, #e0aa53);
}
/* Flatpickr inline overrides for the large calendar */
#share-inline-calendar,
.share-inline-calendar {
    display: none !important;
}
.share-inline-calendar-wrap {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 16px 0 !important;
}
.share-inline-calendar-wrap .flatpickr-calendar.inline,
.share-large-calendar-section .flatpickr-calendar.inline {
    border: 1px solid #ebebeb !important;
    border-radius: 16px !important;
    padding: 16px !important;
    background: #ffffff !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03) !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    display: block !important;
}
.share-inline-calendar .flatpickr-months {
    margin-bottom: 12px;
}
.share-inline-calendar .flatpickr-month {
    height: 40px;
}
.share-inline-calendar .flatpickr-current-month {
    font-size: 16px;
    font-weight: 600;
}
.share-inline-calendar .flatpickr-day {
    font-size: 14px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%;
}
.share-inline-calendar .flatpickr-day.selected,
.share-inline-calendar .flatpickr-day.startRange,
.share-inline-calendar .flatpickr-day.endRange {
    background: var(--v2-accent, #f1ba62) !important;
    border-color: var(--v2-accent, #f1ba62) !important;
    color: #fff !important;
}
.share-inline-calendar .flatpickr-day.inRange {
    background: rgba(241, 186, 98, 0.15) !important;
    border-color: transparent !important;
    box-shadow: -5px 0 0 rgba(241, 186, 98, 0.15), 5px 0 0 rgba(241, 186, 98, 0.15) !important;
}
.share-inline-calendar .flatpickr-day.today:not(.selected) {
    border-color: var(--v2-accent, #f1ba62) !important;
}
.share-inline-calendar .flatpickr-day.flatpickr-disabled,
.share-inline-calendar .flatpickr-day.flatpickr-disabled:hover,
.share-widget-calendar-popover .flatpickr-day.flatpickr-disabled,
.share-widget-calendar-popover .flatpickr-day.flatpickr-disabled:hover {
    color: #b8bcc2 !important;
    text-decoration: line-through !important;
    background: #f6f7f9 !important;
    border-color: transparent !important;
    cursor: not-allowed !important;
    opacity: 0.7 !important;
}
@media (max-width: 1023px) {
    .share-inline-calendar {
        padding: 16px 10px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .share-inline-calendar .flatpickr-calendar {
        margin: 0 auto !important;
    }
    .share-calendar-header {
        flex-direction: column;
        gap: 8px;
    }
}

/* ==========================================================================
   359SHARE BOOKING WIDGET & PRICE MODAL
   ========================================================================== */

/* 1. Booking Status Badge */
.share-booking-status {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 14px;
    border-radius: 8px;
    font-size: 13.5px;
    font-weight: 600;
    margin-bottom: 16px;
    transition: all 0.25s ease;
}
.share-booking-status .share-status-icon {
    display: inline-flex;
    align-items: center;
    font-size: 14px;
}
.share-status-neutral {
    background-color: #f3f4f6;
    color: #4b5563;
    border: 1px solid #e5e7eb;
}
.share-status-success {
    background-color: #ecfdf5;
    color: #065f46;
    border: 1px solid #a7f3d0;
}
.share-status-warning {
    background-color: #fffbeb;
    color: #92400e;
    border: 1px solid #fde68a;
}

/* Shake animation on invalid attempt */
@keyframes shareShake {
    0%, 100% { transform: translateX(0); }
    20%, 60% { transform: translateX(-6px); }
    40%, 80% { transform: translateX(6px); }
}
.share-shake {
    animation: shareShake 0.5s ease-in-out;
}

/* 2. Price Box */
.share-booking-price-box {
    margin-bottom: 20px;
}
.share-price-display-row {
    display: flex;
    align-items: baseline;
    gap: 6px;
    flex-wrap: wrap;
}
.share-price-amount {
    font-size: 28px;
    font-weight: 800;
    color: #111827;
    letter-spacing: -0.02em;
    line-height: 1.2;
}
.share-price-unit {
    font-size: 15px;
    color: #6b7280;
    font-weight: 500;
}
.share-price-deposit-tag {
    font-size: 13px;
    color: #4b5563;
    font-weight: 500;
    margin-top: 4px;
}
.share-price-details-wrap {
    margin-top: 6px;
}
.share-price-details-link {
    font-size: 13.5px;
    font-weight: 600;
    color: #1f2937;
    text-decoration: underline !important;
    cursor: pointer;
    transition: color 0.15s ease;
}
.share-price-details-link:hover {
    color: var(--v2-accent, #e0aa53);
}

/* 3. Segmented Date & Quantity Picker */
.share-segmented-picker {
    border: 1.5px solid #d1d5db;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 20px;
    background: #ffffff;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.share-segmented-picker:hover {
    border-color: #222222;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
.share-picker-dates-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    cursor: pointer;
    user-select: none;
}
.share-picker-cell {
    padding: 10px 14px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 54px;
    transition: background-color 0.15s ease;
}
.share-picker-cell:hover {
    background-color: #f9fafb;
}
.share-picker-from {
    border-right: 1px solid #e5e7eb;
}
.share-cell-label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: #4b5563;
    text-transform: uppercase;
    line-height: 1;
    margin-bottom: 4px;
}
.share-cell-val {
    font-size: 14px;
    font-weight: 600;
    color: #111827;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.share-picker-qty-row {
    border-top: 1px solid #e5e7eb;
    padding: 10px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.share-qty-control select.share-qty-select {
    font-size: 13.5px;
    font-weight: 600;
    color: #111827;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    padding: 6px 12px;
    background: #f9fafb;
    cursor: pointer;
    outline: none;
    line-height: normal;
}

/* Hide native HivePress booking input fields in sidebar widget */
.share-booking-widget .hp-form--booking-make .hp-form__fields {
    display: none !important;
}
.share-booking-widget .hp-form--booking-make {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.share-booking-widget .hp-form--booking-make .hp-form__footer {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* 4. Constraints List */
.share-booking-constraints {
    margin-bottom: 18px;
    padding: 12px 14px;
    background: #f9fafb;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    border: 1px solid #f0f0f0;
}
.share-constraint-item {
    font-size: 13px;
    color: #4b5563;
    display: flex;
    align-items: center;
    gap: 8px;
    line-height: 1.3;
}
.share-constraint-item i {
    color: #6b7280;
    font-size: 13px;
    width: 16px;
    text-align: center;
}
.share-constraint-item strong {
    color: #111827;
}

/* 6. 359Share Price Details Modal */
.share-price-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
}
.share-price-modal__backdrop {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}
@keyframes shareModalIn {
    from {
        opacity: 0;
        transform: scale(0.96) translateY(8px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}
.share-price-modal__dialog {
    position: relative;
    z-index: 2;
    background: #ffffff;
    border-radius: 16px;
    width: 90%;
    max-width: 440px;
    padding: 28px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2);
    animation: shareModalIn 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}
.share-price-modal__close {
    position: absolute;
    top: 18px;
    right: 18px;
    border: none;
    background: #f3f4f6;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #4b5563;
    transition: all 0.15s ease;
    padding: 0;
}
.share-price-modal__close:hover {
    background: #e5e7eb;
    color: #111827;
}
.share-price-modal__title {
    font-size: 19px;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 20px;
    color: #111827;
}
.share-price-modal__content {
    display: flex;
    flex-direction: column;
}
.share-price-modal__row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    font-size: 14px;
    color: #374151;
}
.share-price-modal__row--total {
    font-size: 16px;
    font-weight: 700;
    color: #111827;
    margin-top: 14px;
    margin-bottom: 18px;
}
.share-price-modal__divider {
    border: none;
    border-top: 1px solid #e5e7eb;
    margin: 10px 0;
}
.share-price-modal__note {
    font-size: 12.5px;
    color: #4b5563;
    line-height: 1.5;
    background: #f9fafb;
    padding: 12px 14px;
    border-radius: 10px;
    display: flex;
    gap: 8px;
    align-items: flex-start;
    border: 1px solid #f0f0f0;
}
.share-price-modal__note i {
    color: #10b981;
    font-size: 14px;
    margin-top: 2px;
    flex-shrink: 0;
}
.share-modal-info-tooltip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #e5e7eb;
    font-size: 11px;
    font-weight: 700;
    color: #4b5563;
    margin-left: 6px;
    cursor: help;
}

/* Discreet Report Link below Booking Card */
.share-report-wrap {
    text-align: center;
    margin-top: 14px;
    margin-bottom: 24px;
}
.share-report-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #717171;
    text-decoration: underline;
    transition: color 0.2s ease;
}
.share-report-link:hover {
    color: #222222;
    text-decoration: underline;
}

/* Review Submit Action in Reviews Section */
.hp-section--reviews .hp-section__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}
.share-reviews-header-action {
    margin-bottom: 20px;
    display: flex;
    justify-content: flex-end;
}
.share-write-review-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: #ffffff;
    border: 1.5px solid #222222;
    border-radius: var(--share-radius-btn);
    font-size: 14px;
    font-weight: 600;
    color: #222222;
    text-decoration: none !important;
    transition: all 0.2s ease;
}
.share-write-review-btn:hover {
    background: #222222;
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.share-write-review-btn i {
    color: var(--v2-accent, #f1ba62);
}

/* ==========================================================================
   359SHARE WIDGET CALENDAR POPOVER & CANCELLATION STYLES
   ========================================================================== */

/* Segmented Picker Container (Anchor for Popover) */
.share-segmented-picker-container {
    position: relative;
}

/* Widget Calendar Dropdown Popover */
.share-widget-calendar-popover {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: 16px;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.16);
    z-index: 1000;
    padding: 16px;
    box-sizing: border-box;
    animation: shareModalIn 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.share-popover-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f3f3f3;
}

.share-popover-title-wrap {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.share-popover-title {
    font-size: 15px;
    font-weight: 700;
    color: #3d3d3d;
}

.share-popover-sub {
    font-size: 12px;
    color: #717171;
    font-weight: 500;
}

.share-popover-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

.share-popover-clear {
    border: none;
    background: transparent;
    font-size: 12.5px;
    font-weight: 600;
    color: #717171;
    text-decoration: underline;
    cursor: pointer;
    padding: 2px 0;
}

.share-popover-clear:hover {
    color: #2b2b2b;
}

.share-popover-close {
    border: none;
    background: #f3f3f3;
    font-size: 18px;
    line-height: 1;
    color: #717171;
    cursor: pointer;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: all 0.15s ease;
}

.share-popover-close:hover {
    background: #ebebeb;
    color: #2b2b2b;
}

/* Popover Flatpickr calendar overrides */
#share-widget-flatpickr-mount,
.share-popover-calendar-mount {
    width: 100%;
}

#share-widget-flatpickr-mount .flatpickr-calendar,
.share-popover-calendar-mount .flatpickr-calendar {
    box-shadow: none !important;
    border: none !important;
    width: 100% !important;
    max-width: 100% !important;
    background: transparent !important;
}

#share-widget-flatpickr-mount .flatpickr-months,
.share-popover-calendar-mount .flatpickr-months {
    margin-bottom: 6px;
}

#share-widget-flatpickr-mount .flatpickr-current-month,
.share-popover-calendar-mount .flatpickr-current-month {
    font-size: 14px;
    font-weight: 700;
}

#share-widget-flatpickr-mount .flatpickr-day,
.share-popover-calendar-mount .flatpickr-day {
    height: 34px;
    line-height: 34px;
    font-size: 13px;
    border-radius: 50%;
}

#share-widget-flatpickr-mount .flatpickr-day.selected,
#share-widget-flatpickr-mount .flatpickr-day.startRange,
#share-widget-flatpickr-mount .flatpickr-day.endRange,
.share-popover-calendar-mount .flatpickr-day.selected,
.share-popover-calendar-mount .flatpickr-day.startRange,
.share-popover-calendar-mount .flatpickr-day.endRange {
    background: var(--v2-accent, #f1ba62) !important;
    border-color: var(--v2-accent, #f1ba62) !important;
    color: #fff !important;
}

#share-widget-flatpickr-mount .flatpickr-day.inRange,
.share-popover-calendar-mount .flatpickr-day.inRange {
    background: rgba(241, 186, 98, 0.15) !important;
    border-color: transparent !important;
}

#share-widget-flatpickr-mount .flatpickr-day.today:not(.selected),
.share-popover-calendar-mount .flatpickr-day.today:not(.selected) {
    border-color: var(--v2-accent, #f1ba62) !important;
}

/* Cancellation Policy Section on Single Listing */
.share-cancellation-section {
    margin: 40px 0;
    scroll-margin-top: 140px;
}

.share-cancellation-title {
    font-size: 20px;
    font-weight: 700;
    color: #111827;
    margin: 0 0 16px 0;
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: 'Roboto Slab', serif;
}

.share-cancellation-title i {
    color: #16a34a;
    font-size: 18px;
}

.share-cancellation-card {
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: 12px;
    padding: 20px 22px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03);
}

.share-cancellation-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.share-cancellation-policy-name {
    font-size: 16px;
    font-weight: 700;
    color: #2b2b2b;
}

.share-cancellation-pill {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    color: #166534;
    border-radius: 20px;
    font-size: 12.5px;
    font-weight: 600;
}

.share-cancellation-desc {
    font-size: 14.5px;
    color: #555555;
    line-height: 1.6;
    margin: 0;
}

/* Cancellation Policy Line Badge inside Booking Widget */
.share-cancellation-badge-widget {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 8px;
    margin-bottom: 16px;
    font-size: 13px;
    color: #166534;
    line-height: 1.3;
}

.share-cancellation-badge-widget i {
    color: #16a34a;
    font-size: 14px;
    flex-shrink: 0;
}

.share-cancellation-badge-widget strong {
    color: #166534;
    font-weight: 700;
}

/* ==========================================================================
   359SHARE FLOATING STICKY BOOKING BAR (Airbnb / Vrbo Style for Mobile & Tablet)
   ========================================================================== */
.share-mobile-booking-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 74px;
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.08);
    z-index: 99998;
    display: flex;
    align-items: center;
}

@media (min-width: 1024px) {
    .share-mobile-booking-bar {
        display: none !important;
    }
}

.share-mbar-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 0 16px;
    box-sizing: border-box;
    gap: 12px;
}

.share-mbar-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    cursor: pointer;
    user-select: none;
    gap: 2px;
    min-width: 0;
    flex-shrink: 1;
}

.share-mbar-price-wrap {
    display: flex;
    align-items: baseline;
    gap: 4px;
    white-space: nowrap;
}

.share-mbar-price {
    font-size: 18px;
    font-weight: 800;
    color: #111827;
    letter-spacing: -0.02em;
    line-height: 1.2;
    white-space: nowrap;
}

.share-mbar-unit {
    font-size: 12px;
    font-weight: 500;
    color: #6b7280;
    white-space: nowrap;
}

.share-mbar-dates {
    font-size: 12px;
    font-weight: 600;
    color: #4b5563;
    display: flex;
    align-items: center;
    gap: 5px;
    text-decoration: underline;
    text-underline-offset: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.share-mbar-dates i {
    font-size: 11px;
    color: #9ca3af;
    flex-shrink: 0;
}

.share-mbar-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--v2-accent, #f1ba62);
    color: #111827;
    font-size: 14.5px;
    font-weight: 700;
    padding: 10px 20px;
    border-radius: var(--share-radius-btn);
    border: none;
    cursor: pointer;
    box-shadow: 0 3px 12px rgba(241, 186, 98, 0.35);
    transition: all 0.2s ease;
    white-space: nowrap;
    flex-shrink: 0;
}

/* ==========================================================================
   ⭐ AIRBNB-STYLE MOBILE DATEPICKER BOTTOM SHEET MODAL
   ========================================================================== */
.share-mobile-dates-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999999;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.share-dates-modal__backdrop {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.55);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    opacity: 0;
    transition: opacity 0.25s ease;
}

.share-dates-modal__dialog {
    position: relative;
    width: 100%;
    max-width: 500px;
    background: #ffffff;
    border-radius: 24px 24px 0 0;
    box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.25);
    z-index: 2;
    display: flex;
    flex-direction: column;
    max-height: 88vh;
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    box-sizing: border-box;
}

.share-mobile-dates-modal.is-open .share-dates-modal__backdrop {
    opacity: 1;
}

.share-mobile-dates-modal.is-open .share-dates-modal__dialog {
    transform: translateY(0);
}

.share-dates-modal__handle-bar {
    width: 44px;
    height: 5px;
    background: #ebebeb;
    border-radius: 999px;
    margin: 12px auto 4px;
    flex-shrink: 0;
}

.share-dates-modal__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 14px 20px 14px;
    border-bottom: 1px solid #f3f3f3;
    flex-shrink: 0;
}

.share-dates-modal__price-pill {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 4px;
}

.share-dates-modal__price-amount {
    font-size: 20px;
    font-weight: 800;
    color: #2b2b2b;
    letter-spacing: -0.02em;
    line-height: 1.2;
}

.share-dates-modal__price-unit {
    font-size: 13px;
    font-weight: 500;
    color: #717171;
}

.share-dates-modal__deposit-badge {
    font-size: 11.5px;
    font-weight: 600;
    color: #059669;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    padding: 2px 8px;
    border-radius: 999px;
    margin-left: 4px;
}

.share-dates-modal__subtitle {
    font-size: 12.5px;
    color: #717171;
    margin: 4px 0 0 !important;
    font-weight: 500;
}

.share-dates-modal__close {
    background: #f3f3f3;
    border: none;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    font-size: 20px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #555555;
    cursor: pointer;
    transition: all 0.2s ease;
    padding: 0;
    margin-left: 12px;
    flex-shrink: 0;
}

.share-dates-modal__close:hover {
    background: #ebebeb;
    color: #2b2b2b;
}

.share-dates-modal__body {
    flex: 1;
    overflow-y: auto;
    padding: 16px 20px 24px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    -webkit-overflow-scrolling: touch;
}

/* Mobile Segmented Picker Pills */
.share-m-segmented-picker {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fafaf9;
    border: 1.5px solid #ebebeb;
    border-radius: 14px;
    padding: 9px 16px;
    transition: border-color 0.2s ease;
}

.share-m-picker-cell {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.share-m-cell-label {
    font-size: 11px;
    text-transform: uppercase;
    font-weight: 700;
    color: #a3a3a3;
    letter-spacing: 0.5px;
}

.share-m-cell-val {
    font-size: 14px;
    font-weight: 700;
    color: #717171;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.share-m-picker-cell.has-date .share-m-cell-val {
    color: #2b2b2b;
}

.share-m-picker-arrow {
    color: #d4d4d4;
    font-size: 13px;
    padding: 0 10px;
    flex-shrink: 0;
}

/* Mobile Quantity Row */
.share-m-qty-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 12px;
    padding: 10px 14px;
}

.share-m-qty-label {
    font-size: 13.5px;
    font-weight: 600;
    color: #404040;
    display: flex;
    align-items: center;
    gap: 8px;
}

.share-m-qty-label i {
    color: #f2bb63;
}

.share-m-qty-select {
    background: #ffffff;
    border: 1px solid #d4d4d4;
    border-radius: 8px;
    padding: 6px 12px;
    font-size: 13.5px;
    font-weight: 600;
    color: #2b2b2b;
    outline: none;
    cursor: pointer;
}

/* Mobile Flatpickr Calendar Wrapper */
.share-m-calendar-wrapper {
    display: flex;
    justify-content: center;
    width: 100%;
}

.share-m-calendar-wrapper .flatpickr-calendar {
    box-shadow: none !important;
    border: 1px solid #f3f3f3 !important;
    border-radius: 16px !important;
    width: 100% !important;
    max-width: 340px !important;
    margin: 0 auto !important;
    background: #ffffff !important;
}

/* Mobile Constraints Block */
.share-m-constraints {
    background: #fafaf9;
    border-radius: 14px;
    padding: 12px 14px;
    border: 1px solid #f3f3f3;
}

.share-m-constraints-title {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #717171;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.share-m-constraints-title i {
    color: #f2bb63;
}

.share-m-constraints-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    gap: 8px;
}

.share-m-constraint-chip {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #404040;
    background: #ffffff;
    border: 1px solid #ebebeb;
    padding: 6px 10px;
    border-radius: 8px;
    font-weight: 500;
}

.share-m-constraint-chip i {
    color: #a3a3a3;
    font-size: 12px;
}

.share-m-constraint-chip strong {
    color: #2b2b2b;
    font-weight: 700;
}

/* Mobile Cancellation Card */
.share-m-cancellation-card {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 12px;
    padding: 12px 14px;
}

.share-m-cancellation-header {
    font-size: 13px;
    font-weight: 700;
    color: #166534;
    display: flex;
    align-items: center;
    gap: 8px;
}

.share-m-cancellation-header i {
    color: #16a34a;
}

.share-m-cancellation-text {
    font-size: 12px;
    color: #15803d;
    margin: 4px 0 0 !important;
    line-height: 1.4;
}

/* Mobile Live Price Breakdown */
.share-m-price-breakdown {
    background: #ffffff;
    border: 1.5px solid #ebebeb;
    border-radius: 14px;
    padding: 14px 16px;
    box-shadow: 0 4px 12px rgba(43, 43, 43, 0.03);
}

.share-m-breakdown-title {
    font-size: 14px;
    font-weight: 800;
    color: #2b2b2b;
    margin-bottom: 10px;
}

.share-m-breakdown-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 13px;
    color: #555555;
    margin-bottom: 8px;
}

.share-m-breakdown-label {
    display: flex;
    align-items: center;
    gap: 5px;
}

.share-m-info-icon {
    color: #a3a3a3;
    font-size: 12px;
    cursor: help;
}

.share-m-breakdown-value {
    font-weight: 600;
    color: #3d3d3d;
}

.share-m-breakdown-row--total {
    font-size: 15px;
    font-weight: 800;
    color: #2b2b2b;
    margin-bottom: 0;
    padding-top: 4px;
}

.share-m-breakdown-row--total .share-m-breakdown-value {
    font-size: 16px;
    font-weight: 800;
    color: #2b2b2b;
}

.share-m-breakdown-divider {
    height: 1px;
    background: #ebebeb;
    margin: 10px 0;
}

.share-m-breakdown-guarantee {
    margin-top: 10px;
    font-size: 11.5px;
    line-height: 1.4;
    color: #717171;
    display: flex;
    align-items: flex-start;
    gap: 6px;
    background: #fafaf9;
    padding: 8px 10px;
    border-radius: 8px;
}

.share-m-breakdown-guarantee i {
    color: #10b981;
    font-size: 13px;
    margin-top: 2px;
    flex-shrink: 0;
}

/* Modal Safe Area Footer */
.share-dates-modal__footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px calc(14px + env(safe-area-inset-bottom, 0px));
    border-top: 1px solid #f3f3f3;
    background: #ffffff;
    box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.04);
    flex-shrink: 0;
    gap: 16px;
}

.share-dates-modal__btn-clear {
    background: none;
    border: none;
    font-size: 14px;
    font-weight: 600;
    color: #717171;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
    padding: 8px;
    flex-shrink: 0;
    transition: color 0.2s ease;
}

.share-dates-modal__btn-clear:hover {
    color: #2b2b2b;
}

.share-m-calendar-notice {
    background: #fffbeb;
    border: 1px solid #fde68a;
    color: #92400e;
    font-size: 13px;
    font-weight: 600;
    padding: 10px 14px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: 0 2px 6px rgba(245, 158, 11, 0.12);
}

.share-m-calendar-notice.notice--warning {
    background: #fef2f2;
    border-color: #fecaca;
    color: #b91c1c;
    box-shadow: 0 2px 6px rgba(239, 68, 68, 0.12);
}

.share-m-calendar-notice i {
    font-size: 15px;
    flex-shrink: 0;
}

.share-dates-modal__btn-submit {
    flex: 1;
    background: var(--v2-accent, #f2bb63);
    color: #111827;
    font-family: 'Outfit', sans-serif;
    font-size: 15px;
    font-weight: 800;
    padding: 13px 20px;
    border-radius: 12px;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    text-align: center;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
}

.share-dates-modal__btn-submit.active {
    background: var(--v2-accent, #f2bb63) !important;
    color: #111827 !important;
    cursor: pointer !important;
}

.share-dates-modal__btn-submit.active:hover {
    background: var(--v2-accent-hover, #e0aa53) !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(242, 187, 99, 0.5) !important;
}

.share-dates-modal__btn-submit.disabled,
.share-dates-modal__btn-submit:disabled {
    background: #ebebeb !important;
    color: #a3a3a3 !important;
    cursor: not-allowed !important;
    box-shadow: none !important;
    transform: none !important;
}

/* ==========================================================================
   ⭐ UNIFIED 359SHARE FLATPICKR STYLING (BRAND AMBER GOLD & CLEAR AVAILABILITY)
   ========================================================================== */

/* 1. Next/Prev month days that are AVAILABLE (NOT disabled) - Crisp, bold, clearly clickable! */
.flatpickr-day.nextMonthDay:not(.flatpickr-disabled),
.flatpickr-day.prevMonthDay:not(.flatpickr-disabled) {
    color: #3d3d3d !important;
    font-weight: 600 !important;
    opacity: 0.95 !important;
    cursor: pointer !important;
    background: transparent !important;
}

.flatpickr-day.nextMonthDay:not(.flatpickr-disabled):hover,
.flatpickr-day.prevMonthDay:not(.flatpickr-disabled):hover {
    background: #fef3c7 !important;
    color: #2b2b2b !important;
    border-color: #fde68a !important;
}

/* 2. Truly disabled dates (past dates, booked dates, blocked dates) */
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.prevMonthDay.flatpickr-disabled,
.flatpickr-day.nextMonthDay.flatpickr-disabled {
    color: #d4d4d4 !important;
    text-decoration: line-through !important;
    background: #fafaf9 !important;
    border-color: transparent !important;
    cursor: not-allowed !important;
    opacity: 0.45 !important;
}

/* 3. Today day indicator */
.flatpickr-day.today:not(.selected) {
    border: 1.5px dashed var(--v2-accent, #f2bb63) !important;
    background: #fffbeb !important;
    color: #92400e !important;
    font-weight: 700 !important;
}

/* 4. Selection Range - NO BLUE! 100% Brand Warm Amber Gold */
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
    background: var(--v2-accent, #f2bb63) !important;
    border-color: var(--v2-accent, #f2bb63) !important;
    color: #111827 !important;
    font-weight: 800 !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.4) !important;
}

/* 5. In-Between Selected Range (inRange) */
.flatpickr-day.inRange,
.flatpickr-day.inRange:hover,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.nextMonthDay.inRange {
    background: rgba(242, 187, 99, 0.22) !important;
    border-color: transparent !important;
    color: #111827 !important;
    box-shadow: -5px 0 0 rgba(242, 187, 99, 0.22), 5px 0 0 rgba(242, 187, 99, 0.22) !important;
}

/* 6. Hovering during range selection */
.flatpickr-day:not(.flatpickr-disabled):hover {
    background: #fef3c7 !important;
    border-color: #fde68a !important;
    color: #2b2b2b !important;
}

/* ==========================================================================
   ⭐ HYBRID AIRBNB / LAKE.COM BENCHMARK HEADER (76px GLASSMORPHISM)
   ========================================================================== */

/* Top header wrapper - Sticky Glassmorphism */
.site-header.share-header {
    position: sticky !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 84px !important;
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(16px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
    z-index: 99999 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    transition: background 0.3s ease, box-shadow 0.3s ease !important;
}

/* Adjust top margin for body content so it aligns cleanly under header with zero gap */
html,
html:root,
body,
body.admin-bar,
html.wp-toolbar {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

#wpadminbar {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Ensure .site-container never clips header dropdowns, pills, or modals */
.site-container {
    overflow: visible !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 100vh !important;
}

/* Push footer down cleanly on pages with little or no content (Sticky Footer) */
.site-content {
    flex: 1 0 auto !important;
    min-height: 480px;
}

/* Inner Container */
.share-header__container {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    padding: 0 32px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

/* 1. Left Zone: Brand Logo */
.share-header__brand {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.share-header__logo-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.share-header__logo-link:hover {
    opacity: 0.95;
    transform: scale(1.02);
}

.share-header__logo-img {
    height: 70px;
    width: auto;
    max-width: 260px;
    object-fit: contain;
    display: block;
}

/* 2. Center Zone: Navigation */
.share-header__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
}

/* 2b. Center Zone: Search Capsule + Filters in Header on Listings Pages */
/* 2b. Center Zone: Unified Luxury Search Capsule + Filters in Header on Listings Pages */
.share-header__search-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    flex: 1 1 auto !important;
    max-width: 880px !important;
    margin: 0 auto !important;
}

/* The Continuous Luxury Pill Capsule */
.share-header__search-wrap .hp-form--listing-search {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 9999px !important;
    padding: 0 5px 0 16px !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 750px !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
    height: 48px !important;
    max-height: 48px !important;
    position: relative !important;
    overflow: visible !important;
    flex-wrap: nowrap !important;
}

.share-header__search-wrap .hp-form--listing-search:hover {
    border-color: #cbd5e1 !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12) !important;
}

.share-header__search-wrap .hp-form--listing-search:focus-within {
    border-color: #f2bb63 !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.22), 0 4px 16px rgba(0, 0, 0, 0.1) !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-row,
.share-header__search-wrap .hp-form--listing-search .hp-form__fields {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Base style for every field in header search */
.share-header__search-wrap .hp-form--listing-search .hp-form__field {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}

/* Hairline dividers between segments (between 1&2, 2&3, 3&4) */
.share-header__search-wrap .hp-form--listing-search .hp-form__field--keyword::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--keywords::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--search::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name="_keyword"])::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name="s"])::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--location::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name="_location"])::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name="location"])::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date-range::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--dates::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name="_date"])::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name*="date"])::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:nth-child(1)::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:nth-child(2)::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:nth-child(3)::after {
    content: "" !important;
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    height: 24px !important;
    width: 1px !important;
    background: #e2e8f0 !important;
    pointer-events: none !important;
    display: block !important;
    opacity: 1 !important;
    z-index: 10 !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field--select::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--category::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(select[name="_category"])::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--submit::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__footer::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:nth-child(4)::after,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:nth-child(5)::after {
    display: none !important;
    content: none !important;
}

/* 1. Keywords field (s) - Generous width, no truncation */
.share-header__search-wrap .hp-form--listing-search .hp-form__field--keyword,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--keywords,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--search,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name="_keyword"]),
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name="s"]),
.share-header__search-wrap .hp-form--listing-search .hp-form__field:nth-child(1) {
    flex: 1.15 !important;
    min-width: 135px !important;
    padding-left: 0 !important;
    padding-right: 12px !important;
}

/* 2. Location field (location) */
.share-header__search-wrap .hp-form--listing-search .hp-form__field--location,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name="_location"]),
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name="location"]),
.share-header__search-wrap .hp-form--listing-search .hp-form__field:nth-child(2) {
    flex: 1.05 !important;
    min-width: 120px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    position: relative !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field--location .hp-field--location {
    position: relative !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field--location input {
    padding-right: 24px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field a.hp-field__icon--locate,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--location a {
    position: absolute !important;
    right: 4px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #94a3b8 !important;
    z-index: 5 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    width: 20px !important;
    height: 20px !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field a.hp-field__icon--locate i,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--location a i {
    display: none !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field a.hp-field__icon--locate::before,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--location a::before {
    content: "\f3c5" !important;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    font-size: 13px !important;
    color: #94a3b8 !important;
    transition: color 0.18s ease !important;
    display: inline-block !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field a.hp-field__icon--locate:hover::before,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--location a:hover::before {
    color: #f2bb63 !important;
}

/* 3. Dates field (_dates[]) - Accommodates full range with 'до' and sleek 'X' */
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date-range,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--dates,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name="_date"]),
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(input[name*="date"]),
.share-header__search-wrap .hp-form--listing-search .hp-form__field:nth-child(3) {
    flex: 1.8 !important;
    min-width: 245px !important;
    padding-left: 12px !important;
    padding-right: 8px !important;
    position: relative !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field--date .hp-field-container,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date .hp-field-date-range,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date-range .hp-field-date-range,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date-range .hp-field--date {
    position: relative !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field--date input,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date-range input,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--dates input,
.share-header__search-wrap .hp-form--listing-search input[name*="_dates"],
.share-header__search-wrap .hp-form--listing-search input[name*="date"] {
    padding-right: 22px !important;
    padding-left: 0 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    font-size: 12.5px !important;
    letter-spacing: -0.025em !important;
    color: #1e2022 !important;
    font-weight: 500 !important;
    width: 100% !important;
    min-width: 0 !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field--date a,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date-range a,
.share-header__search-wrap .hp-form--listing-search .hp-field-date-range a {
    position: absolute !important;
    right: 4px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    background: #f1f5f9 !important;
    color: #64748b !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    z-index: 5 !important;
    transition: all 0.15s ease !important;
    text-decoration: none !important;
    border: none !important;
    box-shadow: none !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field--date a:hover,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date-range a:hover,
.share-header__search-wrap .hp-form--listing-search .hp-field-date-range a:hover {
    background: #e2e8f0 !important;
    color: #0f172a !important;
    transform: translateY(-50%) scale(1.08) !important;
}

.share-header__search-wrap .hp-form--listing-search .hp-form__field--date input:placeholder-shown ~ a,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--date-range input:placeholder-shown ~ a,
.share-header__search-wrap .hp-form--listing-search .hp-field-date-range input:placeholder-shown ~ a {
    display: none !important;
}

/* 4. Category field (_category) - Airbnb Popover Trigger */
.share-header__search-wrap .hp-form--listing-search .hp-form__field--category,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--select,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:has(select[name="_category"]),
.share-header__search-wrap .hp-form--listing-search .hp-form__field:nth-child(4) {
    flex: 1.25 !important;
    min-width: 145px !important;
    padding-left: 12px !important;
    padding-right: 8px !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
}

.share-header__search-wrap .hp-form--listing-search .select2-container {
    display: none !important;
}

.share-header__search-wrap .hp-form--listing-search select[name="_category"] {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
}

.share-header__search-wrap .share-category-trigger-display {
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: #1e2022 !important;
    padding: 0 20px 0 0 !important;
    width: 100% !important;
    height: 38px !important;
    line-height: 38px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

.share-header__search-wrap .share-category-trigger-display::after {
    content: "" !important;
    position: absolute !important;
    right: 4px !important;
    top: 50% !important;
    transform: translateY(-60%) rotate(45deg) !important;
    width: 6px !important;
    height: 6px !important;
    border-right: 2px solid #64748b !important;
    border-bottom: 2px solid #64748b !important;
    transition: transform 0.2s ease !important;
}

.share-header__search-wrap .hp-form__field--select.is-open .share-category-trigger-display::after,
.share-header__search-wrap .hp-form__field--category.is-open .share-category-trigger-display::after {
    transform: translateY(-30%) rotate(-135deg) !important;
}

.share-header__search-wrap .share-category-popover {
    position: absolute !important;
    top: calc(100% + 12px) !important;
    right: -45px !important;
    width: 580px !important;
    max-width: 94vw !important;
    background: #ffffff !important;
    border-radius: 20px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2), 0 4px 16px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid #e2e8f0 !important;
    padding: 18px 20px !important;
    z-index: 999999 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

/* Common input styles */
.share-header__search-wrap .hp-form--listing-search input {
    border: none !important;
    background: transparent !important;
    background-color: transparent !important;
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: #1e2022 !important;
    padding: 0 !important;
    width: 100% !important;
    height: 38px !important;
    line-height: 38px !important;
    box-shadow: none !important;
    outline: none !important;
    box-sizing: border-box !important;
}

.share-header__search-wrap .hp-form--listing-search input::placeholder {
    color: #64748b !important;
    font-weight: 400 !important;
}

.share-header__search-wrap .hp-form--listing-search label {
    display: none !important;
}

/* 5. Circular Accent Submit Button */
.share-header__search-wrap .hp-form--listing-search .hp-form__footer,
.share-header__search-wrap .hp-form--listing-search .hp-form__field--submit,
.share-header__search-wrap .hp-form--listing-search .hp-form__field:last-child {
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    flex: none !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
}

.share-header__search-wrap .hp-form--listing-search button[type="submit"] {
    width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.45) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease !important;
    margin: 0 0 0 2px !important;
    padding: 0 !important;
}

.share-header__search-wrap .hp-form--listing-search button[type="submit"]:hover {
    transform: scale(1.06) !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.6) !important;
}

.share-header__search-wrap .hp-form--listing-search button[type="submit"] span {
    font-size: 0 !important;
    line-height: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.share-header__search-wrap .hp-form--listing-search button[type="submit"] span::before {
    content: '\f002' !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 13.5px !important;
    color: #1e2022 !important;
    line-height: 1 !important;
}

.share-header__search-wrap .hp-form--listing-search button[type="submit"] span::after,
.share-header__search-wrap .hp-form--listing-search button[type="submit"]::before,
.share-header__search-wrap .hp-form--listing-search button[type="submit"]::after {
    display: none !important;
    content: none !important;
}

/* 6. Sleek Filters Button */
.share-header__search-wrap .v2-filters-btn {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 9999px !important;
    padding: 0 18px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    color: #1e2022 !important;
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
}

.share-header__search-wrap .v2-filters-btn:hover {
    background: #fafaf9 !important;
    border-color: #cbd5e1 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.09) !important;
    transform: translateY(-1px) !important;
}

.share-header__search-wrap .v2-filters-btn i {
    color: #d99726 !important;
    font-size: 13px !important;
}

/* Hide duplicate in-page search bar on desktop */
@media (min-width: 992px) {
    .hp-template--listings-view-page .hp-page__header,
    .post-type-archive-hp_listing .hp-page__header,
    .tax-hp_listing_category .hp-page__header {
        display: none !important;
    }
}

/* Hide header search wrap on mobile and tablet */
@media (max-width: 991px) {
    .share-header__search-wrap,
    .site-header .share-header__search-wrap {
        display: none !important;
    }
}

.share-header__menu {
    display: flex;
    align-items: center;
    gap: 6px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.share-header__menu > li {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
}

.share-header__menu > li > a {
    display: inline-flex;
    align-items: center;
    padding: 9px 16px;
    font-family: 'Outfit', sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: #404040;
    text-decoration: none;
    border-radius: 20px;
    transition: all 0.2s ease;
}

.share-header__menu > li > a:hover {
    background: rgba(0, 0, 0, 0.04);
    color: #2b2b2b;
}

.share-header__menu > li.current-menu-item > a,
.share-header__menu > li.current-menu-ancestor > a {
    color: #2b2b2b;
    font-weight: 600;
    background: rgba(0, 0, 0, 0.05);
}

/* Hide HivePress auto-injected items from center nav to avoid duplication */
.share-header__nav .menu-item--user-account,
.share-header__nav .menu-item--user-login,
.share-header__nav .menu-item--listing-submit {
    display: none !important;
}

/* 3. Right Zone: Action Button + User Pill */
.share-header__actions {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-shrink: 0;
}

/* Gold Action Button: "+ Добави обява" */
.share-header__btn-add {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background-color: #f2bb63 !important;
    color: #1a1a1a !important;
    padding: 7px 15px;
    font-family: 'Outfit', sans-serif;
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.01em;
    border-radius: var(--share-radius-btn);
    text-decoration: none !important;
    box-shadow: 0 1px 4px rgba(242, 187, 99, 0.28);
    border: 1px solid rgba(0, 0, 0, 0.05);
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    white-space: nowrap;
}

.share-header__btn-add:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(242, 187, 99, 0.42);
    background-color: #f5c477 !important;
    color: #000000 !important;
}

.share-header__btn-add:active {
    transform: translateY(1px);
    box-shadow: 0 1px 3px rgba(242, 187, 99, 0.2);
}

.share-header__btn-add-icon {
    font-size: 12px;
}

/* User Pill Container */
.share-user-pill-wrap {
    position: relative;
}

/* User Pill Button (Airbnb / lake.com [ ☰ 👤 ]) */
.share-user-pill {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 5px 6px 5px 14px;
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: 32px;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    outline: none;
}

.share-user-pill:hover,
.share-user-pill-wrap:focus-within .share-user-pill {
    border-color: #d4d4d4;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}

.share-user-pill:active {
    transform: scale(0.97);
}

.share-user-pill__bars {
    font-size: 14px;
    color: #555555;
    transition: transform 0.2s ease;
}

.share-user-pill-wrap:focus-within .share-user-pill__bars {
    transform: rotate(90deg);
}

.share-user-pill__avatar-container {
    position: relative;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.share-user-pill__avatar {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    display: block;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.share-user-pill__avatar-placeholder {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #f3f3f3;
    color: #717171;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

.share-user-pill__badge {
    position: absolute;
    top: -4px;
    right: -4px;
    background: #ef4444;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    font-weight: 700;
    min-width: 18px;
    height: 18px;
    line-height: 14px;
    padding: 0 4px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #ffffff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* User Dropdown Menu */
.share-user-dropdown {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    min-width: 250px;
    background: #ffffff;
    border-radius: 16px;
    border: 1px solid #f3f3f3;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.14), 0 2px 8px rgba(0, 0, 0, 0.04);
    padding: 8px 0;
    z-index: 100000 !important;
    max-height: calc(100vh - 100px);
    overflow-y: auto;
    opacity: 0;
    transform: translateY(-8px) scale(0.97);
    pointer-events: none;
    transition: opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1), transform 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.share-user-dropdown.is-open {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

/* User Greeting Section */
.share-user-dropdown__header {
    padding: 12px 20px 10px;
}

.share-user-dropdown__greeting {
    font-size: 12px;
    font-weight: 500;
    color: #a3a3a3;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 2px;
}

.share-user-dropdown__name {
    font-family: 'Outfit', sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #2b2b2b;
    line-height: 1.2;
}

.share-user-dropdown__email {
    font-size: 12px;
    color: #717171;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 210px;
}

.share-user-dropdown__separator {
    height: 1px;
    background: #f3f3f3;
    margin: 6px 0;
}

.share-user-dropdown__section-title {
    padding: 8px 20px 4px;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #a3a3a3;
}

.share-user-dropdown__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.share-user-dropdown__list li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.share-user-dropdown__item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 20px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #404040;
    text-decoration: none;
    transition: background 0.15s ease, color 0.15s ease;
}

.share-user-dropdown__item:hover {
    background: #fafaf9;
    color: #2b2b2b;
}

.share-user-dropdown__icon {
    font-size: 15px;
    color: #717171;
    width: 18px;
    text-align: center;
    flex-shrink: 0;
    transition: color 0.15s ease;
}

.share-user-dropdown__item:hover .share-user-dropdown__icon {
    color: #f2bb63;
}

.share-user-dropdown__item--highlight {
    font-weight: 700;
    color: #2b2b2b;
}

.share-user-dropdown__item--danger {
    color: #dc2626;
}

.share-user-dropdown__item--danger:hover {
    background: #fef2f2;
    color: #b91c1c;
}

.share-user-dropdown__item--danger .share-user-dropdown__icon {
    color: #ef4444;
}

.share-user-dropdown__counter {
    margin-left: auto;
    background: #ef4444;
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 10px;
    line-height: 1;
}

/* ==========================================================================
   📱 MOBILE & TABLET RESPONSIVE ADAPTATION
   ========================================================================== */
@media (max-width: 992px) {
    .share-header__nav {
        display: none !important;
    }
}

@media (max-width: 768px) {
    .site-header.share-header {
        height: 72px !important;
    }

    .share-header__container {
        padding: 0 16px;
        gap: 12px;
    }

    .share-header__logo-img {
        height: 54px;
        max-width: 190px;
    }

    .share-header__btn-add {
        padding: 5px 11px;
        font-size: 12px;
        border-radius: 16px;
        gap: 5px;
    }

    .share-user-pill {
        padding: 4px 5px 4px 10px;
        gap: 8px;
    }

    .share-user-pill__avatar-container,
    .share-user-pill__avatar,
    .share-user-pill__avatar-placeholder {
        width: 30px !important;
        height: 30px !important;
    }

    .share-user-pill__bars {
        font-size: 13px;
    }

    .share-user-dropdown {
        right: 0;
        min-width: 240px;
        max-width: calc(100vw - 32px);
    }
}

.share-mbar-btn:hover {
    background: var(--v2-accent-hover, #e0aa53);
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(241, 186, 98, 0.45);
}

.share-mbar-btn:active {
    transform: translateY(0);
}

.share-mbar-btn.share-mbar-btn--select {
    background: #111827;
    color: #ffffff;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.15);
}

.share-mbar-btn.share-mbar-btn--select:hover {
    background: #1f2937;
    color: #ffffff;
}

@keyframes shareHighlightPulse {
    0% { box-shadow: 0 0 0 0 rgba(241, 186, 98, 0.6); }
    70% { box-shadow: 0 0 0 12px rgba(241, 186, 98, 0); }
    100% { box-shadow: 0 0 0 0 rgba(241, 186, 98, 0); }
}

.share-highlight-pulse {
    animation: shareHighlightPulse 1.2s ease-out;
    border-color: var(--v2-accent, #f1ba62) !important;
}

/* ==========================================================================
   ⭐ AIRBNB-BENCHMARK MODERN FOOTER STYLING
   ========================================================================== */
.site-footer.share-footer {
    background-color: #fafaf9 !important;
    border-top: 1px solid #ebebeb !important;
    padding: 64px 0 0 0 !important;
    color: #404040 !important;
    font-family: 'Outfit', 'Inter', -apple-system, sans-serif !important;
    margin-top: 60px !important;
    position: relative !important;
    z-index: 10 !important;
}

.share-footer__container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 32px;
}

.share-footer__grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1.2fr 1fr;
    gap: 48px;
    padding-bottom: 56px;
}

/* Brand Column */
.share-footer__col--brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.share-footer__logo-link {
    display: inline-block;
    margin-bottom: 12px;
    text-decoration: none;
    transition: transform 0.2s ease;
}

.share-footer__logo-link:hover {
    transform: scale(1.02);
}

.share-footer__logo-img {
    height: 52px;
    width: auto;
    max-width: 200px;
    object-fit: contain;
    display: block;
}

.share-footer__slogan {
    font-size: 17px;
    font-weight: 700;
    color: #2b2b2b;
    letter-spacing: -0.02em;
    margin-bottom: 10px;
    display: inline-block;
    background: linear-gradient(135deg, #2b2b2b 0%, #b45309 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.share-footer__desc {
    font-size: 14px;
    line-height: 1.6;
    color: #717171;
    margin: 0 0 20px 0;
    max-width: 320px;
}

.share-footer__socials {
    display: flex;
    align-items: center;
    gap: 10px;
}

.share-footer__social-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #ebebeb;
    color: #555555;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.share-footer__social-btn:hover {
    background: #f2bb63;
    border-color: #f2bb63;
    color: #000000;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(242, 187, 99, 0.35);
}

/* Nav Columns */
.share-footer__col {
    display: flex;
    flex-direction: column;
}

.share-footer__title {
    font-size: 15px;
    font-weight: 700;
    color: #2b2b2b;
    margin: 0 0 20px 0;
    letter-spacing: -0.01em;
}

.share-footer__links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.share-footer__links li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.share-footer__links a {
    font-size: 14px;
    color: #555555;
    text-decoration: none;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.share-footer__links a:hover {
    color: #2b2b2b;
    transform: translateX(2px);
}

.share-footer__link--highlight {
    font-weight: 600 !important;
    color: #b45309 !important;
}

.share-footer__link--highlight:hover {
    color: #d97706 !important;
}

/* Bottom Sub-Footer */
.share-footer__bottom {
    border-top: 1px solid #ebebeb;
    padding: 24px 0 28px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
    font-size: 13px;
    color: #717171;
}

.share-footer__bottom-left {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.share-footer__dot {
    color: #d4d4d4;
}

.share-footer__bottom-link {
    color: #717171;
    text-decoration: none;
    transition: color 0.2s ease;
}

.share-footer__bottom-link:hover {
    color: #2b2b2b;
    text-decoration: underline;
}

.share-footer__bottom-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

.share-footer__pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: 20px;
    font-weight: 500;
    color: #404040;
    font-size: 13px;
    cursor: default;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

.share-footer__ssl-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #10b981;
    font-weight: 600;
    padding: 6px 12px;
    background: rgba(16, 185, 129, 0.08);
    border-radius: 20px;
}

/* Responsive Footer */
@media (max-width: 1024px) {
    .share-footer__grid {
        grid-template-columns: 1fr 1fr;
        gap: 36px;
    }
}

@media (max-width: 640px) {
    .site-footer.share-footer {
        padding: 44px 0 0 0 !important;
        margin-top: 40px !important;
    }

    .share-footer__container {
        padding: 0 20px;
    }

    .share-footer__grid {
        grid-template-columns: 1fr;
        gap: 32px;
        padding-bottom: 36px;
    }

    .share-footer__desc {
        max-width: 100%;
    }

    .share-footer__bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
        padding: 20px 0 24px 0;
    }

    .share-footer__bottom-right {
        flex-wrap: wrap;
        gap: 8px;
    }
}

/* ==========================================================================
   359SHARE BENCHMARK: AIRBNB & LAKE.COM BORDERLESS LISTING CARDS
   ========================================================================== */
.hp-listing--view-block {
    background: transparent !important;
    border-radius: 0 !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
    position: relative !important;
    height: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

.hp-listing--view-block:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
}

/* Image container */
.hp-listing--view-block .hp-listing__header {
    position: relative !important;
    width: 100% !important;
    padding-top: 66.6% !important; /* 3:2 modern travel aspect ratio */
    overflow: hidden !important;
    background: #ebebeb !important;
    border-radius: 16px !important;
    box-shadow: 0 4px 14px rgba(43, 43, 43, 0.06) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.hp-listing--view-block:hover .hp-listing__header {
    transform: translateY(-4px) !important;
    box-shadow: 0 16px 32px rgba(43, 43, 43, 0.12) !important;
}

.hp-listing--view-block .hp-listing__image,
.hp-listing--view-block .hp-listing__images,
.hp-listing--view-block .hp-listing__image-slider {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}

.hp-listing--view-block .hp-listing__image a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.hp-listing--view-block .hp-listing__image img,
.hp-listing--view-block .hp-listing__images img,
.hp-listing--view-block .hp-listing__image-slider img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.hp-listing--view-block:hover .hp-listing__image img,
.hp-listing--view-block:hover .hp-listing__images img,
.hp-listing--view-block:hover .hp-listing__image-slider img {
    transform: scale(1.05) !important;
}

/* Category Badge (Floating Pill on Image Top-Left) */
.hp-listing--view-block .hp-listing__categories {
    position: absolute !important;
    top: 12px !important;
    left: 12px !important;
    bottom: auto !important;
    right: auto !important;
    width: auto !important;
    height: auto !important;
    z-index: 5 !important;
    margin: 0 !important;
    line-height: 1 !important;
}

.hp-listing--view-block .hp-listing__categories a {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    height: auto !important;
    line-height: 1.2 !important;
    background: rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1px solid rgba(255, 255, 255, 0.6) !important;
    border-radius: 20px !important;
    padding: 4px 10px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12) !important;
    text-decoration: none !important;
    transition: background 0.2s ease, color 0.2s ease !important;
}

.hp-listing--view-block .hp-listing__categories a::before {
    display: none !important;
}

.hp-listing--view-block .hp-listing__categories a:hover {
    background: #2b2b2b !important;
    color: #ffffff !important;
}

/* Rating Badge (Floating Pill on Image Bottom-Right) */
.hp-listing--view-block .hp-listing__rating {
    position: absolute !important;
    bottom: 12px !important;
    right: 12px !important;
    z-index: 5 !important;
    background: rgba(43, 43, 43, 0.85) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    color: #ffffff !important;
    border-radius: 16px !important;
    padding: 3px 8px !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25) !important;
    line-height: 1 !important;
}

.hp-listing--view-block .hp-listing__rating i,
.hp-listing--view-block .hp-listing__rating .fa-star {
    color: #f59e0b !important;
    font-size: 11px !important;
}

/* Card Content (Borderless Text Surface) */
.hp-listing--view-block .hp-listing__content {
    padding: 12px 2px 0 2px !important;
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    background: transparent !important;
}

.hp-listing--view-block .hp-listing__title {
    font-family: 'Outfit', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-size: 15.5px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    color: #2b2b2b !important;
    margin: 0 0 4px 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    min-height: 40px !important;
}

.hp-listing--view-block .hp-listing__title a {
    color: #2b2b2b !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}

.hp-listing--view-block .hp-listing__title a:hover {
    color: #d97706 !important;
}

/* Location */
.hp-listing--view-block .hp-listing__attributes--secondary,
.hp-listing--view-block .hp-listing__location {
    font-size: 13px !important;
    color: #717171 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 0 6px 0 !important;
    font-weight: 400 !important;
}

.hp-listing--view-block .hp-listing__location i,
.hp-listing--view-block .hp-listing__attributes--secondary i {
    color: #a3a3a3 !important;
    font-size: 12px !important;
}

/* Card Footer (Clean text baseline - No border, no box) */
.hp-listing--view-block .hp-listing__footer {
    border-top: none !important;
    padding: 2px 2px 0 2px !important;
    margin: 0 !important;
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    background: transparent !important;
}

.hp-listing--view-block .hp-listing__attributes--primary .hp-listing__attribute {
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    display: inline-flex !important;
    align-items: baseline !important;
    letter-spacing: -0.01em !important;
}

/* Hide message button and non-essential actions on grid cards */
.hp-listing--view-block .hp-listing__action--message,
.hp-listing--view-block .hp-listing__action:not(.hp-listing__action--favorite) {
    display: none !important;
}

/* Position Favorite Heart cleanly on top-right of image */
.hp-listing--view-block .hp-listing__action--favorite {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 6 !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.9) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #555555 !important;
    font-size: 14px !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12) !important;
    transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease !important;
    text-decoration: none !important;
    padding: 0 !important;
    border: none !important;
}

.hp-listing--view-block .hp-listing__action--favorite:hover {
    transform: scale(1.1) !important;
    background: #ffffff !important;
    color: #ef4444 !important;
}

.hp-listing--view-block .hp-listing__action--favorite.hp-state--active,
.hp-listing--view-block .hp-listing__action--favorite--active {
    color: #ef4444 !important;
}

/* ==========================================================================
   SEARCH RESULTS & LISTINGS ARCHIVE - MOBILE LUXURY REDESIGN (AIRBNB PARITY)
   ========================================================================== */
@media (max-width: 768px) {
    .hp-template--listings-view-page .hp-page__header {
        margin: 12px 0 14px 0 !important;
        padding: 0 14px !important;
        gap: 0 !important;
        flex-direction: column !important;
        align-items: stretch !important;
        position: relative !important;
    }

    /* 1. Mobile Search & Filter Control Bar (The Airbnb Pill Header) */
    .share-archive-mobile-bar {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        margin-bottom: 8px !important;
        transition: opacity 0.2s ease, transform 0.2s ease !important;
    }
    .share-archive-mobile-bar.is-hidden {
        display: none !important;
    }

    .share-archive-search-trigger {
        flex: 1 !important;
        height: 52px !important;
        border-radius: 9999px !important;
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04) !important;
        display: flex !important;
        align-items: center !important;
        padding: 0 14px !important;
        gap: 12px !important;
        cursor: pointer !important;
        box-sizing: border-box !important;
        min-width: 0 !important;
        transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease !important;
    }
    .share-archive-search-trigger:active {
        transform: scale(0.98) !important;
        background: #fafaf9 !important;
        border-color: #cbd5e1 !important;
    }

    .share-archive-search-pill-icon {
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
        border-radius: 50% !important;
        background: #f8fafc !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #94a3b8 !important;
        font-size: 13.5px !important;
        flex-shrink: 0 !important;
    }

    .share-archive-search-pill-text {
        flex: 1 !important;
        min-width: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        text-align: left !important;
    }

    .share-archive-search-pill-title {
        font-family: 'Inter', -apple-system, sans-serif !important;
        font-size: 14px !important;
        font-weight: 700 !important;
        color: #1e2022 !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .share-archive-search-pill-sub {
        font-family: 'Inter', -apple-system, sans-serif !important;
        font-size: 12px !important;
        font-weight: 500 !important;
        color: #64748b !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .share-archive-search-pill-edit {
        color: #94a3b8 !important;
        font-size: 13px !important;
        padding-right: 2px !important;
        flex-shrink: 0 !important;
    }

    /* 2. Squircle Filters Button in Mobile Bar */
    .hp-template--listings-view-page .v2-filters-btn,
    .share-archive-mobile-bar .v2-filters-btn {
        width: 52px !important;
        min-width: 52px !important;
        max-width: 52px !important;
        height: 52px !important;
        min-height: 52px !important;
        max-height: 52px !important;
        border-radius: 16px !important;
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #1e2022 !important;
        font-size: 16px !important;
        flex-shrink: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        cursor: pointer !important;
        transition: transform 0.15s ease, background 0.15s ease !important;
    }
    .share-archive-mobile-bar .v2-filters-btn:active {
        transform: scale(0.95) !important;
        background: #fafaf9 !important;
    }

    .hp-template--listings-view-page .hp-page__header > #v2-virtual-filters-btn {
        display: none !important;
    }

    /* 3. The Expandable Luxury Floating Search Card on Archive */
    .hp-template--listings-view-page .hp-page__header .hp-form--listing-search,
    .hp-template--listings-view-page .hp-form--listing-search {
        display: none !important;
        border-radius: 24px !important;
        flex-direction: column !important;
        padding: 10px 14px 14px 14px !important;
        gap: 0 !important;
        background: #ffffff !important;
        box-shadow: 0 16px 40px -8px rgba(0, 0, 0, 0.22), 0 4px 14px rgba(0, 0, 0, 0.06) !important;
        border: 1px solid rgba(0, 0, 0, 0.06) !important;
        width: 100% !important;
        max-width: 440px !important;
        margin: 0 auto 12px auto !important;
        box-sizing: border-box !important;
        animation: shareSearchCardExpand 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }
    .hp-template--listings-view-page .hp-page__header .hp-form--listing-search.is-expanded,
    .hp-template--listings-view-page .hp-form--listing-search.is-expanded {
        display: flex !important;
    }

    @keyframes shareSearchCardExpand {
        from { opacity: 0; transform: translateY(-8px) scale(0.98); }
        to { opacity: 1; transform: translateY(0) scale(1); }
    }

    /* Collapse Header Bar in Expanded Card */
    .share-search-card-collapse-bar {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 4px 6px 10px 6px !important;
        border-bottom: 1px solid #f1f5f9 !important;
        margin-bottom: 4px !important;
    }
    .share-search-collapse-title {
        font-size: 14px !important;
        font-weight: 700 !important;
        color: #1e2022 !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }
    .share-search-collapse-title i {
        color: #f2bb63 !important;
        font-size: 13px !important;
    }
    .share-search-card-close-btn {
        width: 28px !important;
        height: 28px !important;
        border-radius: 50% !important;
        background: #f1f5f9 !important;
        border: none !important;
        color: #64748b !important;
        font-size: 18px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        line-height: 1 !important;
    }

    /* 4 Tactile Rows Inside the Expanded Card */
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__fields,
    .hp-template--listings-view-page .hp-form--listing-search .hp-row {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field,
    .hp-template--listings-view-page .hp-form--listing-search .hp-col-sm-4 {
        margin: 0 !important;
        padding: 0 8px 0 6px !important;
        height: 52px !important;
        min-height: 52px !important;
        background: transparent !important;
        border: none !important;
        border-bottom: 1px solid #f1f5f9 !important;
        border-radius: 12px !important;
        box-shadow: none !important;
        display: flex !important;
        align-items: center !important;
        position: relative !important;
        box-sizing: border-box !important;
        width: 100% !important;
        transition: background 0.15s ease !important;
    }

    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field:focus-within {
        background: #fafaf9 !important;
    }

    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field:last-child,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--category,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--select {
        border-bottom: none !important;
    }

    /* Sector Left Icon Badges */
    /* 1. Keywords */
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--keyword::before,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--keywords::before,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--search::before,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field:has(input[name="s"])::before,
    .hp-template--listings-view-page .hp-form--listing-search .hp-col-sm-4:first-child::before {
        content: '\f002' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 13.5px !important;
        color: #94a3b8 !important;
        margin-right: 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        border-radius: 50% !important;
        background: #f8fafc !important;
        flex-shrink: 0 !important;
    }

    /* 2. Location */
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--location::before,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field:has(input[name="location"])::before,
    .hp-template--listings-view-page .hp-form--listing-search .hp-col-sm-4:nth-child(2)::before {
        content: '\f3c5' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 14px !important;
        color: #f2bb63 !important;
        margin-right: 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        border-radius: 50% !important;
        background: rgba(242, 187, 99, 0.14) !important;
        flex-shrink: 0 !important;
    }

    /* 3. Dates */
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date::before,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date-range::before,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field:has(input[name*="date"])::before {
        content: '\f073' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 14px !important;
        color: #94a3b8 !important;
        margin-right: 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        border-radius: 50% !important;
        background: #f8fafc !important;
        flex-shrink: 0 !important;
    }

    /* 4. Category */
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--select::before,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--category::before,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field:has(select[name="_category"])::before {
        content: '\f00a' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 13.5px !important;
        color: #94a3b8 !important;
        margin-right: 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        border-radius: 50% !important;
        background: #f8fafc !important;
        flex-shrink: 0 !important;
    }

    /* Inputs ergonomics */
    .hp-template--listings-view-page .hp-form--listing-search input {
        border: none !important;
        background: transparent !important;
        font-family: 'Inter', -apple-system, sans-serif !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #1e2022 !important;
        padding: 0 4px !important;
        height: 52px !important;
        line-height: 52px !important;
        width: 100% !important;
        box-shadow: none !important;
        outline: none !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
    }
    .hp-template--listings-view-page .hp-form--listing-search input::placeholder {
        color: #94a3b8 !important;
        font-weight: 400 !important;
    }

    /* Dates field container and input ergonomics */
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date-range,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--dates,
    .hp-template--listings-view-page .hp-form--listing-search .hp-field-date-range,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field:has(input[name*="date"]) {
        position: relative !important;
    }

    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date input,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date-range input,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--dates input,
    .hp-template--listings-view-page .hp-form--listing-search .hp-field-date-range input,
    .hp-template--listings-view-page .hp-form--listing-search input[name*="_dates"],
    .hp-template--listings-view-page .hp-form--listing-search input[name*="date"] {
        padding-right: 32px !important;
        padding-left: 2px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        font-size: 13px !important;
        letter-spacing: -0.025em !important;
        color: #1e2022 !important;
        font-weight: 500 !important;
        width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    @media (max-width: 400px) {
        .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date input,
        .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date-range input,
        .hp-template--listings-view-page .hp-form--listing-search .hp-field-date-range input {
            font-size: 11.5px !important;
            letter-spacing: -0.035em !important;
            padding-right: 24px !important;
        }
    }

    /* Modern Circular Neutral Clear 'X' Badge in Search Results */
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date a,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date-range a,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--dates a,
    .hp-template--listings-view-page .hp-form--listing-search .hp-field-date-range a,
    .hp-template--listings-view-page .hp-form--listing-search .hp-field__reset,
    .hp-template--listings-view-page .hp-form--listing-search a[class*="reset"] {
        position: absolute !important;
        right: 6px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        min-height: 20px !important;
        border-radius: 50% !important;
        background: #f1f5f9 !important;
        color: #64748b !important;
        display: none;
        align-items: center !important;
        justify-content: center !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        cursor: pointer !important;
        z-index: 10 !important;
        transition: all 0.15s ease !important;
        text-decoration: none !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date a:hover,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date-range a:hover,
    .hp-template--listings-view-page .hp-form--listing-search .hp-field-date-range a:hover,
    .hp-template--listings-view-page .hp-form--listing-search .hp-field__reset:hover {
        background: #e2e8f0 !important;
        color: #0f172a !important;
        transform: translateY(-50%) scale(1.08) !important;
    }

    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date.has-dates a,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date-range.has-dates a,
    .hp-template--listings-view-page .hp-form--listing-search .hp-field-date-range.has-dates a,
    .hp-template--listings-view-page .hp-form--listing-search .has-dates .hp-field__reset {
        display: inline-flex !important;
    }

    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date input:placeholder-shown ~ a,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--date-range input:placeholder-shown ~ a,
    .hp-template--listings-view-page .hp-form--listing-search .hp-field-date-range input:placeholder-shown ~ a,
    .hp-template--listings-view-page .hp-form--listing-search input:placeholder-shown ~ .hp-field__reset {
        display: none !important;
    }

    /* GPS Location pin */
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--location a {
        position: absolute !important;
        right: 4px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 32px !important;
        height: 32px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #94a3b8 !important;
        text-decoration: none !important;
        cursor: pointer !important;
        z-index: 5 !important;
        border-radius: 50% !important;
    }

    /* Category display */
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--category {
        display: flex !important;
    }
    .hp-template--listings-view-page .hp-form--listing-search .share-category-trigger-display {
        border: none !important;
        background: transparent !important;
        font-family: 'Inter', -apple-system, sans-serif !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #1e2022 !important;
        padding: 0 28px 0 4px !important;
        height: 52px !important;
        line-height: 52px !important;
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        cursor: pointer !important;
        position: relative !important;
        box-sizing: border-box !important;
    }
    .hp-template--listings-view-page .hp-form--listing-search .share-category-trigger-display::after {
        content: "" !important;
        position: absolute !important;
        right: 8px !important;
        top: 50% !important;
        transform: translateY(-60%) rotate(45deg) !important;
        width: 7px !important;
        height: 7px !important;
        border-right: 2px solid #64748b !important;
        border-bottom: 2px solid #64748b !important;
        transition: transform 0.25s ease !important;
    }

    /* Full-width Warm Gold Submit Button */
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__footer,
    .hp-template--listings-view-page .hp-form--listing-search .hp-form__field--submit {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
    }
    .hp-template--listings-view-page .hp-form--listing-search button[type="submit"] {
        width: 100% !important;
        height: 52px !important;
        min-height: 52px !important;
        border-radius: 16px !important;
        margin-top: 10px !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        letter-spacing: -0.01em !important;
        background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
        color: #1e2022 !important;
        border: none !important;
        box-shadow: 0 6px 20px rgba(242, 187, 99, 0.42) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px !important;
        cursor: pointer !important;
        transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
    }
    .hp-template--listings-view-page .hp-form--listing-search button[type="submit"]:hover {
        background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
        transform: scale(1.02) !important;
        box-shadow: 0 8px 22px rgba(242, 187, 99, 0.55) !important;
        color: #1e2022 !important;
    }
    .hp-template--listings-view-page .hp-form--listing-search button[type="submit"]:active {
        transform: scale(0.98) !important;
        box-shadow: 0 2px 8px rgba(242, 187, 99, 0.3) !important;
    }
    .hp-template--listings-view-page .hp-form--listing-search button[type="submit"] span {
        font-size: 16px !important;
        color: #1e2022 !important;
        display: inline-flex !important;
        align-items: center !important;
        line-height: 1 !important;
    }
    .hp-template--listings-view-page .hp-form--listing-search button[type="submit"] span::before {
        content: '\f002' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 15px !important;
        margin-right: 8px !important;
        display: inline-block !important;
    }

    /* 4. Topbar & Counts Layout (Mobile) */
    .hp-template--listings-view-page .hp-page__topbar,
    .post-type-archive-hp_listing .hp-page__topbar,
    .hp-page__topbar {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 10px 14px !important;
        margin: 0 0 16px 0 !important;
        background: #ffffff !important;
        border: 1px solid #f1f5f9 !important;
        border-radius: 14px !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
        gap: 8px !important;
    }
    .hp-template--listings-view-page .hp-page__topbar .hp-result-count,
    .hp-template--listings-view-page .hp-page__topbar .hp-page__counts,
    .hp-result-count {
        font-size: 13px !important;
        font-weight: 600 !important;
        color: #475569 !important;
        text-transform: none !important;
        letter-spacing: 0 !important;
        margin: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
    }
    .hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort,
    .hp-form--listing-sort {
        margin: 0 !important;
    }
    .hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort label,
    .hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort .hp-field__label,
    .hp-form--listing-sort label {
        display: none !important;
    }
    .hp-form--listing-sort .select2-container .select2-selection--single,
    .hp-template--listings-view-page .hp-form--listing-sort .select2-container .select2-selection--single {
        height: 36px !important;
        padding: 0 30px 0 12px !important;
        border-radius: 9999px !important;
        border: 1.5px solid #e2e8f0 !important;
        background-color: #f8fafc !important;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
    }
    .hp-form--listing-sort .select2-container .select2-selection__rendered,
    .hp-template--listings-view-page .hp-form--listing-sort .select2-container .select2-selection__rendered {
        font-size: 12.5px !important;
        font-weight: 600 !important;
        color: #1e2022 !important;
        line-height: 33px !important;
    }
    .hp-form--listing-sort .select2-container .select2-selection__arrow,
    .hp-template--listings-view-page .hp-form--listing-sort .select2-container .select2-selection__arrow {
        height: 33px !important;
        right: 8px !important;
    }
    .hp-template--listings-view-page .hp-page__topbar .hp-form--listing-sort select {
        height: 36px !important;
        padding: 0 30px 0 12px !important;
        border-radius: 9999px !important;
        border: 1.5px solid #e2e8f0 !important;
        background-color: #f8fafc !important;
        font-size: 12.5px !important;
        font-weight: 600 !important;
        color: #1e2022 !important;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
    }

    /* 5. Mobile Listing Cards */
    .hp-template--listings-view-page .hp-grid__item {
        padding: 0 14px !important;
        margin-bottom: 22px !important;
        box-sizing: border-box !important;
    }
    .hp-template--listings-view-page .hp-listing--view-block {
        border-radius: 20px !important;
        overflow: hidden !important;
        background: #ffffff !important;
        box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06) !important;
        border: 1px solid #f1f5f9 !important;
        transition: transform 0.15s ease !important;
    }
    .hp-template--listings-view-page .hp-listing--view-block:active {
        transform: scale(0.99) !important;
    }
    .hp-template--listings-view-page .hp-listing__header {
        position: relative !important;
        overflow: hidden !important;
        border-radius: 20px 20px 0 0 !important;
    }
    .hp-template--listings-view-page .hp-listing__image img {
        aspect-ratio: 16 / 10 !important;
        width: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }
    .hp-template--listings-view-page .hp-listing__content {
        padding: 14px 16px 16px 16px !important;
    }
    .hp-template--listings-view-page .hp-listing__title {
        font-size: 16px !important;
        font-weight: 700 !important;
        color: #1e2022 !important;
        line-height: 1.35 !important;
        margin-bottom: 6px !important;
    }
    .hp-template--listings-view-page .hp-listing__title a {
        color: #1e2022 !important;
        text-decoration: none !important;
    }

    /* 6. Filter Modal Mobile Enhancements */
    #listing_filter_modal .hp-modal__content,
    .hp-modal--listing-filter .hp-modal__content,
    .v2-filter-modal .hp-modal__content {
        border-radius: 24px !important;
        padding: 22px 20px !important;
        max-width: 92vw !important;
        box-shadow: 0 20px 60px rgba(0, 0, 0, 0.28) !important;
    }
    #listing_filter_modal input[type="number"]::-webkit-inner-spin-button,
    #listing_filter_modal input[type="number"]::-webkit-outer-spin-button,
    .hp-modal--listing-filter input[type="number"]::-webkit-inner-spin-button,
    .hp-modal--listing-filter input[type="number"]::-webkit-outer-spin-button,
    .v2-filter-modal input[type="number"]::-webkit-inner-spin-button,
    .v2-filter-modal input[type="number"]::-webkit-outer-spin-button {
        -webkit-appearance: none !important;
        margin: 0 !important;
    }
    #listing_filter_modal input[type="number"],
    .hp-modal--listing-filter input[type="number"],
    .v2-filter-modal input[type="number"] {
        -moz-appearance: textfield !important;
        appearance: none !important;
        border-radius: 12px !important;
        height: 46px !important;
        border: 1px solid #e2e8f0 !important;
        background: #f8fafc !important;
        font-size: 15px !important;
        font-weight: 600 !important;
        color: #1e2022 !important;
        text-align: center !important;
    }
    #listing_filter_modal button[type="submit"],
    #listing_filter_modal .hp-form__button,
    .hp-modal--listing-filter button[type="submit"],
    .hp-modal--listing-filter .hp-form__button,
    .v2-filter-modal button[type="submit"],
    .v2-filter-modal .hp-form__button {
        width: 100% !important;
        height: 50px !important;
        border-radius: 14px !important;
        background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
        color: #1e2022 !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        border: none !important;
        box-shadow: 0 6px 20px rgba(242, 187, 99, 0.42) !important;
        cursor: pointer !important;
        margin-top: 14px !important;
    }

    /* 7. Floating Map Button */
    .v2-floating-map-btn {
        bottom: 22px !important;
        height: 44px !important;
        padding: 0 20px !important;
        border-radius: 9999px !important;
        background: #1e2022 !important;
        color: #ffffff !important;
        border: 1px solid rgba(255, 255, 255, 0.15) !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28) !important;
        font-size: 14px !important;
        font-weight: 600 !important;
    }
}

@media (min-width: 769px) {
    .share-archive-mobile-bar {
        display: none !important;
    }
}

/* ==========================================================================
   DISCOVERY ROWS & SECTION HEADERS (AIRBNB / LAKE.COM BENCHMARK)
   ========================================================================== */
.share-discovery-header {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    margin: 48px 0 20px 0 !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #eef2f6 !important;
    gap: 16px !important;
}

.share-discovery-header__left {
    flex: 1 !important;
    min-width: 260px !important;
}

.share-discovery-title {
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 6px 0 !important;
    line-height: 1.25 !important;
}

.share-discovery-subtitle {
    font-size: 14.5px !important;
    color: #717171 !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.share-view-all-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 20px !important;
    border-radius: var(--share-radius-btn) !important;
    border: 1.5px solid #ebebeb !important;
    background: #ffffff !important;
    color: #2b2b2b !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
    white-space: nowrap !important;
}

.share-view-all-btn .share-btn-arrow {
    font-size: 13px !important;
    transition: transform 0.2s ease !important;
}

.share-view-all-btn:hover {
    background: #2b2b2b !important;
    border-color: #2b2b2b !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(43, 43, 43, 0.15) !important;
}

.share-view-all-btn:hover .share-btn-arrow {
    transform: translateX(4px) !important;
}

/* Ensure .hp-listings container is full width block */
.home .hp-listings,
.page-id-8 .hp-listings {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 24px !important;
}

/* Desktop 4-column balanced layout */
@media (min-width: 1025px) {
    .home .hp-listings .hp-row,
    .page-id-8 .hp-listings .hp-row {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        width: calc(100% + 24px) !important;
        margin-left: -12px !important;
        margin-right: -12px !important;
        margin-bottom: 0 !important;
        box-sizing: border-box !important;
    }
    .home .hp-listings .hp-grid__item,
    .page-id-8 .hp-listings .hp-grid__item {
        flex: 0 0 25% !important;
        max-width: 25% !important;
        width: 25% !important;
        min-width: 0 !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        margin: 0 0 24px 0 !important;
        box-sizing: border-box !important;
    }
}

/* Tablet 2-column layout */
@media (min-width: 769px) and (max-width: 1024px) {
    .home .hp-listings .hp-row,
    .page-id-8 .hp-listings .hp-row {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        width: calc(100% + 24px) !important;
        margin-left: -12px !important;
        margin-right: -12px !important;
        margin-bottom: 0 !important;
        box-sizing: border-box !important;
    }
    .home .hp-listings .hp-grid__item,
    .page-id-8 .hp-listings .hp-grid__item {
        flex: 0 0 50% !important;
        max-width: 50% !important;
        width: 50% !important;
        min-width: 0 !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        margin: 0 0 24px 0 !important;
        box-sizing: border-box !important;
    }
}

/* Mobile & Tablet Discovery Rows: Horizontal Scroll Carousel (Airbnb / Lake.com Benchmark) */
@media (max-width: 768px) {
    .share-discovery-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
        margin-top: 36px !important;
    }
    .share-discovery-title {
        font-size: 22px !important;
    }
    .home .hp-listings .hp-row,
    .page-id-8 .hp-listings .hp-row {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x mandatory !important;
        -webkit-overflow-scrolling: touch !important;
        gap: 16px !important;
        padding: 4px 16px 20px 16px !important;
        margin-left: -16px !important;
        margin-right: -16px !important;
        scrollbar-width: none !important;
        width: calc(100% + 32px) !important;
        box-sizing: border-box !important;
    }
    .home .hp-listings .hp-row::-webkit-scrollbar,
    .page-id-8 .hp-listings .hp-row::-webkit-scrollbar {
        display: none !important;
    }
    .home .hp-listings .hp-grid__item,
    .page-id-8 .hp-listings .hp-grid__item {
        flex: 0 0 280px !important;
        max-width: 280px !important;
        width: 280px !important;
        min-width: 280px !important;
        scroll-snap-align: start !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================================================
   ⭐ 359SHARE SINGLE LISTING BENCHMARK (AIRBNB-STYLE REFINEMENT)
   ========================================================================== */

/* 1. Refined Title & Header */
.hp-listing--view-page .hp-listing__title {
    text-transform: none !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    line-height: 1.3 !important;
    margin-bottom: 8px !important;
    letter-spacing: -0.01em !important;
}

/* 2. Sticky Booking Sidebar Widget Elevation */
.share-booking-widget {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 20px !important;
    padding: 24px 24px 20px 24px !important;
    box-shadow: 0 12px 32px rgba(43, 43, 43, 0.08) !important;
    transition: box-shadow 0.25s ease !important;
}
.share-booking-widget:hover {
    box-shadow: 0 16px 40px rgba(43, 43, 43, 0.12) !important;
}

/* Price Box */
.share-booking-price-box {
    margin-bottom: 18px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #f3f3f3 !important;
}
.share-price-amount {
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
}
.share-price-unit {
    font-size: 15px !important;
    color: #717171 !important;
    font-weight: 500 !important;
}
.share-price-deposit-tag {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    color: #404040 !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    margin-top: 8px !important;
}
.share-deposit-info-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 14px !important;
    height: 14px !important;
    font-size: 10px !important;
    line-height: 1 !important;
    border-radius: 50% !important;
    background: #ebebeb !important;
    color: #717171 !important;
    cursor: help !important;
    font-style: normal !important;
    font-weight: 700 !important;
    margin-left: 3px !important;
    vertical-align: middle !important;
    transition: background-color 0.15s ease, color 0.15s ease !important;
}
.share-deposit-info-icon:hover {
    background: #d4d4d4 !important;
    color: #2b2b2b !important;
}


/* Segmented Date Picker (Airbnb Signature) */
.share-segmented-picker {
    border: 1.5px solid #d4d4d4 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}
.share-segmented-picker:hover {
    border-color: #2b2b2b !important;
}
.share-picker-dates-row {
    display: flex !important;
    cursor: pointer !important;
}
.share-picker-cell {
    flex: 1 !important;
    padding: 10px 14px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}
.share-picker-cell:first-child {
    border-right: 1px solid #ebebeb !important;
}
.share-cell-label {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #555555 !important;
    margin-bottom: 3px !important;
    text-transform: none !important;
    letter-spacing: 0.2px !important;
}
.share-cell-val {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #2b2b2b !important;
}

/* Primary Booking Button */
.share-booking-widget button[type="submit"],
.share-booking-widget .button--primary {
    width: 100% !important;
    background: #2b2b2b !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 12px !important;
    height: 50px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 4px 12px rgba(43, 43, 43, 0.15) !important;
}
.share-booking-widget button[type="submit"]:hover,
.share-booking-widget .button--primary:hover {
    background: #3d3d3d !important;
    box-shadow: 0 6px 16px rgba(43, 43, 43, 0.25) !important;
    transform: translateY(-1px) !important;
}

/* Trust & Compliance Reassurance Footer */
.share-booking-trust-footer {
    margin-top: 18px !important;
    padding-top: 16px !important;
    border-top: 1px dashed #ebebeb !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}
.share-trust-item {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 12px !important;
    color: #717171 !important;
    line-height: 1.4 !important;
}
.share-trust-item i {
    color: #10b981 !important;
    font-size: 13px !important;
    width: 16px !important;
    text-align: center !important;
}

/* 3. Refined Host / Vendor Profile Card (Airbnb Benchmark) */
.share-host-profile-card {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 16px !important;
    padding: 28px !important;
    margin: 36px 0 24px 0 !important;
    box-shadow: 0 4px 20px rgba(43, 43, 43, 0.04) !important;
    transition: box-shadow 0.2s ease, border-color 0.2s ease !important;
}

.share-host-profile-card:hover {
    border-color: #d4d4d4 !important;
    box-shadow: 0 6px 24px rgba(43, 43, 43, 0.06) !important;
}

.share-host-inner {
    display: flex !important;
    align-items: center !important;
    gap: 24px !important;
}

.share-host-avatar-col {
    flex-shrink: 0 !important;
    position: relative !important;
}

.share-host-avatar-link {
    display: block !important;
    position: relative !important;
    width: 72px !important;
    height: 72px !important;
    border-radius: 50% !important;
    text-decoration: none !important;
}

.share-host-avatar-img {
    width: 72px !important;
    height: 72px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 2px solid #ebebeb !important;
    display: block !important;
}

.share-host-avatar-monogram {
    width: 72px !important;
    height: 72px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%) !important;
    color: #92400e !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 2px solid #fcd34d !important;
    box-shadow: 0 2px 8px rgba(245, 158, 11, 0.15) !important;
}

.share-host-verified-badge {
    position: absolute !important;
    bottom: -2px !important;
    right: -2px !important;
    width: 22px !important;
    height: 22px !important;
    background: #10b981 !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 10px !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15) !important;
}

.share-host-info-col {
    flex: 1 !important;
    min-width: 0 !important;
}

.share-host-header-line {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 4px !important;
}

.share-host-role-badge {
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    color: #a3a3a3 !important;
}

.share-host-rating-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    background: #fffbeb !important;
    border: 1px solid #fef3c7 !important;
    padding: 2px 8px !important;
    border-radius: 20px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #b45309 !important;
}

.share-host-rating-badge i {
    color: #f59e0b !important;
    font-size: 11px !important;
}

.share-host-title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    margin: 0 0 8px 0 !important;
    line-height: 1.3 !important;
}

.share-host-title a {
    color: #2b2b2b !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}

.share-host-title a:hover {
    color: #000000 !important;
}

.share-host-meta-pills {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 14px !important;
}

.share-host-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 13px !important;
    color: #717171 !important;
    font-weight: 500 !important;
}

.share-host-pill i {
    color: #a3a3a3 !important;
    font-size: 12px !important;
}

.share-host-pill-trust {
    color: #059669 !important;
}

.share-host-pill-trust i {
    color: #10b981 !important;
}

.share-host-actions-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 10px !important;
    flex-shrink: 0 !important;
}

.share-host-contact-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 20px !important;
    background: #2b2b2b !important;
    color: #ffffff !important;
    border-radius: 12px !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 8px rgba(43, 43, 43, 0.15) !important;
    white-space: nowrap !important;
}

.share-host-contact-btn:hover {
    background: #111111 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(43, 43, 43, 0.25) !important;
    color: #ffffff !important;
}

.share-host-view-all-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #555555 !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}

.share-host-view-all-link:hover {
    color: #2b2b2b !important;
    text-decoration: underline !important;
}

.share-host-view-all-link i {
    font-size: 10px !important;
    transition: transform 0.15s ease !important;
}

.share-host-view-all-link:hover i {
    transform: translateX(3px) !important;
}

@media (max-width: 768px) {
    .share-host-inner {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 16px !important;
    }
    .share-host-actions-col {
        width: 100% !important;
        align-items: stretch !important;
    }
    .share-host-contact-btn {
        justify-content: center !important;
        width: 100% !important;
    }
    .share-host-view-all-link {
        justify-content: center !important;
    }
}

/* Location Address Row & Map Card */
.share-location-address-row {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #2b2b2b !important;
    margin-bottom: 14px !important;
}

.share-location-address-row i {
    color: #f2bb63 !important;
    font-size: 16px !important;
}

#listing-location .hp-map,
#listing-location .hp-listing__map,
#listing-location [data-component="map"] {
    border-radius: 16px !important;
    overflow: hidden !important;
    border: 1px solid #ebebeb !important;
    box-shadow: 0 2px 10px rgba(43, 43, 43, 0.03) !important;
}

/* Prevent empty ternary/secondary attributes from showing borders */
.hp-listing--view-page .hp-listing__attributes--ternary:empty,
.hp-listing--view-page .hp-listing__attributes--secondary:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* Refined Reviews Card Benchmark */
.hp-listing--view-page #listing-reviews .hp-review,
.hp-listing--view-page #reviews .hp-review {
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 24px !important;
    border: 1px solid #ebebeb !important;
    box-shadow: 0 2px 10px rgba(43, 43, 43, 0.03) !important;
    transition: all 0.2s ease !important;
}

.hp-listing--view-page #listing-reviews .hp-review:hover,
.hp-listing--view-page #reviews .hp-review:hover {
    box-shadow: 0 4px 16px rgba(43, 43, 43, 0.06) !important;
    border-color: #d4d4d4 !important;
}

.hp-listing--view-page #listing-reviews .hp-review__rating,
.hp-listing--view-page #reviews .hp-review__rating {
    color: #f59e0b !important;
}

/* 4. Related Listings Section (Matching Modern Cards Benchmark) */
body.single-hp_listing .hp-section--related-listings,
.hp-listing--view-page .hp-section--related-listings {
    margin-top: 56px !important;
    padding-top: 44px !important;
    border-top: 1px solid #ebebeb !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

body.single-hp_listing .hp-section--related-listings .hp-section__title,
.hp-listing--view-page .hp-section--related-listings .hp-section__title {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    margin-bottom: 24px !important;
    letter-spacing: -0.01em !important;
}

body.single-hp_listing .hp-section--related-listings .hp-grid,
body.single-hp_listing .hp-section--related-listings .hp-row,
.hp-listing--view-page .hp-section--related-listings .hp-grid,
.hp-listing--view-page .hp-section--related-listings .hp-row {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

@media (max-width: 991px) {
    body.single-hp_listing .hp-section--related-listings .hp-grid,
    body.single-hp_listing .hp-section--related-listings .hp-row,
    .hp-listing--view-page .hp-section--related-listings .hp-grid,
    .hp-listing--view-page .hp-section--related-listings .hp-row {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 600px) {
    body.single-hp_listing .hp-section--related-listings .hp-grid,
    body.single-hp_listing .hp-section--related-listings .hp-row,
    .hp-listing--view-page .hp-section--related-listings .hp-grid,
    .hp-listing--view-page .hp-section--related-listings .hp-row {
        grid-template-columns: 1fr !important;
    }
}

body.single-hp_listing .hp-section--related-listings [class*="hp-col-"],
body.single-hp_listing .hp-section--related-listings [class*="col-"],
.hp-listing--view-page .hp-section--related-listings [class*="hp-col-"],
.hp-listing--view-page .hp-section--related-listings [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: none !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing--view-block,
.hp-listing--view-page .hp-section--related-listings .hp-listing--view-block {
    background: #ffffff !important;
    border: 1px solid #e8edf2 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.04) !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing--view-block:hover,
.hp-listing--view-page .hp-section--related-listings .hp-listing--view-block:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.09) !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing__header,
.hp-listing--view-page .hp-section--related-listings .hp-listing__header {
    position: relative !important;
    border-radius: 16px 16px 0 0 !important;
    overflow: hidden !important;
    aspect-ratio: 16 / 10 !important;
    width: 100% !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing__header img,
.hp-listing--view-page .hp-section--related-listings .hp-listing__header img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.35s ease !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing--view-block:hover .hp-listing__header img,
.hp-listing--view-page .hp-section--related-listings .hp-listing--view-block:hover .hp-listing__header img {
    transform: scale(1.03) !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing__content,
.hp-listing--view-page .hp-section--related-listings .hp-listing__content {
    padding: 16px 20px 20px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing__title,
.hp-listing--view-page .hp-section--related-listings .hp-listing__title {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    margin-bottom: 8px !important;
    line-height: 1.3 !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing__title a,
.hp-listing--view-page .hp-section--related-listings .hp-listing__title a {
    color: inherit !important;
    text-decoration: none !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing__title a:hover,
.hp-listing--view-page .hp-section--related-listings .hp-listing__title a:hover {
    color: #2b2b2b !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing__attributes--primary,
.hp-listing--view-page .hp-section--related-listings .hp-listing__attributes--primary {
    margin-top: auto !important;
    padding-top: 12px !important;
    border-top: 1px solid #f3f3f3 !important;
}

body.single-hp_listing .hp-section--related-listings .hp-listing__attribute--price,
.hp-listing--view-page .hp-section--related-listings .hp-listing__attribute--price {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
}

/* 5. Modern Benchmark Empty Search State */
.hp-no-results {
    text-align: center !important;
    padding: 56px 28px !important;
    max-width: 560px !important;
    margin: 40px auto !important;
    background: #ffffff !important;
    border-radius: 20px !important;
    border: 1px solid #ebebeb !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
}

.hp-no-results::before {
    content: '\f002' !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 28px !important;
    color: #a3a3a3 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 64px !important;
    height: 64px !important;
    background: #f3f3f3 !important;
    border-radius: 50% !important;
    margin: 0 auto 20px auto !important;
}

.hp-no-results h2 {
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    margin: 0 0 10px 0 !important;
    letter-spacing: -0.01em !important;
}

.hp-no-results p {
    font-family: 'Inter', -apple-system, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: #717171 !important;
    margin: 0 !important;
}

/* ==========================================================================
   6. USER ACCOUNT DASHBOARD & SIDEBAR NAVIGATION (BENCHMARK 359SHARE)
   ========================================================================== */

/* Account Layout & Page Surface */
.hp-page--user-account-page,
body[class*="hp-page--user-account"],
body[class*="hp-page--messages"],
body[class*="hp-page--listings"],
body[class*="hp-page--bookings"],
body[class*="hp-page--orders"],
body[class*="hp-page--vendor"] {
    background-color: #fafaf9;
}

/* Account Sidebar Container - Desktop Sticky Only */
@media (min-width: 992px) {
    .hp-page__sidebar:has(.hp-menu--user-account),
    .hp-widget--user-account-menu {
        position: sticky !important;
        top: 96px !important;
    }
}

.hp-widget--user-account-menu {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 20px !important;
    padding: 16px 12px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
}

/* Reset default RentalHive list styles */
.hp-menu--user-account ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

/* Completely eradicate default RentalHive chevrons on account menu */
.hp-menu--user-account li::before,
.hp-menu--user-account li::after,
.hp-menu--user-account .hp-menu__item::before,
.hp-menu--user-account .hp-menu__item::after,
.hp-widget--user-account-menu li::before,
.hp-widget--user-account-menu li::after,
.widget_nav_menu .hp-menu--user-account li::before,
.widget_nav_menu .hp-menu--user-account li::after,
.hp-page__sidebar .widget_nav_menu li::before,
.hp-page__sidebar .widget_nav_menu li::after {
    display: none !important;
    content: none !important;
}

/* Core 359Share Design Tokens */
:root {
    --share-dark: #2b2b2b;
    --share-gold: #f2bb63;
    --share-gold-hover: #e0aa53;
    --share-bg-light: #f7f7f7;
    --share-border: #ebebeb;
    --share-text-muted: #717171;
}

.hp-menu--user-account ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

.hp-menu--user-account .hp-menu__item {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.hp-menu--user-account .hp-menu__item a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 11px 16px !important;
    border-radius: 12px !important;
    color: #2b2b2b !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: all 0.15s ease !important;
    position: relative !important;
    border-left: 3px solid transparent !important;
}

.hp-menu--user-account .hp-menu__item a:hover {
    background: #f7f7f7 !important;
    color: #2b2b2b !important;
    transform: none !important;
}

/* Active Menu Item (Subtle Neutral Highlight + 359Share Gold Accent) */
.hp-menu--user-account .hp-menu__item--active a,
.hp-menu--user-account .hp-menu__item--current a,
.hp-menu--user-account .current-menu-item a,
.hp-menu--user-account .hp-menu__item.active a,
.hp-page--messages-view-page .hp-menu--user-account .hp-menu__item--messages-thread a,
.hp-page--messages-view-page .hp-menu--user-account .hp-menu__item--messages a,
.hp-page--booking-view-page .hp-menu--user-account .hp-menu__item--bookings-view a,
.hp-page--booking-view-page .hp-menu--user-account .hp-menu__item--bookings a,
.hp-template--booking-view-page .hp-menu--user-account .hp-menu__item--bookings-view a,
.hp-template--booking-view-page .hp-menu--user-account .hp-menu__item--bookings a {
    background: #f7f7f7 !important;
    color: #2b2b2b !important;
    font-weight: 700 !important;
    border-left: 3px solid #f2bb63 !important;
    box-shadow: none !important;
    transform: none !important;
}

/* Custom FontAwesome Icons for each Account Menu item */
.hp-menu--user-account .hp-menu__item a::before {
    font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free', 'FontAwesome' !important;
    font-weight: 900 !important;
    font-size: 15px !important;
    width: 22px !important;
    height: 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 12px !important;
    color: #717171 !important;
    transition: color 0.15s ease !important;
    flex-shrink: 0 !important;
}

.hp-menu--user-account .hp-menu__item a:hover::before {
    color: #2b2b2b !important;
}

.hp-menu--user-account .hp-menu__item--active a::before,
.hp-menu--user-account .hp-menu__item--current a::before,
.hp-menu--user-account .current-menu-item a::before,
.hp-menu--user-account .hp-menu__item.active a::before,
.hp-page--messages-view-page .hp-menu--user-account .hp-menu__item--messages-thread a::before,
.hp-page--messages-view-page .hp-menu--user-account .hp-menu__item--messages a::before,
.hp-page--booking-view-page .hp-menu--user-account .hp-menu__item--bookings-view a::before,
.hp-page--booking-view-page .hp-menu--user-account .hp-menu__item--bookings a::before,
.hp-template--booking-view-page .hp-menu--user-account .hp-menu__item--bookings-view a::before,
.hp-template--booking-view-page .hp-menu--user-account .hp-menu__item--bookings a::before {
    color: #f2bb63 !important; /* Signature 359Share Gold */
}

/* Icon mapping for items - EXACT HIVEPRESS CLASSES */
.hp-menu--user-account .hp-menu__item--vendor-dashboard a::before,
.hp-menu--user-account .hp-menu__item--user-dashboard a::before { content: '\f3fd' !important; }

.hp-menu--user-account .hp-menu__item--listings-edit a::before,
.hp-menu--user-account .hp-menu__item--listings a::before,
.hp-menu--user-account .hp-menu__item--user-listings a::before { content: '\f5fd' !important; }

.hp-menu--user-account .hp-menu__item--listings-favorite a::before,
.hp-menu--user-account .hp-menu__item--favorites a::before,
.hp-menu--user-account .hp-menu__item--user-favorites a::before { content: '\f004' !important; }

.hp-menu--user-account .hp-menu__item--vendor-calendar a::before { content: '\f073' !important; }

.hp-menu--user-account .hp-menu__item--search-alerts-view a::before,
.hp-menu--user-account .hp-menu__item--searches a::before,
.hp-menu--user-account .hp-menu__item--user-searches a::before { content: '\f002' !important; }

.hp-menu--user-account .hp-menu__item--bookings-view a::before,
.hp-menu--user-account .hp-menu__item--bookings a::before,
.hp-menu--user-account .hp-menu__item--user-bookings a::before { content: '\f0f2' !important; }

.hp-menu--user-account .hp-menu__item--messages-thread a::before,
.hp-menu--user-account .hp-menu__item--messages a::before,
.hp-menu--user-account .hp-menu__item--user-messages a::before { content: '\f086' !important; }

.hp-menu--user-account .hp-menu__item--orders-edit a::before,
.hp-menu--user-account .hp-menu__item--orders a::before,
.hp-menu--user-account .hp-menu__item--vendor-orders a::before { content: '\f274' !important; }

.hp-menu--user-account .hp-menu__item--orders-view a::before,
.hp-menu--user-account .hp-menu__item--user-orders a::before { content: '\f570' !important; }

.hp-menu--user-account .hp-menu__item--user-edit-settings a::before,
.hp-menu--user-account .hp-menu__item--user-settings a::before { content: '\f4fe' !important; }

.hp-menu--user-account .hp-menu__item--user-logout a::before { content: '\f2f5' !important; color: #ef4444 !important; }

/* Logout hover */
.hp-menu--user-account .hp-menu__item--user-logout a:hover {
    background: #fef2f2 !important;
    color: #ef4444 !important;
}

/* Label text */
.hp-menu--user-account .hp-menu__item a span {
    flex-grow: 1 !important;
    font-size: 14.5px !important;
    color: #2b2b2b !important;
    letter-spacing: -0.01em !important;
}

/* Modern Notification Badge in Sidebar */
.hp-menu--user-account .hp-menu__badge,
.hp-menu--user-account small {
    background: #ef4444 !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 2px 7px !important;
    border-radius: 9999px !important;
    line-height: 1.2 !important;
    margin-left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 18px !important;
    box-shadow: 0 2px 4px rgba(239, 68, 68, 0.25) !important;
}

/* Subtle separator before Settings */
.hp-menu--user-account .hp-menu__item--user-edit-settings,
.hp-menu--user-account .hp-menu__item--user-settings {
    margin-top: 8px !important;
    padding-top: 8px !important;
    border-top: 1px solid #f3f3f3 !important;
}

/* On mobile (<= 991px): Mobile layout for account pages */
@media (max-width: 991px) {
    .hp-template--page-sidebar-left .hp-page__content,
    .hp-template--user-account-page .hp-page__content,
    .hp-page--user-account .hp-page__content {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }
}

/* ==========================================================================
   PAGE 1: MESSAGES INDEX (/account/messages/)
   ========================================================================== */

/* Page Header */
.hp-page--messages-thread-page .hp-page__header,
.hp-page--messages-view-page .hp-page__header {
    margin-bottom: 24px !important;
}

.hp-page--messages-thread-page .hp-page__title,
.hp-page--messages-view-page .hp-page__title {
    font-family: inherit !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    margin: 0 !important;
}

/* ==========================================================================
   359SHARE BENCHMARK CHAT & MESSAGING SYSTEM (AIRBNB / TELEGRAM ELEVATION)
   ========================================================================== */

/* --- 1. INBOX PAGE (/account/messages/) --- */
.hp-page--messages-thread-page .hp-page__content,
.hp-template--messages-thread-page .hp-page__content {
    max-width: 960px !important;
    margin: 0 auto !important;
    padding: 24px 16px 60px !important;
}

.share-chat-inbox-header {
    margin-top: -12px !important;
    margin-bottom: 24px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.share-chat-inbox-title {
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 4px 0 !important;
}

.share-chat-inbox-subtitle {
    font-size: 14.5px !important;
    color: #64748b !important;
    font-weight: 500 !important;
}

/* Empty State Card */
.share-chat-empty-state {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    background: #ffffff !important;
    border: 1.5px dashed #e2e8f0 !important;
    border-radius: 24px !important;
    padding: 56px 24px !important;
    margin-top: 16px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02) !important;
}

.share-chat-empty-icon {
    width: 72px !important;
    height: 72px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, rgba(242, 187, 99, 0.15) 0%, rgba(229, 169, 64, 0.08) 100%) !important;
    color: #e5a940 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 30px !important;
    margin-bottom: 20px !important;
}

.share-chat-empty-title {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    margin: 0 0 8px 0 !important;
}

.share-chat-empty-desc {
    font-size: 14.5px !important;
    color: #64748b !important;
    max-width: 420px !important;
    margin: 0 0 24px 0 !important;
    line-height: 1.5 !important;
}

.share-chat-empty-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-weight: 700 !important;
    font-size: 14.5px !important;
    padding: 12px 24px !important;
    border-radius: 50px !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.35) !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.share-chat-empty-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(242, 187, 99, 0.5) !important;
    color: #1e2022 !important;
}

/* Transform Table into Flex List */
.hp-page--messages-thread-page .hp-messages,
.hp-template--messages-thread-page .hp-messages,
table.hp-messages.hp-table {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    border: none !important;
    width: 100% !important;
    background: transparent !important;
    margin: 0 !important;
}

table.hp-messages.hp-table tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    border: none !important;
    width: 100% !important;
}

/* Hide duplicate native header on inbox and thread page */
.hp-page--messages-thread-page > .hp-page__header,
.hp-template--messages-thread-page > .hp-page__header,
.hp-page--messages-thread-page .hp-page__title,
.hp-page--messages-view-page > .hp-page__header,
.hp-template--messages-view-page > .hp-page__header,
.hp-page--messages-view-page .hp-page__title,
.hp-page--messages-view-page .share-chat-header-nav {
    display: none !important;
}

tr.hp-message.hp-message--thread-block,
.hp-message--thread-block,
.share-chat-thread-item {
    display: block !important;
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
    width: 100% !important;
}

tr.hp-message.hp-message--thread-block td.hp-message__sender {
    display: block !important;
    width: 100% !important;
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
}

tr.hp-message.hp-message--thread-block td.hp-message__listing,
tr.hp-message.hp-message--thread-block td.hp-message__sent-date {
    display: none !important;
}

/* Modern Conversation Card */
.share-chat-thread-card {
    display: flex !important;
    align-items: center !important;
    gap: 18px !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 18px !important;
    padding: 16px 20px !important;
    text-decoration: none !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
    box-sizing: border-box !important;
    width: 100% !important;
    position: relative !important;
}

.share-chat-thread-card:hover {
    border-color: #f2bb63 !important;
    box-shadow: 0 8px 24px rgba(242, 187, 99, 0.18) !important;
    transform: translateY(-2px) !important;
}

.share-chat-thread-card.is-unread {
    background: #fefcf8 !important;
    border-color: #fbd693 !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.12) !important;
}

.share-thread-avatar-wrap {
    position: relative !important;
    flex-shrink: 0 !important;
    width: 52px !important;
    height: 52px !important;
}

.share-thread-avatar {
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08) !important;
    background: #f1f5f9 !important;
    display: block !important;
}


.share-thread-body {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

.share-thread-top-line {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

.share-thread-name {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.share-thread-time {
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #94a3b8 !important;
    flex-shrink: 0 !important;
}

/* Listing chip inside thread card */
.share-thread-listing-chip {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 3px 8px !important;
    max-width: fit-content !important;
    margin: 2px 0 !important;
}

.share-thread-chip-thumb {
    width: 18px !important;
    height: 18px !important;
    border-radius: 4px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
}

.share-thread-chip-icon {
    font-size: 11px !important;
    color: #f2bb63 !important;
}

.share-thread-chip-title {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #475569 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 240px !important;
}

.share-thread-chip-price {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #e5a940 !important;
    border-left: 1px solid #e2e8f0 !important;
    padding-left: 6px !important;
    margin-left: 2px !important;
}

.share-thread-bottom-line {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

.share-thread-snippet {
    font-size: 13.5px !important;
    color: #64748b !important;
    margin: 0 !important;
    line-height: 1.4 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 90% !important;
}

.share-thread-you-tag {
    font-weight: 700 !important;
    color: #1e2022 !important;
}

.share-thread-unread-pill {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    padding: 2px 8px !important;
    border-radius: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    box-shadow: 0 2px 6px rgba(242, 187, 99, 0.4) !important;
    flex-shrink: 0 !important;
}

.share-thread-chevron {
    color: #cbd5e1 !important;
    font-size: 12px !important;
    transition: transform 0.2s ease, color 0.2s ease !important;
    flex-shrink: 0 !important;
}

.share-chat-thread-card:hover .share-thread-chevron {
    transform: translateX(3px) !important;
    color: #e5a940 !important;
}

/* --- 2. ACTIVE CHAT THREAD VIEW (/account/messages/<id>/) --- */
.hp-page--messages-view-page .hp-page__content,
.hp-template--messages-view-page .hp-page__content {
    max-width: 880px !important;
    margin: 0 auto !important;
    padding: 20px 16px 40px !important;
}

/* Pinned Header Bar */
.share-chat-view-header-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 16px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    gap: 16px !important;
}

.share-chat-back-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 16px !important;
    border-radius: 50px !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #1e2022 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
}

.share-chat-back-btn:hover {
    background: #f8fafc !important;
    border-color: #f2bb63 !important;
    color: #1e2022 !important;
    transform: translateX(-2px) !important;
}

.share-chat-other-user-card {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.share-chat-user-avatar-wrap {
    position: relative !important;
    width: 44px !important;
    height: 44px !important;
}

.share-chat-user-avatar {
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08) !important;
    background: #f1f5f9 !important;
    display: block !important;
}


.share-chat-user-info {
    display: flex !important;
    flex-direction: column !important;
}

.share-chat-user-name {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}

.share-chat-user-status {
    font-size: 12px !important;
    color: #22c55e !important;
    font-weight: 600 !important;
}

/* Pinned Rental Hero Card */
.share-chat-rental-hero-card {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 18px !important;
    padding: 14px 18px !important;
    margin-bottom: 20px !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04) !important;
    gap: 16px !important;
}

.share-rental-hero-main {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.share-rental-hero-thumb {
    width: 68px !important;
    height: 68px !important;
    border-radius: 12px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06) !important;
    display: block !important;
}

.share-rental-hero-meta {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    min-width: 0 !important;
}

.share-rental-hero-tag {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.share-rental-hero-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    margin: 0 !important;
    line-height: 1.3 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.share-rental-hero-title a {
    color: #1e2022 !important;
    text-decoration: none !important;
}

.share-rental-hero-title a:hover {
    color: #e5a940 !important;
}

.share-rental-hero-pricing {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 13px !important;
}

.share-rental-price-badge {
    color: #1e2022 !important;
    font-weight: 600 !important;
}

.share-rental-price-badge strong {
    color: #e5a940 !important;
    font-weight: 800 !important;
}

.share-rental-deposit-badge {
    background: #f1f5f9 !important;
    color: #475569 !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    padding: 2px 8px !important;
    border-radius: 6px !important;
}

.share-rental-hero-actions {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
}

.share-rental-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 9px 16px !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.share-rental-btn--preview {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    color: #1e2022 !important;
}

.share-rental-btn--preview:hover {
    background: #f8fafc !important;
    border-color: #cbd5e1 !important;
    color: #1e2022 !important;
}

.share-rental-btn--book {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    border: none !important;
    color: #1e2022 !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.35) !important;
}

.share-rental-btn--book:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.5) !important;
    color: #1e2022 !important;
}

/* Chat Messages Stream Container */
.hp-page--messages-view-page .hp-messages,
.hp-template--messages-view-page .hp-messages,
.hp-messages[data-block="messages_view"] {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 20px !important;
    padding: 24px 20px !important;
    margin-bottom: 16px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    max-height: 520px !important;
    overflow-y: auto !important;
    scroll-behavior: smooth !important;
    box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.02) !important;
}

/* Custom Slim Scrollbar */
.hp-messages[data-block="messages_view"]::-webkit-scrollbar {
    width: 6px !important;
}

.hp-messages[data-block="messages_view"]::-webkit-scrollbar-thumb {
    background: #cbd5e1 !important;
    border-radius: 10px !important;
}

/* Message Bubble Base */
.hp-message--view,
.hp-message--view-block,
.hp-messages[data-block="messages_view"] .hp-message {
    position: relative !important;
    padding: 12px 18px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    width: fit-content !important;
    max-width: 78% !important;
    font-size: 14.5px !important;
    line-height: 1.55 !important;
}

/* Outgoing Messages (Sent by current user) */
.hp-message--outgoing,
.hp-message--sent,
.hp-messages .hp-message--outgoing,
.hp-messages .hp-message--sent,
.hp-message--view.hp-message--outgoing,
.hp-message--view.hp-message--sent {
    margin-left: auto !important;
    margin-right: 0 !important;
    background: #1e2022 !important;
    background-color: #1e2022 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 18px 18px 4px 18px !important;
    box-shadow: 0 4px 14px rgba(30, 32, 34, 0.15) !important;
}

.hp-message--outgoing .hp-message__sender,
.hp-message--sent .hp-message__sender {
    display: none !important;
}

.hp-message--outgoing .hp-message__text,
.hp-message--outgoing .hp-message__text p,
.hp-message--sent .hp-message__text,
.hp-message--sent .hp-message__text p {
    color: #ffffff !important;
    font-size: 14.5px !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

.hp-message--outgoing .hp-message__sent-date,
.hp-message--sent .hp-message__sent-date {
    color: rgba(255, 255, 255, 0.6) !important;
    font-size: 11px !important;
    margin-top: 5px !important;
    text-align: right !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 4px !important;
}

.hp-message--outgoing .hp-message__sent-date::after,
.hp-message--sent .hp-message__sent-date::after {
    content: ' ✓✓' !important;
    color: #f2bb63 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
}

/* Incoming Messages (Received from other user) */
.hp-message--incoming,
.hp-messages .hp-message--incoming,
.hp-message--view.hp-message--incoming,
.hp-messages[data-block="messages_view"] .hp-message:not(.hp-message--outgoing):not(.hp-message--sent) {
    margin-right: auto !important;
    margin-left: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #1e2022 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 18px 18px 18px 4px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}

.hp-message--incoming .hp-message__sender,
.hp-messages[data-block="messages_view"] .hp-message:not(.hp-message--outgoing) .hp-message__sender {
    color: #64748b !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    margin-bottom: 4px !important;
}

.hp-message--incoming .hp-message__sender a,
.hp-messages[data-block="messages_view"] .hp-message:not(.hp-message--outgoing) .hp-message__sender a {
    color: #64748b !important;
    text-decoration: none !important;
}

.hp-message--incoming .hp-message__text,
.hp-message--incoming .hp-message__text p,
.hp-messages[data-block="messages_view"] .hp-message:not(.hp-message--outgoing) .hp-message__text,
.hp-messages[data-block="messages_view"] .hp-message:not(.hp-message--outgoing) .hp-message__text p {
    color: #1e2022 !important;
    font-size: 14.5px !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

.hp-message--incoming .hp-message__sent-date,
.hp-messages[data-block="messages_view"] .hp-message:not(.hp-message--outgoing) .hp-message__sent-date {
    color: #94a3b8 !important;
    font-size: 11px !important;
    margin-top: 5px !important;
}

/* Delete Action in Bubble */
.hp-message .hp-message__action--delete {
    opacity: 0 !important;
    transition: opacity 0.2s ease !important;
    color: #ef4444 !important;
}

.hp-message:hover .hp-message__action--delete {
    opacity: 0.7 !important;
}

.hp-message .hp-message__action--delete:hover {
    opacity: 1 !important;
}

/* --- 3. CHAT INPUT DOCK (REPLY BAR) --- */
.hp-form--message-send {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 18px !important;
    padding: 12px 16px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.hp-form--message-send .hp-form__fields {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.hp-form--message-send .hp-form__field--text {
    margin: 0 !important;
    padding: 0 !important;
}

.hp-form--message-send .hp-form__field--text label {
    display: none !important;
}

.hp-form--message-send textarea {
    width: 100% !important;
    min-height: 46px !important;
    max-height: 140px !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 10px 14px !important;
    font-family: inherit !important;
    font-size: 14.5px !important;
    color: #1e2022 !important;
    background: #f8fafc !important;
    transition: all 0.2s ease !important;
    resize: none !important;
    outline: none !important;
    box-sizing: border-box !important;
    line-height: 1.4 !important;
}

.hp-form--message-send textarea:focus {
    border-color: #f2bb63 !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.2) !important;
}

.hp-form--message-send .hp-form__footer {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin: 0 !important;
    padding-top: 4px !important;
    gap: 10px !important;
}

.hp-form--message-send button[type="submit"],
.hp-form--message-send .hp-form__button {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 10px 22px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.3) !important;
}

.hp-form--message-send button[type="submit"]:hover,
.hp-form--message-send .hp-form__button:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.45) !important;
    color: #1e2022 !important;
}

.hp-form--message-send button[type="submit"]::after {
    content: '\f1d8' !important;
    font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 13px !important;
}

/* --- 4. LISTING INQUIRY MODAL (#message_send_modal) --- */
#message_send_modal .fancybox-content,
.hp-modal#message_send_modal {
    border-radius: 24px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15) !important;
    padding: 28px !important;
    max-width: 520px !important;
    width: 100% !important;
}

.share-inquiry-chips-wrap {
    margin-bottom: 16px !important;
}

.share-chip-label {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    display: block !important;
    margin-bottom: 8px !important;
}

.share-chips-list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.share-inquiry-chip {
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
    color: #334155 !important;
    border-radius: 50px !important;
    padding: 6px 14px !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.share-inquiry-chip:hover {
    background: #ffffff !important;
    border-color: #f2bb63 !important;
    color: #1e2022 !important;
    box-shadow: 0 2px 6px rgba(242, 187, 99, 0.25) !important;
    transform: translateY(-1px) !important;
}

#message_send_modal button[type="submit"],
#message_send_modal .hp-form__button {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    border: none !important;
    border-radius: 14px !important;
    padding: 14px 28px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    width: 100% !important;
    justify-content: center !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.35) !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#message_send_modal button[type="submit"]:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 18px rgba(242, 187, 99, 0.5) !important;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .share-chat-rental-hero-card {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 12px 14px !important;
    }

    .share-rental-hero-actions {
        width: 100% !important;
    }

    .share-rental-btn {
        flex: 1 1 50% !important;
        justify-content: center !important;
    }

    .hp-messages[data-block="messages_view"] {
        max-height: calc(100vh - 360px) !important;
        padding: 16px 12px !important;
    }

    .hp-message--view,
    .hp-messages[data-block="messages_view"] .hp-message {
        max-width: 88% !important;
    }
}

/* ==========================================================================
   ACCOUNT PAGE 2: BOOKINGS (РЕЗЕРВАЦИИ) - AIRBNB / LAKE.COM ELEVATION
   ========================================================================== */

/* Page Container & Grid Layout */
.hp-page--bookings-view-page .hp-page__content {
    max-width: 100% !important;
}

.hp-page--bookings-view-page .hp-page__title {
    font-family: inherit !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 24px 0 !important;
}

.hp-bookings.hp-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    margin: 0 0 32px 0 !important;
}

.hp-bookings.hp-grid .hp-grid__item {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

/* Individual Booking Card (Modern Airbnb Card) */
.hp-booking--view-block {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 20px !important;
    padding: 24px 28px !important;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.03) !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    cursor: pointer !important;
}

.hp-booking--view-block:hover {
    border-color: #d4d4d4 !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.06) !important;
    transform: translateY(-2px) !important;
}

/* Card Header: Booking Title & Number */
.hp-booking--view-block .hp-listing__content {
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.hp-booking--view-block .hp-listing__title {
    margin: 0 0 10px 0 !important;
    padding-right: 140px !important;
    font-family: inherit !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    line-height: 1.3 !important;
}

.hp-booking--view-block .hp-listing__title a {
    color: #3d3d3d !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

/* Make entire booking card clickable */
.hp-booking--view-block .hp-listing__title a::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    border-radius: 20px !important;
    cursor: pointer !important;
}

.hp-booking--view-block:hover .hp-listing__title a {
    color: #2b2b2b !important;
}

/* Primary Details: Stacked structure (Listing Name then Meta) */
.hp-booking--view-block .hp-listing__details--primary {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
    margin: 0 !important;
}

/* Property / Listing Pill Link (Kept above stretched link) */
.hp-booking--view-block .hp-booking__listing,
.hp-booking--view-page .hp-booking__listing {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-family: inherit !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #3d3d3d !important;
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    padding: 6px 14px !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    position: relative !important;
    z-index: 2 !important;
    max-width: 100% !important;
}

.hp-booking--view-block .hp-booking__listing:hover,
.hp-booking--view-page .hp-booking__listing:hover {
    background: #ffffff !important;
    color: #3d3d3d !important;
    border-color: #f2bb63 !important;
}

.hp-booking--view-block .hp-booking__listing i,
.hp-booking--view-page .hp-booking__listing i {
    color: #f2bb63 !important;
    font-size: 13px !important;
}

/* Booked Date & User Meta */
.hp-booking--view-block .hp-listing__created-date,
.hp-booking--view-page .hp-listing__created-date {
    font-family: inherit !important;
    color: #717171 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 !important;
}

.hp-booking--view-block .hp-listing__created-date a,
.hp-booking--view-page .hp-listing__created-date a {
    color: #404040 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    position: relative !important;
    z-index: 2 !important;
}

.hp-booking--view-block .hp-listing__created-date a:hover,
.hp-booking--view-page .hp-listing__created-date a:hover {
    color: #2b2b2b !important;
    text-decoration: underline !important;
}

/* Status Badges: Anchored to Top Right corner in card */
.hp-booking--view-block .hp-status {
    position: absolute !important;
    top: 24px !important;
    right: 24px !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 6px 14px !important;
    border-radius: 9999px !important;
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    line-height: 1 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
}

.hp-booking--view-page .hp-status {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 6px 14px !important;
    border-radius: 9999px !important;
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    line-height: 1 !important;
    margin: 0 !important;
    border: none !important;
}

/* Confirmed (Green Capsule) */
.hp-booking .hp-status--confirmed,
.hp-booking--view-page .hp-status--confirmed {
    background: #ecfdf5 !important;
    color: #047857 !important;
}

.hp-booking .hp-status--confirmed::before,
.hp-booking--view-page .hp-status--confirmed::before {
    content: '\f058' !important;
    font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 12px !important;
    color: #10b981 !important;
}

/* Pending (Amber Capsule) */
.hp-booking .hp-status--pending,
.hp-booking--view-page .hp-status--pending {
    background: #fffbeb !important;
    color: #b45309 !important;
}

.hp-booking .hp-status--pending::before,
.hp-booking--view-page .hp-status--pending::before {
    content: '\f017' !important;
    font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 12px !important;
    color: #f59e0b !important;
}

/* Cancelled / Declined (Red Capsule) */
.hp-booking .hp-status--canceled,
.hp-booking .hp-status--cancelled,
.hp-booking .hp-status--declined,
.hp-booking--view-page .hp-status--canceled,
.hp-booking--view-page .hp-status--cancelled,
.hp-booking--view-page .hp-status--declined {
    background: #fef2f2 !important;
    color: #dc2626 !important;
}

.hp-booking .hp-status--canceled::before,
.hp-booking .hp-status--cancelled::before,
.hp-booking .hp-status--declined::before,
.hp-booking--view-page .hp-status--canceled::before,
.hp-booking--view-page .hp-status--cancelled::before,
.hp-booking--view-page .hp-status--declined::before {
    content: '\f057' !important;
    font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 12px !important;
    color: #ef4444 !important;
}

/* Card Footer: Dates Capsule & Action Indicator */
.hp-booking--view-block .hp-listing__footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    padding-top: 14px !important;
    margin-top: 4px !important;
    border-top: 1px solid #f3f3f3 !important;
}

/* Dates Capsule (Lake.com / Airbnb Calendar Widget) */
.hp-booking--view-block .hp-booking__dates {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    border-radius: 8px !important;
    padding: 7px 14px !important;
    font-family: inherit !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #3d3d3d !important;
}

.hp-booking--view-block .hp-booking__dates::before {
    content: '\f783' !important;
    font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 13px !important;
    color: #f2bb63 !important;
}

/* Clean "Детайли" indicator on the right of card footer */
.hp-booking--view-block .hp-listing__footer::after {
    content: 'Детайли \2192' !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #717171 !important;
    margin-left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    transition: all 0.2s ease !important;
}

.hp-booking--view-block:hover .hp-listing__footer::after {
    color: #3d3d3d !important;
    transform: translateX(3px) !important;
}

/* Mobile Booking Card Optimization */
@media (max-width: 767px) {
    .hp-booking--view-block {
        padding: 16px 18px !important;
        border-radius: 16px !important;
        gap: 10px !important;
    }

    .hp-booking--view-block .hp-status {
        top: 16px !important;
        right: 16px !important;
        padding: 4px 10px !important;
        font-size: 11px !important;
    }

    .hp-booking--view-block .hp-listing__title {
        font-size: 17px !important;
        padding-right: 95px !important;
        margin-bottom: 6px !important;
    }

    .hp-booking--view-block .hp-booking__listing {
        font-size: 13px !important;
        padding: 5px 12px !important;
    }

    .hp-booking--view-block .hp-listing__created-date {
        font-size: 12px !important;
    }

    .hp-booking--view-block .hp-listing__footer {
        padding-top: 10px !important;
        margin-top: 2px !important;
    }

    .hp-booking--view-block .hp-booking__dates {
        font-size: 12.5px !important;
        padding: 6px 10px !important;
    }

    .hp-booking--view-block .hp-listing__footer::after {
        font-size: 12px !important;
    }
}

/* Pay Now Button / Actions in Block */
.hp-booking--view-block .hp-listing__action--pay,
.hp-booking--view-page .hp-listing__action--pay {
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    font-weight: 700 !important;
    padding: 9px 20px !important;
    border-radius: 10px !important;
    border: none !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.25) !important;
    position: relative !important;
    z-index: 2 !important;
}

.hp-booking--view-block .hp-listing__action--pay:hover,
.hp-booking--view-page .hp-listing__action--pay:hover {
    background: #e0aa53 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.35) !important;
}

/* ==========================================================================
   SINGLE BOOKING DETAIL VIEW PAGE (/account/bookings/<id>/)
   ========================================================================== */
.hp-page--booking-view-page,
.hp-template--booking-view-page {
    background: transparent !important;
    padding-bottom: 60px !important;
}

.hp-page--booking-view-page .hp-page__container,
.hp-template--booking-view-page .hp-page__container,
.hp-template--booking-view-page .hp-row {
    max-width: 1080px !important;
    margin: 0 auto !important;
}

/* Main Booking Content Card (Left Column) */
.hp-template--booking-view-page .hp-page__content,
.hp-template--booking-view-page .hp-row > .hp-col-sm-8,
.hp-page--booking-view-page .hp-row > .hp-col-sm-8,
.hp-page--booking-view-page .hp-page__content {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 20px !important;
    padding: 32px 36px !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03) !important;
}

.hp-template--booking-view-page .hp-listing__title,
.hp-page--booking-view-page .hp-listing__title {
    font-family: inherit !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    color: #2b2b2b !important;
    margin: 0 0 16px 0 !important;
}

.hp-template--booking-view-page .hp-listing__details--primary,
.hp-page--booking-view-page .hp-listing__details--primary {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    margin-bottom: 24px !important;
}

/* Sidebar Trip Summary Card (Right Column) */
.hp-booking__sidebar {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 20px !important;
    padding: 28px !important;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.04) !important;
}

.hp-booking__sidebar .hp-booking__dates {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #f3f3f3 !important;
    margin-bottom: 16px !important;
}

.hp-booking__sidebar .hp-booking__dates::before {
    content: '\f783' !important;
    font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 16px !important;
    color: #f2bb63 !important;
}

.hp-booking__sidebar .hp-booking__price {
    font-family: inherit !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    margin-bottom: 20px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

.hp-booking__sidebar .hp-booking__price::before {
    content: 'ОБЩА СУМА' !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    color: #717171 !important;
    letter-spacing: 0.05em !important;
}

.hp-booking__sidebar .hp-listing__actions--primary {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin-top: 10px !important;
}

/* Message Host Button */
.hp-booking__sidebar .hp-listing__action--message,
.hp-booking__sidebar button[data-component="modal"] {
    background: #2b2b2b !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 13px 22px !important;
    font-weight: 600 !important;
    font-size: 14.5px !important;
    width: 100% !important;
    text-align: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 4px 14px rgba(43, 43, 43, 0.12) !important;
}

.hp-booking__sidebar .hp-listing__action--message:hover,
.hp-booking__sidebar button[data-component="modal"]:hover {
    background: #1a1a1a !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 18px rgba(43, 43, 43, 0.2) !important;
}

/* View Order Link */
.hp-booking__sidebar .hp-listing__action--order {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    color: #2b2b2b !important;
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 11px 18px !important;
    border-radius: 12px !important;
    transition: all 0.2s ease !important;
}

.hp-booking__sidebar .hp-listing__action--order:hover {
    border-color: #2b2b2b !important;
    background: #f7f7f7 !important;
}

.hp-booking__sidebar .hp-listing__action--order i {
    color: #f2bb63 !important;
}

/* ==========================================================================
   PAGE 3: FAVORITES (/account/favorites/)
   ========================================================================== */

/* Page Background & Container */
.hp-page--listings-favorite-page,
.hp-template--listings-favorite-page {
    background: transparent !important;
    padding-bottom: 60px !important;
}

/* Favorite Heart Button — On this page all hearts are "active" (remove action) */
.hp-page--listings-favorite-page .hp-listing__action--favorite,
.hp-template--listings-favorite-page .hp-listing__action--favorite {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 6 !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ef4444 !important;
    font-size: 15px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12) !important;
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1),
                background 0.2s ease,
                box-shadow 0.2s ease !important;
    text-decoration: none !important;
    padding: 0 !important;
    border: none !important;
    cursor: pointer !important;
}

.hp-page--listings-favorite-page .hp-listing__action--favorite:hover,
.hp-template--listings-favorite-page .hp-listing__action--favorite:hover {
    transform: scale(1.15) !important;
    background: #ffffff !important;
    box-shadow: 0 4px 14px rgba(239, 68, 68, 0.25) !important;
}

/* Pulse animation on heart click */
.hp-page--listings-favorite-page .hp-listing__action--favorite:active,
.hp-template--listings-favorite-page .hp-listing__action--favorite:active {
    transform: scale(0.9) !important;
}

/* Hide "Favorite" text label inside the button (show icon only) */
.hp-page--listings-favorite-page .hp-listing__action--favorite span,
.hp-template--listings-favorite-page .hp-listing__action--favorite span {
    display: none !important;
}

/* Ensure the icon renders properly */
.hp-page--listings-favorite-page .hp-listing__action--favorite i,
.hp-template--listings-favorite-page .hp-listing__action--favorite i {
    font-size: 15px !important;
    line-height: 1 !important;
    color: inherit !important;
}

/* Active state (filled heart) */
.hp-page--listings-favorite-page .hp-listing__action--favorite.hp-state--active,
.hp-template--listings-favorite-page .hp-listing__action--favorite.hp-state--active {
    color: #ef4444 !important;
}

/* Card footer price emphasis on favorites */
.hp-page--listings-favorite-page .hp-listing__attributes--primary .hp-listing__attribute,
.hp-template--listings-favorite-page .hp-listing__attributes--primary .hp-listing__attribute {
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
}

/* Empty State (when no favorites) */
.hp-page--listings-favorite-page .hp-page__content:empty::after,
.hp-template--listings-favorite-page .hp-listings:empty::after {
    content: '' !important;
    display: block !important;
    text-align: center !important;
    padding: 80px 20px !important;
    font-size: 16px !important;
    color: #a3a3a3 !important;
    font-weight: 500 !important;
}

/* Calendar Container Card */
.hp-template--vendor-calendar-page .hp-calendar,
.hp-template--listing-calendar-page .hp-calendar {
    background: #ffffff !important;
    border-radius: 20px !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06),
                0 4px 16px rgba(0, 0, 0, 0.04) !important;
    padding: 28px !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    overflow: hidden !important;
}

/* ---------- FullCalendar Toolbar ---------- */
.hp-calendar .fc-toolbar.fc-header-toolbar {
    margin-bottom: 24px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}

/* Toolbar Title (Month/Week Name) */
.hp-calendar .fc-toolbar-title {
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.01em !important;
    text-transform: capitalize !important;
}

/* Navigation Buttons (prev/next/today) */
.hp-calendar .fc-button {
    background: #ffffff !important;
    color: #2b2b2b !important;
    border: 1px solid #ebebeb !important;
    border-radius: 10px !important;
    padding: 8px 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    font-family: 'Inter', 'Outfit', sans-serif !important;
    text-transform: capitalize !important;
    transition: all 0.2s ease !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer !important;
    line-height: 1.4 !important;
}

.hp-calendar .fc-button:hover {
    background: #f2bb63 !important;
    border-color: #f2bb63 !important;
    color: #2b2b2b !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.3) !important;
}

.hp-calendar .fc-button:active,
.hp-calendar .fc-button.fc-button-active {
    background: #2b2b2b !important;
    border-color: #2b2b2b !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.hp-calendar .fc-button:focus {
    box-shadow: 0 0 0 2px rgba(242, 187, 99, 0.4) !important;
}

/* Arrow Buttons (prev/next) */
.hp-calendar .fc-prev-button,
.hp-calendar .fc-next-button {
    padding: 8px 10px !important;
    min-width: 38px !important;
}

/* Today Button */
.hp-calendar .fc-today-button {
    background: #f2bb63 !important;
    border-color: #f2bb63 !important;
    color: #2b2b2b !important;
    font-weight: 700 !important;
}

.hp-calendar .fc-today-button:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
}

/* Block/Unblock Buttons (lock/unlock icons) */
.hp-calendar .fc-block-button,
.hp-calendar .fc-unblock-button {
    padding: 8px 12px !important;
}

/* ---------- Day Grid Header ---------- */
.hp-calendar .fc-col-header {
    border: none !important;
}

.hp-calendar .fc-col-header-cell {
    background: transparent !important;
    border: none !important;
    padding: 10px 0 !important;
}

.hp-calendar .fc-col-header-cell-cushion {
    font-family: 'Inter', 'Outfit', sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    color: #a3a3a3 !important;
    text-decoration: none !important;
    padding: 8px 4px !important;
}

/* ---------- Day Grid Cells ---------- */
.hp-calendar .fc-scrollgrid {
    border: none !important;
    border-radius: 12px !important;
    overflow: hidden !important;
}

.hp-calendar .fc-scrollgrid-section > td,
.hp-calendar .fc-scrollgrid-section > th {
    border: none !important;
}

.hp-calendar td.fc-daygrid-day {
    border: 1px solid #f3f3f3 !important;
    transition: background 0.15s ease !important;
}

.hp-calendar td.fc-daygrid-day:hover {
    background: #fefce8 !important;
}

/* Day Number */
.hp-calendar .fc-daygrid-day-number {
    font-family: 'Inter', 'Outfit', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #555555 !important;
    text-decoration: none !important;
    padding: 8px 10px !important;
}

/* Today Highlight */
.hp-calendar td.fc-day-today {
    background: rgba(242, 187, 99, 0.08) !important;
}

.hp-calendar td.fc-day-today .fc-daygrid-day-number {
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    border-radius: 50% !important;
    width: 28px !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 800 !important;
    padding: 0 !important;
}

/* Other Month Days (Faded) */
.hp-calendar td.fc-day-other {
    background: #fafbfc !important;
}

.hp-calendar td.fc-day-other .fc-daygrid-day-number {
    color: #d4d4d4 !important;
}

/* Past Days */
.hp-calendar td.fc-day-past .fc-daygrid-day-number {
    color: #d4d4d4 !important;
}

/* ---------- Booking Events ---------- */
.hp-calendar .fc-daygrid-event,
.hp-calendar .fc-event {
    border-radius: 6px !important;
    border: none !important;
    padding: 3px 8px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    font-family: 'Inter', 'Outfit', sans-serif !important;
    line-height: 1.4 !important;
    cursor: pointer !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease !important;
    margin: 1px 2px !important;
}

.hp-calendar .fc-daygrid-event:hover,
.hp-calendar .fc-event:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
}

/* Default Event Colors (359Share branded) */
.hp-calendar .fc-event:not(.fc-blocked) {
    background: #2b2b2b !important;
    color: #ffffff !important;
}

/* Confirmed/Published Events */
.hp-calendar .fc-event.fc-event-start {
    border-top-left-radius: 6px !important;
    border-bottom-left-radius: 6px !important;
}

.hp-calendar .fc-event.fc-event-end {
    border-top-right-radius: 6px !important;
    border-bottom-right-radius: 6px !important;
}

/* Blocked Dates (Background Events) */
.hp-calendar .fc-bg-event.fc-blocked {
    background-color: #fef2f2 !important;
    opacity: 1 !important;
}

/* Unblocked highlight */
.hp-calendar .fc-bg-event.fc-unblocked {
    background-color: #f0fdf4 !important;
    opacity: 0.7 !important;
}

/* Event Dot */
.hp-calendar .fc-daygrid-event-dot {
    display: none !important;
}

/* Event Title */
.hp-calendar .fc-event-title {
    font-weight: 600 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.hp-calendar .fc-event-time {
    font-weight: 700 !important;
    margin-right: 4px !important;
}

/* ---------- Week/Time Grid View ---------- */
.hp-calendar .fc-timegrid-slot {
    height: 44px !important;
    border-color: #f3f3f3 !important;
}

.hp-calendar .fc-timegrid-slot-label-cushion {
    font-family: 'Inter', 'Outfit', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #a3a3a3 !important;
}

.hp-calendar .fc-timegrid-event {
    border-radius: 8px !important;
    border: none !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1) !important;
}

/* ---------- Price Ranges (Special Dates) ---------- */
.hp-calendar .fc-daygrid-day-frame .fc-range-price {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #16a34a !important;
}

/* ---------- Scrollbar Styling ---------- */
.hp-calendar .fc-scroller::-webkit-scrollbar {
    width: 6px !important;
}

.hp-calendar .fc-scroller::-webkit-scrollbar-track {
    background: transparent !important;
}

.hp-calendar .fc-scroller::-webkit-scrollbar-thumb {
    background: #ebebeb !important;
    border-radius: 3px !important;
}

.hp-calendar .fc-scroller::-webkit-scrollbar-thumb:hover {
    background: #d4d4d4 !important;
}

/* ---------- Calendar Mobile Responsive ---------- */
@media (max-width: 767px) {
    .hp-template--vendor-calendar-page .hp-page__title,
    .hp-template--listing-calendar-page .hp-page__title {
        font-size: 22px !important;
        margin: 0 0 20px 0 !important;
    }

    .hp-template--vendor-calendar-page .hp-calendar,
    .hp-template--listing-calendar-page .hp-calendar {
        padding: 16px !important;
        border-radius: 16px !important;
    }

    .hp-calendar .fc-toolbar.fc-header-toolbar {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 10px !important;
    }

    .hp-calendar .fc-toolbar-chunk {
        display: flex !important;
        justify-content: center !important;
    }

    .hp-calendar .fc-toolbar-chunk:empty {
        display: none !important;
    }

    .hp-calendar .fc-toolbar-title {
        font-size: 18px !important;
        text-align: center !important;
    }

    .hp-calendar .fc-button {
        padding: 6px 12px !important;
        font-size: 12px !important;
    }

    .hp-calendar .fc-col-header-cell-cushion {
        font-size: 10px !important;
        padding: 6px 2px !important;
    }

    .hp-calendar .fc-daygrid-day-number {
        font-size: 11px !important;
        padding: 4px 6px !important;
    }

    .hp-calendar .fc-daygrid-event,
    .hp-calendar .fc-event {
        font-size: 10px !important;
        padding: 2px 4px !important;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .hp-template--vendor-calendar-page .hp-calendar,
    .hp-template--listing-calendar-page .hp-calendar {
        padding: 20px !important;
    }

    .hp-calendar .fc-toolbar-title {
        font-size: 20px !important;
    }
}

/* ==========================================================================
   PAGE 5: SEARCHES / SEARCH ALERTS (/account/search-alerts/)
   ========================================================================== */

/* Page Title */
.hp-template--search-alerts-view-page .hp-page__title {
    font-family: inherit !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 28px 0 !important;
}

/* Transform Table into Stacked Cards */
table.hp-search-alerts.hp-table,
.hp-template--search-alerts-view-page .hp-search-alerts {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    border: none !important;
    border-collapse: separate !important;
    width: 100% !important;
}

/* Each Search Alert Row → Card */
.hp-search-alert.hp-search-alert--view-block {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 18px 22px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06),
                0 2px 8px rgba(0, 0, 0, 0.03) !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    transition: box-shadow 0.2s ease, transform 0.15s ease !important;
}

.hp-search-alert.hp-search-alert--view-block:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important;
    transform: translateY(-1px) !important;
}

/* Query Cell (Search Term) */
.hp-search-alert__query {
    display: block !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.hp-search-alert__query strong {
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    display: block !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Category Cell */
.hp-search-alert__category {
    display: block !important;
    flex: 0 0 auto !important;
}

.hp-search-alert__category span {
    display: inline-block !important;
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    line-height: 1.3 !important;
}

/* Params Cell */
.hp-search-alert__params {
    font-size: 13px !important;
    color: #717171 !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
}

/* Actions Cell */
.hp-search-alert__actions.hp-search-alert__actions--primary {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
}

/* Action Buttons (View / Delete) */
.hp-search-alert__action {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
    color: #717171 !important;
    font-size: 14px !important;
}

/* View Button */
.hp-search-alert__action--view {
    background: #f3f3f3 !important;
}

.hp-search-alert__action--view:hover {
    background: #f2bb63 !important;
    color: #2b2b2b !important;
}

/* Delete Button */
.hp-search-alert__action--delete {
    background: #fef2f2 !important;
    color: #ef4444 !important;
}

.hp-search-alert__action--delete:hover {
    background: #ef4444 !important;
    color: #ffffff !important;
}

/* ---------- Searches Mobile Responsive ---------- */
@media (max-width: 767px) {
    .hp-template--search-alerts-view-page .hp-page__title {
        font-size: 22px !important;
        margin: 0 0 20px 0 !important;
    }

    .hp-search-alert.hp-search-alert--view-block {
        flex-wrap: wrap !important;
        padding: 14px 16px !important;
        gap: 10px !important;
    }

    .hp-search-alert__query {
        flex: 1 1 100% !important;
    }

    .hp-search-alert__actions.hp-search-alert__actions--primary {
        margin-left: auto !important;
    }
}


/* ==========================================================================
   PAGE 6: LISTINGS EDIT / ОБЯВИ (/account/listings/)
   ========================================================================== */

/* Page Title */
.hp-template--listings-edit-page .hp-page__title {
    font-family: inherit !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 28px 0 !important;
}

/* Transform Listings Edit Table into Cards */
.hp-template--listings-edit-page table.hp-table,
.hp-template--listings-edit-page .hp-listings {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    border: none !important;
    border-collapse: separate !important;
    width: 100% !important;
}

/* Each Listing Row → Card */
.hp-listing.hp-listing--edit-block {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 18px 22px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06),
                0 2px 8px rgba(0, 0, 0, 0.03) !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    transition: box-shadow 0.2s ease, transform 0.15s ease !important;
}

.hp-listing.hp-listing--edit-block:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important;
    transform: translateY(-1px) !important;
}

/* Listing Title Cell */
.hp-listing--edit-block .hp-listing__title {
    display: block !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.hp-listing--edit-block .hp-listing__title a {
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    text-decoration: none !important;
    display: block !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    transition: color 0.15s ease !important;
}

.hp-listing--edit-block .hp-listing__title a:hover {
    color: #f2bb63 !important;
}

/* Category Cell */
.hp-listing--edit-block .hp-listing__categories {
    display: block !important;
    flex: 0 0 auto !important;
}

.hp-listing--edit-block .hp-listing__categories a,
.hp-listing--edit-block .hp-listing__categories span {
    display: inline-block !important;
    background: rgba(242, 187, 99, 0.15) !important;
    color: #92650f !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
}

/* Date Cell */
.hp-listing--edit-block .hp-listing__created-date {
    display: block !important;
    flex: 0 0 auto !important;
    font-size: 13px !important;
    color: #a3a3a3 !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
}

/* Status Badge */
.hp-listing--edit-block .hp-listing__status {
    display: block !important;
    flex: 0 0 auto !important;
}

.hp-listing--edit-block .hp-listing__status span,
.hp-listing--edit-block .hp-listing__status td {
    display: inline-block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    line-height: 1.3 !important;
}

/* Status Colors */
.hp-listing--edit-block .hp-listing__status--publish span,
.hp-listing--edit-block td[class*="publish"] {
    background: #dcfce7 !important;
    color: #15803d !important;
}

.hp-listing--edit-block .hp-listing__status--pending span {
    background: #fef9c3 !important;
    color: #a16207 !important;
}

.hp-listing--edit-block .hp-listing__status--draft span {
    background: #f3f3f3 !important;
    color: #717171 !important;
}

/* Actions Cell */
.hp-listing--edit-block .hp-listing__actions.hp-listing__actions--primary {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
}

/* Action Buttons */
.hp-listing--edit-block .hp-listing__actions a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px !important;
    background: #f3f3f3 !important;
    color: #717171 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.hp-listing--edit-block .hp-listing__actions a:hover {
    background: #f2bb63 !important;
    color: #2b2b2b !important;
}

/* Delete action button */
.hp-listing--edit-block .hp-listing__actions a[class*="delete"] {
    background: #fef2f2 !important;
    color: #ef4444 !important;
}

.hp-listing--edit-block .hp-listing__actions a[class*="delete"]:hover {
    background: #ef4444 !important;
    color: #ffffff !important;
}

/* ---------- Listings Edit Mobile Responsive ---------- */
@media (max-width: 767px) {
    .hp-template--listings-edit-page .hp-page__title {
        font-size: 22px !important;
        margin: 0 0 20px 0 !important;
    }

    .hp-listing.hp-listing--edit-block {
        flex-wrap: wrap !important;
        padding: 14px 16px !important;
        gap: 10px !important;
    }

    .hp-listing--edit-block .hp-listing__title {
        flex: 1 1 100% !important;
    }

    .hp-listing--edit-block .hp-listing__created-date {
        display: none !important;
    }

    .hp-listing--edit-block .hp-listing__actions.hp-listing__actions--primary {
        margin-left: auto !important;
    }
}

/* ==========================================================================
   PAGE 7: SETTINGS (/account/settings/)
   ========================================================================== */

/* Page Title */
.hp-template--user-edit-settings-page .hp-page__title {
    font-family: inherit !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 28px 0 !important;
}

/* Settings Form Card */
.hp-template--user-edit-settings-page .hp-form--user-update {
    background: #ffffff !important;
    border-radius: 20px !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06),
                0 4px 16px rgba(0, 0, 0, 0.04) !important;
    padding: 32px !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
}

/* Form Field Labels */
.hp-template--user-edit-settings-page .hp-form__label,
.hp-template--user-edit-settings-page .hp-field label {
    font-family: 'Inter', 'Outfit', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #555555 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    margin-bottom: 6px !important;
}

/* Text Inputs */
.hp-template--user-edit-settings-page .hp-form input[type="text"],
.hp-template--user-edit-settings-page .hp-form input[type="email"],
.hp-template--user-edit-settings-page .hp-form input[type="password"],
.hp-template--user-edit-settings-page .hp-form input[type="tel"],
.hp-template--user-edit-settings-page .hp-form input[type="url"],
.hp-template--user-edit-settings-page .hp-form textarea,
.hp-template--user-edit-settings-page .hp-form select {
    border: 1.5px solid #ebebeb !important;
    border-radius: 12px !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
    font-family: 'Inter', 'Outfit', sans-serif !important;
    color: #2b2b2b !important;
    background: #fafbfc !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.hp-template--user-edit-settings-page .hp-form input:focus,
.hp-template--user-edit-settings-page .hp-form textarea:focus,
.hp-template--user-edit-settings-page .hp-form select:focus {
    border-color: #f2bb63 !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.15) !important;
    outline: none !important;
    background: #ffffff !important;
}

/* Textarea */
.hp-template--user-edit-settings-page .hp-form textarea {
    min-height: 100px !important;
    resize: vertical !important;
}

/* Avatar Upload Area */
.hp-template--user-edit-settings-page .hp-field--attachment-upload {
    margin-bottom: 24px !important;
}

.hp-template--user-edit-settings-page .hp-field--attachment-upload label {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 2px dashed #ebebeb !important;
    border-radius: 16px !important;
    padding: 20px !important;
    cursor: pointer !important;
    transition: border-color 0.2s ease, background 0.2s ease !important;
}

.hp-template--user-edit-settings-page .hp-field--attachment-upload label:hover {
    border-color: #f2bb63 !important;
    background: rgba(242, 187, 99, 0.04) !important;
}

/* Save Changes Button */
.hp-template--user-edit-settings-page .hp-form__button,
.hp-template--user-edit-settings-page .hp-form button[type="submit"] {
    background: #2b2b2b !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 14px 32px !important;
    font-family: 'Inter', 'Outfit', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    letter-spacing: 0.01em !important;
}

.hp-template--user-edit-settings-page .hp-form__button:hover,
.hp-template--user-edit-settings-page .hp-form button[type="submit"]:hover {
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    box-shadow: 0 4px 12px rgba(242, 187, 99, 0.35) !important;
}

/* Form Actions */
.hp-template--user-edit-settings-page .hp-form__actions {
    margin-top: 24px !important;
    padding-top: 20px !important;
    border-top: 1px solid #f3f3f3 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}

/* "Виж профила" / View Profile Action Link - Neutral Elegant Style (Web & Mobile) */
.hp-template--user-edit-settings-page .hp-form__actions a.hp-form__action--vendor-view,
.hp-template--user-edit-settings-page a.hp-form__action--vendor-view,
.hp-page--user-edit-settings-page a.hp-form__action--vendor-view,
.hp-form__action--vendor-view {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #3d3d3d !important;
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    padding: 7px 15px !important;
    border-radius: 10px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.hp-template--user-edit-settings-page .hp-form__actions a.hp-form__action--vendor-view:hover,
.hp-template--user-edit-settings-page a.hp-form__action--vendor-view:hover,
.hp-page--user-edit-settings-page a.hp-form__action--vendor-view:hover,
.hp-form__action--vendor-view:hover {
    color: #2b2b2b !important;
    background: #f3f3f3 !important;
    border-color: #d4d4d4 !important;
    text-decoration: none !important;
}

.hp-template--user-edit-settings-page .hp-form__actions a.hp-form__action--vendor-view i,
.hp-template--user-edit-settings-page a.hp-form__action--vendor-view i,
.hp-form__action--vendor-view i {
    color: #f2bb63 !important;
}

/* Delete Account Link ONLY in Red */
.hp-template--user-edit-settings-page .hp-form__actions a.hp-form__action--user-delete,
.hp-template--user-edit-settings-page .hp-form__actions a[href*="delete"],
.hp-template--user-edit-settings-page .hp-form__actions a[href*="#user_delete_modal"] {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #ef4444 !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}

.hp-template--user-edit-settings-page .hp-form__actions a.hp-form__action--user-delete:hover,
.hp-template--user-edit-settings-page .hp-form__actions a[href*="delete"]:hover,
.hp-template--user-edit-settings-page .hp-form__actions a[href*="#user_delete_modal"]:hover {
    color: #dc2626 !important;
    text-decoration: underline !important;
}

/* Form Field Groups / Spacing */
.hp-template--user-edit-settings-page .hp-form__field,
.hp-template--user-edit-settings-page .hp-field {
    margin-bottom: 20px !important;
}

/* Form Messages */
.hp-template--user-edit-settings-page .hp-form__message {
    border-radius: 12px !important;
    padding: 14px 18px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

.hp-template--user-edit-settings-page .hp-form__message--success {
    background: #dcfce7 !important;
    color: #15803d !important;
    border: 1px solid #bbf7d0 !important;
}

.hp-template--user-edit-settings-page .hp-form__message--error {
    background: #fef2f2 !important;
    color: #dc2626 !important;
    border: 1px solid #fecaca !important;
}

/* ---------- Settings Mobile Responsive ---------- */
@media (max-width: 767px) {
    .hp-template--user-edit-settings-page .hp-page__title {
        font-size: 22px !important;
        margin: 0 0 20px 0 !important;
    }

    .hp-template--user-edit-settings-page .hp-form--user-update {
        padding: 20px 16px !important;
        border-radius: 16px !important;
    }

    .hp-template--user-edit-settings-page .hp-form__button,
    .hp-template--user-edit-settings-page .hp-form button[type="submit"] {
        width: 100% !important;
        text-align: center !important;
    }
}


/* ==========================================================================
   PAGE 8: ORDERS (/account/orders/)
   ========================================================================== */

/* Page Title */
.hp-template--orders-edit-page .hp-page__title {
    font-family: inherit !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 16px 0 !important;
}

/* Transform Orders Table into Cards */
table.hp-orders.hp-table,
.hp-template--orders-edit-page .hp-orders {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    border: none !important;
    border-collapse: separate !important;
    width: 100% !important;
}

/* Each Order Row → Card */
.hp-order.hp-order--edit-block {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 18px 22px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06),
                0 2px 8px rgba(0, 0, 0, 0.03) !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    transition: box-shadow 0.2s ease, transform 0.15s ease !important;
}

.hp-order.hp-order--edit-block:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important;
    transform: translateY(-1px) !important;
}

/* Order Number Cell */
.hp-order--edit-block .hp-order__number {
    display: block !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.hp-order--edit-block .hp-order__number a {
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: color 0.15s ease !important;
}

.hp-order--edit-block .hp-order__number a:hover {
    color: #f2bb63 !important;
}

.hp-order--edit-block .hp-order__number .hp-icon {
    font-size: 13px !important;
    color: #a3a3a3 !important;
}

/* Order Total Cell */
.hp-order--edit-block .hp-order__total {
    display: block !important;
    flex: 0 0 auto !important;
}

.hp-order--edit-block .hp-order__total span {
    font-family: 'Inter', 'Outfit', sans-serif !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
}

/* Order Status Badge */
.hp-order--edit-block .hp-order__status {
    display: block !important;
    flex: 0 0 auto !important;
}

.hp-order--edit-block .hp-order__status span {
    display: inline-block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    line-height: 1.3 !important;
}

/* Order Status Colors */
.hp-order--edit-block .hp-order__status.hp-status--wc-completed span,
.hp-order--edit-block .hp-order__status.hp-status--publish span {
    background: #dcfce7 !important;
    color: #15803d !important;
}

.hp-order--edit-block .hp-order__status.hp-status--wc-processing span {
    background: #fef3c7 !important;
    color: #92400e !important;
}

.hp-order--edit-block .hp-order__status.hp-status--wc-pending span,
.hp-order--edit-block .hp-order__status.hp-status--pending span {
    background: #fef9c3 !important;
    color: #a16207 !important;
}

.hp-order--edit-block .hp-order__status.hp-status--wc-on-hold span {
    background: #fff7ed !important;
    color: #c2410c !important;
}

.hp-order--edit-block .hp-order__status.hp-status--wc-cancelled span,
.hp-order--edit-block .hp-order__status.hp-status--wc-refunded span,
.hp-order--edit-block .hp-order__status.hp-status--wc-failed span {
    background: #fef2f2 !important;
    color: #dc2626 !important;
}

/* Delivered Badge */
.hp-order--edit-block .hp-order__delivered-badge {
    color: #15cd72 !important;
    margin-left: 6px !important;
    font-size: 13px !important;
}

/* Order Date Cell */
.hp-order--edit-block .hp-order__created-date {
    display: block !important;
    flex: 0 0 auto !important;
    font-size: 13px !important;
    color: #a3a3a3 !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
}

/* Order Actions Cell */
.hp-order--edit-block .hp-order__actions.hp-order__actions--primary {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
}

.hp-order--edit-block .hp-order__actions a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px !important;
    background: #f3f3f3 !important;
    color: #717171 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.hp-order--edit-block .hp-order__actions a:hover {
    background: #f2bb63 !important;
    color: #2b2b2b !important;
}

/* ---------- Single Order Detail Page ---------- */
.hp-template--order-edit-page .hp-page__title {
    font-family: inherit !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 28px 0 !important;
}

/* Order Detail Card Container */
.hp-order.hp-order--page.hp-order--edit-page {
    background: #ffffff !important;
    border-radius: 20px !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06),
                0 4px 16px rgba(0, 0, 0, 0.04) !important;
    padding: 28px !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
}

/* Order Header Styling */
.hp-order--edit-page .hp-order__details--primary {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    align-items: center !important;
}

.hp-order--edit-page .hp-order__status span {
    display: inline-block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    padding: 4px 10px !important;
    border-radius: var(--share-radius-pill) !important;
    background: #f3f3f3 !important;
    color: #404040 !important;
}

.hp-order--edit-page .hp-order__vendor,
.hp-order--edit-page .hp-order__buyer,
.hp-order--edit-page .hp-order__created-date {
    font-size: 14px !important;
    color: #717171 !important;
}

.hp-order--edit-page .hp-order__vendor a,
.hp-order--edit-page .hp-order__buyer a {
    color: #2b2b2b !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.hp-order--edit-page .hp-order__vendor a:hover,
.hp-order--edit-page .hp-order__buyer a:hover {
    color: #f2bb63 !important;
}

/* Order Actions */
.hp-order--edit-page .hp-order__actions--primary .hp-order__action {
    font-family: 'Inter', 'Outfit', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 10px 20px !important;
    border-radius: 10px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

/* WooCommerce Order Details Table */
.hp-order--edit-page .woocommerce-table {
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid #f3f3f3 !important;
}

.hp-order--edit-page .woocommerce-table th {
    background: #fafbfc !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: #a3a3a3 !important;
}

.hp-order--edit-page .woocommerce-table td {
    font-size: 14px !important;
    color: #2b2b2b !important;
}

/* ---------- Orders Mobile Responsive ---------- */
@media (max-width: 767px) {
    .hp-template--orders-edit-page .hp-page__title,
    .hp-template--order-edit-page .hp-page__title {
        font-size: 22px !important;
        margin: 0 0 20px 0 !important;
    }

    .hp-order.hp-order--edit-block {
        flex-wrap: wrap !important;
        padding: 14px 16px !important;
        gap: 10px !important;
    }

    .hp-order--edit-block .hp-order__number {
        flex: 1 1 100% !important;
    }

    .hp-order--edit-block .hp-order__created-date {
        display: none !important;
    }

    .hp-order--edit-block .hp-order__actions.hp-order__actions--primary {
        margin-left: auto !important;
    }

    .hp-order.hp-order--page.hp-order--edit-page {
        padding: 18px 16px !important;
        border-radius: 16px !important;
    }
}

/* ==========================================================================
   ACCOUNT SIDEBAR MENU (shared across all /account/* pages)
   ========================================================================== */

/* Sidebar Container */
.hp-page__sidebar {
    padding-right: 20px !important;
}

/* Menu Widget Card */
.hp-page__sidebar .hp-widget.widget_nav_menu {
    background: #ffffff !important;
    border-radius: 20px !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06),
                0 4px 16px rgba(0, 0, 0, 0.04) !important;
    padding: 12px !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    overflow: hidden !important;
}

/* Menu List */
.hp-page__sidebar .hp-widget.widget_nav_menu .menu,
.hp-page__sidebar .hp-widget.widget_nav_menu ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Menu Items */
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li {
    margin: 0 !important;
    padding: 0 !important;
}

.hp-page__sidebar .hp-widget.widget_nav_menu .menu li a {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 12px 16px !important;
    border-radius: 12px !important;
    font-family: 'Inter', 'Outfit', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #555555 !important;
    text-decoration: none !important;
    transition: all 0.15s ease !important;
    line-height: 1.4 !important;
}

.hp-page__sidebar .hp-widget.widget_nav_menu .menu li a:hover {
    background: #fafbfc !important;
    color: #2b2b2b !important;
}

/* Active Menu Item */
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li.current-menu-item a,
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li.current_page_item a {
    background: rgba(242, 187, 99, 0.1) !important;
    color: #2b2b2b !important;
    font-weight: 700 !important;
    border-left: 3px solid #f2bb63 !important;
}

/* Menu Icons */
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li a i,
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li a .hp-icon {
    font-size: 16px !important;
    width: 20px !important;
    text-align: center !important;
    color: #a3a3a3 !important;
    transition: color 0.15s ease !important;
}

.hp-page__sidebar .hp-widget.widget_nav_menu .menu li a:hover i,
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li a:hover .hp-icon {
    color: #f2bb63 !important;
}

.hp-page__sidebar .hp-widget.widget_nav_menu .menu li.current-menu-item a i,
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li.current_page_item a i,
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li.current-menu-item a .hp-icon,
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li.current_page_item a .hp-icon {
    color: #f2bb63 !important;
}

/* Logout Link (targeted explicitly so "Виж профила" is NEVER red) */
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li.hp-menu__item--user-logout a,
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li.hp-menu__item--logout a,
.hp-page__sidebar .hp-widget.widget_nav_menu .menu a[href*="logout"],
.hp-page__sidebar .hp-widget.widget_nav_menu .menu a[href*="action=logout"] {
    margin-top: 8px !important;
    padding-top: 14px !important;
    border-top: 1px solid #f3f3f3 !important;
    border-radius: 0 0 12px 12px !important;
    color: #ef4444 !important;
}

.hp-page__sidebar .hp-widget.widget_nav_menu .menu li.hp-menu__item--user-logout a:hover,
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li.hp-menu__item--logout a:hover,
.hp-page__sidebar .hp-widget.widget_nav_menu .menu a[href*="logout"]:hover {
    background: #fef2f2 !important;
    color: #dc2626 !important;
}

/* Explicitly ensure "View Profile" / "Виж профила" retains normal elegant navigation color */
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li a[href*="/user/"],
.hp-page__sidebar .hp-widget.widget_nav_menu .menu li a[href*="/vendor/"] {
    color: #404040 !important;
    border-top: none !important;
    margin-top: 0 !important;
    padding-top: 11px !important;
}

/* ==========================================================================
   GLOBAL POLISHING PASS — All Account Pages & Gray Frame Elimination
   ========================================================================== */

/* ---- 1. ELIMINATE THE "GRAY SQUARE" CANVAS ACROSS ALL PAGES ---- */
body {
    background-color: #ffffff !important;
}

.site-content,
.site-content > .container,
.site-container,
.hp-page,
.hp-page__content,
.hp-block__placeholder,
.hp-template--user-account-page .hp-page,
.hp-template--listings-edit-page .hp-page,
.hp-template--user-edit-settings-page .hp-page,
.hp-template--orders-edit-page .hp-page,
.hp-template--order-edit-page .hp-page,
.hp-template--search-alerts-view-page .hp-page,
.hp-template--bookings-view-page .hp-page,
.hp-template--messages-view-page .hp-page,
.hp-template--listings-favorite-page,
.hp-template--listings-favorite-page .hp-page,
.hp-page--listings-favorite-page,
.hp-template--vendor-calendar-page,
.hp-template--vendor-calendar-page .hp-page,
.hp-template--listing-calendar-page,
.hp-template--listing-calendar-page .hp-page,
.hp-template--vendor-dashboard-page,
.hp-template--vendor-dashboard-page .hp-page {
    background-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Page titles */
.hp-template--listings-edit-page .hp-page__title,
.hp-template--listings-favorite-page .hp-page__title,
.hp-page--listings-favorite-page .hp-page__title,
.hp-template--vendor-calendar-page .hp-page__title,
.hp-template--listing-calendar-page .hp-page__title,
.hp-template--vendor-dashboard-page .hp-page__title,
.hp-template--orders-edit-page .hp-page__title,
.hp-template--bookings-view-page .hp-page__title,
.hp-template--user-edit-settings-page .hp-page__title {
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #3d3d3d !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 24px 0 !important;
}

/* ---- 2. ACCOUNT 2-COLUMN SPLIT (DESKTOP: SIDEBAR 30% / CONTENT 70%; MOBILE: HIDE SIDEBAR) ---- */
@media (min-width: 992px) {
    body[class*="hp-page--listings"] .hp-row,
    body[class*="hp-page--bookings"] .hp-row,
    body[class*="hp-page--orders"] .hp-row,
    body[class*="hp-page--messages"] .hp-row,
    body[class*="hp-page--vendor"] .hp-row,
    body[class*="hp-page--user"] .hp-row,
    .hp-page--user-account-page .hp-row,
    .hp-page--listings-edit-page .hp-row,
    .hp-page--user-edit-settings-page .hp-row,
    .hp-page--orders-edit-page .hp-row,
    .hp-page--orders-view-page .hp-row,
    .hp-page--order-edit-page .hp-row,
    .hp-page--order-view-page .hp-row,
    .hp-page--search-alerts-view-page .hp-row,
    .hp-page--bookings-view-page .hp-row,
    .hp-page--booking-view-page .hp-row,
    .hp-page--messages-view-page .hp-row,
    .hp-page--listings-favorite-page .hp-row,
    .hp-page--vendor-calendar-page .hp-row,
    .hp-page--listing-calendar-page .hp-row,
    .hp-page--vendor-dashboard-page .hp-row,
    .hp-template--user-account-page .hp-row,
    .hp-template--listings-edit-page .hp-row,
    .hp-template--orders-edit-page .hp-row,
    .hp-template--order-edit-page .hp-row,
    .hp-template--bookings-view-page .hp-row,
    .hp-template--vendor-calendar-page .hp-row,
    .hp-template--vendor-dashboard-page .hp-row {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        margin-left: -15px !important;
        margin-right: -15px !important;
    }

    body[class*="hp-page--listings"] .hp-page__sidebar,
    body[class*="hp-page--bookings"] .hp-page__sidebar,
    body[class*="hp-page--orders"] .hp-page__sidebar,
    body[class*="hp-page--messages"] .hp-page__sidebar,
    body[class*="hp-page--vendor"] .hp-page__sidebar,
    body[class*="hp-page--user"] .hp-page__sidebar,
    .hp-page--user-account-page .hp-page__sidebar,
    .hp-page--listings-edit-page .hp-page__sidebar,
    .hp-page--user-edit-settings-page .hp-page__sidebar,
    .hp-page--orders-edit-page .hp-page__sidebar,
    .hp-page--orders-view-page .hp-page__sidebar,
    .hp-page--order-edit-page .hp-page__sidebar,
    .hp-page--order-view-page .hp-page__sidebar,
    .hp-page--search-alerts-view-page .hp-page__sidebar,
    .hp-page--bookings-view-page .hp-page__sidebar,
    .hp-page--booking-view-page .hp-page__sidebar,
    .hp-page--messages-view-page .hp-page__sidebar,
    .hp-page--listings-favorite-page .hp-page__sidebar,
    .hp-page--vendor-calendar-page .hp-page__sidebar,
    .hp-page--listing-calendar-page .hp-page__sidebar,
    .hp-page--vendor-dashboard-page .hp-page__sidebar,
    .hp-template--user-account-page .hp-page__sidebar,
    .hp-template--listings-edit-page .hp-page__sidebar,
    .hp-template--orders-edit-page .hp-page__sidebar,
    .hp-template--order-edit-page .hp-page__sidebar,
    .hp-template--bookings-view-page .hp-page__sidebar,
    .hp-template--vendor-calendar-page .hp-page__sidebar,
    .hp-template--vendor-dashboard-page .hp-page__sidebar {
        display: block !important;
        flex: 0 0 30% !important;
        max-width: 30% !important;
        width: 30% !important;
        padding-left: 15px !important;
        padding-right: 25px !important;
        box-sizing: border-box !important;
    }

    body[class*="hp-page--listings"] .hp-page__content,
    body[class*="hp-page--bookings"] .hp-page__content,
    body[class*="hp-page--orders"] .hp-page__content,
    body[class*="hp-page--messages"] .hp-page__content,
    body[class*="hp-page--vendor"] .hp-page__content,
    body[class*="hp-page--user"] .hp-page__content,
    .hp-page--user-account-page .hp-page__content,
    .hp-page--listings-edit-page .hp-page__content,
    .hp-page--user-edit-settings-page .hp-page__content,
    .hp-page--orders-edit-page .hp-page__content,
    .hp-page--orders-view-page .hp-page__content,
    .hp-page--order-edit-page .hp-page__content,
    .hp-page--order-view-page .hp-page__content,
    .hp-page--search-alerts-view-page .hp-page__content,
    .hp-page--bookings-view-page .hp-page__content,
    .hp-page--booking-view-page .hp-page__content,
    .hp-page--messages-view-page .hp-page__content,
    .hp-page--listings-favorite-page .hp-page__content,
    .hp-page--vendor-calendar-page .hp-page__content,
    .hp-page--listing-calendar-page .hp-page__content,
    .hp-page--vendor-dashboard-page .hp-page__content,
    .hp-template--user-account-page .hp-page__content,
    .hp-template--listings-edit-page .hp-page__content,
    .hp-template--orders-edit-page .hp-page__content,
    .hp-template--order-edit-page .hp-page__content,
    .hp-template--bookings-view-page .hp-page__content,
    .hp-template--vendor-calendar-page .hp-page__content,
    .hp-template--vendor-dashboard-page .hp-page__content {
        display: block !important;
        flex: 0 0 70% !important;
        max-width: 70% !important;
        width: 70% !important;
        min-width: 0 !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        box-sizing: border-box !important;
        margin: 0 !important;
    }
}

/* Mobile & Tablet (< 992px): Completely hide the desktop sidebar navigation so it never interferes with content */
@media (max-width: 991px) {
    body[class*="hp-page--listings"] .hp-page__sidebar,
    body[class*="hp-page--bookings"] .hp-page__sidebar,
    body[class*="hp-page--orders"] .hp-page__sidebar,
    body[class*="hp-page--messages"] .hp-page__sidebar,
    body[class*="hp-page--user"] .hp-page__sidebar,
    body[class*="hp-page--listings"] .sticky-wrapper,
    body[class*="hp-page--bookings"] .sticky-wrapper,
    body[class*="hp-page--orders"] .sticky-wrapper,
    body[class*="hp-page--messages"] .sticky-wrapper,
    body[class*="hp-page--user"] .sticky-wrapper,
    .hp-page--user-account-page .hp-page__sidebar,
    .hp-page--listings-edit-page .hp-page__sidebar,
    .hp-page--user-edit-settings-page .hp-page__sidebar,
    .hp-page--orders-edit-page .hp-page__sidebar,
    .hp-page--orders-view-page .hp-page__sidebar,
    .hp-page--order-edit-page .hp-page__sidebar,
    .hp-page--order-view-page .hp-page__sidebar,
    .hp-page--search-alerts-view-page .hp-page__sidebar,
    .hp-page--bookings-view-page .hp-page__sidebar,
    .hp-page--booking-view-page .hp-page__sidebar,
    .hp-page--messages-view-page .hp-page__sidebar,
    .hp-page--messages-thread-page .hp-page__sidebar,
    .hp-page--listings-favorite-page .hp-page__sidebar,
    .hp-page--vendor-calendar-page .hp-page__sidebar,
    .hp-page--listing-calendar-page .hp-page__sidebar,
    .hp-template--user-account-page .hp-page__sidebar,
    .hp-template--listings-edit-page .hp-page__sidebar,
    .hp-template--user-edit-settings-page .hp-page__sidebar,
    .hp-template--orders-edit-page .hp-page__sidebar,
    .hp-template--order-edit-page .hp-page__sidebar,
    .hp-template--search-alerts-view-page .hp-page__sidebar,
    .hp-template--bookings-view-page .hp-page__sidebar,
    .hp-template--booking-view-page .hp-page__sidebar,
    .hp-template--messages-view-page .hp-page__sidebar,
    .hp-template--messages-thread-page .hp-page__sidebar,
    .hp-template--listings-favorite-page .hp-page__sidebar,
    .hp-template--vendor-calendar-page .hp-page__sidebar,
    .hp-template--listing-calendar-page .hp-page__sidebar,
    .hp-page--user-account .hp-page__sidebar,
    .hp-page__sidebar:has(.hp-menu--user-account),
    .hp-page__sidebar:has(.widget_nav_menu),
    .hp-page__sidebar:has(.hp-widget--user-account-menu),
    .hp-page__sidebar .widget_nav_menu {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        position: static !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }

    body[class*="hp-page--listings"] .hp-page__content,
    body[class*="hp-page--bookings"] .hp-page__content,
    body[class*="hp-page--orders"] .hp-page__content,
    body[class*="hp-page--messages"] .hp-page__content,
    body[class*="hp-page--vendor"] .hp-page__content,
    body[class*="hp-page--user"] .hp-page__content,
    .hp-page--user-account-page .hp-page__content,
    .hp-page--listings-edit-page .hp-page__content,
    .hp-page--user-edit-settings-page .hp-page__content,
    .hp-page--orders-edit-page .hp-page__content,
    .hp-page--orders-view-page .hp-page__content,
    .hp-page--order-edit-page .hp-page__content,
    .hp-page--order-view-page .hp-page__content,
    .hp-page--search-alerts-view-page .hp-page__content,
    .hp-page--bookings-view-page .hp-page__content,
    .hp-page--booking-view-page .hp-page__content,
    .hp-page--messages-view-page .hp-page__content,
    .hp-page--messages-thread-page .hp-page__content,
    .hp-page--listings-favorite-page .hp-page__content,
    .hp-page--vendor-calendar-page .hp-page__content,
    .hp-page--listing-calendar-page .hp-page__content,
    .hp-page--vendor-dashboard-page .hp-page__content,
    .hp-template--user-account-page .hp-page__content,
    .hp-template--listings-edit-page .hp-page__content,
    .hp-template--user-edit-settings-page .hp-page__content,
    .hp-template--orders-edit-page .hp-page__content,
    .hp-template--order-edit-page .hp-page__content,
    .hp-template--search-alerts-view-page .hp-page__content,
    .hp-template--bookings-view-page .hp-page__content,
    .hp-template--booking-view-page .hp-page__content,
    .hp-template--messages-view-page .hp-page__content,
    .hp-template--messages-thread-page .hp-page__content,
    .hp-template--listings-favorite-page .hp-page__content,
    .hp-template--vendor-calendar-page .hp-page__content,
    .hp-template--listing-calendar-page .hp-page__content,
    .hp-template--vendor-dashboard-page .hp-page__content,
    .hp-template--page-sidebar-left .hp-page__content,
    .hp-page--user-account .hp-page__content {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        float: none !important;
        position: static !important;
    }
}

/* ---- 2.5. VENDOR DASHBOARD PAYOUT & BALANCE CARD (/account/vendor/dashboard/) ---- */
.hp-vendor__actions--secondary {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 20px !important;
    padding: 24px !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03) !important;
    margin-bottom: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.hp-vendor__actions--secondary .hp-vendor__balance {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

.hp-vendor__actions--secondary .hp-vendor__balance strong {
    font-family: 'Inter', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: #717171 !important;
}

.hp-vendor__actions--secondary .hp-vendor__balance span {
    font-family: 'Outfit', sans-serif !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #3d3d3d !important;
    line-height: 1.1 !important;
}

.hp-vendor__actions--secondary .hp-payout__action--request {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    padding: 12px 20px !important;
    border-radius: 12px !important;
    border: none !important;
    text-decoration: none !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.25) !important;
    cursor: pointer !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.hp-vendor__actions--secondary .hp-payout__action--request:hover {
    background: #e5ab4f !important;
    color: #1a1a1a !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.4) !important;
    text-decoration: none !important;
}

.hp-vendor__actions--secondary .hp-payout__action--request i {
    color: #2b2b2b !important;
    font-size: 15px !important;
}

/* Vendor Dashboard Mobile Layout (< 992px) */
@media (max-width: 991px) {
    .hp-template--vendor-dashboard-page .hp-page__sidebar,
    .hp-page--vendor-dashboard-page .hp-page__sidebar {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
        max-height: none !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        margin: 0 0 20px 0 !important;
        padding: 0 !important;
        pointer-events: auto !important;
        position: static !important;
        overflow: visible !important;
    }

    .hp-template--vendor-dashboard-page .hp-page__sidebar .widget_nav_menu,
    .hp-template--vendor-dashboard-page .hp-page__sidebar .hp-widget--user-account-menu,
    .hp-page--vendor-dashboard-page .hp-page__sidebar .widget_nav_menu,
    .hp-page--vendor-dashboard-page .hp-page__sidebar .hp-widget--user-account-menu {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .hp-vendor__actions--secondary {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: wrap !important;
        padding: 18px 20px !important;
        margin-bottom: 22px !important;
    }

    .hp-vendor__actions--secondary .hp-vendor__balance {
        flex: 1 1 auto !important;
    }

    .hp-vendor__actions--secondary .hp-vendor__balance span {
        font-size: 24px !important;
    }

    .hp-vendor__actions--secondary .hp-payout__action--request {
        width: auto !important;
        flex: 0 0 auto !important;
        padding: 10px 18px !important;
        font-size: 13.5px !important;
    }
}

@media (max-width: 520px) {
    .hp-vendor__actions--secondary {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 14px !important;
    }

    .hp-vendor__actions--secondary .hp-payout__action--request {
        width: 100% !important;
    }
}

/* ---- 3. FAVORITES PAGE 2-COLUMN GRID (/account/favorites/) ---- */
.hp-template--listings-favorite-page .hp-listings.hp-grid,
.hp-page--listings-favorite-page .hp-listings.hp-grid {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.hp-template--listings-favorite-page .hp-listings.hp-grid > .hp-row,
.hp-page--listings-favorite-page .hp-listings.hp-grid > .hp-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.hp-template--listings-favorite-page .hp-listings.hp-grid > .hp-row > .hp-grid__item,
.hp-page--listings-favorite-page .hp-listings.hp-grid > .hp-row > .hp-grid__item {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
}

@media (max-width: 767px) {
    .hp-template--listings-favorite-page .hp-listings.hp-grid > .hp-row,
    .hp-page--listings-favorite-page .hp-listings.hp-grid > .hp-row {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
}

/* ---- 4. LISTINGS EDIT PAGE MODERN CARDS (/account/listings/) ---- */
.hp-template--listings-edit-page .hp-page__topbar {
    display: flex !important;
    justify-content: flex-end !important;
    margin-bottom: 20px !important;
}

.hp-template--listings-edit-page a.hp-listing__action--add,
.hp-template--listings-edit-page .hp-page__topbar a {
    background: #2b2b2b !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 12px 24px !important;
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12) !important;
    transition: all 0.2s ease !important;
}

.hp-template--listings-edit-page a.hp-listing__action--add:hover,
.hp-template--listings-edit-page .hp-page__topbar a:hover {
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    box-shadow: 0 6px 18px rgba(242, 187, 99, 0.35) !important;
    transform: translateY(-1px);
}

.hp-template--listings-edit-page table.hp-table,
.hp-template--listings-edit-page .hp-table {
    display: block !important;
    width: 100% !important;
    border: none !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: transparent !important;
}

.hp-template--listings-edit-page table.hp-table thead,
.hp-template--listings-edit-page .hp-table thead {
    display: none !important;
}

.hp-template--listings-edit-page table.hp-table tbody,
.hp-template--listings-edit-page .hp-table tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    width: 100% !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 16px !important;
    padding: 16px 22px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-sizing: border-box !important;
    width: 100% !important;
    gap: 16px !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block:hover {
    border-color: #d4d4d4 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06) !important;
    transform: translateY(-1px);
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td {
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__title {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__title a {
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #3d3d3d !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 100% !important;
    transition: color 0.15s ease !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__title a:hover {
    color: #f2bb63 !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__title a i {
    color: #f2bb63 !important;
    font-size: 14px !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__categories {
    color: #717171 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__status {
    white-space: nowrap !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__status span {
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 5px 12px !important;
    border-radius: 9999px !important;
    display: inline-flex !important;
    align-items: center !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__status.hp-status--publish span {
    background: #ecfdf5 !important;
    color: #059669 !important;
    border: 1px solid rgba(16, 185, 129, 0.2) !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__status.hp-status--pending span {
    background: #fffbeb !important;
    color: #d97706 !important;
    border: 1px solid rgba(245, 158, 11, 0.2) !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__status.hp-status--draft span {
    background: #f3f3f3 !important;
    color: #717171 !important;
    border: 1px solid rgba(113, 113, 113, 0.2) !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__actions {
    flex-shrink: 0 !important;
    gap: 8px !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__actions a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 36px !important;
    height: 36px !important;
    padding: 0 14px !important;
    border-radius: 10px !important;
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    color: #404040 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__actions a:hover {
    background: #fef9ef !important;
    color: #b45309 !important;
    border-color: #f2bb63 !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.25) !important;
    transform: translateY(-1px);
}

.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__actions a:hover i,
.hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__actions a:hover .hp-icon {
    color: #f2bb63 !important;
}

@media (max-width: 767px) {
    .hp-template--listings-edit-page tr.hp-listing--edit-block {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 16px !important;
        gap: 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__title {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__title a {
        white-space: normal !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        word-break: break-word !important;
        font-size: 15px !important;
        line-height: 1.4 !important;
        max-width: 100% !important;
    }

    .hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__actions {
        width: 100% !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        justify-content: flex-start !important;
        border-top: 1px solid #f3f3f3 !important;
        padding-top: 12px !important;
        margin-top: 4px !important;
    }

    .hp-template--listings-edit-page tr.hp-listing--edit-block td.hp-listing__actions a {
        flex: 1 1 auto !important;
        min-width: calc(50% - 6px) !important;
        max-width: 100% !important;
        height: 36px !important;
        padding: 0 10px !important;
        font-size: 12px !important;
        box-sizing: border-box !important;
    }
}

/* ---- 5. VENDOR CALENDAR PAGE (/account/vendor/calendar/) ---- */
.hp-template--vendor-calendar-page .hp-calendar,
.hp-template--listing-calendar-page .hp-calendar {
    background: #ffffff !important;
    border-radius: 20px !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04) !important;
    border: 1px solid #ebebeb !important;
    padding: 24px !important;
    overflow: hidden !important;
}

.hp-calendar .fc-header-toolbar {
    margin-bottom: 22px !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
}

.hp-calendar .fc-toolbar-title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #3d3d3d !important;
    letter-spacing: -0.01em !important;
}

.hp-calendar .fc-button {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: 10px !important;
    padding: 8px 16px !important;
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    color: #404040 !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
}

.hp-calendar .fc-button:hover {
    background: #2b2b2b !important;
    color: #ffffff !important;
    border-color: #2b2b2b !important;
}

.hp-calendar .fc-button-active,
.hp-calendar .fc-button.fc-button-active {
    background: #2b2b2b !important;
    color: #ffffff !important;
    border-color: #2b2b2b !important;
}

/* Calendar action buttons (Block/Unblock) */
.hp-calendar .fc-block-button,
.hp-calendar .fc-unblock-button {
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    color: #404040 !important;
}

.hp-calendar .fc-block-button:hover {
    background: #ef4444 !important;
    color: #ffffff !important;
    border-color: #ef4444 !important;
}

.hp-calendar .fc-unblock-button:hover {
    background: #10b981 !important;
    color: #ffffff !important;
    border-color: #10b981 !important;
}

@media (max-width: 767px) {
    .hp-template--vendor-calendar-page .hp-calendar,
    .hp-template--listing-calendar-page .hp-calendar {
        padding: 14px !important;
        border-radius: 16px !important;
    }

    .hp-calendar .fc-header-toolbar {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .hp-calendar .fc-toolbar-chunk {
        display: flex !important;
        justify-content: center !important;
    }
}

/* ---- 6. BOOKINGS PAGE STRUCTURED DESIGN (/account/bookings/) ---- */
.hp-booking--view-block {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 18px !important;
    padding: 20px 24px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.hp-booking--view-block:hover {
    border-color: #d4d4d4 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06) !important;
    transform: translateY(-2px);
}

.hp-booking--view-block .hp-listing__content {
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

/* Row 1: Title & Status */
.hp-booking--view-block .hp-listing__title {
    margin: 0 !important;
    padding-right: 140px !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    display: block !important;
}

.hp-booking--view-block .hp-listing__title a {
    color: #3d3d3d !important;
    text-decoration: none !important;
}

.hp-booking--view-block .hp-listing__title a::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    border-radius: 18px !important;
}

/* Top-Right Status Badge */
.hp-booking--view-block .hp-status {
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 6px 14px !important;
    border-radius: 9999px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    line-height: 1 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
}

/* Row 2: Listing property pill & created meta */
.hp-booking--view-block .hp-listing__details--primary {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
    margin: 0 !important;
}

.hp-booking--view-block .hp-booking__listing {
    display: inline-flex !important;
    align-items: center !important;
    align-self: flex-start !important;
    gap: 6px !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    font-size: 13.5px !important;
    color: #3d3d3d !important;
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    padding: 5px 12px !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    position: relative !important;
    z-index: 2 !important;
    transition: all 0.2s ease !important;
}

.hp-booking--view-block .hp-booking__listing:hover {
    background: #ffffff !important;
    border-color: #f2bb63 !important;
}

.hp-booking--view-block .hp-booking__listing i {
    color: #f2bb63 !important;
}

.hp-booking--view-block .hp-listing__created-date,
.hp-booking--view-block .hp-listing__created-date * {
    font-family: 'Inter', sans-serif !important;
    color: #717171 !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    margin: 0 !important;
}

/* Row 3: Footer divider, Dates Capsule & Action button */
.hp-booking--view-block .hp-listing__footer {
    border-top: 1px solid #f3f3f3 !important;
    padding-top: 14px !important;
    margin-top: 2px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

.hp-booking--view-block .hp-booking__dates {
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    border-radius: 10px !important;
    padding: 6px 14px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #3d3d3d !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.hp-booking--view-block .hp-listing__footer::after {
    content: 'Преглед \2192' !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    background: #fafaf9 !important;
    border: 1px solid #ebebeb !important;
    border-radius: 10px !important;
    padding: 6px 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    transition: all 0.2s ease !important;
}

.hp-booking--view-block:hover .hp-listing__footer::after {
    background: #f2bb63 !important;
    border-color: #f2bb63 !important;
    color: #2b2b2b !important;
}

@media (max-width: 767px) {
    .hp-booking--view-block {
        padding: 16px !important;
        border-radius: 16px !important;
    }

    .hp-booking--view-block .hp-status {
        top: 16px !important;
        right: 16px !important;
        padding: 4px 10px !important;
        font-size: 11px !important;
    }

    .hp-booking--view-block .hp-listing__title {
        font-size: 16.5px !important;
        padding-right: 120px !important;
    }

    .hp-booking--view-block .hp-listing__footer {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 8px !important;
        padding-top: 10px !important;
    }

    .hp-booking--view-block .hp-booking__dates {
        justify-content: center !important;
        width: 100% !important;
        font-size: 12.5px !important;
    }

    .hp-booking--view-block .hp-listing__footer::after {
        justify-content: center !important;
        width: 100% !important;
        font-size: 12.5px !important;
    }
}

/* ---- 7. PAGINATION & SHARED UTILITIES ---- */
.hp-pagination {
    display: flex !important;
    justify-content: center !important;
    gap: 6px !important;
    margin-top: 28px !important;
}

.hp-pagination .page-numbers,
.hp-pagination a,
.hp-pagination span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 40px !important;
    height: 40px !important;
    padding: 0 12px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #2b2b2b !important;
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.hp-pagination a:hover {
    background: #f2bb63 !important;
    border-color: #f2bb63 !important;
    color: #2b2b2b !important;
}

.hp-pagination .current {
    background: #2b2b2b !important;
    border-color: #2b2b2b !important;
    color: #ffffff !important;
}

/* ---- 8. PREMIUM AUTHENTICATION PAGES (/account/login/, /account/register/) ---- */
.hp-template--user-login-page .site-content,
.hp-template--user-register-page .site-content,
.hp-template--user-password-request-page .site-content,
.hp-page--user-login-page .site-content,
.hp-page--user-register-page .site-content {
    background: #fafaf9 !important;
    min-height: calc(100vh - 160px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 40px 16px !important;
}

.hp-template--user-login-page .hp-page__content,
.hp-template--user-register-page .hp-page__content,
.hp-template--user-password-request-page .hp-page__content,
.hp-page--user-login-page .hp-page__content,
.hp-page--user-register-page .hp-page__content {
    width: 100% !important;
    max-width: 480px !important;
    margin: 0 auto !important;
    background: #ffffff !important;
    border-radius: 24px !important;
    border: 1px solid #ebebeb !important;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.04), 0 2px 8px rgba(0, 0, 0, 0.02) !important;
    padding: 38px 34px !important;
    box-sizing: border-box !important;
}

.hp-template--user-login-page .hp-page__title,
.hp-template--user-register-page .hp-page__title,
.hp-template--user-password-request-page .hp-page__title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #3d3d3d !important;
    text-align: center !important;
    margin-bottom: 24px !important;
    position: relative !important;
    padding-bottom: 12px !important;
}

.hp-template--user-login-page .hp-page__title::after,
.hp-template--user-register-page .hp-page__title::after,
.hp-template--user-password-request-page .hp-page__title::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 44px !important;
    height: 3px !important;
    background: #f2bb63 !important;
    border-radius: 3px !important;
}

.hp-form--user-login,
.hp-form--user-register,
.hp-form--user-password-request {
    margin-top: 10px !important;
}

.hp-form--user-login .hp-form__field label,
.hp-form--user-register .hp-form__field label,
.hp-form--user-password-request .hp-form__field label {
    font-family: 'Inter', sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #555555 !important;
    margin-bottom: 6px !important;
    display: block !important;
}

.hp-form--user-login input[type="text"],
.hp-form--user-login input[type="password"],
.hp-form--user-login input[type="email"],
.hp-form--user-register input[type="text"],
.hp-form--user-register input[type="password"],
.hp-form--user-register input[type="email"],
.hp-form--user-password-request input[type="text"],
.hp-form--user-password-request input[type="email"] {
    width: 100% !important;
    height: 48px !important;
    background: #fafaf9 !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 12px !important;
    padding: 0 16px !important;
    font-size: 15px !important;
    color: #3d3d3d !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
}

.hp-form--user-login input:focus,
.hp-form--user-register input:focus,
.hp-form--user-password-request input:focus {
    border-color: #f2bb63 !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.22) !important;
    outline: none !important;
}

/* Password Toggle Eye Icon Placement Inside Input */
.hp-form__field--password {
    position: relative !important;
}

.hp-form--user-login input[type="password"],
.hp-form--user-register input[type="password"],
.hp-form__field--password input.hp-field--password,
.hp-form input[type="password"] {
    padding-right: 48px !important;
}

.hp-form__field--password .hp-field__icon {
    position: absolute !important;
    right: 14px !important;
    bottom: 0 !important;
    height: 48px !important;
    width: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #8e959b !important;
    font-size: 16px !important;
    cursor: pointer !important;
    z-index: 10 !important;
    text-decoration: none !important;
    line-height: 1 !important;
    background: transparent !important;
    border: none !important;
    transition: color 0.15s ease !important;
}

.hp-form__field--password .hp-field__icon:hover {
    color: #002f34 !important;
}

.hp-form__field--password .hp-field__icon i,
.hp-form__field--password .hp-field__icon .hp-icon {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    line-height: 1 !important;
}


.hp-form--user-login .hp-form__actions,
.hp-form--user-register .hp-form__actions,
.hp-form--user-password-request .hp-form__actions {
    margin-top: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.hp-form--user-login button[type="submit"],
.hp-form--user-register button[type="submit"],
.hp-form--user-password-request button[type="submit"] {
    width: 100% !important;
    height: 50px !important;
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border-radius: 12px !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.25) !important;
}

.hp-form--user-login button[type="submit"]:hover,
.hp-form--user-register button[type="submit"]:hover,
.hp-form--user-password-request button[type="submit"]:hover {
    background: #e5ab4f !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.4) !important;
}

.hp-form--user-login .hp-form__actions a,
.hp-form--user-register .hp-form__actions a,
.hp-form--user-password-request .hp-form__actions a {
    text-align: center !important;
    font-size: 13.5px !important;
    color: #717171 !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}

.hp-form--user-login .hp-form__actions a:hover,
.hp-form--user-register .hp-form__actions a:hover,
.hp-form--user-password-request .hp-form__actions a:hover {
    color: #3d3d3d !important;
    text-decoration: underline !important;
}

@media (max-width: 520px) {
    .hp-template--user-login-page .hp-page__content,
    .hp-template--user-register-page .hp-page__content,
    .hp-template--user-password-request-page .hp-page__content {
        padding: 26px 20px !important;
        border-radius: 18px !important;
    }
}

/* ---- 9. REMOVE HERO BANNER / DEMO ILLUSTRATIONS ON CATEGORY PAGES ---- */
.tax-hp_listing_category .header-hero,
.tax-hp_listing_category .page-header,
.tax-hp_listing_category .hp-listing-category--view-page,
.post-type-archive-hp_listing .header-hero,
.post-type-archive-hp_listing .page-header {
    display: none !important;
    background-image: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* ---- 10. МОИТЕ ПЛАЩАНИЯ (/moyat-profil/orders/) MODERN CARDS & TABLE ---- */
.share-payments-subtitle {
    font-size: 14.5px !important;
    color: #717171 !important;
    margin-top: -12px !important;
    margin-bottom: 24px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

.woocommerce-account .woocommerce-orders-table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 10px !important;
    margin: 0 0 24px 0 !important;
    border: none !important;
    background: transparent !important;
}

.woocommerce-account .woocommerce-orders-table thead th {
    background: transparent !important;
    border: none !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: #717171 !important;
    padding: 6px 18px !important;
}

.woocommerce-account .woocommerce-orders-table tbody tr {
    background: #ffffff !important;
    box-shadow: 0 2px 10px rgba(43, 43, 43, 0.04) !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease !important;
}

.woocommerce-account .woocommerce-orders-table tbody tr:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 24px rgba(43, 43, 43, 0.07) !important;
}

.woocommerce-account .woocommerce-orders-table tbody td,
.woocommerce-account .woocommerce-orders-table tbody th {
    border-top: 1px solid #ebebeb !important;
    border-bottom: 1px solid #ebebeb !important;
    border-left: none !important;
    border-right: none !important;
    padding: 16px 18px !important;
    font-size: 14.5px !important;
    color: #3d3d3d !important;
    vertical-align: middle !important;
    background: #ffffff !important;
}

.woocommerce-account .woocommerce-orders-table tbody th:first-child,
.woocommerce-account .woocommerce-orders-table tbody td:first-child {
    border-left: 1px solid #ebebeb !important;
    border-top-left-radius: 14px !important;
    border-bottom-left-radius: 14px !important;
    font-weight: 700 !important;
}

.woocommerce-account .woocommerce-orders-table tbody td:last-child {
    border-right: 1px solid #ebebeb !important;
    border-top-right-radius: 14px !important;
    border-bottom-right-radius: 14px !important;
    text-align: right !important;
}

/* Order Number Link */
.woocommerce-account .woocommerce-orders-table tbody th a,
.woocommerce-account .woocommerce-orders-table tbody td.woocommerce-orders-table__cell-order-number a {
    color: #2b2b2b !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}

.woocommerce-account .woocommerce-orders-table tbody th a:hover,
.woocommerce-account .woocommerce-orders-table tbody td.woocommerce-orders-table__cell-order-number a:hover {
    color: #f59e0b !important;
}

/* Date Cell */
.woocommerce-account .woocommerce-orders-table tbody td.woocommerce-orders-table__cell-order-date {
    color: #717171 !important;
    font-size: 14px !important;
    white-space: nowrap !important;
}

/* Status Badges */
.woocommerce-account .woocommerce-orders-table tbody td.woocommerce-orders-table__cell-order-status {
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    white-space: nowrap !important;
}

/* Total Price */
.woocommerce-account .woocommerce-orders-table tbody td.woocommerce-orders-table__cell-order-total {
    font-size: 14.5px !important;
    font-weight: 600 !important;
    color: #2b2b2b !important;
}

/* Action Button ("Преглед") */
.woocommerce-account .woocommerce-orders-table .button.view {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 18px !important;
    background: #2b2b2b !important;
    color: #ffffff !important;
    border-radius: var(--share-radius-btn) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border: none !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 8px rgba(43, 43, 43, 0.1) !important;
}

.woocommerce-account .woocommerce-orders-table .button.view:hover {
    background: #f59e0b !important;
    color: #2b2b2b !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(245, 158, 11, 0.25) !important;
}

/* Pagination */
.woocommerce-account .woocommerce-pagination {
    margin-top: 24px !important;
    display: flex !important;
    justify-content: center !important;
    gap: 12px !important;
}

.woocommerce-account .woocommerce-pagination .button {
    padding: 10px 24px !important;
    border-radius: var(--share-radius-btn) !important;
    background: #ffffff !important;
    border: 1px solid #d4d4d4 !important;
    color: #404040 !important;
    font-weight: 600 !important;
    font-size: 13.5px !important;
    text-decoration: none !important;
    transition: all 0.15s ease !important;
}

.woocommerce-account .woocommerce-pagination .button:hover {
    border-color: #2b2b2b !important;
    color: #2b2b2b !important;
    background: #fafaf9 !important;
}

/* Mobile Responsive Cards */
@media (max-width: 768px) {
    .woocommerce-account .woocommerce-orders-table thead {
        display: none !important;
    }
    .woocommerce-account .woocommerce-orders-table,
    .woocommerce-account .woocommerce-orders-table tbody,
    .woocommerce-account .woocommerce-orders-table tr {
        display: block !important;
        width: 100% !important;
    }
    .woocommerce-account .woocommerce-orders-table tbody tr {
        margin-bottom: 16px !important;
        padding: 18px !important;
        border: 1px solid #ebebeb !important;
        border-radius: 16px !important;
        background: #ffffff !important;
        box-shadow: 0 2px 10px rgba(43, 43, 43, 0.04) !important;
    }
    .woocommerce-account .woocommerce-orders-table tbody td,
    .woocommerce-account .woocommerce-orders-table tbody th {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 10px 0 !important;
        border: none !important;
        border-bottom: 1px solid #f3f3f3 !important;
        border-radius: 0 !important;
        font-size: 14px !important;
        background: transparent !important;
    }
    .woocommerce-account .woocommerce-orders-table tbody td:last-child {
        border-bottom: none !important;
        padding-top: 14px !important;
        padding-bottom: 0 !important;
        display: block !important;
    }
    .woocommerce-account .woocommerce-orders-table tbody td::before,
    .woocommerce-account .woocommerce-orders-table tbody th::before {
        content: attr(data-title);
        font-weight: 600 !important;
        font-size: 12.5px !important;
        color: #717171 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.04em !important;
    }
    .woocommerce-account .woocommerce-orders-table .button.view {
        width: 100% !important;
        text-align: center !important;
        padding: 12px !important;
    }
}

/* ==========================================================================
   VENDOR RENTAL REQUESTS (/account/vendor/orders/) — 359SHARE BENCHMARK UI
   ========================================================================== */

/* 1. Interactive Filter Tabs Bar */
.share-vendor-orders-filter-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 22px;
    padding-bottom: 14px;
    border-bottom: 1px solid #f3f3f3;
}

.share-order-filter-tab {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 30px;
    font-size: 13.5px;
    font-weight: 600;
    color: #555555;
    cursor: pointer;
    outline: none;
    transition: all 0.18s cubic-bezier(0.16, 1, 0.3, 1);
    user-select: none;
}

.share-order-filter-tab:hover {
    background: #f3f3f3;
    color: #2b2b2b;
    border-color: #d4d4d4;
    transform: translateY(-1px);
}

.share-order-filter-tab.is-active {
    background: #2b2b2b;
    color: #ffffff !important;
    border-color: #2b2b2b;
    box-shadow: 0 4px 14px rgba(43, 43, 43, 0.16);
}

.share-order-filter-tab .share-filter-count {
    background: rgba(43, 43, 43, 0.08);
    color: #2b2b2b;
    font-size: 11.5px;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 12px;
    min-width: 18px;
    text-align: center;
    transition: all 0.18s ease;
}

.share-order-filter-tab.is-active .share-filter-count {
    background: rgba(255, 255, 255, 0.22);
    color: #ffffff;
}

.share-order-filter-tab--pending {
    color: #92400e;
}

.share-order-filter-tab--pending:not(.is-active) {
    background: #fffdf5;
    border-color: #fef3c7;
}

.share-order-filter-tab--pending:not(.is-active) .share-filter-count {
    background: #fef3c7;
    color: #b45309;
}

.share-order-filter-tab--delivered {
    color: #047857;
}

.share-order-filter-tab--delivered:not(.is-active) {
    background: #ecfdf5;
    border-color: #a7f3d0;
    color: #047857;
}

.share-order-filter-tab--delivered:not(.is-active) .share-filter-count {
    background: #d1fae5;
    color: #065f46;
}

.share-order-filter-tab--delivered.is-active {
    background: #059669;
    border-color: #047857;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(5, 150, 105, 0.25);
}

.share-order-filter-tab--delivered.is-active .share-filter-count {
    background: rgba(255, 255, 255, 0.25);
    color: #ffffff;
}

.share-order-filter-tab--returned {
    color: #6d28d9;
}

.share-order-filter-tab--returned:not(.is-active) {
    background: #f5f3ff;
    border-color: #ddd6fe;
    color: #6d28d9;
}

.share-order-filter-tab--returned:not(.is-active) .share-filter-count {
    background: #ede9fe;
    color: #5b21b6;
}

.share-order-filter-tab--returned.is-active {
    background: #7c3aed;
    border-color: #6d28d9;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(124, 58, 237, 0.25);
}

.share-order-filter-tab--returned.is-active .share-filter-count {
    background: rgba(255, 255, 255, 0.25);
    color: #ffffff;
}

.share-order-filter-tab--completed {
    color: #166534;
}

.share-order-filter-tab--completed:not(.is-active) {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #166534;
}

.share-order-filter-tab--completed:not(.is-active) .share-filter-count {
    background: #dcfce7;
    color: #166534;
}

.share-order-filter-tab--completed.is-active {
    background: #16a34a;
    border-color: #15803d;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(22, 163, 74, 0.25);
}

.share-order-filter-tab--completed.is-active .share-filter-count {
    background: rgba(255, 255, 255, 0.25);
    color: #ffffff;
}

.share-order-filter-tab--cancelled:not(.is-active) {
    background: #fef2f2;
    border-color: #fecaca;
    color: #991b1b;
}

.share-order-filter-tab--cancelled:not(.is-active) .share-filter-count {
    background: #fee2e2;
    color: #991b1b;
}

.share-order-filter-tab__dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #f59e0b;
    box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.2);
    display: inline-block;
    animation: sharePulseDot 2s infinite ease-in-out;
}

@keyframes sharePulseDot {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.45; transform: scale(0.85); }
}

.share-order-filter-tab__dot--delivered {
    background: #059669;
    box-shadow: 0 0 0 2px rgba(5, 150, 105, 0.2);
    animation: none;
}

.share-order-filter-tab__dot--returned {
    background: #7c3aed;
    box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.2);
    animation: none;
}

.share-order-filter-tab__dot--completed {
    background: #16a34a;
    box-shadow: 0 0 0 2px rgba(22, 163, 74, 0.2);
    animation: none;
}

.share-order-filter-tab.is-active .share-order-filter-tab__dot {
    background: #ffffff !important;
    box-shadow: none !important;
}

.share-filter-empty-notice {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 36px 20px;
    background: #ffffff;
    border: 1px dashed #d4d4d4;
    border-radius: 16px;
    color: #717171;
    font-size: 14.5px;
    font-weight: 500;
    margin-top: 10px;
}

.share-filter-empty-notice i {
    color: #a3a3a3;
    font-size: 18px;
}

/* 2. Empty State */
.share-vendor-empty-card {
    text-align: center;
    background: #fafaf9;
    border: 2px dashed #d4d4d4;
    border-radius: 24px;
    padding: 48px 28px;
    max-width: 680px;
    margin: 20px auto;
}

.share-vendor-empty-card__icon-wrap {
    width: 76px;
    height: 76px;
    margin: 0 auto 20px;
    background: #fdfbf7;
    color: #f2bb63;
    border: 1px solid #ebebeb;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
}

.share-vendor-empty-card__title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    margin: 0 0 10px 0 !important;
}

.share-vendor-empty-card__desc {
    font-size: 15px !important;
    color: #717171 !important;
    line-height: 1.6 !important;
    max-width: 540px;
    margin: 0 auto 28px !important;
}

.share-vendor-empty-card__tips {
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: 16px;
    padding: 16px 20px;
    margin: 0 auto 30px;
    text-align: left;
    max-width: 520px;
}

.share-vendor-tip-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 13.5px;
    color: #555555;
    line-height: 1.45;
}

.share-vendor-tip-item i {
    color: #f2bb63;
    margin-top: 3px;
    font-size: 14px;
}

.share-vendor-empty-card__actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.share-action-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 22px;
    border-radius: var(--share-radius-btn);
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.share-action-btn--primary {
    background: #2b2b2b;
    color: #ffffff !important;
}

.share-action-btn--primary:hover {
    background: #3d3d3d;
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(43, 43, 43, 0.15);
}

.share-action-btn--secondary {
    background: #ffffff;
    color: #2b2b2b !important;
    border: 1px solid #d4d4d4;
}

.share-action-btn--secondary:hover {
    background: #fafaf9;
    border-color: #a3a3a3;
}

.share-action-btn--outline {
    background: transparent;
    color: #717171 !important;
    border: 1px solid #ebebeb;
}

.share-action-btn--outline:hover {
    background: #ffffff;
    color: #2b2b2b !important;
}

/* 3. Orders Table Reset to Card Stack */
.hp-template--orders-edit-page table.hp-orders,
table.hp-orders {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    width: 100% !important;
    border: none !important;
    background: transparent !important;
    border-collapse: separate !important;
    margin: 0 0 30px 0 !important;
}

.hp-template--orders-edit-page table.hp-orders tbody,
table.hp-orders tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    width: 100% !important;
    border: none !important;
}

.hp-template--orders-edit-page tr.hp-order--edit-block,
tr.hp-order--edit-block {
    display: block !important;
    width: 100% !important;
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 18px rgba(43, 43, 43, 0.04) !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    overflow: hidden !important;
    margin: 0 !important;
}

.hp-template--orders-edit-page tr.hp-order--edit-block.share-order-hidden,
tr.hp-order--edit-block.share-order-hidden {
    display: none !important;
}

.hp-template--orders-edit-page tr.hp-order--edit-block:hover,
tr.hp-order--edit-block:hover {
    border-color: #d4d4d4 !important;
    box-shadow: 0 8px 30px rgba(43, 43, 43, 0.08) !important;
    transform: translateY(-2px) !important;
}

td.share-vendor-order-card__cell {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

/* 4. Inside The Benchmark Card */
.share-vendor-order-card {
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* Top Bar: ID, Date, Status */
.share-vendor-order-card__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 24px;
    background: #fafaf9;
    border-bottom: 1px solid #f3f3f3;
}

.share-vendor-order-card__header-left {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.share-vendor-order-card__id {
    font-weight: 700;
    font-size: 15px;
    color: #2b2b2b !important;
    text-decoration: none !important;
    display: flex;
    align-items: center;
    gap: 6px;
}

.share-vendor-order-card__id i {
    color: #717171;
    font-size: 13px;
}

.share-vendor-order-card__id:hover {
    color: #2b2b2b !important;
    text-decoration: underline !important;
}

.share-vendor-order-card__date {
    font-size: 13px;
    color: #717171;
    display: flex;
    align-items: center;
    gap: 5px;
}

/* Status Badges */
.share-order-status-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border-radius: var(--share-radius-pill);
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: 0.02em;
}

.share-order-status-badge.status--processing {
    background: #fffbeb;
    color: #92400e;
    border: 1px solid #fef3c7;
}

.share-order-status-badge.status--processing i {
    color: #f59e0b;
}

.share-order-status-badge.status--delivered {
    background: #ecfdf5;
    color: #047857;
    border: 1px solid #a7f3d0;
}

.share-order-status-badge.status--delivered i {
    color: #059669;
}

.share-order-status-badge.status--returned {
    background: #f5f3ff;
    color: #6d28d9;
    border: 1px solid #ddd6fe;
}

.share-order-status-badge.status--returned i {
    color: #7c3aed;
}

.share-order-status-badge.status--completed {
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.share-order-status-badge.status--completed i {
    color: #16a34a;
}

.share-order-status-badge.status--on-hold {
    background: #fffbeb;
    color: #b45309;
    border: 1px solid #fde68a;
}

.share-order-status-badge.status--cancelled {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

.share-order-status-badge.status--refunded {
    background: #faf5ff;
    color: #6b21a8;
    border: 1px solid #e9d5ff;
}

.share-order-status-badge.status--other {
    background: #f3f3f3;
    color: #404040;
    border: 1px solid #ebebeb;
}

/* Card Body */
.share-vendor-order-card__body {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 24px;
    padding: 22px 24px;
    align-items: center;
}

.share-vendor-order-card__label {
    display: block;
    font-size: 11.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #a3a3a3;
    margin-bottom: 6px;
}

/* Listing Details Block */
.share-vendor-order-card__listing {
    display: flex;
    align-items: center;
    gap: 16px;
}

.share-vendor-order-card__thumb-link {
    flex-shrink: 0;
    width: 86px;
    height: 70px;
    border-radius: 14px;
    overflow: hidden;
    background: #f3f3f3;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.share-vendor-order-card__thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.share-vendor-order-card__thumb-link:hover .share-vendor-order-card__thumb {
    transform: scale(1.05);
}

.share-vendor-order-card__thumb-link--placeholder {
    color: #a3a3a3;
    font-size: 24px;
}

.share-vendor-order-card__listing-details {
    flex: 1;
    min-width: 0;
}

.share-vendor-order-card__title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 16.5px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    text-decoration: none !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.35 !important;
    margin-bottom: 6px !important;
    transition: color 0.15s ease;
}

.share-vendor-order-card__title:hover {
    color: #2b2b2b !important;
    text-decoration: underline;
}

.share-vendor-order-card__dates-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 4px 12px;
    background: #f3f3f3;
    border-radius: var(--share-radius-pill);
    font-size: 12.5px;
    font-weight: 600;
    color: #404040;
}

.share-vendor-order-card__dates-pill i {
    color: #717171;
    font-size: 12px;
}

.share-order-days-badge {
    display: inline-flex;
    align-items: center;
    background: #ebebeb;
    color: #404040;
    border: 1px solid #d4d4d4;
    border-radius: var(--share-radius-pill);
    padding: 1px 8px;
    font-size: 11.5px;
    font-weight: 700;
    margin-left: 4px;
    letter-spacing: -0.01em;
}

/* Customer Block */
.share-vendor-order-card__customer {
    display: flex;
    flex-direction: column;
}

.share-vendor-order-card__customer-row {
    display: flex;
    align-items: center;
    gap: 12px;
}

.share-vendor-order-card__avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
    flex-shrink: 0;
}

.share-vendor-order-card__customer-meta {
    flex: 1;
    min-width: 0;
}

.share-vendor-order-card__customer-name {
    display: block;
    font-weight: 700;
    font-size: 14.5px;
    color: #2b2b2b;
    margin-bottom: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.share-vendor-order-card__customer-sub,
.share-vendor-rating-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    font-weight: 700;
    color: #9a3412;
    background: #fffbeb;
    border: 1px solid #fef08a;
    padding: 3px 11px;
    border-radius: 9999px;
    width: fit-content;
    margin-top: 3px;
    line-height: 1.2;
    box-shadow: 0 1px 2px rgba(245, 158, 11, 0.08);
}

.share-vendor-rating-pill i {
    font-size: 12px;
    color: #f59e0b;
    margin-right: 1px;
}

.share-vendor-rating-pill .share-vendor-rating-val {
    font-weight: 800;
    color: #9a3412;
}

.share-vendor-rating-pill .share-vendor-rating-count {
    font-weight: 700;
    color: #b45309;
}

.share-vendor-rating-pill--new {
    background: #fafaf9;
    border-color: #ebebeb;
    color: #717171;
    box-shadow: none;
}

.share-vendor-rating-pill--new i {
    color: #a3a3a3;
}

.share-vendor-rating-pill--new .share-vendor-rating-val {
    color: #717171;
    font-weight: 600;
}

/* Card Footer: Financials & Action Buttons */
.share-vendor-order-card__footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 24px;
    background: #ffffff;
    border-top: 1px solid #f3f3f3;
}

.share-vendor-order-card__financials {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.share-vendor-order-card__amount-block {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.share-vendor-order-card__amount-label {
    font-size: 13px;
    color: #717171;
    font-weight: 500;
}

.share-vendor-order-card__amount-value {
    font-family: 'Outfit', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
}

.share-vendor-order-card__deposit-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    background: #f3f3f3;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-pill);
    font-size: 12px;
    font-weight: 600;
    color: #555555;
}

.share-vendor-order-card__deposit-pill i {
    font-size: 11px;
    color: #717171;
}

.share-vendor-order-card__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.share-card-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 18px;
    height: 42px;
    box-sizing: border-box;
    border-radius: var(--share-radius-btn);
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap !important;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.share-card-btn--primary {
    background: #2b2b2b;
    color: #ffffff !important;
    height: 42px;
    box-sizing: border-box;
    white-space: nowrap !important;
    line-height: 1;
}

.share-card-btn--primary:hover {
    background: #3d3d3d;
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(43, 43, 43, 0.15);
}

.share-card-btn--primary i {
    transition: transform 0.2s ease;
}

.share-card-btn--primary:hover i {
    transform: translateX(3px);
}

.share-card-btn--chat {
    background: #ffffff;
    color: #2b2b2b !important;
    border: 1px solid #d4d4d4;
    padding: 0 16px;
    height: 42px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap !important;
    border-radius: var(--share-radius-btn);
    text-decoration: none !important;
    transition: all 0.18s ease;
}

.share-card-btn--chat:hover {
    background: #fafaf9;
    color: #2b2b2b !important;
    border-color: #a3a3a3;
    box-shadow: 0 4px 12px rgba(43, 43, 43, 0.08);
    transform: translateY(-1px);
}

.share-card-btn--chat i {
    color: #717171;
    transition: color 0.18s ease;
}

.share-card-btn--chat:hover i {
    color: #2b2b2b;
}

/* 4b. Dynamic Vendor Rental Lifecycle Action Buttons */
.share-card-btn--action {
    cursor: pointer;
    border: none;
    font-family: inherit;
    font-size: 13.5px;
    font-weight: 600;
}

.share-card-btn--handover {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.25);
}

.share-card-btn--handover:hover {
    background: linear-gradient(135deg, #059669 0%, #047857 100%);
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.35);
}

.share-card-btn--return {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(245, 158, 11, 0.25);
}

.share-card-btn--return:hover {
    background: linear-gradient(135deg, #d97706 0%, #b45309 100%);
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(245, 158, 11, 0.35);
}

.share-card-btn--complete {
    background: linear-gradient(135deg, #059669 0%, #047857 100%);
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(5, 150, 105, 0.25);
}

.share-card-btn--complete:hover {
    background: linear-gradient(135deg, #047857 0%, #065f46 100%);
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(4, 120, 87, 0.35);
}

.share-card-btn--cancel {
    background: #ffffff;
    color: #dc2626 !important;
    border: 1px solid #fecaca;
    cursor: pointer;
    font-family: inherit;
    font-size: 13.5px;
    font-weight: 600;
}

.share-card-btn--cancel:hover {
    background: #fef2f2;
    border-color: #f87171;
    color: #b91c1c !important;
    transform: translateY(-1px);
}

/* Card Instant Pulse on AJAX update */
@keyframes shareCardPulseGlow {
    0% {
        box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.5);
        border-color: #10b981;
    }
    70% {
        box-shadow: 0 0 0 10px rgba(16, 185, 129, 0);
        border-color: #10b981;
    }
    100% {
        box-shadow: 0 0 0 0 rgba(16, 185, 129, 0);
    }
}

.share-card-updated-pulse {
    animation: shareCardPulseGlow 1.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* 4c. Universal Rental Lifecycle Modal */
body.share-modal-locked {
    overflow: hidden !important;
}

.share-rental-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
}

.share-rental-modal__backdrop {
    position: fixed;
    inset: 0;
    background: rgba(43, 43, 43, 0.65);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}

.share-rental-modal__dialog {
    position: relative;
    z-index: 10;
    background: #ffffff;
    border-radius: 24px;
    max-width: 490px;
    width: 100%;
    box-shadow: 0 25px 50px -12px rgba(43, 43, 43, 0.28), 0 0 0 1px rgba(43, 43, 43, 0.06);
    overflow: hidden;
    animation: shareModalScaleIn 0.24s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes shareModalScaleIn {
    from {
        opacity: 0;
        transform: scale(0.95) translateY(10px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

.share-rental-modal__header {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 22px 24px 18px;
    border-bottom: 1px solid #f3f3f3;
    position: relative;
}

.share-rental-modal__icon-wrap {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}

.share-rental-modal__icon-wrap.icon-wrap--handover {
    background: #ecfdf5;
    color: #059669;
}

.share-rental-modal__icon-wrap.icon-wrap--return {
    background: #fffbeb;
    color: #d97706;
}

.share-rental-modal__icon-wrap.icon-wrap--complete {
    background: #ecfdf5;
    color: #047857;
}

.share-rental-modal__icon-wrap.icon-wrap--cancel {
    background: #fef2f2;
    color: #dc2626;
}

.share-rental-modal__title {
    margin: 0;
    font-family: 'Outfit', sans-serif !important;
    font-size: 19px;
    font-weight: 700;
    color: #2b2b2b;
    flex: 1;
    line-height: 1.3;
}

.share-rental-modal__close {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    color: #717171;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 20px;
    line-height: 1;
    transition: all 0.15s ease;
}

.share-rental-modal__close:hover {
    background: #f3f3f3;
    color: #2b2b2b;
    transform: scale(1.05);
}

.share-rental-modal__body {
    padding: 22px 24px;
}

.share-rental-modal__desc {
    font-size: 14.5px;
    color: #555555;
    line-height: 1.55;
    margin: 0 0 16px;
}

.share-rental-modal__meta-box {
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 14px;
    padding: 12px 18px;
    margin-bottom: 16px;
}

.share-rental-modal__meta-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 13.5px;
    padding: 4px 0;
}

.share-rental-modal__meta-label {
    color: #717171;
    font-weight: 500;
}

.share-rental-modal__meta-val {
    color: #2b2b2b;
    font-weight: 600;
}

.share-rental-modal__alert {
    font-size: 13px;
    padding: 11px 16px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    line-height: 1.45;
}

.share-rental-modal__alert.alert--info {
    background: #fafaf9;
    color: #2b2b2b;
    border: 1px solid #ebebeb;
}

.share-rental-modal__alert.alert--warning {
    background: #fffbeb;
    color: #92400e;
    border: 1px solid #fde68a;
}

.share-rental-modal__alert.alert--success {
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.share-rental-modal__alert.alert--danger {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

.share-rental-modal__footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 22px;
    border-top: 1px solid #f3f3f3;
}

.share-rental-modal__btn-cancel {
    background: #ffffff;
    border: 1px solid #d4d4d4;
    color: #555555;
    padding: 11px 20px;
    border-radius: 12px;
    font-size: 13.5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
}

.share-rental-modal__btn-cancel:hover {
    background: #fafaf9;
    color: #2b2b2b;
}

.share-rental-modal__btn-confirm {
    padding: 11px 22px;
    border-radius: 12px;
    font-size: 13.5px;
    font-weight: 600;
    border: none;
    color: #ffffff;
    cursor: pointer;
    transition: all 0.18s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: inherit;
}

.share-rental-modal__btn-confirm.btn--handover {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.28);
}

.share-rental-modal__btn-confirm.btn--return {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.28);
}

.share-rental-modal__btn-confirm.btn--complete {
    background: linear-gradient(135deg, #059669 0%, #047857 100%);
    box-shadow: 0 4px 12px rgba(4, 120, 87, 0.28);
}

.share-rental-modal__btn-confirm.btn--cancel {
    background: #dc2626;
    box-shadow: 0 4px 12px rgba(220, 38, 38, 0.28);
}

.share-rental-modal__btn-confirm:hover {
    opacity: 0.94;
    transform: translateY(-1px);
}

.share-rental-modal__btn-confirm:disabled {
    opacity: 0.65;
    cursor: not-allowed;
    transform: none;
}

/* 4d. Floating Toast Notification */
.share-order-toast {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 9999999;
    background: #2b2b2b;
    color: #ffffff;
    padding: 14px 22px;
    border-radius: 16px;
    box-shadow: 0 16px 36px -6px rgba(43, 43, 43, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.08);
    font-size: 14px;
    font-weight: 500;
    animation: shareToastIn 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes shareToastIn {
    from {
        opacity: 0;
        transform: translateY(14px) scale(0.96);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.share-order-toast__content {
    display: flex;
    align-items: center;
    gap: 12px;
}

.share-order-toast__icon.text-success {
    color: #10b981;
    font-size: 18px;
}

.share-order-toast__icon.text-danger {
    color: #ef4444;
    font-size: 18px;
}

/* 4e. Single Order Page Lifecycle Banner (/account/vendor/orders/<id>/) */
.share-order-details-lifecycle-banner {
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: 18px;
    padding: 22px 26px;
    margin-bottom: 24px;
    box-shadow: 0 2px 12px rgba(43, 43, 43, 0.03);
}

.share-order-details-lifecycle-banner__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

.share-order-details-lifecycle-banner__status-wrap {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.share-order-details-lifecycle-banner__desc {
    margin: 0;
    font-size: 14px;
    color: #717171;
    line-height: 1.45;
}

.share-order-details-lifecycle-banner__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* 4f. Refund & Dispute Action Buttons & Modals Polish */
.hp-order__action--refund,
.hp-order__action--dispute {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 18px;
    border-radius: 12px;
    font-size: 13.5px;
    font-weight: 600;
    text-decoration: none !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.hp-order__action--refund {
    background: #fffbeb;
    color: #b45309 !important;
    border: 1px solid #fde68a;
}

.hp-order__action--refund:hover {
    background: #fef3c7;
    color: #92400e !important;
    border-color: #fcd34d;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.15);
}

.hp-order__action--dispute {
    background: #fef2f2;
    color: #dc2626 !important;
    border: 1px solid #fecaca;
}

.hp-order__action--dispute:hover {
    background: #fee2e2;
    color: #b91c1c !important;
    border-color: #fca5a5;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(220, 38, 38, 0.15);
}

#order_refund_modal .hp-modal__content,
#order_dispute_modal .hp-modal__content {
    border-radius: 22px;
    box-shadow: 0 25px 50px -12px rgba(43, 43, 43, 0.28);
    overflow: hidden;
    padding: 28px;
    border: 1px solid rgba(43, 43, 43, 0.06);
}

#order_refund_modal .hp-modal__title,
#order_dispute_modal .hp-modal__title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 20px;
    font-weight: 700;
    color: #2b2b2b;
    letter-spacing: -0.02em;
}

#order_refund_modal .hp-form__button,
#order_dispute_modal .hp-form__button {
    width: 100%;
    margin-top: 14px;
    padding: 12px 24px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 600;
    background: #2b2b2b;
    color: #ffffff !important;
    border: none;
    transition: all 0.2s ease;
}

#order_refund_modal .hp-form__button:hover,
#order_dispute_modal .hp-form__button:hover {
    background: #3d3d3d;
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(43, 43, 43, 0.18);
}

/* 5. Details Page Back Link & Layout (/account/vendor/orders/<id>/) */
.share-order-details-back {
    margin-bottom: 20px;
}

.share-back-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13.5px;
    font-weight: 600;
    color: #717171 !important;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    padding: 8px 16px;
    border-radius: var(--share-radius-btn);
    text-decoration: none !important;
    transition: all 0.15s ease;
}

.share-back-btn:hover {
    color: #2b2b2b !important;
    background: #ffffff;
    border-color: #d4d4d4;
    transform: translateX(-2px);
}

.hp-template--order-edit-page .hp-order--page {
    background: #ffffff;
    border-radius: 20px;
    border: 1px solid #ebebeb;
    box-shadow: 0 4px 20px rgba(43, 43, 43, 0.04);
    padding: 28px;
}

.hp-template--order-edit-page .hp-order__details {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid #f3f3f3;
}

.hp-template--order-edit-page table.woocommerce-table--order-details {
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid #ebebeb;
}

/* 6. Responsive Adaptations */
@media (max-width: 768px) {
    .share-vendor-orders-filter-bar {
        gap: 6px;
        overflow-x: auto;
        padding-bottom: 12px;
        -webkit-overflow-scrolling: touch;
    }
    .share-order-filter-tab {
        padding: 7px 12px;
        font-size: 12.5px;
        white-space: nowrap;
    }
    .share-vendor-order-card__header {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        padding: 14px 18px;
    }
    .share-vendor-order-card__body {
        grid-template-columns: 1fr;
        gap: 18px;
        padding: 18px;
    }
    .share-vendor-order-card__listing {
        align-items: flex-start;
    }
    .share-vendor-order-card__thumb-link {
        width: 76px;
        height: 62px;
    }
    .share-vendor-order-card__footer {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
        padding: 16px 18px;
    }
    .share-vendor-order-card__actions {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }
    .share-card-btn {
        flex: 1 1 calc(50% - 4px);
        min-width: 120px;
        justify-content: center;
        text-align: center;
        padding: 10px 12px;
        font-size: 13px;
    }
    .share-card-btn--primary {
        flex: 1 1 100%;
    }
    .share-rental-modal__dialog {
        max-width: 94vw;
        border-radius: 20px;
    }
    .share-rental-modal__header {
        padding: 18px 20px 14px;
    }
    .share-rental-modal__body {
        padding: 18px 20px;
    }
    .share-rental-modal__footer {
        padding: 14px 20px 18px;
        flex-direction: column-reverse;
        gap: 8px;
    }
    .share-rental-modal__btn-cancel,
    .share-rental-modal__btn-confirm {
        width: 100%;
        justify-content: center;
        padding: 12px;
    }
    .share-order-toast {
        bottom: 20px;
        right: 16px;
        left: 16px;
    }
    .share-order-toast__content {
        justify-content: center;
    }
    .share-vendor-empty-card {
        padding: 32px 18px;
    }
    .share-vendor-empty-card__actions {
        flex-direction: column;
        width: 100%;
    }
    .share-action-btn {
        width: 100%;
        justify-content: center;
    }
}

/* ==========================================================================
   CUSTOMER BOOKINGS PAGE (/account/bookings/)
   Benchmark consistency with /account/vendor/orders/ & /moyat-profil/orders/
   ========================================================================== */
.hp-account--bookings .hp-bookings,
.hp-account--bookings .hp-grid,
.hp-bookings .hp-grid,
.hp-bookings.hp-grid {
    display: block !important;
    width: 100% !important;
    border: none !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.hp-account--bookings .hp-grid__item,
.hp-bookings .hp-grid__item {
    display: block !important;
    margin-bottom: 24px !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

.hp-account--bookings .hp-grid__item:last-child,
.hp-bookings .hp-grid__item:last-child {
    margin-bottom: 0 !important;
}

.hp-account--bookings .hp-booking--view-block,
.hp-bookings .hp-booking--view-block {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
    display: block !important;
    width: 100% !important;
}

.hp-account--bookings .hp-booking--view-block::before,
.hp-account--bookings .hp-booking--view-block::after,
.hp-bookings .hp-booking--view-block::before,
.hp-bookings .hp-booking--view-block::after {
    display: none !important;
}

.hp-account--bookings .share-bookings-filter-bar {
    margin-bottom: 24px;
}

/* Benchmark Customer Booking Card (Identical rounded borders & shadow to Vendor Orders) */
.share-customer-booking-card {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 18px rgba(43, 43, 43, 0.04) !important;
    overflow: hidden !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    box-sizing: border-box !important;
    margin-bottom: 24px !important;
}

.share-customer-booking-card:hover {
    border-color: #d4d4d4 !important;
    box-shadow: 0 8px 30px rgba(43, 43, 43, 0.08) !important;
    transform: translateY(-2px) !important;
}

/* Review Action Buttons on Booking Cards */
.share-card-btn--review {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: linear-gradient(135deg, #f2bb63 0%, #e5ab4f 100%) !important;
    color: #2b2b2b !important;
    border: 1px solid rgba(229, 171, 79, 0.4) !important;
    border-radius: var(--share-radius-btn, 12px) !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    height: 42px !important;
    box-sizing: border-box !important;
    padding: 0 18px !important;
    cursor: pointer !important;
    text-decoration: none !important;
    box-shadow: 0 2px 8px rgba(242, 187, 99, 0.28) !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.share-card-btn--review i {
    color: #2b2b2b !important;
    font-size: 13px !important;
}

.share-card-btn--review:hover {
    background: linear-gradient(135deg, #e5ab4f 0%, #d89938 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.42) !important;
    color: #1a1a1a !important;
}

.share-card-btn--reviewed {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: #f0fdf4 !important;
    color: #166534 !important;
    border: 1px solid #bbf7d0 !important;
    border-radius: var(--share-radius-btn, 12px) !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    height: 42px !important;
    box-sizing: border-box !important;
    padding: 0 16px !important;
    cursor: default !important;
    text-decoration: none !important;
    box-shadow: none !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.share-card-btn--reviewed i {
    color: #22c55e !important;
    font-size: 14px !important;
}

/* Ensure reservation details button and action group remain strictly identical before/after reviews */
.share-customer-booking-card .share-vendor-order-card__actions {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-shrink: 0 !important;
}

.share-customer-booking-card .share-card-btn {
    height: 42px !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    flex-shrink: 0 !important;
}

.share-customer-booking-card .share-card-btn--primary {
    background: #2b2b2b !important;
    color: #ffffff !important;
    height: 42px !important;
    box-sizing: border-box !important;
    padding: 0 18px !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.share-customer-booking-card .share-vendor-order-card__financials {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    flex-shrink: 1 !important;
    min-width: 0 !important;
}

.share-customer-booking-card .share-vendor-order-card__footer {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 16px !important;
}

.share-card-btn--pay {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.28) !important;
    font-weight: 700 !important;
}

.share-card-btn--pay:hover {
    background: linear-gradient(135deg, #059669 0%, #047857 100%) !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.35) !important;
}

/* ==========================================================================
   VENDOR INVENTORY & CALENDAR MANAGER (/account/vendor/calendar/)
   ========================================================================== */
.share-vendor-calendar-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 18px;
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: 12px;
    margin-bottom: 20px;
    box-shadow: 0 1px 3px rgba(43, 43, 43, 0.04);
    flex-wrap: wrap;
}

.share-cal-filter-group {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
    min-width: 260px;
}

.share-cal-filter-label {
    font-size: 13.5px;
    font-weight: 700;
    color: #2b2b2b;
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    white-space: nowrap;
}

.share-cal-filter-label i {
    color: #717171;
    font-size: 13px;
}

.share-cal-select-wrap {
    position: relative;
    flex: 1;
    max-width: 420px;
}

.share-cal-select {
    width: 100%;
    padding: 8px 34px 8px 12px;
    border-radius: 8px;
    border: 1.5px solid #d4d4d4;
    background: #ffffff;
    font-size: 13.5px;
    font-weight: 600;
    color: #2b2b2b;
    appearance: none;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.share-cal-select:focus {
    border-color: #2b2b2b;
    outline: none;
    box-shadow: 0 0 0 3px rgba(43, 43, 43, 0.08);
}

.share-cal-select-arrow {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: #717171;
    font-size: 12px;
}

/* Legend */
.share-vendor-calendar-legend {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    font-size: 12.5px;
    color: #555555;
}

.share-cal-legend-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
}

.share-cal-legend-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
}

.share-cal-legend-dot--completed {
    background: #16a34a;
    box-shadow: 0 0 0 2px #bbf7d0;
}

.share-cal-legend-dot--pending {
    background: #f59e0b;
    box-shadow: 0 0 0 2px #fde68a;
}

.share-cal-legend-dot--blocked {
    background: #717171;
    box-shadow: 0 0 0 2px #d4d4d4;
}

.share-cal-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    border-radius: var(--share-radius-btn);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    border: none;
    transition: all 0.2s ease;
    text-decoration: none;
}

.share-cal-btn--block {
    background: #2b2b2b;
    color: #ffffff;
    box-shadow: 0 2px 6px rgba(43, 43, 43, 0.2);
}

.share-cal-btn--block:hover:not(:disabled) {
    background: #3d3d3d;
    color: #ffffff;
    transform: translateY(-1px);
}

.share-cal-btn--block:disabled {
    opacity: 0.45;
    cursor: not-allowed;
    box-shadow: none;
}

/* FullCalendar Enhanced Event Chips & Stacking */
.hp-calendar .fc-daygrid-event,
.hp-calendar .fc-event,
.fc-daygrid-event {
    margin: 2px 2px !important;
    border-radius: 6px !important;
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    transition: transform 0.15s ease !important;
}

.hp-calendar .fc-daygrid-event:hover,
.hp-calendar .fc-event:hover,
.fc-daygrid-event:hover {
    transform: translateY(-1px) !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    z-index: 10 !important;
}

.fc-event-custom {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 3px 8px;
    font-size: 11.5px;
    font-weight: 700;
    border-radius: 6px;
    width: 100%;
    overflow: hidden;
    line-height: 1.35;
    box-sizing: border-box;
    box-shadow: 0 1px 3px rgba(43, 43, 43, 0.05);
    transition: all 0.15s ease;
}

.fc-event-custom:hover {
    box-shadow: 0 3px 8px rgba(43, 43, 43, 0.12);
}

.fc-event-custom__title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
}

.fc-event-custom i {
    font-size: 10.5px;
    flex-shrink: 0;
}

.fc-event-custom--completed {
    background: #f0fdf4 !important;
    color: #166534 !important;
    border: 1px solid #bbf7d0 !important;
    cursor: pointer;
}

.fc-event-custom--completed i {
    color: #16a34a !important;
}

.fc-event-custom--completed:hover {
    background: #dcfce7 !important;
    border-color: #86efac !important;
    color: #14532d !important;
}

.fc-event-custom--pending {
    background: #fffbeb !important;
    color: #92400e !important;
    border: 1px solid #fde68a !important;
    cursor: pointer;
}

.fc-event-custom--pending i {
    color: #d97706 !important;
}

.fc-event-custom--pending:hover {
    background: #fef3c7 !important;
    border-color: #fcd34d !important;
    color: #78350f !important;
}

.fc-event-custom--blocked {
    background: #fafaf9 !important;
    color: #404040 !important;
    border: 1px solid #d4d4d4 !important;
    border-left: 3px solid #717171 !important;
    cursor: pointer;
}

.fc-event-custom--blocked i {
    color: #717171 !important;
}

.fc-event-custom--blocked:hover {
    background: #f3f3f3 !important;
    border-color: #a3a3a3 !important;
    color: #2b2b2b !important;
}

.hp-calendar .fc-event.fc-event-item--completed,
.hp-calendar .fc-event.fc-event-item--pending,
.hp-calendar .fc-event.fc-event-item--blocked,
.fc-event-item--completed,
.fc-event-item--pending,
.fc-event-item--blocked {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-color: transparent !important;
    padding: 0 !important;
}

/* FullCalendar Day Grid & Shell */
.fc-theme-standard .fc-scrollgrid {
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #ebebeb;
    box-shadow: 0 4px 16px rgba(43, 43, 43, 0.03);
}

.fc-theme-standard td, .fc-theme-standard th {
    border-color: #f3f3f3 !important;
}

.fc-col-header-cell {
    background: #fafaf9;
    padding: 10px 0 !important;
    font-size: 13px;
    font-weight: 700;
    color: #555555;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.fc-daygrid-day-number {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #404040 !important;
    padding: 6px 8px !important;
}

.fc-day-today {
    background: #f0fdf4 !important;
}

.fc-day-today .fc-daygrid-day-number {
    color: #15803d !important;
    font-weight: 800 !important;
}

.fc-toolbar.fc-header-toolbar {
    margin-bottom: 20px !important;
}

.fc-toolbar-title {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    text-transform: capitalize !important;
}

.fc-button-primary {
    background: #ffffff !important;
    color: #404040 !important;
    border: 1.5px solid #d4d4d4 !important;
    font-weight: 700 !important;
    text-transform: capitalize !important;
    border-radius: var(--share-radius-btn) !important;
    padding: 7px 16px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
    transition: all 0.2s ease !important;
}

.fc-button-primary:hover {
    background: #fafaf9 !important;
    color: #2b2b2b !important;
    border-color: #a3a3a3 !important;
}

.fc-button-primary:focus,
.fc-button-primary.fc-button-active,
.fc-button-primary:not(:disabled):active {
    background: #2b2b2b !important;
    color: #ffffff !important;
    border-color: #2b2b2b !important;
    box-shadow: 0 2px 6px rgba(43, 43, 43, 0.18) !important;
    outline: none !important;
}

.fc-button-primary:disabled {
    opacity: 0.35 !important;
    cursor: not-allowed !important;
}

/* More Link Popover (+ още 2) */
.fc-more-link {
    font-size: 11.5px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    background: #f3f3f3 !important;
    border: 1px solid #ebebeb !important;
    display: inline-block !important;
    margin: 2px 4px !important;
    text-decoration: none !important;
}

.fc-more-link:hover {
    background: #ebebeb !important;
    color: #2b2b2b !important;
}

.fc-popover {
    border-radius: 12px !important;
    border: 1px solid #d4d4d4 !important;
    box-shadow: 0 16px 36px rgba(43, 43, 43, 0.18) !important;
    overflow: hidden !important;
    background: #ffffff !important;
    z-index: 1000 !important;
}

.fc-popover-header {
    background: #fafaf9 !important;
    padding: 10px 14px !important;
    border-bottom: 1px solid #ebebeb !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    font-size: 13px !important;
}

.fc-popover-body {
    padding: 10px !important;
    max-height: 280px;
    overflow-y: auto;
}

/* Floating Action Bar for Drag Selection (Refined Elevated Light Design) */
.share-cal-floating-bar {
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    max-width: 920px;
    width: calc(100% - 32px);
    box-sizing: border-box;
    animation: shareSlideUp 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes shareSlideUp {
    from {
        opacity: 0;
        transform: translate(-50%, 20px);
    }
    to {
        opacity: 1;
        transform: translate(-50%, 0);
    }
}

.share-cal-floating-inner {
    position: relative;
    background: #ffffff;
    color: #2b2b2b;
    padding: 14px 50px 14px 20px;
    border-radius: 16px;
    border: 1px solid #d4d4d4;
    box-shadow: 0 20px 45px -8px rgba(43, 43, 43, 0.18), 0 4px 12px rgba(43, 43, 43, 0.05);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}

.share-cal-floating-close {
    position: absolute;
    top: 12px;
    right: 14px;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: #f3f3f3;
    border: 1px solid #ebebeb;
    color: #717171;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s ease;
    z-index: 2;
}

.share-cal-floating-close:hover {
    background: #ebebeb;
    color: #2b2b2b;
}

.share-cal-floating-header {
    display: flex;
    align-items: center;
    gap: 10px;
}

.share-cal-floating-icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #fdfbf7;
    color: #f2bb63;
    border: 1px solid #ebebeb;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    flex-shrink: 0;
}

.share-cal-floating-title-wrap {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.share-cal-floating-label {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #717171;
    font-weight: 700;
}

.share-cal-floating-days-pill {
    font-size: 12px;
    font-weight: 800;
    color: #2b2b2b;
}

.share-cal-floating-dates-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #fafaf9;
    padding: 6px 12px;
    border-radius: 10px;
    border: 1px solid #ebebeb;
}

.share-cal-date-field {
    display: flex;
    align-items: center;
    gap: 6px;
}

.share-cal-date-field label {
    font-size: 12px;
    font-weight: 700;
    color: #555555;
    margin: 0;
    white-space: nowrap;
}

.share-cal-date-input {
    background: #ffffff;
    border: 1px solid #d4d4d4;
    border-radius: 6px;
    padding: 5px 8px;
    font-size: 13px;
    font-weight: 700;
    color: #2b2b2b;
    font-family: inherit;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.share-cal-date-input:focus {
    border-color: #2b2b2b;
    box-shadow: 0 0 0 3px rgba(43, 43, 43, 0.1);
}

.share-cal-dates-sep {
    color: #a3a3a3;
    font-size: 12px;
}

.share-cal-floating-listing-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
}

.share-cal-floating-listing-wrap label {
    font-size: 12.5px;
    font-weight: 700;
    color: #555555;
    margin: 0;
    white-space: nowrap;
}

.share-cal-floating-select {
    background: #fafaf9;
    border: 1px solid #d4d4d4;
    border-radius: 8px;
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 600;
    color: #2b2b2b;
    max-width: 250px;
    outline: none;
    transition: border-color 0.15s ease;
}

.share-cal-floating-select:focus {
    border-color: #2b2b2b;
}

.share-cal-floating-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Modal: Unblock Confirmation & Booking Details Overlay */
.share-cal-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(43, 43, 43, 0.65);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    z-index: 999999 !important;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 32px 16px;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    box-sizing: border-box;
}

body.share-modal-open {
    overflow: hidden !important;
}

.share-cal-modal {
    background: #ffffff;
    border-radius: 16px;
    max-width: 520px;
    width: 100%;
    max-height: calc(100dvh - 64px);
    max-height: calc(100vh - 64px);
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 60px -10px rgba(43, 43, 43, 0.28), 0 0 0 1px rgba(43, 43, 43, 0.08);
    overflow: hidden;
    position: relative;
    margin: auto;
    animation: shareModalPop 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes shareModalPop {
    from {
        opacity: 0;
        transform: scale(0.96);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.share-cal-modal__header {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px 20px 14px;
    border-bottom: 1px solid #f3f3f3;
    position: relative;
    flex-shrink: 0;
    background: #ffffff;
    z-index: 2;
}

.share-cal-modal__title-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #f3f3f3;
    color: #404040;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.share-cal-modal__title-wrap {
    flex: 1;
    min-width: 0;
}

.share-cal-modal__title {
    font-size: 17px;
    font-weight: 800;
    color: #2b2b2b;
    margin: 0 0 3px 0;
    line-height: 1.25;
}

.share-cal-modal__subtitle {
    font-size: 13px;
    color: #717171;
    margin: 0;
    line-height: 1.4;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.share-cal-modal__close {
    background: #f3f3f3;
    border: 1px solid #ebebeb;
    font-size: 14px;
    color: #717171;
    cursor: pointer;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    line-height: 1;
    transition: all 0.15s ease;
    flex-shrink: 0;
    margin-left: auto;
}

.share-cal-modal__close:hover {
    color: #2b2b2b;
    background: #ebebeb;
}

.share-cal-modal__body {
    padding: 16px 20px;
    overflow-y: auto;
    overscroll-behavior: contain;
    flex: 1 1 auto;
    min-height: 0;
    -webkit-overflow-scrolling: touch;
}

.share-cal-modal__detail-card {
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 10px;
    padding: 14px 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 16px;
}

.share-cal-modal__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.share-cal-modal__label {
    font-size: 13px;
    color: #717171;
    font-weight: 600;
}

.share-cal-modal__val {
    font-size: 13.5px;
    color: #2b2b2b;
    font-weight: 700;
    text-align: right;
}

.share-cal-modal__badge {
    background: #ebebeb;
    color: #404040;
    font-size: 12px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 9999px;
}

.share-cal-modal__note {
    font-size: 12.5px;
    color: #555555;
    margin: 0;
    line-height: 1.45;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.share-cal-modal__note i {
    color: #717171;
    margin-top: 2px;
}

.share-cal-modal__footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 20px;
    background: #fafaf9;
    border-top: 1px solid #f3f3f3;
}

.share-cal-modal__footer--single {
    justify-content: stretch;
}

.share-cal-modal__footer--single .share-cal-modal__btn {
    width: 100%;
    justify-content: center;
    padding: 11px 20px;
    font-size: 14px;
}

.share-cal-modal__btn {
    padding: 9px 18px;
    border-radius: var(--share-radius-btn);
    font-size: 13.5px;
    font-weight: 700;
    cursor: pointer;
    border: none;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.share-cal-modal__btn--unblock {
    background: #2b2b2b;
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(43, 43, 43, 0.2);
}

.share-cal-modal__btn--unblock:hover {
    background: #3d3d3d;
    color: #ffffff;
    transform: translateY(-1px);
}

/* Booking Details Modal */
.share-cal-modal--booking {
    max-width: 500px;
}

.share-cal-bmodal__header {
    padding: 16px 20px 14px;
}

.share-cal-bmodal__icon.status--completed {
    background: #f0fdf4;
    color: #16a34a;
    border: 1px solid #bbf7d0;
}

.share-cal-bmodal__icon.status--processing {
    background: #fffbeb;
    color: #f59e0b;
    border: 1px solid #fde68a;
}

.share-cal-bmodal__title-row {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    margin-bottom: 3px;
    flex-wrap: wrap;
}

.share-bmodal-listing-link {
    color: #2b2b2b;
    font-weight: 700;
    text-decoration: underline;
}

.share-bmodal-listing-link:hover {
    color: #404040;
}

/* Client Info Card inside Modal */
.share-bmodal-client-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 12px;
    padding: 10px 14px;
    margin-bottom: 12px;
}

.share-bmodal-client-main {
    display: flex;
    align-items: center;
    gap: 10px;
}

.share-bmodal-avatar-wrap {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    overflow: hidden;
    background: #ebebeb;
    flex-shrink: 0;
    border: 2px solid #ffffff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

.share-bmodal-avatar {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.share-bmodal-client-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.share-bmodal-client-top {
    display: flex;
    align-items: center;
    gap: 8px;
}

.share-bmodal-client-name {
    font-size: 13.5px;
    font-weight: 700;
    color: #2b2b2b;
}

.share-bmodal-client-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11.5px;
    color: #717171;
}

.share-bmodal-rating {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-weight: 700;
    color: #2b2b2b;
}

.share-bmodal-rating i {
    color: #eab308;
    font-size: 11px;
}

.share-bmodal-rating-count {
    font-weight: 500;
    color: #717171;
}

.share-bmodal-meta-sep {
    color: #d4d4d4;
}

.share-bmodal-client-role {
    font-weight: 600;
    color: #717171;
}

/* Symmetrical 3-Column Schedule Card: [ Вземане (Начало) ] ➔ [ X дни ] ➔ [ Връщане (Край) ] */
.share-bmodal-schedule-card {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 8px;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 12px;
    padding: 10px 12px;
    margin-bottom: 12px;
}

.share-bmodal-schedule-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.share-bmodal-schedule-col--start,
.share-bmodal-schedule-col--end {
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: 8px;
    padding: 8px 10px;
    box-shadow: 0 1px 2px rgba(43, 43, 43, 0.04);
    width: 100%;
    box-sizing: border-box;
    gap: 2px;
}

.share-bmodal-schedule-badge {
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: #717171;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.share-bmodal-schedule-badge i {
    color: #717171;
    font-size: 10px;
}

.share-bmodal-schedule-date {
    font-size: 14.5px;
    font-weight: 800;
    color: #2b2b2b;
    line-height: 1.2;
}

.share-bmodal-schedule-day {
    font-size: 11px;
    font-weight: 600;
    color: #555555;
    background: #f3f3f3;
    padding: 1px 6px;
    border-radius: 5px;
    display: inline-block;
}

.share-bmodal-schedule-col--center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 0 2px;
    min-width: 65px;
}

.share-bmodal-duration-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 700;
    background: #ebebeb;
    color: #404040;
    border: 1px solid #d4d4d4;
    padding: 2px 8px;
    border-radius: var(--share-radius-pill);
    white-space: nowrap;
}

.share-bmodal-duration-pill i {
    font-size: 10px;
}

.share-bmodal-connector-arrow {
    color: #a3a3a3;
    font-size: 11px;
}

/* Price Bar */
.share-bmodal-price-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 10px;
    padding: 9px 14px;
    margin-bottom: 12px;
    flex-wrap: wrap;
    gap: 8px;
}

.share-bmodal-price-col {
    display: flex;
    align-items: center;
    gap: 6px;
}

.share-bmodal-price-lbl {
    font-size: 12px;
    color: #717171;
    font-weight: 600;
}

.share-bmodal-price-val {
    font-size: 12.5px;
    font-weight: 700;
    color: #404040;
}

.share-bmodal-price-col--deposit .share-bmodal-price-lbl {
    color: #555555;
}

.share-bmodal-price-col--deposit .share-bmodal-price-lbl i {
    color: #2b2b2b;
}

.share-bmodal-price-col--deposit strong {
    color: #2b2b2b;
    font-size: 12.5px;
}

.share-bmodal-price-total {
    font-size: 15px;
    font-weight: 800;
    color: #2b2b2b;
}

.share-bmodal-note {
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 8px;
    padding: 8px 12px;
    color: #555555;
    font-size: 11.5px;
    line-height: 1.4;
}

.share-bmodal-note i {
    color: #717171;
}

/* Footer Buttons */
.share-bmodal-btn-chat {
    background: #2b2b2b;
    color: #ffffff;
    border: 1px solid #2b2b2b;
    text-decoration: none;
    box-shadow: 0 2px 6px rgba(43, 43, 43, 0.18);
}

.share-bmodal-btn-chat:hover {
    background: #3d3d3d;
    color: #ffffff;
    border-color: #3d3d3d;
    transform: translateY(-1px);
}

.share-bmodal-btn-order {
    background: #ffffff;
    color: #404040;
    border: 1px solid #d4d4d4;
    text-decoration: none;
}

.share-bmodal-btn-order:hover {
    background: #f3f3f3;
    color: #2b2b2b;
    transform: translateY(-1px);
}

/* Toast Notifications */
.share-cal-toast {
    position: fixed;
    top: 24px;
    right: 24px;
    z-index: 10001;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    border-radius: 10px;
    background: #2b2b2b;
    color: #ffffff;
    font-size: 13.5px;
    font-weight: 600;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25);
    max-width: 420px;
}

.share-cal-toast--success {
    background: #065f46;
    border: 1px solid #10b981;
}

.share-cal-toast--error {
    background: #991b1b;
    border: 1px solid #ef4444;
}

.share-cal-toast__icon {
    font-size: 16px;
}

/* Responsive Mobile Layout for Calendar Floating Bar & Modal */
@media (max-width: 768px) {
    .share-cal-floating-bar {
        bottom: 12px;
        left: 50%;
        transform: translateX(-50%);
        width: calc(100% - 20px);
        max-width: 480px;
    }

    .share-cal-floating-inner {
        padding: 14px 14px;
        gap: 10px;
        flex-direction: column;
        align-items: stretch;
    }

    .share-cal-floating-close {
        top: 10px;
        right: 10px;
        width: 32px;
        height: 32px;
        font-size: 14px;
    }

    .share-cal-floating-header {
        padding-right: 36px;
    }

    .share-cal-floating-dates-wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 6px;
        padding: 6px 8px;
    }

    .share-cal-date-field {
        flex: 1 1 45%;
        gap: 4px;
    }

    .share-cal-date-input {
        width: 100%;
        padding: 6px 6px;
        font-size: 12px;
    }

    .share-cal-dates-sep {
        font-size: 11px;
    }

    .share-cal-floating-listing-wrap {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 4px;
    }

    .share-cal-floating-select {
        max-width: none;
        width: 100%;
        padding: 8px 12px;
    }

    .share-cal-floating-actions {
        width: 100%;
    }

    .share-cal-floating-actions .share-cal-btn--block {
        width: 100%;
        justify-content: center;
        padding: 11px 16px;
        font-size: 14px;
    }

    /* Modal Mobile Adjustments */
    .share-cal-modal-overlay {
        padding: 14px 10px;
        align-items: flex-start;
    }

    .share-cal-modal {
        max-width: 100%;
        width: 100%;
        max-height: calc(100dvh - 28px);
        max-height: calc(100vh - 28px);
        margin: auto;
        border-radius: 14px;
    }

    .share-cal-modal__header {
        padding: 12px 14px 10px;
        gap: 10px;
    }

    .share-cal-modal__title-icon {
        width: 36px;
        height: 36px;
        font-size: 16px;
        border-radius: 8px;
    }

    .share-cal-bmodal__title-row {
        gap: 6px;
        margin-bottom: 2px;
    }

    .share-cal-modal__title {
        font-size: 15px;
    }

    .share-order-status-badge {
        font-size: 11px;
        padding: 3px 8px;
        gap: 4px;
    }

    .share-cal-modal__subtitle {
        font-size: 11.5px;
    }

    .share-cal-modal__close {
        width: 28px;
        height: 28px;
        font-size: 13px;
    }

    .share-cal-modal__body {
        padding: 10px 12px;
    }

    .share-bmodal-client-card {
        padding: 8px 10px;
        margin-bottom: 8px;
        border-radius: 10px;
    }

    .share-bmodal-avatar-wrap {
        width: 32px;
        height: 32px;
    }

    .share-bmodal-client-name {
        font-size: 12.5px;
    }

    .share-bmodal-client-meta {
        font-size: 11px;
    }

    /* Symmetrical 3-Column Schedule Card on Mobile: Stay horizontal! */
    .share-bmodal-schedule-card {
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        gap: 4px;
        padding: 6px 6px;
        margin-bottom: 8px;
        border-radius: 10px;
    }

    .share-bmodal-schedule-col--start,
    .share-bmodal-schedule-col--end {
        padding: 6px 4px;
        border-radius: 6px;
        gap: 2px;
    }

    .share-bmodal-schedule-badge {
        font-size: 8.5px;
        gap: 2px;
        letter-spacing: 0.2px;
    }

    .share-bmodal-schedule-badge i {
        font-size: 8px;
    }

    .share-bmodal-schedule-date {
        font-size: 12px;
        font-weight: 800;
    }

    .share-bmodal-schedule-day {
        font-size: 9px;
        padding: 1px 4px;
    }

    .share-bmodal-schedule-col--center {
        min-width: 44px;
        gap: 2px;
        padding: 0 1px;
    }

    .share-bmodal-duration-pill {
        font-size: 9px;
        padding: 2px 5px;
        gap: 2px;
    }

    .share-bmodal-duration-pill i {
        font-size: 8px;
    }

    .share-bmodal-connector-arrow {
        font-size: 8px;
    }

    .share-bmodal-price-bar {
        padding: 8px 10px;
        margin-bottom: 8px;
        border-radius: 10px;
        gap: 6px;
    }

    .share-bmodal-price-lbl {
        font-size: 11px;
    }

    .share-bmodal-price-val {
        font-size: 11.5px;
    }

    .share-bmodal-price-total {
        font-size: 13.5px;
    }

    .share-bmodal-note {
        padding: 6px 10px;
        font-size: 11px;
        line-height: 1.35;
        border-radius: 8px;
    }

    .share-cal-modal__footer {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
        padding: 10px 12px;
    }

    .share-cal-modal__footer--single {
        display: block;
    }

    .share-cal-modal__footer .share-cal-modal__btn {
        width: 100%;
        justify-content: center;
        text-align: center;
        padding: 9px 4px;
        font-size: 12px;
        white-space: nowrap;
        border-radius: 8px;
    }
}

/* ==========================================================
   DISPUTE MODAL & ACTION BUTTON (AirBnB Resolution Center Benchmark)
   ========================================================== */
.share-card-btn--dispute {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #ffffff;
    color: #717171 !important;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-btn);
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1.3;
    padding: 10px 16px;
    cursor: pointer;
    text-decoration: none !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    box-sizing: border-box;
    white-space: nowrap;
}

.share-card-btn--dispute i {
    color: #a3a3a3;
    transition: color 0.2s ease;
}

.share-card-btn--dispute:hover {
    background: #fff1f2;
    color: #be123c !important;
    border-color: #fecdd3;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(225, 29, 72, 0.1);
}

.share-card-btn--dispute:hover i {
    color: #e11d48;
}

.share-dispute-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(43, 43, 43, 0.65);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    z-index: 9999999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    animation: shareFadeIn 0.2s ease-out;
}

.share-dispute-modal {
    background: #ffffff;
    border-radius: 24px;
    max-width: 520px;
    width: 100%;
    box-shadow: 0 25px 50px -12px rgba(43, 43, 43, 0.35);
    border: 1px solid rgba(43, 43, 43, 0.08);
    padding: 28px;
    position: relative;
    animation: shareSlideUp 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.share-dispute-modal__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
    border-bottom: 1px solid #f3f3f3;
    padding-bottom: 16px;
}

.share-dispute-modal__badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #fff1f2;
    color: #e11d48;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding: 4px 10px;
    border-radius: 999px;
    margin-bottom: 8px;
}

.share-dispute-modal__title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 20px;
    font-weight: 700;
    color: #2b2b2b;
    margin: 0 0 4px 0;
    line-height: 1.25;
}

.share-dispute-modal__subtitle {
    font-size: 13.5px;
    color: #717171;
    margin: 0;
    line-height: 1.45;
}

.share-dispute-modal__close {
    background: #fafaf9;
    border: 1px solid #ebebeb;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #717171;
    cursor: pointer;
    line-height: 1;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.share-dispute-modal__close:hover {
    background: #2b2b2b;
    color: #ffffff;
    border-color: #2b2b2b;
}

.share-dispute-form-group {
    margin-bottom: 16px;
}

.share-dispute-label {
    display: block;
    font-size: 13.5px;
    font-weight: 600;
    color: #3d3d3d;
    margin-bottom: 6px;
}

.share-dispute-label .share-req {
    color: #e11d48;
}

.share-dispute-select,
.share-dispute-textarea {
    width: 100%;
    border: 1px solid #d4d4d4;
    border-radius: 12px;
    padding: 10px 14px;
    font-size: 14px;
    font-family: inherit;
    color: #2b2b2b;
    background: #ffffff;
    transition: all 0.15s ease;
    box-sizing: border-box;
}

.share-dispute-select:focus,
.share-dispute-textarea:focus {
    border-color: #2b2b2b;
    box-shadow: 0 0 0 3px rgba(43, 43, 43, 0.1);
    outline: none;
}

.share-dispute-modal__footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid #f3f3f3;
}

.share-dispute-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    padding: 11px 22px;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    border: none;
}

.share-dispute-btn--cancel {
    background: #f3f3f3;
    color: #555555;
}

.share-dispute-btn--cancel:hover {
    background: #ebebeb;
    color: #2b2b2b;
}

.share-dispute-btn--submit {
    background: #e11d48;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(225, 29, 72, 0.25);
}

.share-dispute-btn--submit:hover {
    background: #be123c;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(225, 29, 72, 0.35);
}

.share-dispute-btn--submit:disabled {
    opacity: 0.65;
    cursor: not-allowed;
    transform: none !important;
}

@keyframes shareFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes shareSlideUp {
    from { opacity: 0; transform: translateY(16px) scale(0.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

/* ==========================================================================
   BENCHMARK SINGLE BOOKING VIEW (/account/bookings/<id>/) & CARDS
   ========================================================================== */

/* Reset HP container for single booking page to allow full width modern grid */
.hp-template--booking-view-page .hp-page__content,
.hp-page--booking-view-page .hp-page__content,
.share-booking-page-content {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}

.hp-template--booking-view-page .hp-row,
.hp-page--booking-view-page .hp-row {
    display: block !important;
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
}

.hp-template--booking-view-page,
.hp-page--booking-view-page {
    padding-top: 32px !important;
    padding-bottom: 64px !important;
    background: #fafaf9 !important;
}

.hp-template--booking-view-page .hp-page__container,
.hp-page--booking-view-page .hp-page__container {
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

/* Metadata pills in card & single view */
.share-vendor-order-card__listing-meta-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 4px;
}

.share-card-meta-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11.5px;
    font-weight: 700;
    padding: 2px 9px;
    border-radius: var(--share-radius-pill);
    line-height: 1.3;
}

.share-card-meta-pill--category {
    background: #f3f3f3;
    color: #555555;
    border: 1px solid #ebebeb;
}

.share-card-meta-pill--category i {
    color: #717171;
}

.share-card-meta-pill--location {
    background: #f3f3f3;
    color: #555555;
    border: 1px solid #ebebeb;
}

.share-card-meta-pill--location i {
    color: #717171;
}

/* Wrapper */
.share-booking-detail-wrapper {
    width: 100%;
}

/* Top Breadcrumb Bar */
.share-booking-detail-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 22px;
    flex-wrap: wrap;
}

.share-booking-detail-ref {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.share-booking-ref-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #2b2b2b;
    color: #ffffff;
    font-size: 13.5px;
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 20px;
    letter-spacing: -0.01em;
}

.share-booking-ref-badge i {
    color: #f2bb63;
}

.share-booking-status-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 20px;
}

.share-booking-status-pill.status--completed {
    background: #ecfdf5;
    color: #059669;
    border: 1px solid #a7f3d0;
}

.share-booking-status-pill.status--pending {
    background: #fffbeb;
    color: #d97706;
    border: 1px solid #fde68a;
}

.share-booking-status-pill.status--cancelled {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

.share-booking-status-pill.status--other {
    background: #f3f3f3;
    color: #555555;
    border: 1px solid #ebebeb;
}

/* Host notice banner */
.share-host-notice-banner {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 20px;
    background: #fefce8;
    border: 1.5px solid #fef08a;
    border-radius: 14px;
    margin-bottom: 24px;
    flex-wrap: wrap;
}

.share-host-notice-banner__icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: #fef08a;
    color: #854d0e;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}

.share-host-notice-banner__content {
    flex: 1;
    min-width: 240px;
}

.share-host-notice-banner__content strong {
    display: block;
    color: #854d0e;
    font-size: 15px;
    margin-bottom: 2px;
}

.share-host-notice-banner__content p {
    color: #713f12;
    font-size: 13.5px;
    margin: 0;
}

/* Hero Status Banner */
.share-detail-banner {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 22px 26px;
    border-radius: 16px;
    margin-bottom: 28px;
    position: relative;
    box-shadow: 0 1px 3px rgba(43, 43, 43, 0.04);
}

.share-detail-banner__icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
}

.share-detail-banner__text {
    flex: 1;
}

.share-detail-banner__title {
    font-size: 18px;
    font-weight: 800;
    margin: 0 0 6px 0;
    line-height: 1.3;
}

.share-detail-banner__desc {
    font-size: 14px;
    margin: 0;
    line-height: 1.5;
}

.share-detail-banner__meta {
    font-size: 12.5px;
    font-weight: 600;
    align-self: flex-start;
    opacity: 0.8;
}

/* Banner color variants */
.share-detail-banner--success {
    background: linear-gradient(135deg, #ecfdf5 0%, #f0fdf4 100%);
    border: 1.5px solid #a7f3d0;
}
.share-detail-banner--success .share-detail-banner__icon {
    background: #d1fae5;
    color: #059669;
}
.share-detail-banner--success .share-detail-banner__title {
    color: #065f46;
}
.share-detail-banner--success .share-detail-banner__desc {
    color: #047857;
}

.share-detail-banner--warning {
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
    border: 1.5px solid #fde68a;
}
.share-detail-banner--warning .share-detail-banner__icon {
    background: #fef3c7;
    color: #d97706;
}
.share-detail-banner--warning .share-detail-banner__title {
    color: #92400e;
}
.share-detail-banner--warning .share-detail-banner__desc {
    color: #b45309;
}

.share-detail-banner--info {
    background: #fafaf9;
    border: 1.5px solid #ebebeb;
}
.share-detail-banner--info .share-detail-banner__icon {
    background: #f3f3f3;
    color: #2b2b2b;
}
.share-detail-banner--info .share-detail-banner__title {
    color: #2b2b2b;
}
.share-detail-banner--info .share-detail-banner__desc {
    color: #555555;
}

.share-detail-banner--danger {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    border: 1.5px solid #fecaca;
}
.share-detail-banner--danger .share-detail-banner__icon {
    background: #fee2e2;
    color: #dc2626;
}
.share-detail-banner--danger .share-detail-banner__title {
    color: #991b1b;
}
.share-detail-banner--danger .share-detail-banner__desc {
    color: #b91c1c;
}

/* 2-Column Responsive Grid */
.share-booking-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.85fr) minmax(320px, 1.15fr);
    gap: 28px;
    align-items: start;
}

.share-booking-detail-main {
    min-width: 0;
}

.share-booking-detail-sidebar {
    min-width: 0;
    position: sticky;
    top: 96px;
    align-self: start;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Cards */
.share-detail-card {
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: 18px;
    padding: 26px 28px;
    margin-bottom: 24px;
    box-shadow: 0 1px 3px rgba(43, 43, 43, 0.04);
}

.share-detail-card__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 14px;
    border-bottom: 1px solid #f3f3f3;
}

.share-detail-card__title {
    font-size: 17px;
    font-weight: 800;
    color: #2b2b2b;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.share-detail-card__title i {
    color: #f2bb63;
}

.share-detail-card__ext-link {
    font-size: 13.5px;
    font-weight: 700;
    color: #2b2b2b;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
    transition: color 0.15s ease;
}

.share-detail-card__ext-link:hover {
    color: #555555;
    text-decoration: underline;
}

/* Listing Showcase */
.share-listing-showcase {
    display: flex;
    gap: 22px;
    align-items: flex-start;
}

.share-listing-showcase__image-wrap {
    width: 190px;
    height: 140px;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
    background: #f3f3f3;
    box-shadow: 0 2px 8px rgba(43, 43, 43, 0.06);
}

.share-listing-showcase__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.share-listing-showcase__image-wrap:hover .share-listing-showcase__img {
    transform: scale(1.03);
}

.share-listing-showcase__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #a3a3a3;
    font-size: 32px;
}

.share-listing-showcase__details {
    flex: 1;
    min-width: 0;
}

.share-listing-showcase__tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}

.share-listing-showcase__title {
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
    margin: 0 0 12px 0;
}

.share-listing-showcase__title a {
    color: #2b2b2b;
    text-decoration: none;
    transition: color 0.15s ease;
}

.share-listing-showcase__title a:hover {
    color: #f2bb63;
}

.share-listing-showcase__highlights {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.share-highlight-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13.5px;
    color: #555555;
}

.share-highlight-item i {
    color: #10b981;
    font-size: 14px;
}

/* Timeline & Handover */
.share-order-days-badge--large {
    font-size: 13px !important;
    padding: 5px 12px !important;
}

.share-timeline-grid {
    display: flex;
    align-items: stretch;
    gap: 16px;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 14px;
    padding: 20px 22px;
}

.share-timeline-box {
    flex: 1;
    min-width: 0;
}

.share-timeline-box__label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #717171;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 6px;
}

.share-timeline-box--start .share-timeline-box__label i {
    color: #059669;
}

.share-timeline-box--end .share-timeline-box__label i {
    color: #f59e0b;
}

.share-timeline-box__date {
    font-size: 16.5px;
    font-weight: 800;
    color: #2b2b2b;
    margin-bottom: 4px;
    line-height: 1.35;
}

.share-timeline-box__sub {
    font-size: 12.5px;
    color: #717171;
    line-height: 1.4;
    display: block;
}

.share-timeline-box-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #d4d4d4;
    font-size: 18px;
    padding: 0 4px;
}

.share-booking-handover-notes {
    margin-top: 20px;
    padding: 16px 20px;
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 12px;
}

.share-booking-handover-notes__title {
    font-size: 14px;
    font-weight: 800;
    color: #92400e;
    margin: 0 0 6px 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.share-booking-handover-notes__content {
    font-size: 13.5px;
    color: #78350f;
    line-height: 1.5;
}

/* Host Profile Row */
.share-host-profile-row {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

.share-host-avatar {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #ffffff;
    box-shadow: 0 2px 8px rgba(43, 43, 43, 0.08);
}

.share-host-info {
    flex: 1;
    min-width: 200px;
}

.share-host-name {
    font-size: 17px;
    font-weight: 800;
    color: #2b2b2b;
    margin: 0 0 6px 0;
}

.share-host-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.share-host-badge {
    font-size: 12px;
    font-weight: 700;
    color: #059669;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.share-host-action {
    flex-shrink: 0;
}

/* Protection Points */
.share-protection-points {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.share-protection-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.share-protection-item i {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2b2b2b;
    font-size: 16px;
    flex-shrink: 0;
}

.share-protection-item strong {
    display: block;
    font-size: 14.5px;
    color: #2b2b2b;
    margin-bottom: 2px;
}

.share-protection-item p {
    font-size: 13px;
    color: #717171;
    margin: 0;
    line-height: 1.45;
}

/* Sidebar Financials Card */
.share-sidebar-card {
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: 18px;
    padding: 26px 26px;
    margin-bottom: 0;
    box-shadow: 0 2px 8px rgba(43, 43, 43, 0.04);
}

.share-sidebar-card--financials {
    position: static !important;
}

.share-sidebar-card__header-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 18px 0;
    padding-bottom: 12px;
    border-bottom: 1px solid #f3f3f3;
}

.share-sidebar-card__header-top .share-sidebar-card__title {
    margin: 0;
    padding: 0;
    border-bottom: none;
}

.share-sidebar-card__title {
    font-size: 17px;
    font-weight: 800;
    color: #2b2b2b;
    display: flex;
    align-items: center;
    gap: 9px;
}

.share-sidebar-card__title i {
    color: #f2bb63;
}

.share-financials-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11.5px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 999px;
    letter-spacing: 0.02em;
    flex-shrink: 0;
}

.share-financials-badge--paid {
    background: #ecfdf5;
    color: #059669;
    border: 1px solid #a7f3d0;
}

.share-financials-badge--pending {
    background: #fffbeb;
    color: #d97706;
    border: 1px solid #fde68a;
}

.share-financials-badge--cancelled {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

.share-price-rows {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 22px;
}

.share-price-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    font-size: 14.5px;
    color: #555555;
}

.share-price-row__label-group {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.share-price-row__label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    color: #404040;
}

.share-price-row__subdetail {
    font-size: 12px;
    color: #a3a3a3;
    font-weight: 500;
}

.share-price-row__val {
    font-weight: 700;
    color: #2b2b2b;
    text-align: right;
    white-space: nowrap;
}

.share-price-row__val--main {
    font-size: 15.5px;
    color: #2b2b2b;
}

.share-price-row--extra {
    color: #555555;
    font-size: 13.5px;
}

.share-price-row--discount {
    color: #059669;
}

.share-price-row__val--discount {
    color: #059669;
    font-weight: 700;
}

.share-price-row--refund {
    color: #dc2626;
    font-size: 13.5px;
}

.share-price-row__val--refund {
    color: #dc2626;
    font-weight: 700;
}

/* Security Deposit Capsule */
.share-deposit-capsule {
    background: #fffdf5;
    border: 1px solid #fde68a;
    border-radius: 12px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 4px 0;
}

.share-deposit-capsule .share-price-row--deposit {
    align-items: center;
}

.share-deposit-capsule .share-price-row--deposit .share-price-row__label {
    color: #92400e;
    font-weight: 700;
}

.share-deposit-capsule .share-price-row--deposit .share-price-row__label i {
    color: #d97706;
}

.share-deposit-capsule .share-price-row--deposit .share-price-row__val {
    color: #92400e;
    font-size: 15px;
    font-weight: 800;
}

.share-deposit-capsule__note {
    font-size: 11.5px;
    color: #b45309;
    line-height: 1.4;
    display: flex;
    align-items: flex-start;
    gap: 7px;
}

.share-deposit-capsule__note i {
    margin-top: 2px;
    flex-shrink: 0;
    color: #d97706;
}

.share-deposit-capsule--refunded {
    background: #f0fdf4;
    border-color: #bbf7d0;
}

.share-deposit-capsule--refunded .share-price-row--deposit .share-price-row__label,
.share-deposit-capsule--refunded .share-price-row--deposit .share-price-row__val {
    color: #166534;
}

.share-deposit-capsule--refunded .share-deposit-capsule__note {
    color: #15803d;
}

.share-price-divider {
    height: 1px;
    background: #ebebeb;
    margin: 4px 0;
}

.share-price-row--total {
    font-size: 18px;
    font-weight: 800;
    color: #2b2b2b;
    align-items: baseline;
    padding-top: 4px;
}

.share-price-row--total .share-price-row__label {
    font-size: 16px;
    font-weight: 800;
    color: #2b2b2b;
}

.share-price-row__val--highlight {
    font-size: 22px;
    font-weight: 900;
    color: #2b2b2b;
    letter-spacing: -0.01em;
}

.share-price-row--net {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 10px;
    padding: 8px 12px;
    margin-top: 6px;
    font-size: 13.5px;
    color: #166534;
    font-weight: 700;
}

.share-price-row__val--net {
    font-size: 16px;
    font-weight: 800;
    color: #166534;
}

.share-payment-method-row {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #fafaf9;
    border: 1px solid #f3f3f3;
    border-radius: 12px;
    padding: 10px 14px;
    margin-top: 4px;
}

.share-payment-method-row i {
    font-size: 18px;
    color: #10b981;
    flex-shrink: 0;
}

.share-payment-method-row__text {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.share-payment-method-row__text span {
    font-size: 12.5px;
    font-weight: 700;
    color: #2b2b2b;
}

.share-payment-method-row__text small {
    font-size: 11.5px;
    color: #717171;
}

/* Sidebar Actions Suite */
.share-sidebar-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.share-action-btn {
    width: 100%;
    padding: 12px 18px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.2s ease;
    border: none;
    box-sizing: border-box;
}

.share-action-btn--pay-lg {
    background: linear-gradient(135deg, #f2bb63 0%, #e0a347 100%) !important;
    color: #2b2b2b !important;
    font-size: 15.5px !important;
    font-weight: 800 !important;
    padding: 14px 20px !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.35) !important;
}

.share-action-btn--pay-lg:hover {
    background: linear-gradient(135deg, #e0a347 0%, #ca8a04 100%) !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(242, 187, 99, 0.45) !important;
}

.share-action-btn--chat-full,
.share-action-btn--chat {
    background: #2b2b2b !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(43, 43, 43, 0.15) !important;
}

.share-action-btn--chat-full:hover,
.share-action-btn--chat:hover {
    background: #3d3d3d !important;
    transform: translateY(-1px);
}

.share-action-btn--secondary {
    background: #fafaf9 !important;
    color: #2b2b2b !important;
    border: 1px solid #d4d4d4 !important;
}

.share-action-btn--secondary:hover {
    background: #ebebeb !important;
    border-color: #a3a3a3 !important;
}

.share-action-btn--dispute {
    background: #ffffff !important;
    color: #717171 !important;
    border: 1px solid #ebebeb !important;
}

.share-action-btn--dispute:hover {
    background: #fff1f2 !important;
    color: #be123c !important;
    border-color: #fecdd3 !important;
}

.share-action-btn--cancel {
    background: transparent !important;
    color: #717171 !important;
    border: 1px dashed #d4d4d4 !important;
    font-size: 13.5px !important;
}

.share-action-btn--cancel:hover {
    background: #fef2f2 !important;
    color: #dc2626 !important;
    border-color: #fecaca !important;
}

.share-action-btn--print {
    background: transparent !important;
    color: #717171 !important;
    border: 1px solid transparent !important;
    font-size: 13px !important;
}

.share-action-btn--print:hover {
    color: #2b2b2b !important;
    background: #f3f3f3 !important;
}

/* Customer Help Card */
.share-sidebar-card--help {
    background: #fafaf9;
    border: 1px solid #ebebeb;
    text-align: center;
    padding: 22px 20px;
}

.share-help-icon {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #ebebeb;
    color: #f2bb63;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin: 0 auto 12px;
}

.share-help-title {
    font-size: 15px;
    font-weight: 800;
    color: #2b2b2b;
    margin: 0 0 6px 0;
}

.share-help-desc {
    font-size: 13px;
    color: #717171;
    margin: 0 0 12px 0;
    line-height: 1.45;
}

.share-help-link {
    font-size: 13px;
    font-weight: 700;
    color: #2b2b2b;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    text-decoration: none;
    transition: color 0.15s ease;
}

.share-help-link:hover {
    color: #555555;
    text-decoration: underline;
}

/* HivePress Cancel Modal Custom Polish */
#booking_cancel_modal .hp-modal__content {
    border-radius: 20px !important;
    max-width: 480px !important;
    padding: 24px 28px !important;
}

#booking_cancel_modal .hp-form__button {
    background: #ef4444 !important;
    color: #ffffff !important;
    border-radius: 12px !important;
    padding: 12px 24px !important;
    font-weight: 700 !important;
}

#booking_cancel_modal .hp-form__button:hover {
    background: #dc2626 !important;
}

/* ==========================================================================
   RESPONSIVE DESIGN (MOBILE & TABLET BREAKPOINTS)
   ========================================================================== */
@media (max-width: 991px) {
    .share-booking-detail-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }

    .share-booking-detail-sidebar {
        position: static !important;
        top: auto !important;
    }

    .share-sidebar-card--financials {
        position: static !important;
    }

    .share-detail-card {
        padding: 22px 20px !important;
    }

    .share-listing-showcase {
        gap: 16px !important;
    }

    .share-listing-showcase__image-wrap {
        width: 140px !important;
        height: 110px !important;
    }

    .share-listing-showcase__title {
        font-size: 18px !important;
    }
}

@media (max-width: 640px) {
    .hp-template--booking-view-page,
    .hp-page--booking-view-page {
        padding-top: 18px !important;
        padding-bottom: 40px !important;
    }

    .share-booking-detail-nav {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
    }

    .share-detail-banner {
        flex-direction: column !important;
        padding: 18px 20px !important;
        gap: 12px !important;
    }

    .share-detail-banner__icon {
        width: 40px !important;
        height: 40px !important;
        font-size: 18px !important;
    }

    .share-listing-showcase {
        flex-direction: column !important;
    }

    .share-listing-showcase__image-wrap {
        width: 100% !important;
        height: 180px !important;
    }

    .share-timeline-grid {
        flex-direction: column !important;
        gap: 14px !important;
    }

    .share-timeline-box-divider {
        transform: rotate(90deg) !important;
        margin: -4px 0 !important;
    }

    .share-host-profile-row {
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .share-host-action {
        width: 100% !important;
    }

    .share-action-btn {
        width: 100% !important;
    }
}

/* ==========================================================================
   359SHARE CUSTOMER PAYMENTS & BENCHMARK RENTAL RECEIPT (ORDERS & VIEW-ORDER)
   ========================================================================== */

/* 1. Payments Wrapper & List */
.share-payments-wrapper {
    width: 100%;
}

.share-payments-header-desc {
    margin-bottom: 22px;
}

.share-payments-header-desc p {
    margin: 0;
    font-size: 14px;
    color: #717171;
    line-height: 1.5;
}

.share-payments-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.share-payment-card {
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-card, 18px);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.share-payment-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(43, 43, 43, 0.07);
    border-color: #d4d4d4;
}

.share-payment-booking-ref {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12.5px;
    font-weight: 600;
    color: #404040;
    background: #f3f3f3;
    padding: 3px 10px;
    border-radius: var(--share-radius-pill, 9999px);
    border: 1px solid #ebebeb;
}

.share-payment-booking-ref i {
    color: #f2bb63;
    font-size: 11.5px;
}

.share-payment-method-tag {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 600;
    color: #555555;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-pill, 9999px);
    padding: 2px 9px;
    margin-top: 3px;
    width: fit-content;
}

.share-payment-method-tag i {
    color: #717171;
    font-size: 11px;
}

.share-payment-avatar-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f3f3f3;
    color: #a3a3a3;
    font-size: 16px;
}

.share-payments-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    margin-top: 32px;
    padding-top: 20px;
    border-top: 1px solid #ebebeb;
}

.share-pagination-info {
    font-size: 13.5px;
    font-weight: 600;
    color: #717171;
}

/* 2. Benchmark Rental Receipt Page (/moyat-profil/view-order/<id>/) */
.share-receipt-page {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding-bottom: 48px;
}

/* Breadcrumb */
.share-receipt-breadcrumb {
    margin-bottom: 20px;
}

.share-receipt-breadcrumb__link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13.5px;
    font-weight: 600;
    color: #555555 !important;
    text-decoration: none !important;
    padding: 6px 12px;
    background: #f3f3f3;
    border-radius: var(--share-radius-btn, 12px);
    transition: all 0.15s ease;
}

.share-receipt-breadcrumb__link:hover {
    background: #ebebeb;
    color: #2b2b2b !important;
}

/* Receipt Header */
.share-receipt-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 28px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ebebeb;
    flex-wrap: wrap;
}

.share-receipt-header__title-row {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}

.share-receipt-header__title {
    margin: 0 !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
}

.share-receipt-header__id {
    color: #717171;
    font-weight: 600;
}

.share-receipt-header__meta {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 13.5px;
    color: #717171;
    flex-wrap: wrap;
}

.share-receipt-header__meta i {
    color: #a3a3a3;
    margin-right: 3px;
}

.share-receipt-header__booking-ref,
a.share-receipt-header__booking-ref {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    padding: 3px 12px;
    border-radius: var(--share-radius-pill, 9999px);
    color: #2b2b2b !important;
    text-decoration: none !important;
    font-size: 13px;
    font-weight: 500;
    transition: all 0.2s ease;
}

.share-receipt-header__booking-ref:hover,
.share-receipt-header__booking-ref:focus,
.share-receipt-header__booking-ref:active,
a.share-receipt-header__booking-ref:hover,
a.share-receipt-header__booking-ref:focus,
a.share-receipt-header__booking-ref:active {
    background: #f5f5f4 !important;
    border-color: #d4d4d4 !important;
    color: #2b2b2b !important;
    text-decoration: none !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

.share-receipt-header__booking-ref i,
a.share-receipt-header__booking-ref i {
    color: #f2bb63 !important;
}

.share-receipt-header__booking-ref strong,
a.share-receipt-header__booking-ref strong {
    color: #2b2b2b !important;
}

/* Receipt Grid: 2 Columns */
.share-receipt-grid {
    display: grid;
    grid-template-columns: 1.6fr 1fr;
    gap: 24px;
    align-items: start;
}

.share-receipt-col {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Receipt Cards Base */
.share-receipt-card {
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-card, 18px);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    overflow: hidden;
}

.share-receipt-card__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 22px;
    background: #fafaf9;
    border-bottom: 1px solid #f3f3f3;
    gap: 12px;
    flex-wrap: wrap;
}

.share-receipt-card__title {
    margin: 0 !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    display: flex;
    align-items: center;
    gap: 8px;
}

.share-receipt-card__title i {
    color: #717171;
    font-size: 15px;
}

.share-receipt-card__link {
    font-size: 13px;
    font-weight: 600;
    color: #2b2b2b !important;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.share-receipt-card__link:hover {
    text-decoration: underline !important;
}

.share-receipt-card__body {
    padding: 22px;
}

/* Showcase Listing Item Inside Receipt */
.share-receipt-item {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    padding-bottom: 18px;
    border-bottom: 1px solid #f3f3f3;
}

.share-receipt-item__thumb-wrap {
    flex-shrink: 0;
    width: 104px;
    height: 84px;
    border-radius: 12px;
    overflow: hidden;
    background: #f3f3f3;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.share-receipt-item__thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.share-receipt-item__thumb-wrap:hover .share-receipt-item__thumb {
    transform: scale(1.05);
}

.share-receipt-item__thumb-wrap--placeholder {
    color: #a3a3a3;
    font-size: 28px;
}

.share-receipt-item__info {
    flex: 1;
    min-width: 0;
}

.share-receipt-item__pills {
    display: flex;
    gap: 8px;
    margin-bottom: 6px;
    flex-wrap: wrap;
}

.share-receipt-item__title {
    display: block;
    font-family: 'Outfit', sans-serif !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    text-decoration: none !important;
    line-height: 1.3 !important;
    margin-bottom: 8px !important;
}

.share-receipt-item__title:hover {
    text-decoration: underline !important;
}

/* Benchmark Structured Rental Period Module */
.share-rental-period-card {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-card, 18px);
    padding: 20px 28px;
    margin: 18px 0;
    gap: 20px;
}

.share-rental-period-card--simple {
    display: flex;
    justify-content: flex-start;
    gap: 12px;
    font-size: 14px;
    color: #404040;
}

.share-rental-date-side {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.share-rental-date-side--start {
    align-items: flex-start;
    text-align: left;
    justify-self: start;
}

.share-rental-date-side--end {
    align-items: flex-end;
    text-align: right;
    justify-self: end;
}

.share-rental-date-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #737373;
}

.share-rental-date-side--end .share-rental-date-badge {
    justify-content: flex-end;
}

.share-rental-date-badge i {
    color: #f2bb63;
    font-size: 12px;
}

.share-rental-date-main {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.share-rental-date-side--end .share-rental-date-main {
    justify-content: flex-end;
}

.share-rental-day {
    font-size: 30px;
    font-weight: 800;
    line-height: 1;
    color: #2b2b2b;
    font-family: inherit;
}

.share-rental-month-year {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.share-rental-date-side--start .share-rental-month-year {
    text-align: left;
}

.share-rental-date-side--end .share-rental-month-year {
    text-align: left;
}

.share-rental-month {
    font-size: 13px;
    font-weight: 700;
    color: #2b2b2b;
}

.share-rental-year {
    font-size: 11px;
    color: #8c8c8c;
    font-weight: 500;
}

.share-rental-period-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
}

.share-rental-period-divider::before,
.share-rental-period-divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: #e2e8f0;
}

.share-rental-duration-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 16px;
    background: #ffffff;
    border: 1px solid #e5e5e5;
    border-radius: var(--share-radius-pill, 9999px);
    font-size: 12px;
    font-weight: 700;
    color: #2b2b2b;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    white-space: nowrap;
    flex-shrink: 0;
}

.share-rental-duration-pill i {
    color: #f2bb63;
    font-size: 11px;
}

.share-rental-divider-line {
    display: none !important;
}

/* Vendor Commission Row - uniform neutral text color for label and amount */
.share-price-row--commission .share-price-row__label,
.share-price-row--commission .share-price-row__val {
    color: #4b5563 !important;
    font-weight: 600 !important;
}

.share-price-row--commission i {
    color: #9ca3af !important;
}

@media (max-width: 640px) {
    .share-rental-period-card {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
        padding: 16px;
    }
    .share-rental-date-side--end {
        align-items: flex-start;
        text-align: left;
    }
    .share-rental-date-side--end .share-rental-date-badge,
    .share-rental-date-side--end .share-rental-date-main {
        justify-content: flex-start;
    }
    .share-rental-period-divider {
        padding: 0;
        min-width: auto;
    }
    .share-rental-divider-line {
        display: none;
    }
    .share-rental-duration-pill {
        align-self: flex-start;
    }
}

/* Host Row in Receipt */
.share-receipt-host-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding-top: 16px;
    flex-wrap: wrap;
}

.share-receipt-host-info {
    display: flex;
    align-items: center;
    gap: 12px;
}

.share-receipt-host-avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
    flex-shrink: 0;
}

.share-receipt-host-avatar--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f3f3f3;
    color: #a3a3a3;
    font-size: 16px;
}

.share-receipt-host-meta {
    display: flex;
    flex-direction: column;
}

.share-receipt-host-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #a3a3a3;
    margin-bottom: 2px;
}

.share-receipt-host-name {
    font-size: 14.5px;
    font-weight: 700;
    color: #2b2b2b;
}

/* Financial Breakdown Table */
.share-receipt-method-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12.5px;
    font-weight: 600;
    color: #404040;
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-pill, 9999px);
    padding: 3px 11px;
}

.share-receipt-method-pill i {
    color: #f2bb63;
}

.share-receipt-breakdown-table {
    display: flex;
    flex-direction: column;
}

.share-receipt-breakdown-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 14px 0;
    border-bottom: 1px solid #f3f3f3;
    gap: 16px;
}

.share-receipt-breakdown-cell--label {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.share-breakdown-title {
    font-size: 14.5px;
    font-weight: 600;
    color: #2b2b2b;
    margin-bottom: 2px;
}

.share-breakdown-sub {
    font-size: 12.5px;
    color: #717171;
    line-height: 1.4;
}

.share-receipt-breakdown-cell--value {
    text-align: right;
    font-size: 15px;
    font-weight: 700;
    color: #2b2b2b;
    white-space: nowrap;
}

.share-receipt-breakdown-row--deposit {
    background: #fafaf9;
    margin: 0 -22px;
    padding: 14px 22px;
    border-top: 1px dashed #ebebeb;
    border-bottom: 1px dashed #ebebeb;
}

.share-receipt-breakdown-row--total {
    border-bottom: none;
    padding-top: 18px;
    padding-bottom: 4px;
}

.share-breakdown-total-title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 16.5px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
}

.share-receipt-grand-total {
    font-family: 'Outfit', sans-serif !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
}

/* Payment Info Box */
.share-receipt-payment-info-box {
    margin-top: 20px;
    padding: 14px 18px;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-btn, 12px);
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 14px;
}

.share-receipt-payment-info-col {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.share-payment-info-lbl {
    font-size: 11.5px;
    font-weight: 700;
    text-transform: uppercase;
    color: #a3a3a3;
    letter-spacing: 0.04em;
}

.share-payment-info-val {
    font-size: 13.5px;
    color: #2b2b2b;
    display: flex;
    align-items: center;
    gap: 6px;
}

.share-payment-info-val--code {
    font-family: monospace;
    font-size: 12.5px;
    background: #ffffff;
    border: 1px solid #ebebeb;
    padding: 2px 6px;
    border-radius: 4px;
    word-break: break-all;
}

/* Ordinance H-18 Doc Box */
.share-h18-badge {
    font-size: 12px;
    font-weight: 700;
    color: #2b2b2b;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    padding: 3px 10px;
    border-radius: var(--share-radius-pill, 9999px);
}

.share-h18-note {
    font-size: 13px;
    color: #717171;
    line-height: 1.5;
    margin: 0 0 16px 0;
    padding-bottom: 14px;
    border-bottom: 1px solid #f3f3f3;
}

/* Cash Notice Box */
.share-receipt-cash-notice {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 16px 20px;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-card, 18px);
    color: #404040;
    font-size: 13.5px;
    line-height: 1.5;
}

.share-receipt-cash-notice i {
    color: #f2bb63;
    font-size: 18px;
    margin-top: 2px;
    flex-shrink: 0;
}

.share-receipt-cash-notice strong {
    display: block;
    color: #2b2b2b;
    margin-bottom: 2px;
}

/* Sidebar Support & Action Components */
.share-support-desc {
    font-size: 13px;
    line-height: 1.5;
    color: #666666;
    margin: 0 0 16px 0;
}

.share-support-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.share-support-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 12.5px;
    color: #555555;
    font-weight: 500;
    text-decoration: none !important;
    padding: 6px 0;
    transition: color 0.15s ease;
}

.share-support-link:hover {
    color: #2b2b2b !important;
    text-decoration: underline !important;
}

.share-support-link i {
    color: #f2bb63;
    font-size: 12px;
}

/* Customer / Billing Details */
.share-receipt-customer-details {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.share-customer-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    font-size: 13.5px;
    line-height: 1.4;
    gap: 12px;
}

.share-customer-row--address,
.share-customer-row--note {
    flex-direction: column;
    gap: 4px;
}

.share-customer-label {
    color: #717171;
    font-size: 13px;
    flex-shrink: 0;
}

.share-customer-val {
    color: #2b2b2b;
    text-align: right;
    word-break: break-word;
}

.share-customer-row--address .share-customer-val,
.share-customer-row--note .share-customer-val {
    text-align: left;
}

/* Guarantee Card */
.share-receipt-card--guarantee {
    background: #fafaf9;
    border: 1px solid #ebebeb;
}

.share-guarantee-badge-wrap {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 18px 20px;
}

.share-guarantee-icon {
    width: 38px;
    height: 38px;
    background: #ffffff;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-btn, 12px);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #f2bb63;
    font-size: 17px;
    flex-shrink: 0;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
}

.share-guarantee-title {
    margin: 0 0 4px 0 !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
}

.share-guarantee-desc {
    margin: 0 !important;
    font-size: 12.5px !important;
    color: #717171 !important;
    line-height: 1.45 !important;
}

/* Print Styles */
@media print {
    body {
        background: #ffffff !important;
        color: #000000 !important;
    }

    header,
    footer,
    .hp-header,
    .hp-footer,
    .share-receipt-breadcrumb,
    .share-receipt-header__right,
    .share-receipt-card--actions,
    .share-receipt-sidebar-actions,
    .share-receipt-card--guarantee,
    .share-receipt-card__link {
        display: none !important;
    }

    .share-receipt-page {
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .share-receipt-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .share-receipt-card {
        border: 1px solid #cccccc !important;
        box-shadow: none !important;
        break-inside: avoid;
    }
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .share-receipt-grid {
        grid-template-columns: 1fr !important;
    }

    .share-receipt-header {
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .share-receipt-header__right {
        width: 100% !important;
    }

    .share-receipt-header__right button {
        width: 100% !important;
    }
}

@media (max-width: 600px) {
    .share-receipt-item {
        flex-direction: column !important;
    }

    .share-receipt-item__thumb-wrap {
        width: 100% !important;
        height: 160px !important;
    }

    .share-receipt-breakdown-row {
        flex-direction: column !important;
        gap: 6px !important;
    }

    .share-receipt-breakdown-cell--value {
        text-align: left !important;
    }

    .share-receipt-host-row {
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .share-receipt-host-actions {
        width: 100% !important;
    }

    .share-receipt-host-actions a {
        width: 100% !important;
        text-align: center !important;
    }
}

/* 3. Clean Up Legacy Header and Action Styling on view-order Endpoint */
.share-view-order-page .hp-page__header,
.share-view-order-page .hp-page__title,
.share-view-order-page .entry-title,
.woocommerce-view-order .hp-page__header,
.woocommerce-view-order .entry-title,
.woocommerce-view-order .woocommerce-MyAccount-content > h1:first-child,
.woocommerce-view-order .woocommerce-MyAccount-content > h2:first-child,
.woocommerce-view-order .hp-order__details--primary,
.share-vendor-order-detail-page .hp-page__header,
.share-vendor-order-detail-page .hp-page__title,
.share-vendor-order-detail-page .entry-title,
.share-vendor-order-detail-page .hp-order__details--primary,
.share-vendor-order-detail-page .hp-order__actions--primary {
    display: none !important;
}

.woocommerce-view-order .hp-order__actions,
.share-view-order-page .hp-order__actions {
    display: none !important;
}

/* Full-Width Focused Layout for view-order & vendor single order (Matches /account/bookings/<id>/) */
.share-view-order-page .hp-page__sidebar,
.share-view-order-page .site-sidebar,
.share-view-order-page .page-sidebar,
.share-view-order-page .woocommerce-MyAccount-navigation,
.woocommerce-view-order .hp-page__sidebar,
.woocommerce-view-order .site-sidebar,
.woocommerce-view-order .page-sidebar,
.woocommerce-view-order .woocommerce-MyAccount-navigation,
.share-vendor-order-detail-page .hp-page__sidebar,
.share-vendor-order-detail-page .site-sidebar,
.share-vendor-order-detail-page .page-sidebar,
.share-vendor-order-detail-page .woocommerce-MyAccount-navigation {
    display: none !important;
}

.share-view-order-page .hp-page__content,
.share-view-order-page .woocommerce-MyAccount-content,
.woocommerce-view-order .hp-page__content,
.woocommerce-view-order .woocommerce-MyAccount-content,
.share-vendor-order-detail-page .hp-page__content,
.share-vendor-order-detail-page .share-vendor-order-page-content {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

.share-view-order-page .hp-row,
.woocommerce-view-order .hp-row,
.share-vendor-order-detail-page .hp-row {
    display: block !important;
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
}

.share-view-order-page .hp-page__container,
.share-view-order-page .site-content,
.woocommerce-view-order .hp-page__container,
.woocommerce-view-order .site-content > .hp-container,
.share-vendor-order-detail-page .hp-page__container,
.share-vendor-order-detail-page .site-content > .hp-container {
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

.share-view-order-page .woocommerce,
.woocommerce-view-order .woocommerce,
.share-vendor-order-detail-page .woocommerce {
    display: block !important;
    width: 100% !important;
}

/* Vendor Order Details Specific Components */
.share-vendor-earnings-row {
    background: #f0fdf4 !important;
    padding: 12px 14px !important;
    border-radius: var(--share-radius-sm, 8px) !important;
    border: 1px solid #bbf7d0 !important;
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}

.share-vendor-earnings-val {
    color: #15803d !important;
    font-weight: 700 !important;
    font-size: 20px !important;
}

.share-financials-meta {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid #f0f0f0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.share-fin-meta-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 13px;
    color: #666666;
}

.share-fin-meta-item__val {
    font-weight: 600;
    color: #1f2937;
    display: flex;
    align-items: center;
    gap: 6px;
}

.share-customer-profile-block {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.share-customer-contact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    padding: 14px;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: var(--share-radius-md, 12px);
}

.share-contact-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.share-contact-item--full {
    grid-column: 1 / -1;
}

.share-contact-item__label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #888888;
    display: flex;
    align-items: center;
    gap: 5px;
}

.share-contact-item__val {
    font-size: 13px;
    font-weight: 600;
    color: #1f2937;
    line-height: 1.4;
    text-decoration: none;
    transition: color 0.15s ease;
}

.share-contact-item__val:hover {
    color: var(--share-primary, #eab308);
}

.share-vendor-single-actions {
    margin-bottom: 12px;
}

.share-vendor-single-actions .share-vendor-order-card__actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.share-vendor-single-actions .share-card-btn {
    width: 100% !important;
    justify-content: center !important;
    padding: 10px 16px !important;
    font-size: 14px !important;
}

.share-secondary-action-buttons {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-top: 12px;
    border-top: 1px solid #f0f0f0;
}

.share-booking-ref-badge--link {
    text-decoration: none;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.share-booking-ref-badge--link:hover {
    background: #f4f4f5 !important;
    border-color: #d4d4d8 !important;
    color: #09090b !important;
}

@media (max-width: 640px) {
    .share-customer-contact-grid {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================================
   4. Unified 359Share Modal Design System (HivePress & Fancybox)
   Applies to: #message_send_modal, #order_dispute_modal, #order_refund_modal,
   #booking_cancel_modal, #user_login_modal, and all .hp-modal containers
   ========================================================================== */

/* Modal Container Top-Level Z-Index: MUST be strictly above fixed navbar (z-index: 99999) */
.fancybox-container {
    z-index: 10000000 !important;
}

/* Modern Frosted Backdrop Blur */
.fancybox-bg {
    background: rgba(15, 23, 42, 0.7) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    opacity: 1 !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* Modal Slide Scroll Area */
.fancybox-slide {
    padding: 30px 16px !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
}

/* Modal Content Card Container */
.fancybox-slide--html .fancybox-content,
.fancybox-content:has(.hp-modal),
.hp-modal {
    background: #ffffff !important;
    border-radius: var(--share-radius-card, 22px) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    box-shadow: 0 25px 60px -12px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(0, 0, 0, 0.03) !important;
    padding: 32px 34px !important;
    max-width: 500px !important;
    width: calc(100% - 32px) !important;
    box-sizing: border-box !important;
    position: relative !important;
    overflow-y: auto !important;
    max-height: calc(100vh - 48px) !important;
    -webkit-overflow-scrolling: touch !important;
    text-align: left !important;
    margin: auto !important;
}

/* Elegant Floating Circular Close Button */
.fancybox-button.fancybox-close-small,
.fancybox-button--close {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background: #f1f5f9 !important;
    border: 1px solid #cbd5e1 !important;
    color: #1e293b !important;
    top: 14px !important;
    right: 14px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
    z-index: 10000002 !important;
}

.fancybox-button.fancybox-close-small svg,
.fancybox-button--close svg {
    width: 16px !important;
    height: 16px !important;
    fill: currentColor !important;
    stroke: none !important;
}

.fancybox-button.fancybox-close-small:hover,
.fancybox-button--close:hover {
    background: #e2e8f0 !important;
    color: #0f172a !important;
    border-color: #94a3b8 !important;
    transform: scale(1.08) !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.16) !important;
}

/* Modal Header & Title */
.hp-modal__header {
    margin: 0 0 14px 0 !important;
    padding-right: 44px !important;
    border: none !important;
}

.hp-modal .hp-modal__title,
.hp-modal__title {
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    line-height: 1.3 !important;
    margin: 0 0 14px 0 !important;
    padding-right: 44px !important;
    display: block !important;
}

/* Modal Form Description / Subtitle */
.hp-modal .hp-form__description,
.hp-form__description {
    font-size: 13.5px !important;
    color: #666666 !important;
    line-height: 1.5 !important;
    margin: 0 0 20px 0 !important;
    padding-right: 20px !important;
    display: block !important;
}

/* Modal Form Messages (Alerts) */
.hp-modal .hp-form__messages {
    border-radius: 12px !important;
    padding: 12px 16px !important;
    font-size: 13px !important;
    margin-bottom: 18px !important;
    border-width: 1px !important;
    border-style: solid !important;
}

.hp-modal .hp-form__messages--error {
    background: #fef2f2 !important;
    border-color: #fca5a5 !important;
    color: #991b1b !important;
}

.hp-modal .hp-form__messages--success {
    background: #f0fdf4 !important;
    border-color: #86efac !important;
    color: #166534 !important;
}

/* Form Fields & Labels inside Modals */
.hp-modal .hp-form__field {
    margin-bottom: 16px !important;
}

.hp-modal .hp-field__label,
.hp-modal .hp-form__field > label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #404040 !important;
    margin-bottom: 6px !important;
    display: block !important;
}

.hp-modal .hp-field input[type="text"],
.hp-modal .hp-field input[type="email"],
.hp-modal .hp-field input[type="password"],
.hp-modal .hp-field input[type="number"],
.hp-modal textarea,
.hp-modal .hp-field--textarea textarea {
    width: 100% !important;
    background: #fafaf9 !important;
    border: 1.5px solid #e5e5e5 !important;
    border-radius: var(--share-radius-btn, 12px) !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
    color: #2b2b2b !important;
    font-family: inherit !important;
    line-height: 1.5 !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
}

.hp-modal textarea,
.hp-modal .hp-field--textarea textarea {
    min-height: 120px !important;
    resize: vertical !important;
}

.hp-modal .hp-field input:focus,
.hp-modal textarea:focus,
.hp-modal .hp-field--textarea textarea:focus {
    background: #ffffff !important;
    border-color: #2b2b2b !important;
    box-shadow: 0 0 0 3px rgba(43, 43, 43, 0.08) !important;
    outline: none !important;
}

/* Modal Password Field & Eye Icon Inside Input */
.hp-modal .hp-form__field--password {
    position: relative !important;
}

.hp-modal input[type="password"],
.hp-modal .hp-field input[type="password"] {
    padding-right: 48px !important;
}

.hp-modal .hp-form__field--password .hp-field__icon {
    position: absolute !important;
    right: 14px !important;
    bottom: 0 !important;
    height: 48px !important;
    width: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #8e959b !important;
    font-size: 16px !important;
    cursor: pointer !important;
    z-index: 10 !important;
    text-decoration: none !important;
    line-height: 1 !important;
    background: transparent !important;
    border: none !important;
    transition: color 0.15s ease !important;
}

.hp-modal .hp-form__field--password .hp-field__icon:hover {
    color: #002f34 !important;
}

.hp-modal .hp-form__field--password .hp-field__icon i,
.hp-modal .hp-form__field--password .hp-field__icon .hp-icon {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    line-height: 1 !important;
}

/* Modal Submit Buttons */

.hp-modal .hp-form__button,
.hp-modal button[type="submit"],
.hp-modal .button--primary {
    width: 100% !important;
    background: #2b2b2b !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: var(--share-radius-btn, 12px) !important;
    padding: 13px 24px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08) !important;
    margin-top: 6px !important;
    text-decoration: none !important;
}

.hp-modal .hp-form__button:hover,
.hp-modal button[type="submit"]:hover,
.hp-modal .button--primary:hover {
    background: #404040 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(43, 43, 43, 0.18) !important;
}

.hp-modal .hp-form__button:active,
.hp-modal button[type="submit"]:active {
    transform: translateY(0) !important;
}

/* Inquiry / Message Send Modal Button -> Warm Gold Gradient */
.hp-modal--message-send .hp-form__button,
.hp-modal--message-send button[type="submit"],
#message_send_modal .hp-form__button,
#message_send_modal button[type="submit"],
.hp-modal form.hp-form--message-send button[type="submit"] {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    border-radius: 14px !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.35) !important;
}

.hp-modal--message-send .hp-form__button:hover,
.hp-modal--message-send button[type="submit"]:hover,
#message_send_modal .hp-form__button:hover,
#message_send_modal button[type="submit"]:hover,
.hp-modal form.hp-form--message-send button[type="submit"]:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 18px rgba(242, 187, 99, 0.5) !important;
    color: #1e2022 !important;
}

/* Modal Success Message & Dismiss Button */
.hp-modal .hp-message--success,
.fancybox-content .hp-message--success {
    background: #ecfdf5 !important;
    border: 1.5px solid #a7f3d0 !important;
    color: #065f46 !important;
    border-radius: 16px !important;
    padding: 22px 20px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-align: center !important;
    margin: 16px 0 !important;
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.1) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
}

.hp-modal .hp-message--success::before,
.fancybox-content .hp-message--success::before {
    content: "✓" !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    background: #10b981 !important;
    color: #ffffff !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    margin-bottom: 6px !important;
}

.share-modal-close-action-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    margin-top: 14px !important;
    padding: 14px 20px !important;
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    border-radius: 12px !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.35) !important;
    transition: all 0.2s ease !important;
    text-align: center !important;
}

.share-modal-close-action-btn:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 18px rgba(242, 187, 99, 0.5) !important;
}

/* Responsive adjustment for Mobile screens */
@media (max-width: 576px) {
    .fancybox-slide {
        padding: 16px 10px !important;
        align-items: flex-start !important;
    }

    .fancybox-slide--html .fancybox-content,
    .fancybox-content:has(.hp-modal),
    .hp-modal {
        padding: 24px 18px !important;
        border-radius: 18px !important;
        width: calc(100% - 16px) !important;
        margin: 12px auto !important;
        max-height: calc(100vh - 24px) !important;
    }

    .hp-modal__title {
        font-size: 19px !important;
    }

    .fancybox-button.fancybox-close-small,
    .fancybox-button--close {
        top: 12px !important;
        right: 12px !important;
        width: 36px !important;
        height: 36px !important;
    }
}

/* Suppress redundant default footer action buttons on vendor order details page */
.share-vendor-order-page-content .hp-order__actions > .hp-order__action,
.share-vendor-order-page-content .hp-order__actions > a,
.share-vendor-order-page-content .hp-order__actions > button,
.share-vendor-order-page-content .hp-template--order-footer-block .hp-order__actions > a,
.share-vendor-order-page-content .hp-template--order-footer-block .hp-order__actions > button {
    display: none !important;
}

.share-vendor-order-page-content .hp-order__actions {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* ==========================================================================
   359SHARE LISTING SUBMISSION FORM POLISH (BENCHMARK UI)
   ========================================================================== */
.hp-page--listing-submit .hp-page__content,
.hp-form--listing-submit {
    max-width: 860px;
    margin: 0 auto;
}

.hp-page--listing-submit .hp-page__title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    margin-bottom: 24px !important;
}

/* Category Breadcrumb Container */
.custom-category-breadcrumb-wrapper {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 14px !important;
    padding: 16px 22px !important;
    margin-bottom: 28px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
}

.custom-category-breadcrumb .breadcrumb-label {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #8e959b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

.custom-category-breadcrumb .breadcrumb-path {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #002f34 !important;
}

.custom-category-breadcrumb .breadcrumb-change-btn {
    display: inline-flex !important;
    align-items: center !important;
    padding: 8px 16px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    color: #002f34 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.custom-category-breadcrumb .breadcrumb-change-btn:hover {
    background: #002f34 !important;
    color: #ffffff !important;
    border-color: #002f34 !important;
}

/* Form Fields & Typography */
.hp-form--listing-submit .hp-form__field {
    margin-bottom: 24px !important;
}

.hp-form--listing-submit .hp-form__label,
.hp-form--listing-submit .hp-field__label {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    margin-bottom: 8px !important;
    display: block !important;
}

.hp-form--listing-submit .hp-form__label small,
.hp-form--listing-submit .hp-field__label small {
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #8e959b !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.hp-form--listing-submit .hp-form__description {
    font-size: 13px !important;
    color: #64748b !important;
    margin-top: -4px !important;
    margin-bottom: 10px !important;
    line-height: 1.5 !important;
}

/* Inputs, Textareas, Selects */
.hp-form--listing-submit input[type="text"],
.hp-form--listing-submit input[type="number"],
.hp-form--listing-submit select {
    width: 100% !important;
    height: 48px !important;
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 0 16px !important;
    font-size: 15px !important;
    color: #2b2b2b !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
}

.hp-form--listing-submit textarea {
    width: 100% !important;
    min-height: 120px !important;
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 14px 16px !important;
    font-size: 15px !important;
    color: #2b2b2b !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
    resize: vertical !important;
}

.hp-form--listing-submit input:focus,
.hp-form--listing-submit textarea:focus,
.hp-form--listing-submit select:focus {
    border-color: #f2bb63 !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.25) !important;
    background: #ffffff !important;
    outline: none !important;
}

/* Image Upload Area */
.hp-form--listing-submit .hp-field--attachment-upload {
    background: #fafaf9 !important;
    border: 2px dashed #e2e8f0 !important;
    border-radius: 16px !important;
    padding: 24px !important;
    text-align: center !important;
    transition: border-color 0.2s ease !important;
}

.hp-form--listing-submit .hp-field--attachment-upload:hover {
    border-color: #f2bb63 !important;
}

.hp-form--listing-submit .hp-field--attachment-upload label {
    float: none !important;
    display: inline-block !important;
}

.hp-form--listing-submit .hp-field--attachment-upload label .button {
    background: #f1f5f9 !important;
    color: #0f172a !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 10px !important;
    padding: 10px 20px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.hp-form--listing-submit .hp-field--attachment-upload label .button:hover {
    background: #e2e8f0 !important;
    transform: translateY(-1px) !important;
}

/* Discounts Repeater Table */
.hp-form--listing-submit .hp-field--repeater table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 8px !important;
}

.hp-form--listing-submit .hp-field--repeater table tr {
    background: #fafaf9 !important;
    border-radius: 10px !important;
}

.hp-form--listing-submit .hp-field--repeater table td {
    padding: 10px 12px !important;
    border: none !important;
}

.hp-form--listing-submit .hp-field--repeater .hp-field__button--add {
    margin-top: 8px !important;
    background: #f1f5f9 !important;
    border: 1px solid #cbd5e1 !important;
    color: #0f172a !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 13px !important;
}

/* Primary Submit Button */
.hp-form--listing-submit .hp-form__button,
.hp-form--listing-submit button[type="submit"] {
    width: 100% !important;
    height: 52px !important;
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    border-radius: 14px !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.35) !important;
    margin-top: 16px !important;
}

.hp-form--listing-submit .hp-form__button:hover,
.hp-form--listing-submit button[type="submit"]:hover {
    background: #e5ab4f !important;
    transform: translateY(-2px) scale(1.01) !important;
    box-shadow: 0 6px 20px rgba(242, 187, 99, 0.45) !important;
}

/* ==========================================================================
   359SHARE BENCHMARK: VENDOR DASHBOARD, PAYOUTS & BALANCE (FLOW 5)
   ========================================================================== */

/* Vendor Dashboard Balance Hero Card */
.hp-template--vendor-dashboard-page .hp-page__content .hp-block--vendor-balance,
.hp-vendor--dashboard .hp-vendor__balance {
    background: linear-gradient(135deg, #ffffff 0%, #fffbf4 100%) !important;
    border: 1px solid #f2e2cb !important;
    border-radius: 18px !important;
    padding: 28px !important;
    box-shadow: 0 10px 30px rgba(242, 187, 99, 0.08) !important;
    margin-bottom: 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
}

.hp-vendor__balance .hp-vendor__balance-value {
    font-size: 36px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    letter-spacing: -0.02em !important;
    line-height: 1.1 !important;
}

.hp-vendor__balance .hp-vendor__balance-label {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 6px !important;
}

/* Payout Request Button */
.hp-payout__action--request,
a[href="#payout_request_modal"] {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    padding: 12px 24px !important;
    border-radius: 12px !important;
    border: none !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.3) !important;
    transition: all 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

.hp-payout__action--request:hover,
a[href="#payout_request_modal"]:hover {
    background: #e5ab4f !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(242, 187, 99, 0.4) !important;
    color: #2b2b2b !important;
}

/* Payouts Table */
.hp-table.hp-payouts {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
    margin-top: 20px !important;
}

.hp-payouts thead th {
    background: #f8fafc !important;
    padding: 16px 20px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #475569 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    border-bottom: 1px solid #ebebeb !important;
}

.hp-payouts tbody td {
    padding: 18px 20px !important;
    font-size: 15px !important;
    color: #2b2b2b !important;
    border-bottom: 1px solid #f1f5f9 !important;
    vertical-align: middle !important;
}

.hp-payouts tbody tr:last-child td {
    border-bottom: none !important;
}

.hp-payouts tbody tr:hover td {
    background: #fcfcfc !important;
}

.hp-payout__number {
    font-weight: 700 !important;
    color: #002f34 !important;
}

.hp-payout__amount {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
}

.hp-payout__method {
    font-weight: 500 !important;
    color: #475569 !important;
}

/* Status Badges */
.hp-payout__status.hp-status {
    display: inline-flex !important;
    align-items: center !important;
    padding: 6px 14px !important;
    border-radius: 20px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

.hp-payout__status.hp-status--pending {
    background: #fff8ec !important;
    color: #b45309 !important;
    border: 1px solid #fde68a !important;
}

.hp-payout__status.hp-status--publish {
    background: #ecfdf5 !important;
    color: #047857 !important;
    border: 1px solid #a7f3d0 !important;
}

.hp-payout__status.hp-status--trash,
.hp-payout__status.hp-status--cancelled {
    background: #fef2f2 !important;
    color: #b91c1c !important;
    border: 1px solid #fecaca !important;
}

/* Cancel Action Button */
.hp-payout__action--cancel {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 10px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    color: #64748b !important;
    transition: all 0.2s ease !important;
}

.hp-payout__action--cancel:hover {
    background: #fee2e2 !important;
    border-color: #fca5a5 !important;
    color: #ef4444 !important;
    transform: scale(1.05) !important;
}

/* Payout Request Modal */
#payout_request_modal .hp-modal__content {
    border-radius: 20px !important;
    padding: 32px !important;
    border: 1px solid #f0f0f0 !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12) !important;
}

#payout_request_modal .hp-form--payout-request input,
#payout_request_modal .hp-form--payout-request select,
#payout_request_modal .hp-form--payout-request textarea {
    border-radius: 12px !important;
    border: 1px solid #d4d4d4 !important;
    padding: 12px 16px !important;
    font-size: 15px !important;
    font-family: 'Inter', sans-serif !important;
}

#payout_request_modal .hp-form--payout-request button[type="submit"] {
    width: 100% !important;
    height: 50px !important;
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    border-radius: 12px !important;
    border: none !important;
    margin-top: 10px !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.35) !important;
}

#payout_request_modal .hp-form--payout-request button[type="submit"]:hover {
    background: #e5ab4f !important;
}

/* ==========================================================================
   359SHARE BENCHMARK: WOOCOMMERCE CHECKOUT ENHANCEMENTS
   ========================================================================== */

.woocommerce-checkout #customer_details {
    margin-bottom: 24px !important;
}

.woocommerce-checkout #customer_details input,
.woocommerce-checkout #customer_details select,
.woocommerce-checkout #customer_details textarea {
    border-radius: 12px !important;
    border: 1px solid #d4d4d4 !important;
    padding: 12px 16px !important;
    font-size: 15px !important;
    background: #ffffff !important;
}

.woocommerce-checkout #customer_details input:focus,
.woocommerce-checkout #customer_details textarea:focus {
    border-color: #f2bb63 !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.2) !important;
    outline: none !important;
}

.woocommerce-checkout #order_review_heading {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #2b2b2b !important;
    margin-top: 32px !important;
    margin-bottom: 16px !important;
}

.woocommerce-checkout #order_review {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 18px !important;
    padding: 28px !important;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.04) !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table {
    border: none !important;
    margin-bottom: 24px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
    padding: 14px 16px !important;
    border-top: 1px solid #f1f5f9 !important;
}

.woocommerce-checkout #payment {
    background: #f8fafc !important;
    border-radius: 14px !important;
    padding: 20px !important;
    border: 1px solid #e2e8f0 !important;
}

.woocommerce-checkout #place_order {
    background: #2b2b2b !important;
    color: #ffffff !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    height: 52px !important;
    padding: 0 32px !important;
    border-radius: 14px !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
    box-shadow: 0 4px 16px rgba(43, 43, 43, 0.25) !important;
}

.woocommerce-checkout #place_order:hover {
    background: #000000 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35) !important;
}

/* ==========================================================================
   359SHARE BENCHMARK: REVIEWS, CRITERIA & TRUST (REVIEWS SYSTEM)
   ========================================================================== */

/* Review Card Container */
.hp-review.hp-review--view-block {
    background: #ffffff !important;
    border: 1px solid #ebebeb !important;
    border-radius: 18px !important;
    padding: 24px 28px !important;
    margin-bottom: 24px !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.03) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.hp-review.hp-review--view-block:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06) !important;
    transform: translateY(-2px) !important;
}

/* Review Header & Author Layout */
.hp-review__header {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin-bottom: 16px !important;
}

.hp-review__image {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    flex-shrink: 0 !important;
    border: 2px solid #f2e2cb !important;
}

.hp-review__image img,
.hp-review__image .avatar {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
}

.hp-review__summary {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

.hp-review__author {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.share-review-author {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    font-family: 'Inter', sans-serif !important;
}

.share-review-author--anonymous {
    color: #64748b !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

/* Verified Rental Badge */
.share-review-badge--verified {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: #ecfdf5 !important;
    color: #047857 !important;
    border: 1px solid #a7f3d0 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 3px 10px !important;
    border-radius: 14px !important;
    letter-spacing: 0.02em !important;
}

.share-review-badge--verified i {
    font-size: 11px !important;
    color: #10b981 !important;
}

/* Rating & Stars */
.hp-review__details {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.hp-review__rating .hp-rating,
.hp-rating {
    color: #f2bb63 !important;
    letter-spacing: 2px !important;
}

.hp-review__created-date {
    font-size: 13px !important;
    color: #94a3b8 !important;
    font-weight: 500 !important;
}

/* Review Text Content */
.hp-review__text {
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: #334155 !important;
    margin-top: 12px !important;
    margin-bottom: 16px !important;
}

/* Review Criteria Grid */
.hp-review__criteria {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 10px !important;
    margin-top: 14px !important;
    padding-top: 14px !important;
    border-top: 1px solid #f1f5f9 !important;
}

.hp-review__criterion {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 10px !important;
    padding: 8px 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    font-size: 13px !important;
}

.hp-review__criterion strong {
    color: #475569 !important;
    font-weight: 600 !important;
}

.hp-review__criterion span {
    color: #d97706 !important;
    font-weight: 800 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.hp-review__criterion span::after {
    content: " ★" !important;
    color: #f2bb63 !important;
}

/* Reply to Review Container */
.hp-review--reply,
.hp-review__replies .hp-review {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-left: 4px solid #f2bb63 !important;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    margin-top: 16px !important;
    margin-left: 28px !important;
}

.hp-review__reply-link a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #002f34 !important;
    text-decoration: none !important;
}

.hp-review__reply-link a:hover {
    color: #d97706 !important;
    text-decoration: underline !important;
}

/* Review Submit Modal Polish */
#review_submit_modal .hp-modal__content {
    border-radius: 20px !important;
    padding: 32px !important;
    border: 1px solid #f0f0f0 !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12) !important;
}

#review_submit_modal .hp-form--review-submit textarea {
    border-radius: 14px !important;
    border: 1px solid #d4d4d4 !important;
    padding: 14px 18px !important;
    font-size: 15px !important;
    font-family: 'Inter', sans-serif !important;
    min-height: 120px !important;
}

#review_submit_modal .hp-form--review-submit textarea:focus {
    border-color: #f2bb63 !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.2) !important;
    outline: none !important;
}

#review_submit_modal .hp-form--review-submit button[type="submit"] {
    width: 100% !important;
    height: 52px !important;
    background: #f2bb63 !important;
    color: #2b2b2b !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    border-radius: 14px !important;
    border: none !important;
    margin-top: 16px !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.35) !important;
    transition: all 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

#review_submit_modal .hp-form--review-submit button[type="submit"]:hover {
    background: #e5ab4f !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(242, 187, 99, 0.45) !important;
}

/* Review Status Badges (Completed, Info) */
.share-review-status-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border-radius: 9999px;
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1.4;
    transition: all 0.2s ease;
}

.share-review-status-badge--completed {
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #bbf7d0;
    box-shadow: 0 2px 6px rgba(34, 197, 94, 0.08);
}

.share-review-status-badge--completed i {
    color: #22c55e;
    font-size: 14px;
}

.share-review-status-badge--info {
    background: #f8fafc;
    color: #475569;
    border: 1px solid #e2e8f0;
}

.share-review-status-badge--info i {
    color: #64748b;
    font-size: 13px;
}

/* ==========================================================================
   HOME / LISTING CARDS - Premium overlays (favorite heart + category badge)
   Compact, unobtrusive: elegant miniature heart & discreet single badge.
   ========================================================================== */
html body .hp-grid .hp-listing--view-block a.hp-listing__action.hp-listing__action--favorite {
    top: 8px !important;
    right: 8px !important;
    width: 26px !important;
    height: 26px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.92) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    backdrop-filter: blur(6px) !important;
    color: #2b2b2b !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.14) !important;
    text-shadow: none !important;
    transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease !important;
}
/* Invisible hit area expansion for mobile touch friendliness */
html body .hp-grid .hp-listing--view-block a.hp-listing__action.hp-listing__action--favorite::after {
    content: "" !important;
    position: absolute !important;
    top: -8px !important;
    left: -8px !important;
    right: -8px !important;
    bottom: -8px !important;
}
html body .hp-grid .hp-listing--view-block a.hp-listing__action--favorite .hp-icon,
html body .hp-grid .hp-listing--view-block a.hp-listing__action--favorite i,
html body .hp-grid .hp-listing--view-block a.hp-listing__action--favorite svg {
    color: inherit !important;
    font-size: 11px !important;
    line-height: 1 !important;
    text-shadow: none !important;
}
html body .hp-grid .hp-listing--view-block a.hp-listing__action--favorite:hover,
html body .hp-grid .hp-listing--view-block a.hp-listing__action--favorite:focus-visible {
    background: #ffffff !important;
    color: #e11d48 !important;
    transform: scale(1.1) !important;
}
html body .hp-grid .hp-listing--view-block a.hp-listing__action--favorite:focus-visible {
    outline: 2px solid #f2bb63 !important;
    outline-offset: 2px !important;
}
html body .hp-grid .hp-listing--view-block a.hp-listing__action--favorite.hp-state--active {
    background: #ffffff !important;
    color: #e11d48 !important;
}

/* Single, compact and discreet category badge per card */
html body .hp-grid .hp-listing--view-block .hp-listing__categories a:nth-child(n+2),
html body .hp-grid .hp-listing--view-block .hp-listing__category a:nth-child(n+2) {
    display: none !important;
}
html body .hp-grid .hp-listing--view-block .hp-listing__categories,
html body .hp-grid .hp-listing--view-block .hp-listing__category {
    top: 8px !important;
    left: 8px !important;
    max-width: calc(100% - 46px) !important;
}
html body .hp-grid .hp-listing--view-block .hp-listing__categories a,
html body .hp-grid .hp-listing--view-block .hp-listing__category a {
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    font-size: 8px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    text-transform: capitalize !important;
    padding: 2px 5px !important;
    border-radius: 4px !important;
    line-height: 1.2 !important;
    background: rgba(255, 255, 255, 0.92) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    backdrop-filter: blur(6px) !important;
    border: 1px solid rgba(255, 255, 255, 0.7) !important;
    color: #2b2b2b !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
}

/* ==========================================================
   HOMEPAGE HERO SEARCH CAPSULE (AIRBNB GRAND PILL - MATCHING HEADER)
   ========================================================== */
@media (min-width: 769px) {
    .home .header-hero .hp-form--listing-search,
    .page-id-8 .header-hero .hp-form--listing-search {
        max-width: 940px !important;
        height: 64px !important;
        min-height: 64px !important;
        max-height: 64px !important;
        margin: 0 auto !important;
        background: #ffffff !important;
        border-radius: 9999px !important;
        padding: 0 7px 0 24px !important;
        box-shadow: 0 16px 42px rgba(0, 0, 0, 0.16), 0 4px 14px rgba(0, 0, 0, 0.06) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0 !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
        position: relative !important;
        z-index: 50 !important;
        box-sizing: border-box !important;
        overflow: visible !important;
        transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    }

    .home .header-hero .hp-form--listing-search:hover,
    .page-id-8 .header-hero .hp-form--listing-search:hover {
        border-color: #cbd5e1 !important;
        box-shadow: 0 20px 48px rgba(0, 0, 0, 0.18), 0 6px 18px rgba(0, 0, 0, 0.08) !important;
    }

    .home .header-hero .hp-form--listing-search:focus-within,
    .page-id-8 .header-hero .hp-form--listing-search:focus-within {
        border-color: #f2bb63 !important;
        box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.25), 0 20px 48px rgba(0, 0, 0, 0.18) !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__fields,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__fields {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        flex: 1 1 auto !important;
        height: 100% !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        min-width: 0 !important;
        overflow: visible !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field {
        margin: 0 !important;
        padding: 0 16px !important;
        position: relative !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        height: 100% !important;
        border-radius: 9999px !important;
        transition: none !important;
        cursor: pointer !important;
        box-sizing: border-box !important;
        background: transparent !important;
        background-color: transparent !important;
        overflow: visible !important;
    }

    /* Pure clean presentation - No unnatural ellipses on hover/focus */
    .home .header-hero .hp-form--listing-search .hp-form__field:hover,
    .home .header-hero .hp-form--listing-search .hp-form__field:focus-within,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:hover,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:focus-within {
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
    }

    /* Clean single-line presentation without uppercase micro-labels */
    .home .header-hero .hp-form--listing-search .hp-form__field--keyword::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--keywords::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--search::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--keyword::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--keywords::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--search::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--location::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--date::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--dates::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--category::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--select::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--category::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--select::before {
        display: none !important;
        content: none !important;
    }

    /* Crisp hairline vertical dividers between sectors (1: Keywords, 2: Location, 3: Dates) */
    .home .header-hero .hp-form--listing-search .hp-form__field:nth-child(1)::after,
    .home .header-hero .hp-form--listing-search .hp-form__field:nth-child(2)::after,
    .home .header-hero .hp-form--listing-search .hp-form__field:nth-child(3)::after,
    .home .header-hero .hp-form--listing-search .hp-form__field--keyword::after,
    .home .header-hero .hp-form--listing-search .hp-form__field--keywords::after,
    .home .header-hero .hp-form--listing-search .hp-form__field--search::after,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_keyword"])::after,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="s"])::after,
    .home .header-hero .hp-form--listing-search .hp-form__field--location::after,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_location"])::after,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="location"])::after,
    .home .header-hero .hp-form--listing-search .hp-form__field--date::after,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range::after,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates::after,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_date"])::after,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name*="date"])::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(1)::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(2)::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(3)::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--keyword::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--keywords::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--search::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_keyword"])::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name="s"])::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_location"])::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name="location"])::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--dates::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_date"])::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name*="date"])::after {
        content: "" !important;
        position: absolute !important;
        right: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        height: 32px !important;
        width: 1px !important;
        background: #e2e8f0 !important;
        pointer-events: none !important;
        display: block !important;
        opacity: 1 !important;
        z-index: 10 !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--select::after,
    .home .header-hero .hp-form--listing-search .hp-form__field--category::after,
    .home .header-hero .hp-form--listing-search .hp-form__field--submit::after,
    .home .header-hero .hp-form--listing-search .hp-form__field:nth-child(4)::after,
    .home .header-hero .hp-form--listing-search .hp-form__field:nth-child(5)::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--select::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--category::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--submit::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(4)::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(5)::after {
        display: none !important;
        content: none !important;
    }

    /* Sector Proportions */
    .home .header-hero .hp-form--listing-search .hp-form__field--keyword,
    .home .header-hero .hp-form--listing-search .hp-form__field--keywords,
    .home .header-hero .hp-form--listing-search .hp-form__field--search,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_keyword"]),
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="s"]),
    .home .header-hero .hp-form--listing-search .hp-form__field:nth-child(1),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--keyword,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--keywords,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--search,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_keyword"]),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name="s"]),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(1) {
        flex: 1.15 !important;
        padding-left: 0 !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--location,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_location"]),
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="location"]),
    .home .header-hero .hp-form--listing-search .hp-form__field:nth-child(2),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_location"]),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name="location"]),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(2) {
        flex: 1.15 !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--date,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_date"]),
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name*="date"]),
    .home .header-hero .hp-form--listing-search .hp-form__field:nth-child(3),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--dates,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_date"]),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name*="date"]),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(3) {
        flex: 1.35 !important;
        min-width: 215px !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--select,
    .home .header-hero .hp-form--listing-search .hp-form__field--category,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(select[name="_category"]),
    .home .header-hero .hp-form--listing-search .hp-form__field:nth-child(4),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--select,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--category,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(select[name="_category"]),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(4) {
        flex: 1.25 !important;
    }

    /* Inputs typography and alignment */
    .home .header-hero .hp-form--listing-search input,
    .page-id-8 .header-hero .hp-form--listing-search input {
        border: none !important;
        background: transparent !important;
        background-color: transparent !important;
        font-family: 'Inter', -apple-system, sans-serif !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #1e2022 !important;
        padding: 0 !important;
        width: 100% !important;
        height: 48px !important;
        line-height: 48px !important;
        box-shadow: none !important;
        outline: none !important;
        box-sizing: border-box !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    .home .header-hero .hp-form--listing-search input::placeholder,
    .page-id-8 .header-hero .hp-form--listing-search input::placeholder {
        color: #64748b !important;
        font-weight: 400 !important;
    }

    /* 1. Location Field & Pin Icon */
    .home .header-hero .hp-form--listing-search .hp-form__field--location .hp-field--location,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location .hp-field--location {
        position: relative !important;
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--location input,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location input {
        padding-right: 28px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--location a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location a {
        position: absolute !important;
        right: 4px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 24px !important;
        height: 24px !important;
        border-radius: 0 !important;
        background: transparent !important;
        border: none !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #94a3b8 !important;
        z-index: 5 !important;
        text-decoration: none !important;
        cursor: pointer !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--location a i,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location a i {
        display: none !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--location a::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location a::before {
        content: "\f3c5" !important;
        font-family: "Font Awesome 5 Free" !important;
        font-weight: 900 !important;
        font-size: 14px !important;
        color: #94a3b8 !important;
        transition: color 0.18s ease !important;
        display: inline-block !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--location a:hover::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location a:hover::before {
        color: #f2bb63 !important;
    }

    /* 2. Date Range Field & Sleek Clear Button */
    .home .header-hero .hp-form--listing-search .hp-form__field--date,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name*="date"]),
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--dates,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name*="date"]) {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--date .hp-field-container,
    .home .header-hero .hp-form--listing-search .hp-form__field--date .hp-field-date-range,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates .hp-field-date-range,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range .hp-field-date-range,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range .hp-field--date,
    .home .header-hero .hp-form--listing-search .hp-field-date-range,
    .home .header-hero .hp-form--listing-search .hp-field--date-range,
    .home .header-hero .hp-form--listing-search .hp-field--dates,
    .home .header-hero .hp-form--listing-search .hp-field-container,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date .hp-field-container,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date .hp-field-date-range,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--dates .hp-field-date-range,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range .hp-field-date-range,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range .hp-field--date,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field--date-range,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field--dates,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-container {
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 1 !important;
        display: flex !important;
        align-items: center !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--date input,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range input,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates input,
    .home .header-hero .hp-form--listing-search .hp-field-date-range input,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name*="date"]) input,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date input,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range input,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--dates input,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range input,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:has(input[name*="date"]) input {
        padding-right: 26px !important;
        padding-left: 0 !important;
        white-space: nowrap !important;
        overflow: visible !important;
        font-size: 13.5px !important;
        letter-spacing: -0.015em !important;
        color: #1e2022 !important;
        font-weight: 500 !important;
        width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    /* Sleek Modern Clear 'X' button */
    .home .header-hero .hp-form--listing-search .hp-form__field--date a,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range a,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates a,
    .home .header-hero .hp-form--listing-search .hp-field-date-range a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--dates a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range a {
        position: absolute !important;
        right: 4px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 18px !important;
        height: 18px !important;
        border-radius: 50% !important;
        background: rgba(0, 0, 0, 0.05) !important;
        color: #475569 !important;
        display: none;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        z-index: 5 !important;
        transition: all 0.15s ease !important;
        text-decoration: none !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field.has-dates a,
    .home .header-hero .hp-form--listing-search .hp-field-date-range.has-dates a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field.has-dates a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range.has-dates a {
        display: inline-flex !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--date a:hover,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range a:hover,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates a:hover,
    .home .header-hero .hp-form--listing-search .hp-field-date-range a:hover,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date a:hover,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range a:hover,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--dates a:hover,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range a:hover {
        background: rgba(0, 0, 0, 0.12) !important;
        color: #0f172a !important;
        transform: translateY(-50%) scale(1.1) !important;
    }

    .home .header-hero .hp-form--listing-search .hp-field-date-range a svg,
    .home .header-hero .hp-form--listing-search .hp-form__field a svg,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range a svg,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field a svg {
        width: 8px !important;
        height: 8px !important;
        stroke: currentColor !important;
        stroke-width: 1.8 !important;
        display: block !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--date input:placeholder-shown ~ a,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range input:placeholder-shown ~ a,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates input:placeholder-shown ~ a,
    .home .header-hero .hp-form--listing-search .hp-field-date-range input:placeholder-shown ~ a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date input:placeholder-shown ~ a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range input:placeholder-shown ~ a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--dates input:placeholder-shown ~ a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range input:placeholder-shown ~ a {
        display: none !important;
    }

    /* 3. Category Field Display */
    .share-category-trigger-display {
        font-family: 'Inter', -apple-system, sans-serif !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #1e2022 !important;
        padding: 0 24px 0 0 !important;
        width: 100% !important;
        height: 48px !important;
        line-height: 48px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        box-sizing: border-box !important;
    }

    .share-category-trigger-display::after {
        content: "" !important;
        position: absolute !important;
        right: 4px !important;
        top: 50% !important;
        transform: translateY(-60%) rotate(45deg) !important;
        width: 7px !important;
        height: 7px !important;
        border-right: 2px solid #64748b !important;
        border-bottom: 2px solid #64748b !important;
        transition: transform 0.2s ease !important;
    }

    .hp-form__field--select.is-open .share-category-trigger-display::after {
        transform: translateY(-30%) rotate(-135deg) !important;
    }

    .home .header-hero .hp-form--listing-search .select2-container,
    .page-id-8 .header-hero .hp-form--listing-search .select2-container {
        display: none !important;
    }

    .home .header-hero .hp-form--listing-search select[name="_category"],
    .page-id-8 .header-hero .hp-form--listing-search select[name="_category"] {
        position: absolute !important;
        opacity: 0 !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
    }

    /* 4. Circular Accent Submit Button */
    .home .header-hero .hp-form--listing-search .hp-form__footer,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__footer,
    .home .header-hero .hp-form--listing-search .hp-form__field--submit,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--submit {
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
        flex: none !important;
        display: flex !important;
        align-items: center !important;
    }

    .home .header-hero .hp-form--listing-search button[type="submit"],
    .page-id-8 .header-hero .hp-form--listing-search button[type="submit"] {
        width: 50px !important;
        height: 50px !important;
        min-height: 50px !important;
        max-height: 50px !important;
        min-width: 50px !important;
        max-width: 50px !important;
        border-radius: 50% !important;
        background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
        border: none !important;
        box-shadow: 0 4px 14px rgba(242, 187, 99, 0.45) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        transition: transform 0.18s ease, box-shadow 0.18s ease !important;
        margin: 0 !important;
        padding: 0 !important;
        flex-shrink: 0 !important;
    }

    .home .header-hero .hp-form--listing-search button[type="submit"]:hover,
    .page-id-8 .header-hero .hp-form--listing-search button[type="submit"]:hover {
        transform: scale(1.06) !important;
        box-shadow: 0 6px 18px rgba(242, 187, 99, 0.6) !important;
    }

    .home .header-hero .hp-form--listing-search button[type="submit"] span,
    .page-id-8 .header-hero .hp-form--listing-search button[type="submit"] span {
        font-size: 0 !important;
        line-height: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: transparent !important;
    }

    .home .header-hero .hp-form--listing-search button[type="submit"] span::before,
    .page-id-8 .header-hero .hp-form--listing-search button[type="submit"] span::before {
        content: '\f002' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 17px !important;
        color: #1e2022 !important;
        line-height: 1 !important;
        display: inline-block !important;
    }

    .home .header-hero .hp-form--listing-search button[type="submit"] span::after,
    .page-id-8 .header-hero .hp-form--listing-search button[type="submit"] span::after,
    .home .header-hero .hp-form--listing-search button[type="submit"] i,
    .home .header-hero .hp-form--listing-search button[type="submit"] .hp-icon {
        display: none !important;
        content: none !important;
    }
}

/* ==========================================================
   UNIVERSAL SELECT2 SUPPRESSION & BACKDROP OVERLAY
   ========================================================== */
.hp-form--listing-search .select2-container,
.hp-form--listing-search .hp-form__field--category .select2-container,
.hp-form--listing-search .hp-form__field--select .select2-container,
.home .header-hero .hp-form--listing-search .select2-container,
.page-id-8 .header-hero .hp-form--listing-search .select2-container {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    position: absolute !important;
}
.hp-form--listing-search select[name="_category"],
.home .header-hero .hp-form--listing-search select[name="_category"],
.page-id-8 .header-hero .hp-form--listing-search select[name="_category"] {
    display: none !important;
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* Backdrop overlay for mobile category drawer (Strictly mobile) */
@media (max-width: 768px) {
    .share-category-backdrop {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        background: rgba(15, 23, 42, 0.52) !important;
        -webkit-backdrop-filter: blur(5px) !important;
        backdrop-filter: blur(5px) !important;
        z-index: 9999998 !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transition: opacity 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }
    .share-category-backdrop.is-active {
        opacity: 1 !important;
        pointer-events: auto !important;
    }
    body.share-modal-open {
        overflow: hidden !important;
    }
}

@media (min-width: 769px) {
    .share-category-backdrop {
        display: none !important;
        pointer-events: none !important;
        opacity: 0 !important;
    }

    /* Desktop Category Dropdown Panel */
    .hp-form--listing-search .share-category-popover {
        position: absolute !important;
        top: calc(100% + 10px) !important;
        right: -8px !important;
        width: 480px !important;
        max-width: 92vw !important;
        max-height: 480px !important;
        background: #ffffff !important;
        border-radius: 20px !important;
        box-shadow: 0 20px 48px -10px rgba(15, 23, 42, 0.22), 0 8px 20px rgba(15, 23, 42, 0.08) !important;
        border: 1px solid #e2e8f0 !important;
        padding: 18px 20px !important;
        z-index: 9999999 !important;
        display: none !important;
        box-sizing: border-box !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        pointer-events: none !important;
    }

    .hp-form--listing-search .share-category-popover.is-open {
        display: block !important;
        pointer-events: auto !important;
        animation: shareDropdownFadeIn 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
    }

    @keyframes shareDropdownFadeIn {
        from { opacity: 0; transform: translateY(8px); }
        to { opacity: 1; transform: translateY(0); }
    }

    .hp-form--listing-search .share-cat-popover-handle {
        display: none !important;
    }

    .hp-form--listing-search .share-cat-popover-header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding-bottom: 12px !important;
        margin-bottom: 14px !important;
        border-bottom: 1px solid #f1f5f9 !important;
    }

    .hp-form--listing-search .share-cat-popover-title {
        font-size: 16px !important;
        font-weight: 700 !important;
        color: #1e2022 !important;
        margin: 0 !important;
    }

    .hp-form--listing-search .share-cat-popover-header-actions {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
    }

    .hp-form--listing-search .share-cat-popover-reset {
        font-size: 13px !important;
        color: #64748b !important;
        font-weight: 600 !important;
        text-decoration: underline !important;
    }

    .hp-form--listing-search .share-cat-popover-reset:hover {
        color: #e5a940 !important;
    }

    .hp-form--listing-search .share-cat-popover-close-btn {
        background: #f1f5f9 !important;
        border: none !important;
        width: 28px !important;
        height: 28px !important;
        border-radius: 50% !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #64748b !important;
        font-size: 16px !important;
        cursor: pointer !important;
        line-height: 1 !important;
    }

    .hp-form--listing-search .share-cat-popover-close-btn:hover {
        background: #e2e8f0 !important;
        color: #0f172a !important;
    }

    .hp-form--listing-search .share-cat-popover-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }

    .hp-form--listing-search .share-cat-popover-item {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 9px 12px !important;
        border-radius: 12px !important;
        background: #f8fafc !important;
        border: 1px solid #f1f5f9 !important;
        cursor: pointer !important;
        transition: all 0.15s ease !important;
    }

    .hp-form--listing-search .share-cat-popover-item:hover {
        background: #f1f5f9 !important;
        border-color: #cbd5e1 !important;
        transform: translateY(-1px) !important;
    }

    .hp-form--listing-search .share-cat-popover-item.is-selected {
        background: #fef7ee !important;
        border-color: #f2bb63 !important;
    }

    .hp-form--listing-search .share-cat-popover-item-main {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        min-width: 0 !important;
    }

    .hp-form--listing-search .share-cat-popover-icon {
        font-size: 18px !important;
        line-height: 1 !important;
        flex-shrink: 0 !important;
    }

    .hp-form--listing-search .share-cat-popover-name {
        font-size: 13.5px !important;
        font-weight: 600 !important;
        color: #1e2022 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .hp-form--listing-search .share-cat-popover-arrow {
        font-size: 11px !important;
        color: #94a3b8 !important;
    }
}

/* Home Mobile Airbnb Pill & Collapse Bar (Desktop hidden) */
.share-home-mobile-pill,
.share-search-card-collapse-bar {
    display: none !important;
}


/* ==========================================================
   MOBILE HERO SEARCH CAPSULE (AIRBNB-GRADE LUXURY CARD & DRAWER)
   ========================================================== */
@media (max-width: 768px) {
    /* Floating Airbnb Search Pill on Mobile Home */
    .share-home-mobile-pill {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        max-width: 440px !important;
        height: 54px !important;
        min-height: 54px !important;
        margin: 16px auto 0 auto !important;
        padding: 0 10px 0 22px !important;
        background: #ffffff !important;
        border-radius: 50px !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
        box-shadow: 0 8px 24px -4px rgba(0, 0, 0, 0.16), 0 2px 6px rgba(0, 0, 0, 0.06) !important;
        cursor: pointer !important;
        transition: transform 0.18s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.18s ease !important;
        box-sizing: border-box !important;
        position: relative !important;
        z-index: 20 !important;
    }

    .share-home-mobile-pill:active {
        transform: scale(0.98) !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
    }

    .share-home-mobile-pill.is-hidden {
        display: none !important;
    }

    .share-home-mobile-pill__icon {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        border-radius: 50% !important;
        background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
        color: #1e2022 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 15px !important;
        margin-right: 0 !important;
        margin-left: 12px !important;
        box-shadow: 0 2px 8px rgba(242, 187, 99, 0.35) !important;
        flex-shrink: 0 !important;
    }

    .share-home-mobile-pill__text {
        font-family: 'Inter', -apple-system, sans-serif !important;
        font-size: 15px !important;
        font-weight: 600 !important;
        color: #1e2022 !important;
        letter-spacing: -0.01em !important;
        flex-grow: 1 !important;
        text-align: left !important;
    }

    /* By default on mobile, hero search form is collapsed/hidden */
    .home .header-hero .hp-form--listing-search,
    .page-id-8 .header-hero .hp-form--listing-search {
        display: none !important;
        border-radius: 24px !important;
        flex-direction: column !important;
        padding: 8px 14px 14px 14px !important;
        gap: 0 !important;
        background: #ffffff !important;
        box-shadow: 0 16px 40px -8px rgba(0, 0, 0, 0.22), 0 4px 14px rgba(0, 0, 0, 0.06) !important;
        width: 100% !important;
        max-width: 440px !important;
        margin: 14px auto 0 auto !important;
        box-sizing: border-box !important;
        border: 1px solid rgba(255, 255, 255, 0.9) !important;
        min-height: auto !important;
        height: auto !important;
        max-height: none !important;
        position: relative !important;
        z-index: 20 !important;
    }

    .home .header-hero .hp-form--listing-search.is-expanded,
    .page-id-8 .header-hero .hp-form--listing-search.is-expanded {
        display: flex !important;
        animation: shareSearchCardExpand 0.26s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__fields,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__fields {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* 4 Thumb-Friendly Tactile Field Rows */
    .home .header-hero .hp-form--listing-search .hp-form__field,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field {
        margin: 0 !important;
        padding: 0 8px 0 6px !important;
        height: 52px !important;
        min-height: 52px !important;
        background: transparent !important;
        border: none !important;
        border-bottom: 1px solid #f1f5f9 !important;
        border-radius: 12px !important;
        box-shadow: none !important;
        display: flex !important;
        align-items: center !important;
        position: relative !important;
        box-sizing: border-box !important;
        width: 100% !important;
        transition: background 0.15s ease !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field:focus-within,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:focus-within {
        background: #fafaf9 !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field:last-child,
    .home .header-hero .hp-form--listing-search .hp-form__field--category,
    .home .header-hero .hp-form--listing-search .hp-form__field--select,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:last-child,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--category,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--select {
        border-bottom: none !important;
    }

    /* Sector Left Icon Badges on Mobile */
    /* 1. Keywords */
    .home .header-hero .hp-form--listing-search .hp-form__field--keyword::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--keywords::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--search::before,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="s"])::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--keyword::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(1)::before {
        content: '\f002' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 13.5px !important;
        color: #94a3b8 !important;
        margin-right: 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        border-radius: 50% !important;
        background: #f8fafc !important;
        flex-shrink: 0 !important;
    }

    /* 2. Location */
    .home .header-hero .hp-form--listing-search .hp-form__field--location::before,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="location"])::before,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name="_location"])::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(2)::before {
        content: '\f3c5' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 14px !important;
        color: #f2bb63 !important;
        margin-right: 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        border-radius: 50% !important;
        background: rgba(242, 187, 99, 0.14) !important;
        flex-shrink: 0 !important;
    }

    /* 3. Dates */
    .home .header-hero .hp-form--listing-search .hp-form__field--date::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates::before,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(input[name*="date"])::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(3)::before {
        content: '\f073' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 14px !important;
        color: #94a3b8 !important;
        margin-right: 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        border-radius: 50% !important;
        background: #f8fafc !important;
        flex-shrink: 0 !important;
    }

    /* 4. Category */
    .home .header-hero .hp-form--listing-search .hp-form__field--select::before,
    .home .header-hero .hp-form--listing-search .hp-form__field--category::before,
    .home .header-hero .hp-form--listing-search .hp-form__field:has(select[name="_category"])::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--select::before,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field:nth-child(4)::before {
        content: '\f00a' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 13.5px !important;
        color: #94a3b8 !important;
        margin-right: 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        border-radius: 50% !important;
        background: #f8fafc !important;
        flex-shrink: 0 !important;
    }

    /* Field containers */
    .home .header-hero .hp-form--listing-search .hp-field-container,
    .home .header-hero .hp-form--listing-search .hp-field--location,
    .home .header-hero .hp-form--listing-search .hp-field-date-range,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-container,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field--location,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range {
        width: 100% !important;
        height: 100% !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        display: flex !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 !important;
        position: relative !important;
    }

    /* Inputs typography & ergonomics */
    .home .header-hero .hp-form--listing-search input,
    .page-id-8 .header-hero .hp-form--listing-search input {
        border: none !important;
        background: transparent !important;
        font-family: 'Inter', -apple-system, sans-serif !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #1e2022 !important;
        padding: 0 4px !important;
        height: 52px !important;
        line-height: 52px !important;
        width: 100% !important;
        box-shadow: none !important;
        outline: none !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
    }
    .home .header-hero .hp-form--listing-search input::placeholder,
    .page-id-8 .header-hero .hp-form--listing-search input::placeholder {
        color: #94a3b8 !important;
        font-weight: 400 !important;
    }

    /* Dates field specific ergonomics */
    .home .header-hero .hp-form--listing-search .hp-form__field--date input,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range input,
    .home .header-hero .hp-form--listing-search .hp-form__field--dates input,
    .home .header-hero .hp-form--listing-search .hp-field-date-range input,
    .home .header-hero .hp-form--listing-search input[name*="_dates"],
    .home .header-hero .hp-form--listing-search input[name*="date"],
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date input,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range input,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--dates input,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range input,
    .page-id-8 .header-hero .hp-form--listing-search input[name*="_dates"],
    .page-id-8 .header-hero .hp-form--listing-search input[name*="date"] {
        padding-right: 38px !important;
        padding-left: 2px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        font-size: 13.5px !important;
        letter-spacing: -0.015em !important;
        color: #1e2022 !important;
        font-weight: 500 !important;
        width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    @media (max-width: 400px) {
        .home .header-hero .hp-form--listing-search .hp-form__field--date input,
        .home .header-hero .hp-form--listing-search .hp-form__field--date-range input,
        .home .header-hero .hp-form--listing-search .hp-field-date-range input,
        .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date input,
        .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range input,
        .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range input {
            font-size: 13px !important;
            letter-spacing: -0.02em !important;
        }
    }

    /* Location GPS locator pin on mobile */
    .home .header-hero .hp-form--listing-search .hp-form__field--location a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location a {
        position: absolute !important;
        right: 4px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 32px !important;
        height: 32px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #94a3b8 !important;
        text-decoration: none !important;
        cursor: pointer !important;
        z-index: 5 !important;
        border-radius: 50% !important;
        transition: color 0.15s ease, background 0.15s ease !important;
    }
    .home .header-hero .hp-form--listing-search .hp-form__field--location a:hover,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--location a:hover {
        color: #f2bb63 !important;
        background: rgba(242, 187, 99, 0.1) !important;
    }

    /* Dates clear button on mobile */
    .home .header-hero .hp-form--listing-search .hp-form__field--date a,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range a,
    .home .header-hero .hp-form--listing-search .hp-field-date-range a,
    .home .header-hero .hp-form--listing-search .hp-field__reset,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field__reset {
        position: absolute !important;
        right: 8px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 22px !important;
        height: 22px !important;
        min-width: 22px !important;
        min-height: 22px !important;
        border-radius: 50% !important;
        background: #f1f5f9 !important;
        color: #64748b !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        cursor: pointer !important;
        z-index: 10 !important;
        transition: all 0.15s ease !important;
        text-decoration: none !important;
        border: none !important;
    }
    .home .header-hero .hp-form--listing-search .hp-form__field--date a:hover,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range a:hover,
    .home .header-hero .hp-form--listing-search .hp-field-date-range a:hover,
    .home .header-hero .hp-form--listing-search .hp-field__reset:hover,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date a:hover,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range a:hover,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range a:hover,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field__reset:hover {
        background: #e2e8f0 !important;
        color: #0f172a !important;
        transform: translateY(-50%) scale(1.08) !important;
    }
    .home .header-hero .hp-form--listing-search .hp-form__field--date input:placeholder-shown ~ a,
    .home .header-hero .hp-form--listing-search .hp-form__field--date-range input:placeholder-shown ~ a,
    .home .header-hero .hp-form--listing-search .hp-field-date-range input:placeholder-shown ~ a,
    .home .header-hero .hp-form--listing-search input:placeholder-shown ~ .hp-field__reset,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date input:placeholder-shown ~ a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--date-range input:placeholder-shown ~ a,
    .page-id-8 .header-hero .hp-form--listing-search .hp-field-date-range input:placeholder-shown ~ a,
    .page-id-8 .header-hero .hp-form--listing-search input:placeholder-shown ~ .hp-field__reset {
        display: none !important;
    }

    /* Category trigger on mobile */
    .home .header-hero .hp-form--listing-search .share-category-trigger-display,
    .page-id-8 .header-hero .hp-form--listing-search .share-category-trigger-display {
        border: none !important;
        background: transparent !important;
        font-family: 'Inter', -apple-system, sans-serif !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #1e2022 !important;
        padding: 0 28px 0 4px !important;
        height: 52px !important;
        line-height: 52px !important;
        width: 100% !important;
        box-shadow: none !important;
        outline: none !important;
        border-radius: 0 !important;
        display: flex !important;
        align-items: center !important;
        cursor: pointer !important;
        position: relative !important;
        box-sizing: border-box !important;
    }

    .home .header-hero .hp-form--listing-search .share-category-trigger-display::after,
    .page-id-8 .header-hero .hp-form--listing-search .share-category-trigger-display::after {
        content: "" !important;
        position: absolute !important;
        right: 8px !important;
        top: 50% !important;
        transform: translateY(-60%) rotate(45deg) !important;
        width: 7px !important;
        height: 7px !important;
        border-right: 2px solid #64748b !important;
        border-bottom: 2px solid #64748b !important;
        transition: transform 0.25s ease !important;
    }

    .home .header-hero .hp-form--listing-search .hp-form__field--select.is-open .share-category-trigger-display::after,
    .home .header-hero .hp-form--listing-search .hp-form__field--category.is-open .share-category-trigger-display::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--select.is-open .share-category-trigger-display::after,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--category.is-open .share-category-trigger-display::after {
        transform: translateY(-30%) rotate(-135deg) !important;
        border-color: #f2bb63 !important;
    }

    /* Ergonomic Submit Button Full Width */
    .home .header-hero .hp-form--listing-search .hp-form__footer,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__footer,
    .home .header-hero .hp-form--listing-search .hp-form__field--submit,
    .page-id-8 .header-hero .hp-form--listing-search .hp-form__field--submit {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
    }

    .home .header-hero .hp-form--listing-search button[type="submit"],
    .page-id-8 .header-hero .hp-form--listing-search button[type="submit"] {
        width: 100% !important;
        height: 52px !important;
        min-height: 52px !important;
        border-radius: 16px !important;
        margin-top: 10px !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        letter-spacing: -0.01em !important;
        background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
        color: #1e2022 !important;
        border: none !important;
        box-shadow: 0 6px 20px rgba(242, 187, 99, 0.42) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px !important;
        cursor: pointer !important;
        transition: transform 0.15s ease, box-shadow 0.15s ease !important;
    }

    .home .header-hero .hp-form--listing-search button[type="submit"]:active,
    .page-id-8 .header-hero .hp-form--listing-search button[type="submit"]:active {
        transform: scale(0.98) !important;
        box-shadow: 0 2px 8px rgba(242, 187, 99, 0.3) !important;
    }

    .home .header-hero .hp-form--listing-search button[type="submit"] span,
    .page-id-8 .header-hero .hp-form--listing-search button[type="submit"] span {
        font-size: 16px !important;
        color: #1e2022 !important;
        display: inline-flex !important;
        align-items: center !important;
        line-height: 1 !important;
    }

    .home .header-hero .hp-form--listing-search button[type="submit"] span::before,
    .page-id-8 .header-hero .hp-form--listing-search button[type="submit"] span::before {
        content: '\f002' !important;
        font-family: 'Font Awesome 5 Free' !important;
        font-weight: 900 !important;
        font-size: 15px !important;
        margin-right: 8px !important;
        display: inline-block !important;
    }

    /* Mobile Bottom Sheet Drawer for Categories */
    .share-category-popover {
        position: fixed !important;
        top: auto !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100vw !important;
        max-width: 100vw !important;
        margin: 0 !important;
        border-radius: 28px 28px 0 0 !important;
        background: #ffffff !important;
        box-shadow: 0 -16px 48px rgba(0, 0, 0, 0.32) !important;
        max-height: 82vh !important;
        display: flex !important;
        flex-direction: column !important;
        z-index: 99999999 !important;
        transform: translateY(105%) !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease !important;
        padding: 0 !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }
    .share-category-popover.is-open {
        display: flex !important;
        transform: translateY(0) !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }
    .share-cat-popover-handle {
        width: 38px !important;
        height: 4px !important;
        border-radius: 999px !important;
        background: #cbd5e1 !important;
        margin: 10px auto 6px auto !important;
        flex-shrink: 0 !important;
    }
    .share-cat-popover-header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 10px 18px 12px 18px !important;
        border-bottom: 1px solid #f1f5f9 !important;
        flex-shrink: 0 !important;
    }
    .share-cat-popover-title {
        font-size: 17px !important;
        font-weight: 700 !important;
        color: #1e2022 !important;
        margin: 0 !important;
    }
    .share-cat-popover-header-actions {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
    }
    .share-cat-popover-reset {
        font-size: 13.5px !important;
        font-weight: 600 !important;
        color: #d97706 !important;
        text-decoration: none !important;
    }
    .share-cat-popover-close-btn {
        width: 32px !important;
        height: 32px !important;
        border-radius: 50% !important;
        background: #f1f5f9 !important;
        border: none !important;
        color: #475569 !important;
        font-size: 18px !important;
        line-height: 1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
    }
    .share-cat-popover-grid {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        padding: 12px 16px 32px 16px !important;
        max-height: calc(82vh - 75px) !important;
    }
    .share-cat-popover-item {
        min-height: 52px !important;
        height: auto !important;
        padding: 8px 14px !important;
        border-radius: 14px !important;
        background: #f8fafc !important;
        border: 1px solid #f1f5f9 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        transition: all 0.15s ease !important;
        cursor: pointer !important;
    }
    .share-cat-popover-item:active {
        background: #fffcf0 !important;
        border-color: #f2bb63 !important;
        transform: scale(0.99) !important;
    }
    .share-cat-popover-item.is-selected {
        background: #fffcf0 !important;
        border-color: #f2bb63 !important;
        box-shadow: 0 0 0 1px #f2bb63 !important;
    }
    .share-cat-popover-item-main {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        flex: 1 !important;
        min-width: 0 !important;
    }
    .share-cat-popover-icon {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 18px !important;
        box-shadow: 0 1px 3px rgba(0,0,0,0.06) !important;
    }
    .share-cat-popover-name {
        font-size: 15px !important;
        font-weight: 600 !important;
        color: #1e2022 !important;
        white-space: normal !important;
        word-break: break-word !important;
        text-align: left !important;
        flex: 1 !important;
    }
    .share-cat-popover-arrow {
        font-size: 20px !important;
        color: #94a3b8 !important;
        margin-left: 8px !important;
    }
}

/* ==========================================================================
   359SHARE: BENCHMARK CHECKOUT, BOOKING CONFIRMATION & FILTER UX
   ========================================================================== */

/* 1. Booking Make Details Page (/make-booking/details/) */
.hp-template--booking-make-details-page {
    background-color: #f8fafc !important;
}

.hp-template--booking-make-details-page .hp-page__container {
    max-width: 1200px !important;
    margin: 32px auto 60px auto !important;
    padding: 0 20px !important;
}

.hp-template--booking-make-details-page .hp-page__title {
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
    letter-spacing: -0.02em !important;
    margin-bottom: 24px !important;
    position: relative !important;
}

.hp-template--booking-make-details-page .hp-page__title::after {
    content: "" !important;
    display: block !important;
    width: 44px !important;
    height: 4px !important;
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    border-radius: 4px !important;
    margin-top: 8px !important;
}

/* Sidebar Listing Preview Card */
.hp-template--booking-make-details-page .hp-page__sidebar .hp-widget--booking-listing {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
    padding: 16px !important;
    margin-bottom: 20px !important;
    overflow: hidden !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing--view-block {
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing--view-block img {
    border-radius: 14px !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing--view-block .hp-listing__content {
    padding: 14px 16px 8px 16px !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__title {
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin-bottom: 8px !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__footer,
.hp-template--booking-pay-complete-page .hp-page__sidebar .hp-listing__footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 14px 20px !important;
    border-top: 1px solid #f1f5f9 !important;
    background: #f8fafc !important;
    margin-top: 0 !important;
    border-radius: 0 0 20px 20px !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__attribute--price,
.hp-template--booking-pay-complete-page .hp-page__sidebar .hp-listing__attribute--price {
    font-size: 17px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
    letter-spacing: -0.01em !important;
    margin: 0 !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__actions,
.hp-template--booking-pay-complete-page .hp-page__sidebar .hp-listing__actions {
    display: none !important;
}

/* Financial Summary Card (Airbnb style) */
.share-booking-details-summary-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
    padding: 24px !important;
    margin-bottom: 24px !important;
}

.share-booking-summary__title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    margin: 0 0 16px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.share-booking-summary__title i {
    color: #e5a940 !important;
}

.share-booking-summary__rows {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.share-booking-summary__row {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    font-size: 14.5px !important;
    color: #475569 !important;
}

.share-booking-summary__label {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.share-booking-summary__label strong {
    color: #1e2022 !important;
}

.share-booking-summary__sublabel {
    font-size: 12px !important;
    color: #94a3b8 !important;
}

.share-booking-summary__value {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    white-space: nowrap !important;
}

.share-booking-summary__divider {
    height: 1px !important;
    background: #f1f5f9 !important;
    margin: 6px 0 !important;
}

.share-booking-summary__row--total {
    align-items: center !important;
    padding-top: 4px !important;
}

.share-booking-summary__total-label {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
}

.share-booking-summary__total-value {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
}

/* Security Deposit Info Card */
.share-booking-deposit-card {
    background: #f0fdf4 !important;
    border: 1.5px solid #bbf7d0 !important;
    border-radius: 14px !important;
    padding: 14px 16px !important;
    margin: 18px 0 0 0 !important;
}

.share-booking-deposit-card__head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 6px !important;
}

.share-booking-deposit-card__badge {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #166534 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.share-booking-deposit-card__badge i {
    color: #16a34a !important;
}

.share-booking-deposit-card__amount {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #166534 !important;
}

.share-booking-deposit-card__note {
    font-size: 12px !important;
    line-height: 1.5 !important;
    color: #15803d !important;
    margin: 0 !important;
}

/* Trust Badges List */
.share-booking-summary__trust-list {
    margin-top: 20px !important;
    padding-top: 18px !important;
    border-top: 1px dashed #e2e8f0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.share-booking-trust-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.share-booking-trust-item i {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: #fdf8ef !important;
    color: #e5a940 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 13px !important;
    flex-shrink: 0 !important;
}

.share-booking-trust-item div {
    display: flex !important;
    flex-direction: column !important;
    gap: 1px !important;
}

.share-booking-trust-item strong {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
}

.share-booking-trust-item span {
    font-size: 12px !important;
    color: #64748b !important;
}

/* Booking Confirm Form Card (Main Column) */
.hp-template--booking-make-details-page .hp-page__content .hp-form--booking-make,
.hp-template--booking-make-details-page .hp-page__content .hp-form--booking-confirm {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 24px !important;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04) !important;
    padding: 32px !important;
}

/* Date Recap Cards (side by side on desktop) */
.hp-template--booking-make-details-page .hp-form__fields {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
}

.hp-template--booking-make-details-page .hp-field--date {
    flex: 1 1 calc(50% - 8px) !important;
    min-width: 200px !important;
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 16px !important;
    padding: 14px 18px !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
}

.hp-template--booking-make-details-page .hp-field--date:hover {
    border-color: #cbd5e1 !important;
    background: #ffffff !important;
}

.hp-template--booking-make-details-page .hp-field--date .hp-field__label,
.hp-template--booking-make-details-page .hp-field--date label {
    font-size: 11.5px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    margin-bottom: 6px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.hp-template--booking-make-details-page .hp-field--date .hp-field__label::before {
    content: "\f073" !important;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    color: #e5a940 !important;
    font-size: 12px !important;
}

.hp-template--booking-make-details-page .hp-field--date input {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    cursor: default !important;
    outline: none !important;
}

/* Ensure Notes and Comment are Full Width */
.hp-template--booking-make-details-page .hp-form__field--comment,
.hp-template--booking-make-details-page .hp-field--comment,
.hp-template--booking-make-details-page .hp-form__field--textarea,
.hp-template--booking-make-details-page .hp-field--textarea {
    width: 100% !important;
    flex: 1 1 100% !important;
    max-width: 100% !important;
    margin-top: 10px !important;
}

.hp-template--booking-make-details-page .hp-form__field--price,
.hp-template--booking-make-details-page .hp-form__field--_price,
.hp-template--booking-make-details-page .hp-field--price,
.hp-template--booking-make-details-page .hp-field--_price {
    display: none !important; /* Hide redundant disabled price input field in form */
}

.hp-template--booking-make-details-page .hp-field--comment label,
.hp-template--booking-make-details-page .hp-field--textarea label {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    margin-bottom: 8px !important;
    display: block !important;
}

.hp-template--booking-make-details-page .hp-field--comment textarea,
.hp-template--booking-make-details-page .hp-field--textarea textarea {
    width: 100% !important;
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 16px !important;
    padding: 14px 18px !important;
    font-size: 14.5px !important;
    color: #1e2022 !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
    min-height: 95px !important;
}

.hp-template--booking-make-details-page .hp-field--comment textarea:focus,
.hp-template--booking-make-details-page .hp-field--textarea textarea:focus {
    background: #ffffff !important;
    border-color: #f2bb63 !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.25) !important;
    outline: none !important;
}

/* Checkbox Terms */
.hp-template--booking-make-details-page .hp-field--checkbox {
    width: 100% !important;
    flex: 1 1 100% !important;
    margin: 12px 0 6px 0 !important;
    transition: background 0.3s ease !important;
}

.hp-template--booking-make-details-page .hp-field--checkbox label {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 14px !important;
    color: #475569 !important;
    cursor: pointer !important;
}

.hp-template--booking-make-details-page .hp-field--checkbox input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    accent-color: #e5a940 !important;
    cursor: pointer !important;
}

.hp-template--booking-make-details-page .hp-field--checkbox a {
    color: #1e2022 !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
}

.share-terms-shake-highlight {
    animation: shareShake 0.4s cubic-bezier(0.36, 0.07, 0.19, 0.97) both !important;
    border-radius: 12px !important;
    background: #fef2f2 !important;
    padding: 8px 12px !important;
}

@keyframes shareShake {
    10%, 90% { transform: translate3d(-1px, 0, 0); }
    20%, 80% { transform: translate3d(2px, 0, 0); }
    30%, 50%, 70% { transform: translate3d(-3px, 0, 0); }
    40%, 60% { transform: translate3d(3px, 0, 0); }
}

.share-terms-error-badge {
    color: #dc2626 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    margin-top: 6px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

/* Mobile Sticky CTA Bar for Booking Details */
.share-mobile-booking-sticky-bar {
    display: none !important;
}

@media (max-width: 768px) {
    .hp-template--booking-make-details-page {
        padding-bottom: 84px !important;
    }

    .share-mobile-booking-sticky-bar {
        display: flex !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        background: rgba(255, 255, 255, 0.95) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        backdrop-filter: blur(12px) !important;
        border-top: 1px solid #e2e8f0 !important;
        box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08) !important;
        padding: 12px 18px !important;
        box-sizing: border-box !important;
        z-index: 99999 !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 14px !important;
    }

    .share-mobile-sticky-bar__info {
        display: flex !important;
        flex-direction: column !important;
        min-width: 0 !important;
    }

    .share-mobile-sticky-bar__total {
        font-size: 18px !important;
        font-weight: 800 !important;
        color: #1e2022 !important;
        line-height: 1.1 !important;
    }

    .share-mobile-sticky-bar__sub {
        font-size: 11.5px !important;
        color: #64748b !important;
        font-weight: 500 !important;
        margin-top: 2px !important;
    }

    .share-mobile-sticky-bar__btn {
        flex-shrink: 0 !important;
        height: 46px !important;
        padding: 0 20px !important;
        border-radius: 9999px !important;
        background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
        color: #1e2022 !important;
        font-size: 14px !important;
        font-weight: 700 !important;
        border: none !important;
        box-shadow: 0 4px 14px rgba(242, 187, 99, 0.45) !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        cursor: pointer !important;
    }
}


.hp-template--booking-make-details-page .hp-field--checkbox input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    accent-color: #e5a940 !important;
    cursor: pointer !important;
}

.hp-template--booking-make-details-page .hp-field--checkbox a {
    color: #1e2022 !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
}

/* Actions & Button */
.hp-template--booking-make-details-page .hp-form--booking-confirm .hp-form__footer {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin-top: 24px !important;
    flex-wrap: wrap !important;
    padding: 0 !important;
}

.hp-template--booking-make-details-page .hp-form--booking-confirm .hp-form__actions,
.hp-template--booking-make-details-page .hp-form__actions {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

.hp-template--booking-make-details-page .hp-form__button,
.hp-template--booking-make-details-page button[type="submit"] {
    height: 52px !important;
    line-height: 52px !important;
    border-radius: 9999px !important;
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    padding: 0 34px !important;
    border: none !important;
    box-shadow: 0 6px 20px rgba(242, 187, 99, 0.42) !important;
    cursor: pointer !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    vertical-align: middle !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}

.hp-template--booking-make-details-page .hp-form__button:hover,
.hp-template--booking-make-details-page button[type="submit"]:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 24px rgba(242, 187, 99, 0.55) !important;
    color: #1e2022 !important;
}

.hp-template--booking-make-details-page .hp-form__action--booking-dates-change {
    height: 52px !important;
    line-height: 52px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    vertical-align: middle !important;
    gap: 8px !important;
    padding: 0 24px !important;
    border-radius: 9999px !important;
    border: 1.5px solid #e2e8f0 !important;
    background: #ffffff !important;
    color: #64748b !important;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    transition: all 0.2s ease !important;
}

.hp-template--booking-make-details-page .hp-form__action--booking-dates-change:hover {
    color: #1e2022 !important;
    border-color: #cbd5e1 !important;
    background: #f8fafc !important;
    transform: translateY(-1px) !important;
}

/* 2. Filter Modal Benchmark Overrides (Desktop & Mobile) */
.v2-filter-modal .hp-modal__content,
#listing_filter_modal .hp-modal__content {
    background: #ffffff !important;
    border-radius: 24px !important;
    padding: 24px 28px !important;
    width: 100% !important;
    max-width: 520px !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.18) !important;
    border: 1px solid #f1f5f9 !important;
}

.share-filter-modal__header-wrap,
.v2-filter-modal .hp-modal__header,
#listing_filter_modal .hp-modal__header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding-bottom: 16px !important;
    margin-bottom: 22px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    width: 100% !important;
}

#listing_filter_modal form::before,
.v2-filter-modal form::before {
    content: "Филтри" !important;
    display: block !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
    letter-spacing: -0.01em !important;
    padding-bottom: 16px !important;
    margin-bottom: 22px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    padding-right: 40px !important;
}

.share-filter-modal__header-title {
    font-size: 19px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
    letter-spacing: -0.01em !important;
    display: flex !important;
    align-items: center !important;
}

.v2-filter-modal .hp-modal__close,
#listing_filter_modal .hp-modal__close,
.share-filter-modal__header-wrap .hp-modal__close {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: #f1f5f9 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #64748b !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    font-size: 14px !important;
    margin: 0 !important;
}

.v2-filter-modal .hp-modal__close:hover,
#listing_filter_modal .hp-modal__close:hover,
.share-filter-modal__header-wrap .hp-modal__close:hover {
    background: #e2e8f0 !important;
    color: #1e2022 !important;
}

/* Price Range Section */
.v2-filter-modal .hp-form__field--range .hp-field__label,
#listing_filter_modal .hp-form__field--range .hp-field__label {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 14px !important;
}

.v2-filter-modal .hp-form__field--range .hp-field__inputs,
#listing_filter_modal .hp-form__field--range .hp-field__inputs {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    margin-bottom: 20px !important;
    width: 100% !important;
}

.v2-filter-modal .hp-form__field--range .hp-field__inputs input[type="number"],
#listing_filter_modal .hp-form__field--range .hp-field__inputs input[type="number"] {
    flex: 1 1 50% !important;
    width: 50% !important;
    height: 50px !important;
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 0 16px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
    outline: none !important;
    -moz-appearance: textfield !important;
}

.v2-filter-modal input[type="number"]::-webkit-outer-spin-button,
.v2-filter-modal input[type="number"]::-webkit-inner-spin-button,
#listing_filter_modal input[type="number"]::-webkit-outer-spin-button,
#listing_filter_modal input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

.v2-filter-modal .hp-form__field--range .hp-field__inputs input[type="number"]:focus,
#listing_filter_modal .hp-form__field--range .hp-field__inputs input[type="number"]:focus {
    background: #ffffff !important;
    border-color: #f2bb63 !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.25) !important;
}

/* Slider Track & Connect */
.v2-filter-modal .noUi-target,
#listing_filter_modal .noUi-target {
    background: #e2e8f0 !important;
    border: none !important;
    box-shadow: none !important;
    height: 6px !important;
    border-radius: 6px !important;
    margin: 10px 8px 24px 8px !important;
}

.v2-filter-modal .noUi-connect,
#listing_filter_modal .noUi-connect {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
}

.v2-filter-modal .noUi-handle,
#listing_filter_modal .noUi-handle {
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    border: 2px solid #f2bb63 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
    cursor: grab !important;
    right: -11px !important;
    top: -8px !important;
}

.v2-filter-modal .noUi-handle::before,
.v2-filter-modal .noUi-handle::after,
#listing_filter_modal .noUi-handle::before,
#listing_filter_modal .noUi-handle::after {
    display: none !important;
}

/* Tags in Modal */
.v2-filter-modal .hp-form__field--select .hp-field__label,
#listing_filter_modal .hp-form__field--select .hp-field__label {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 10px !important;
}

.v2-filter-modal .hp-field--select .select2-container,
#listing_filter_modal .hp-field--select .select2-container {
    width: 100% !important;
}

.v2-filter-modal .select2-container--default .select2-selection--multiple,
#listing_filter_modal .select2-container--default .select2-selection--multiple {
    background-color: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 6px 12px !important;
    min-height: 48px !important;
    max-height: 120px !important;
    overflow-y: auto !important;
    height: auto !important;
    transition: all 0.2s ease !important;
}

.v2-filter-modal .select2-container--default.select2-container--focus .select2-selection--multiple,
#listing_filter_modal .select2-container--default.select2-container--focus .select2-selection--multiple {
    border-color: #f2bb63 !important;
    background-color: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.25) !important;
}

.v2-filter-modal .select2-container--default .select2-search--inline .select2-search__field,
#listing_filter_modal .select2-container--default .select2-search--inline .select2-search__field {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    background: transparent !important;
    margin: 4px 0 !important;
    height: 28px !important;
    font-size: 14px !important;
}

.v2-filter-modal .select2-container--default .select2-selection--multiple .select2-selection__choice,
#listing_filter_modal .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background: #fdf8ef !important;
    border: 1px solid #f9e2ba !important;
    color: #b45309 !important;
    border-radius: 9999px !important;
    font-weight: 600 !important;
    font-size: 12.5px !important;
    padding: 3px 10px !important;
}

/* Modal Footer & Buttons (Side by Side) */
.v2-filter-modal .hp-form__footer,
#listing_filter_modal .hp-form__footer {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    border-top: 1px solid #f1f5f9 !important;
    padding-top: 18px !important;
    margin-top: 24px !important;
    gap: 12px !important;
    width: 100% !important;
}

.share-filter-clear-btn,
.v2-filter-modal .hp-form__footer .share-filter-clear-btn,
#listing_filter_modal .hp-form__footer .share-filter-clear-btn {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    height: 48px !important;
    padding: 0 20px !important;
    border-radius: 9999px !important;
    border: 1.5px solid #e2e8f0 !important;
    background: #ffffff !important;
    color: #64748b !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    margin: 0 !important;
    transition: all 0.2s ease !important;
}

.share-filter-clear-btn:hover,
.v2-filter-modal .hp-form__footer .share-filter-clear-btn:hover,
#listing_filter_modal .hp-form__footer .share-filter-clear-btn:hover {
    color: #1e2022 !important;
    border-color: #cbd5e1 !important;
    background: #f8fafc !important;
}

.v2-filter-modal .hp-form__footer button[type="submit"],
#listing_filter_modal .hp-form__footer button[type="submit"],
.v2-filter-modal button[type="submit"],
#listing_filter_modal button[type="submit"] {
    flex: 1 1 auto !important;
    width: auto !important;
    height: 48px !important;
    border-radius: 9999px !important;
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-size: 15.5px !important;
    font-weight: 700 !important;
    padding: 0 28px !important;
    border: none !important;
    box-shadow: 0 4px 16px rgba(242, 187, 99, 0.4) !important;
    cursor: pointer !important;
    margin: 0 !important;
    transition: all 0.2s ease !important;
}

.v2-filter-modal .hp-form__footer button[type="submit"]:hover,
#listing_filter_modal .hp-form__footer button[type="submit"]:hover,
.v2-filter-modal button[type="submit"]:hover,
#listing_filter_modal button[type="submit"]:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    transform: scale(1.02) !important;
    box-shadow: 0 6px 20px rgba(242, 187, 99, 0.55) !important;
    color: #1e2022 !important;
}

/* 3. Catalog Pagination Benchmark Overhaul */
.hp-pagination {
    margin: 40px 0 60px 0 !important;
    text-align: center !important;
}

.hp-pagination ul {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

.hp-pagination ul li {
    margin: 0 !important;
    display: inline-flex !important;
}

.hp-pagination .page-numbers,
.hp-pagination a,
.hp-pagination span,
.hp-pagination ul li a,
.hp-pagination ul li span {
    min-width: 42px !important;
    height: 42px !important;
    padding: 0 12px !important;
    border-radius: 12px !important;
    border: 1.5px solid #e2e8f0 !important;
    background: #ffffff !important;
    color: #475569 !important;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
}

.hp-pagination .page-numbers:hover,
.hp-pagination a:hover,
.hp-pagination ul li a:hover {
    border-color: #f2bb63 !important;
    color: #1e2022 !important;
    background: #fdf8ef !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(242, 187, 99, 0.2) !important;
}

.hp-pagination .current,
.hp-pagination .page-numbers.current,
.hp-pagination span.current,
.hp-pagination ul li .current {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-weight: 700 !important;
    border-color: transparent !important;
    box-shadow: 0 4px 14px rgba(242, 187, 99, 0.45) !important;
}

.hp-pagination .dots,
.hp-pagination ul li .dots {
    border-color: transparent !important;
    background: transparent !important;
    color: #94a3b8 !important;
    box-shadow: none !important;
}

/* 4. Single Listing Booking Widget Button */
.hp-form--booking-make button[type="submit"],
.share-booking-submit-btn,
.single-hp_listing .hp-widget--booking-make button[type="submit"] {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-weight: 700 !important;
    border: none !important;
    box-shadow: 0 6px 20px rgba(242, 187, 99, 0.42) !important;
    transition: all 0.2s ease !important;
}

.hp-form--booking-make button[type="submit"]:hover,
.share-booking-submit-btn:hover,
.single-hp_listing .hp-widget--booking-make button[type="submit"]:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    transform: scale(1.02) !important;
    box-shadow: 0 8px 24px rgba(242, 187, 99, 0.55) !important;
    color: #1e2022 !important;
}

/* ==========================================================================
   5. FILTER MODAL PRICE BOXES & 1000% RESPONSIVE
   ========================================================================== */

.hp-form__field--range .hp-field__inputs {
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
    margin-bottom: 16px !important;
}

#listing_filter_modal .share-filter-price-box,
.v2-filter-modal .share-filter-price-box,
.share-filter-price-box {
    display: flex !important;
    align-items: center !important;
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 0 14px !important;
    flex: 1 1 0 !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
}

#listing_filter_modal .share-filter-price-box:focus-within,
.v2-filter-modal .share-filter-price-box:focus-within,
.share-filter-price-box:focus-within {
    border-color: #f2bb63 !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.2) !important;
}

#listing_filter_modal .share-filter-price-prefix,
.v2-filter-modal .share-filter-price-prefix,
.share-filter-price-prefix {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    margin-right: 6px !important;
    white-space: nowrap !important;
}

#listing_filter_modal .share-filter-price-suffix,
.v2-filter-modal .share-filter-price-suffix,
.share-filter-price-suffix {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    margin-left: 4px !important;
}

#listing_filter_modal .share-filter-price-box input[type="number"],
#listing_filter_modal .hp-form__field--range .share-filter-price-box input[type="number"],
#listing_filter_modal .hp-field--number-range .share-filter-price-box input[type="number"],
.v2-filter-modal .share-filter-price-box input[type="number"],
.share-filter-price-box input[type="number"] {
    border: none !important;
    background: transparent !important;
    padding: 11px 0 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    width: 100% !important;
    min-width: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    text-align: center !important;
}

#listing_filter_modal .hp-modal__content,
.v2-filter-modal .hp-modal__content {
    background: #ffffff !important;
    border-radius: 28px !important;
    padding: 28px 32px !important;
    max-width: 480px !important;
    width: 92vw !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.05) !important;
    border: none !important;
    box-sizing: border-box !important;
    margin: auto !important;
}

@media (max-width: 576px) {
    #listing_filter_modal .hp-modal__content,
    .v2-filter-modal .hp-modal__content {
        width: calc(100vw - 20px) !important;
        max-width: 100% !important;
        padding: 20px 16px !important;
        border-radius: 20px !important;
        margin: 10px auto !important;
    }

    .share-filter-modal__header-wrap {
        padding-bottom: 12px !important;
        margin-bottom: 16px !important;
    }

    #listing_filter_modal .hp-form__footer,
    .v2-filter-modal .hp-form__footer {
        flex-direction: column-reverse !important;
        gap: 10px !important;
    }

    #listing_filter_modal .hp-form__footer button,
    .v2-filter-modal .hp-form__footer button {
        width: 100% !important;
    }
}

/* Streamline filter modal: hide freeform tags field as recommended by benchmark */
#listing_filter_modal .hp-form__field--tags,
#listing_filter_modal .hp-form__field--tag,
.v2-filter-modal .hp-form__field--tags,
.v2-filter-modal .hp-form__field--tag {
    display: none !important;
}

/* ==========================================================================
   6. BOOKING DETAILS PAGE OVERHAUL (AIRBNB-GRADE)
   ========================================================================== */

.hp-template--booking-make-details-page .hp-page {
    display: flex !important;
    flex-direction: row-reverse !important;
    gap: 40px !important;
    align-items: flex-start !important;
    padding: 40px 0 60px 0 !important;
}

.hp-template--booking-make-details-page .hp-page__content {
    flex: 1 1 58% !important;
    max-width: 640px !important;
}

.hp-template--booking-make-details-page .hp-page__container > .hp-row,
.hp-template--booking-make-details-page .hp-row {
    align-items: flex-start !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar {
    flex: 1 1 42% !important;
    max-width: 440px !important;
    position: sticky !important;
    top: 90px !important;
    align-self: flex-start !important;
    height: auto !important;
    min-height: auto !important;
}

.hp-template--booking-make-details-page .hp-page__title {
    position: static !important;
    margin: 0 0 24px 0 !important;
    display: block !important;
    clear: both !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing--view-block {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
    overflow: hidden !important;
    margin-bottom: 20px !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    display: block !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__header {
    margin-bottom: 0 !important;
    height: auto !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__header img {
    height: 220px !important;
    object-fit: cover !important;
    width: 100% !important;
    display: block !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__content {
    padding: 16px 20px 14px 20px !important;
    flex: 0 0 auto !important;
    flex-grow: 0 !important;
    justify-content: flex-start !important;
    min-height: auto !important;
    height: auto !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__title {
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin: 0 0 8px 0 !important;
    min-height: auto !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__attributes--secondary,
.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__location {
    margin: 0 0 10px 0 !important;
}

.hp-template--booking-make-details-page .hp-page__sidebar .hp-listing__footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 14px 20px !important;
    border-top: 1px solid #f1f5f9 !important;
    background: #f8fafc !important;
    margin-top: 14px !important;
    border-radius: 0 0 20px 20px !important;
}

.hp-form--booking-confirm .hp-form__field--price,
.hp-form--booking-confirm .hp-field--price,
.hp-form--booking-confirm .hp-form__field--currency,
.hp-form--booking-confirm .hp-field--currency,
.hp-form--booking-confirm [data-field="price"],
.hp-template--booking-make-details-page .hp-field--currency,
.hp-template--booking-make-details-page .hp-form__field--currency {
    display: none !important;
}


@media (max-width: 991px) {
    .hp-template--booking-make-details-page .hp-page {
        flex-direction: column-reverse !important;
        gap: 20px !important;
        padding: 20px 0 40px 0 !important;
    }

    .hp-template--booking-make-details-page .hp-page__sidebar,
    .hp-template--booking-make-details-page .hp-page__content {
        width: 100% !important;
        max-width: 100% !important;
        position: static !important;
    }

    .hp-template--booking-make-details-page .hp-page__content .hp-form--booking-confirm {
        padding: 20px 18px !important;
        border-radius: 20px !important;
    }

    .hp-template--booking-make-details-page .hp-field--date {
        flex: 1 1 100% !important;
        min-width: 100% !important;
    }
}

/* ==========================================================================
   7. WOOCOMMERCE CHECKOUT BENCHMARK OVERHAUL (/porachka-2/)
   ========================================================================== */

.woocommerce-checkout .header-hero {
    display: none !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 16px 20px !important;
    border-radius: 16px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-left: 4px solid #f2bb63 !important;
    color: #475569 !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    margin-bottom: 24px !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {
    display: none !important;
}

.woocommerce-checkout .woocommerce {
    padding: 30px 0 60px 0 !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.woocommerce-checkout .woocommerce-info {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-left: 4px solid #e5a940 !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    color: #475569 !important;
    font-size: 14px !important;
    margin-bottom: 24px !important;
}

.woocommerce-checkout .woocommerce-info a {
    color: #1e2022 !important;
    font-weight: 700 !important;
}

@media (min-width: 992px) {
    .woocommerce-checkout form.checkout {
        display: flex !important;
        gap: 36px !important;
        align-items: flex-start !important;
    }

    .woocommerce-checkout #customer_details {
        flex: 1 1 58% !important;
        max-width: 58% !important;
        margin: 0 !important;
        width: 58% !important;
        float: none !important;
    }

    .woocommerce-checkout #customer_details .col-1,
    .woocommerce-checkout #customer_details .col-2 {
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .woocommerce-checkout #order_review_heading {
        display: none !important;
    }

    .woocommerce-checkout #order_review {
        flex: 1 1 42% !important;
        max-width: 42% !important;
        margin: 0 !important;
        width: 42% !important;
        float: none !important;
        position: sticky !important;
        top: 90px !important;
    }
}

/* Modern Coupon / Promo Code Form */
.woocommerce-checkout .woocommerce-form-coupon-toggle {
    margin-bottom: 20px !important;
}

.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout form.woocommerce-form-coupon {
    display: none;
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 18px !important;
    padding: 18px 22px !important;
    margin: 0 0 24px 0 !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

.woocommerce-checkout form.checkout_coupon[style*="block"],
.woocommerce-checkout form.checkout_coupon.is-active,
.woocommerce-checkout form.woocommerce-form-coupon[style*="block"],
.woocommerce-checkout form.woocommerce-form-coupon.is-active {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 12px !important;
}

.woocommerce-checkout form.checkout_coupon .coupon-error-notice,
.woocommerce-checkout form.woocommerce-form-coupon .coupon-error-notice {
    width: 100% !important;
    flex-basis: 100% !important;
    margin: 10px 0 0 0 !important;
    color: #ef4444 !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    display: block !important;
}

.woocommerce-checkout form.checkout_coupon label,
.woocommerce-checkout form.woocommerce-form-coupon label,
.woocommerce-checkout form.checkout_coupon .clear,
.woocommerce-checkout form.woocommerce-form-coupon .clear {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 0 !important;
    height: 0 !important;
}

.woocommerce-checkout form.checkout_coupon p:first-child,
.woocommerce-checkout form.woocommerce-form-coupon p:first-child {
    width: 100% !important;
    margin: 0 0 10px 0 !important;
    font-size: 14px !important;
    color: #64748b !important;
}

.woocommerce-checkout form.checkout_coupon .form-row,
.woocommerce-checkout form.woocommerce-form-coupon .form-row {
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    display: flex !important;
    align-items: stretch !important;
}

.woocommerce-checkout form.checkout_coupon .form-row-first,
.woocommerce-checkout form.woocommerce-form-coupon .form-row-first {
    float: none !important;
    width: auto !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
}

.woocommerce-checkout form.checkout_coupon .form-row-last,
.woocommerce-checkout form.woocommerce-form-coupon .form-row-last {
    float: none !important;
    width: auto !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}

.woocommerce-checkout form.checkout_coupon input.input-text,
.woocommerce-checkout form.woocommerce-form-coupon input.input-text {
    height: 48px !important;
    min-height: 48px !important;
    line-height: normal !important;
    border-radius: 12px !important;
    border: 1.5px solid #e2e8f0 !important;
    background: #f8fafc !important;
    padding: 0 16px !important;
    font-size: 14.5px !important;
    color: #1e2022 !important;
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 !important;
    vertical-align: middle !important;
}

.woocommerce-checkout form.checkout_coupon input.input-text:focus,
.woocommerce-checkout form.woocommerce-form-coupon input.input-text:focus {
    background: #ffffff !important;
    border-color: #f2bb63 !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.2) !important;
}

.woocommerce-checkout form.checkout_coupon button.button,
.woocommerce-checkout form.checkout_coupon button[type="submit"],
.woocommerce-checkout form.woocommerce-form-coupon button.button,
.woocommerce-checkout form.woocommerce-form-coupon button[type="submit"] {
    height: 48px !important;
    min-height: 48px !important;
    line-height: normal !important;
    min-width: 170px !important;
    padding: 0 24px !important;
    border-radius: 12px !important;
    background: #1e2022 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px rgba(30, 32, 34, 0.15) !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
}

.woocommerce-checkout form.checkout_coupon button.button:hover,
.woocommerce-checkout form.checkout_coupon button[type="submit"]:hover,
.woocommerce-checkout form.woocommerce-form-coupon button.button:hover,
.woocommerce-checkout form.woocommerce-form-coupon button[type="submit"]:hover {
    background: #000000 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 16px rgba(30, 32, 34, 0.25) !important;
    color: #ffffff !important;
}

@media (max-width: 640px) {
    .woocommerce-checkout form.checkout_coupon[style*="block"],
    .woocommerce-checkout form.checkout_coupon.is-active,
    .woocommerce-checkout form.woocommerce-form-coupon[style*="block"],
    .woocommerce-checkout form.woocommerce-form-coupon.is-active {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .woocommerce-checkout form.checkout_coupon .form-row-first,
    .woocommerce-checkout form.checkout_coupon .form-row-last,
    .woocommerce-checkout form.woocommerce-form-coupon .form-row-first,
    .woocommerce-checkout form.woocommerce-form-coupon .form-row-last,
    .woocommerce-checkout form.checkout_coupon button.button,
    .woocommerce-checkout form.woocommerce-form-coupon button.button {
        width: 100% !important;
        min-width: 0 !important;
    }
}

.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-additional-fields,
.woocommerce-checkout #order_review {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
    padding: 28px !important;
    margin-bottom: 24px !important;
    box-sizing: border-box !important;
}

.woocommerce-checkout h3 {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
    letter-spacing: -0.01em !important;
    margin: 0 0 20px 0 !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.woocommerce-checkout .form-row {
    margin-bottom: 14px !important;
}

.woocommerce-checkout .form-row label {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 6px !important;
    display: block !important;
}

.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select {
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 12px 14px !important;
    font-size: 14.5px !important;
    color: #1e2022 !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .form-row select:focus {
    border-color: #f2bb63 !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(242, 187, 99, 0.2) !important;
    outline: none !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table {
    border: none !important;
    margin: 0 0 20px 0 !important;
    width: 100% !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
    padding: 12px 0 !important;
    border-top: none !important;
    border-bottom: 1px solid #f1f5f9 !important;
    font-size: 14.5px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.order-total th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.order-total td {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
    border-bottom: none !important;
    padding-top: 16px !important;
}

.woocommerce-checkout #payment {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: 1px solid #f1f5f9 !important;
    padding-bottom: 16px !important;
    margin-bottom: 20px !important;
}

.woocommerce-checkout #place_order {
    width: 100% !important;
    height: 52px !important;
    border-radius: 9999px !important;
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    border: none !important;
    box-shadow: 0 6px 20px rgba(242, 187, 99, 0.42) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.woocommerce-checkout #place_order:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    transform: scale(1.02) !important;
    box-shadow: 0 8px 24px rgba(242, 187, 99, 0.55) !important;
    color: #1e2022 !important;
}

/* ==========================================================================
   8. BOOKING CONFIRMATION & COMPLETE PAGE BENCHMARK (/pay/complete/)
   ========================================================================== */

.hp-template--booking-pay-complete-page .hp-page {
    display: flex !important;
    flex-direction: row-reverse !important;
    gap: 40px !important;
    align-items: flex-start !important;
    padding: 40px 0 60px 0 !important;
}

.hp-template--booking-pay-complete-page .hp-page__content {
    flex: 1 1 60% !important;
    max-width: 680px !important;
}

.hp-template--booking-pay-complete-page .hp-page__sidebar {
    flex: 1 1 40% !important;
    max-width: 440px !important;
    position: sticky !important;
    top: 90px !important;
}

.hp-template--booking-pay-complete-page .hp-page__title {
    display: none !important;
}

.hp-template--booking-pay-complete-page .hp-page__sidebar .hp-widget--booking-listing {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
    padding: 0 !important;
    margin-bottom: 20px !important;
    overflow: hidden !important;
}

.hp-template--booking-pay-complete-page .hp-page__sidebar .hp-listing--view-block {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
    overflow: hidden !important;
    margin: 0 !important;
}

.hp-template--booking-pay-complete-page .hp-page__sidebar .hp-listing__content {
    padding: 16px 20px 20px 20px !important;
}

/* Confirmation Card Container */
.share-complete-confirmation-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 24px !important;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04) !important;
    padding: 36px 32px !important;
    box-sizing: border-box !important;
}

/* Hero Section */
.share-complete-hero {
    text-align: center !important;
    margin-bottom: 28px !important;
    padding-bottom: 24px !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.share-complete-hero__icon-wrap {
    width: 64px !important;
    height: 64px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    color: #ffffff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 28px !important;
    box-shadow: 0 8px 24px rgba(16, 185, 129, 0.28) !important;
    margin-bottom: 16px !important;
}

.share-complete-hero__badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #ecfdf5 !important;
    color: #059669 !important;
    border: 1px solid #a7f3d0 !important;
    padding: 4px 14px !important;
    border-radius: 9999px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-bottom: 12px !important;
}

.share-complete-hero__title {
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 10px 0 !important;
}

.share-complete-hero__desc {
    font-size: 15px !important;
    color: #475569 !important;
    line-height: 1.5 !important;
    margin: 0 auto !important;
    max-width: 540px !important;
}

/* Dates Panel */
.share-complete-dates-panel {
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 18px !important;
    padding: 16px 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin-bottom: 22px !important;
    flex-wrap: wrap !important;
}

.share-complete-date-col {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

.share-complete-date-col__label {
    font-size: 11.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #64748b !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.share-complete-date-col__val {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
}

.share-complete-dates-divider {
    color: #94a3b8 !important;
    font-size: 14px !important;
}

.share-complete-duration-badge {
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    padding: 6px 14px !important;
    border-radius: 9999px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
}

/* Deposit Card */
.share-complete-deposit-card {
    background: #f0fdf4 !important;
    border: 1.5px solid #bbf7d0 !important;
    border-radius: 16px !important;
    padding: 16px 20px !important;
    margin-bottom: 22px !important;
}

.share-complete-deposit-card__head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-bottom: 6px !important;
    flex-wrap: wrap !important;
}

.share-complete-deposit-card__title {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 14.5px !important;
    color: #166534 !important;
}

.share-complete-deposit-card__status {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #15803d !important;
    background: #dcfce7 !important;
    padding: 2px 10px !important;
    border-radius: 9999px !important;
}

.share-complete-deposit-card__text {
    font-size: 13px !important;
    color: #166534 !important;
    line-height: 1.45 !important;
    margin: 0 !important;
}

/* Host Box */
.share-complete-host-card {
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 16px !important;
    padding: 16px 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin-bottom: 22px !important;
    flex-wrap: wrap !important;
}

.share-complete-host-card__left {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

.share-complete-host-card__avatar {
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    background: #f1f5f9 !important;
    color: #64748b !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 22px !important;
}

.share-complete-host-card__details {
    display: flex !important;
    flex-direction: column !important;
}

.share-complete-host-card__role {
    font-size: 11.5px !important;
    color: #64748b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    font-weight: 600 !important;
}

.share-complete-host-card__name {
    font-size: 15.5px !important;
    color: #1e2022 !important;
    font-weight: 800 !important;
}

.share-complete-host-card__badge {
    font-size: 12px !important;
    color: #10b981 !important;
    font-weight: 600 !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.share-complete-host-card__btn {
    height: 40px !important;
    padding: 0 18px !important;
    border-radius: 9999px !important;
    background: #1e2022 !important;
    color: #ffffff !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.share-complete-host-card__btn:hover {
    background: #000000 !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
}

/* Steps Box */
.share-complete-steps-card {
    background: #fafafa !important;
    border: 1px solid #f1f5f9 !important;
    border-radius: 18px !important;
    padding: 20px 22px !important;
    margin-bottom: 26px !important;
}

.share-complete-steps-card__title {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #1e2022 !important;
    margin: 0 0 14px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.share-complete-steps-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.share-complete-step {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
}

.share-complete-step__badge {
    width: 26px !important;
    height: 26px !important;
    flex-shrink: 0 !important;
    border-radius: 50% !important;
    background: #f2bb63 !important;
    color: #1e2022 !important;
    font-weight: 800 !important;
    font-size: 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 2px !important;
}

.share-complete-step__content strong {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #1e2022 !important;
    display: block !important;
    margin-bottom: 2px !important;
}

.share-complete-step__content p {
    font-size: 12.5px !important;
    color: #64748b !important;
    line-height: 1.4 !important;
    margin: 0 !important;
}

/* Action CTAs */
.share-complete-actions {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
}

.share-complete-actions__btn {
    height: 48px !important;
    padding: 0 24px !important;
    border-radius: 9999px !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
}

.share-complete-actions__btn--primary {
    background: linear-gradient(135deg, #f2bb63 0%, #e5a940 100%) !important;
    color: #1e2022 !important;
    box-shadow: 0 4px 16px rgba(242, 187, 99, 0.42) !important;
}

.share-complete-actions__btn--primary:hover {
    background: linear-gradient(135deg, #f5c475 0%, #e8af4d 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(242, 187, 99, 0.55) !important;
    color: #1e2022 !important;
}

.share-complete-actions__btn--secondary {
    background: #1e2022 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(30, 32, 34, 0.15) !important;
}

.share-complete-actions__btn--secondary:hover {
    background: #000000 !important;
    transform: translateY(-1px) !important;
    color: #ffffff !important;
}

.share-complete-actions__btn--ghost {
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #64748b !important;
}

.share-complete-actions__btn--ghost:hover {
    border-color: #cbd5e1 !important;
    color: #1e2022 !important;
    background: #f8fafc !important;
}

@media (max-width: 991px) {
    .hp-template--booking-pay-complete-page .hp-page {
        flex-direction: column-reverse !important;
        gap: 20px !important;
        padding: 20px 0 40px 0 !important;
    }

    .hp-template--booking-pay-complete-page .hp-page__sidebar,
    .hp-template--booking-pay-complete-page .hp-page__content {
        width: 100% !important;
        max-width: 100% !important;
        position: static !important;
    }

    .share-complete-confirmation-card {
        padding: 24px 18px !important;
        border-radius: 20px !important;
    }

    .share-complete-dates-panel {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }

    .share-complete-dates-divider {
        display: none !important;
    }

    .share-complete-actions {
        flex-direction: column !important;
        width: 100% !important;
    }

    .share-complete-actions__btn {
        width: 100% !important;
    }
}

/* ==========================================================================
   VOLUME DISCOUNTS STYLES (AIRBNB / TURO BENCHMARK)
   ========================================================================== */

.share-widget-discounts-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 10px 0 12px 0;
    padding: 8px 12px;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 12px;
}

.share-discounts-bar-title {
    font-size: 12px;
    font-weight: 700;
    color: #166534;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.share-discounts-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.share-discount-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 2px 8px;
    background: #ffffff;
    border: 1px solid #86efac;
    border-radius: 9999px;
    font-size: 11.5px;
    font-weight: 600;
    color: #15803d;
}

.share-discount-badge-pill strong {
    color: #166534;
}

.share-price-strikethrough {
    text-decoration: line-through;
    color: #94a3b8;
    font-size: 18px;
    font-weight: 500;
    margin-right: 6px;
}

.share-price-discounted {
    color: #059669;
    font-weight: 800;
}

.share-applied-discount-banner {
    display: flex;
    align-items: center;
    gap: 6px;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    color: #047857;
    padding: 6px 12px;
    border-radius: 10px;
    font-size: 12.5px;
    font-weight: 600;
    margin: 8px 0;
}

/* Volume Discounts Showcase Card in Main Content */
.share-discounts-showcase-card {
    background: #ffffff;
    border: 1.5px solid #dcfce7;
    border-radius: 20px;
    padding: 20px 24px;
    margin: 20px 0;
    box-shadow: 0 4px 16px rgba(16, 185, 129, 0.05);
}

.share-discounts-card-header {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 16px;
}

.share-discounts-icon-wrap {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #dcfce7;
    color: #059669;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.share-discounts-card-title {
    font-size: 17px;
    font-weight: 700;
    color: #065f46;
    margin: 0 0 2px 0;
}

.share-discounts-card-subtitle {
    font-size: 13.5px;
    color: #64748b;
    margin: 0;
}

.share-discounts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
}

.share-discount-tier-item {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 14px;
    padding: 12px 16px;
}

.share-discount-tier-badge {
    background: #059669;
    color: #ffffff;
    font-weight: 800;
    font-size: 14px;
    padding: 6px 10px;
    border-radius: 10px;
    letter-spacing: -0.02em;
}

.share-discount-tier-info {
    display: flex;
    flex-direction: column;
}

.share-discount-tier-info strong {
    font-size: 14.5px;
    color: #1e2022;
}

.share-discount-tier-info span {
    font-size: 13px;
    color: #047857;
    font-weight: 600;
}

.share-discount-tier-info small {
    color: #94a3b8;
    text-decoration: line-through;
    font-weight: normal;
}

/* Mobile Modal & Floating Bar Discounts */
.share-m-discounts-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 8px 0 6px 0;
    padding: 6px 10px;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 10px;
}

.share-mbar-discount-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 7px;
    background: #ecfdf5;
    border: 1px solid #86efac;
    border-radius: 9999px;
    font-size: 11px;
    font-weight: 700;
    color: #059669;
    margin-left: 6px;
    line-height: 1.2;
}

.share-discount-badge-pill.is-active {
    background: #10b981 !important;
    color: #ffffff !important;
    border-color: #059669 !important;
    box-shadow: 0 2px 6px rgba(16, 185, 129, 0.35);
    transform: scale(1.04);
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.share-discount-badge-pill.is-active strong {
    color: #ffffff !important;
}

.share-vendor-order-card__discount-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-radius: 9999px;
    color: #059669;
    font-size: 12px;
    font-weight: 700;
}
/* Detailed Savings Note in [Детайли за цената] Modal */
.share-price-modal__savings-row {
    margin-bottom: 14px;
}

.share-price-modal__savings-note {
    padding: 9px 13px;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 700;
    color: #065f46;
    display: flex;
    align-items: center;
    gap: 6px;
}

.share-price-modal__savings-note i {
    color: #059669;
}

/* Mobile Sticky Bar Safeguard */
.share-mbar-action {
    flex-shrink: 0;
}

/* ==========================================================================
   359SHARE BENCHMARK BOOKING CANCELLATION MODAL STYLES
   ========================================================================== */
.share-cancel-modal > .hp-modal__close,
.share-cancel-modal > button.hp-modal__close {
    display: none !important;
}

.share-cancel-modal__content {
    border-radius: 20px !important;
    max-width: 540px !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.18) !important;
    border: 1px solid #e2e8f0 !important;
}

.share-cancel-modal__header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 20px 24px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    background: #ffffff !important;
}

.share-cancel-modal__title-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
}

.share-cancel-modal__icon {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: #fee2e2;
    color: #ef4444;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.share-cancel-modal__title {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin: 0 !important;
    line-height: 1.25 !important;
}

.share-cancel-modal__sub {
    font-size: 12.5px;
    color: #64748b;
    font-weight: 500;
}

.share-cancel-modal__close {
    font-size: 24px !important;
    color: #94a3b8 !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
    line-height: 1 !important;
    transition: color 0.15s ease !important;
}

.share-cancel-modal__close:hover {
    color: #0f172a !important;
}

.share-cancel-modal__body {
    padding: 22px 24px !important;
    background: #ffffff !important;
}

.share-cancel-summary {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 14px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    margin-bottom: 18px;
}

.share-cancel-summary__thumb {
    width: 68px;
    height: 54px;
    border-radius: 10px;
    object-fit: cover;
    flex-shrink: 0;
}

.share-cancel-summary__title {
    font-size: 14.5px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 4px 0;
    line-height: 1.3;
}

.share-cancel-summary__dates {
    font-size: 12.5px;
    color: #64748b;
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
}

.share-cancel-summary__dates i {
    color: #d97706;
}

.share-cancel-policy-card {
    border-radius: 14px;
    padding: 16px 18px;
    margin-bottom: 20px;
    font-size: 13.5px;
    line-height: 1.45;
}

.share-cancel-policy-card--full {
    background: #f0fdf4;
    border: 1.5px solid #86efac;
    color: #14532d;
}

.share-cancel-policy-card--partial {
    background: #fffbeb;
    border: 1.5px solid #fde68a;
    color: #78350f;
}

.share-cancel-policy-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
    flex-wrap: wrap;
    gap: 6px;
}

.share-cancel-policy-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 9px;
    border-radius: 9999px;
    font-size: 11.5px;
    font-weight: 800;
}

.share-cancel-policy-card--full .share-cancel-policy-badge {
    background: #dcfce7;
    color: #15803d;
}

.share-cancel-policy-card--partial .share-cancel-policy-badge {
    background: #fef3c7;
    color: #b45309;
}

.share-cancel-policy-deadline {
    font-size: 12px;
    color: #64748b;
}

.share-cancel-policy-desc {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.share-cancel-policy-desc i {
    font-size: 18px;
    margin-top: 2px;
    flex-shrink: 0;
}

.share-cancel-policy-desc p {
    margin: 4px 0 0 0;
    font-size: 13px;
    line-height: 1.45;
    color: inherit;
    opacity: 0.95;
}

.share-cancel-form-container .hp-form__description {
    font-size: 13.5px !important;
    color: #475569 !important;
    line-height: 1.5 !important;
    margin-bottom: 20px !important;
    padding: 10px 14px !important;
    background: #f8fafc !important;
    border-radius: 10px !important;
    border-left: 3px solid #cbd5e1 !important;
}

.share-cancel-form-container .hp-form__footer {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    margin-top: 10px !important;
    padding-top: 14px !important;
    border-top: 1px solid #f1f5f9 !important;
}

.share-cancel-form-container .hp-form__button {
    background: #ef4444 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 12px 24px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(239, 68, 68, 0.35) !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.share-cancel-form-container .hp-form__button:hover {
    background: #dc2626 !important;
    box-shadow: 0 6px 18px rgba(220, 38, 38, 0.45) !important;
    transform: translateY(-1px) !important;
}

