/**
 * Business Operating Hours - Frontend Styles
 * Version: 3.0.8
 */

/* ============================================
   COMPLETE MARGIN AND PADDING RESET
   Using explicit top/right/bottom/left to override any plugin/theme styles
   ============================================ */

/* Reset all shortcode wrapper elements */
.boh-hours-list,
.boh-hours-line,
.boh-notice,
.boh-location-type,
.boh-location-phone,
.boh-location-address,
.boh-location-booking,
.boh-location-events {
    margin: 0 !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

/* Reset all text elements inside shortcodes */
.boh-hours-list *,
.boh-hours-line *,
.boh-notice *,
.boh-location-type *,
.boh-location-phone *,
.boh-location-address *,
.boh-location-booking *,
.boh-location-events * {
    margin: 0 !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

/* Reset any icons */
.boh-location-type i,
.boh-location-phone i,
.boh-location-address i,
.boh-location-booking i,
.boh-location-events i {
    margin: 0 !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

/* Reset any links */
.boh-location-phone a,
.boh-location-address a,
.boh-location-booking a,
.boh-location-events a {
    margin: 0 !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

/* Reset paragraphs that might be in notice content */
.boh-notice p {
    margin: 0 !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

/* Reset hours display elements */
.boh-hours-list {
    margin: 0 !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
    display: inline-block;
}

.boh-hours-line {
    margin: 0 !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

/* Catch-all for any wrapper divs or spans */
span[class*="boh-"],
div[class*="boh-"] {
    margin: 0 !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

/* Catch-all for any nested elements */
span[class*="boh-"] *,
div[class*="boh-"] * {
    margin: 0 !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

/* Ensure booking and events links are always visible and clickable */
a.boh-booking-link,
a.boh-events-link {
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    text-decoration: inherit !important;
    color: inherit !important;
}

/* Ensure links work in any page builder context */
a.boh-booking-link[href],
a.boh-events-link[href] {
    display: inline !important;
}
