/* CT TEMPLATE Manager — annonces informatives */
/*
 * Le label de la fiche annonce utilise strictement le composant natif Listeo
 * `.listing-tag`. Aucun style spécifique n'est appliqué : la fonte, la graisse,
 * la couleur, le fond, les espacements et le rayon restent ceux du thème.
 */

/* Évite les déplacements verticaux dus à l'ancrage automatique du navigateur
 * lorsque les surfaces commerciales sont neutralisées au chargement. */
body.cttm-informative-listing {
  overflow-anchor: none;
}

/* Le badge sur les cartes conserve son composant compact dédié. */
.cttm-informative-card-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  margin: 5px 0 0 8px;
  padding: 4px 10px;
  border: 1px solid rgba(44, 78, 83, .18);
  border-radius: 999px;
  background: #eef4f4;
  color: #2c4e53;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
  vertical-align: middle;
  white-space: normal;
}

.cttm-informative-card-badge.is-warning {
  border-color: rgba(250, 168, 26, .42);
  background: #fff5e4;
  color: #7a4b00;
}

.cttm-informative-card-badge.is-info {
  border-color: rgba(121, 181, 190, .55);
  background: #eef8f9;
  color: #2c4e53;
}

.cttm-informative-card-badge.is-danger {
  border-color: rgba(187, 44, 55, .28);
  background: #fff0f1;
  color: #a41624;
}

.cttm-informative-card-badge.is-neutral {
  border-color: #dcdcde;
  background: #f5f6f6;
  color: #5a676b;
}

.cttm-informative-notice {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  box-sizing: border-box;
  width: 100%;
  margin: 0 0 20px;
  padding: 18px 20px;
  border: 1px solid rgba(121, 181, 190, .6);
  border-left: 4px solid #faa81a;
  border-radius: 18px;
  background: #f7fbfb;
  color: #464646;
  box-shadow: 0 8px 24px rgba(44, 78, 83, .06);
}

.cttm-informative-notice__icon {
  display: inline-flex;
  flex: 0 0 28px;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #2c4e53;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
}

.cttm-informative-notice__content {
  min-width: 0;
}

.cttm-informative-notice__content > strong {
  display: block;
  margin: 1px 0 5px;
  color: #2c4e53;
  font-size: 16px;
  line-height: 1.3;
}

.cttm-informative-notice__content p {
  margin: 0;
  color: #626f73;
  font-size: 14px;
  line-height: 1.65;
}

.cttm-informative-notice__state {
  display: inline-flex;
  margin-top: 10px;
  padding: 3px 9px;
  border-radius: 999px;
  background: #fff3dd;
  color: #7a4b00;
  font-size: 12px;
  font-weight: 700;
}

/* Server-side filtering is primary. These selectors are compatibility
 * fallbacks for builder output or markup injected after page load. */
body.cttm-informative-listing .cttm-informative-hidden,
body.cttm-informative-listing .listing-message,
body.cttm-informative-listing .contact-owner,
body.cttm-informative-listing .contact-listing-owner,
body.cttm-informative-listing .send-message-to-owner,
body.cttm-informative-listing .message-to-owner,
body.cttm-informative-listing .listing-links,
body.cttm-informative-listing .listing-social-links,
body.cttm-informative-listing .listing-opening-hours,
body.cttm-informative-listing .opening-hours,
body.cttm-informative-listing .opening-hours-container,
body.cttm-informative-listing .listing-logo,
body.cttm-informative-listing .listing-logo-wrap,
body.cttm-informative-listing .listing-logo-image,
body.cttm-informative-listing .external-booking-widget,
body.cttm-informative-listing .widget_listeo_core_external_booking_widget,
body.cttm-informative-listing .widget_listing_external_booking,
body.cttm-informative-listing .external-booking,
body.cttm-informative-listing .external-booking-link,
body.cttm-informative-listing .listing-external-booking,
body.cttm-informative-listing .book-now-notloggedin,
body.cttm-informative-listing #booking-widget-anchor,
body.cttm-informative-listing .booking-widget,
body.cttm-informative-listing .booking-widget-wrapper,
body.cttm-informative-listing .lbp-book-now-widget,
body.cttm-informative-listing .lbp-bpw,
body.cttm-informative-listing .lbp-book-now-btn,
body.cttm-informative-listing #lbp-booking-modal,
body.cttm-informative-listing .lbp-modal,
body.cttm-informative-listing #listing-resources,
body.cttm-informative-listing .lbp-resources-listing,
body.cttm-informative-listing .lbp-resource-list,
body.cttm-informative-listing a[href="#listing-resources"],
body.cttm-informative-listing .booking-sticky-footer,
body.cttm-informative-listing .listing-sticky-footer .book-now,
body.cttm-informative-listing .mobile-booking-button {
  display: none !important;
}

/* The native claim action can be inside Listeo's owner widget. It is kept for
 * unclaimed states and hidden only once an owner is assigned. */
body.cttm-informative-owner-masked .listing-owner-widget,
body.cttm-informative-owner-masked .listeo-owner-widget,
body.cttm-informative-owner-masked .owner-widget,
body.cttm-informative-owner-masked .listing-author-widget,
body.cttm-informative-owner-masked .listing-contact-widget,
body.cttm-informative-owner-masked .listing-contact,
body.cttm-informative-owner-masked .widget_listing_owner,
body.cttm-informative-owner-masked .widget_listeo_core_author_widget,
body.cttm-informative-owner-masked .widget_listeo_core_contact_widget,
body.cttm-informative-owner-masked .hosted-by,
body.cttm-informative-owner-masked .listing-owner,
body.cttm-informative-owner-masked .listing-author,
body.cttm-informative-owner-masked .listing-user-info,
body.cttm-informative-owner-masked .listing-user,
body.cttm-informative-owner-masked .owner-box {
  display: none !important;
}

.cttm-informative-booking-notice {
  position: relative;
  z-index: 99999;
  box-sizing: border-box;
  max-width: 620px;
  margin: 16px auto;
  padding: 14px 18px;
  border: 1px solid rgba(250, 168, 26, .45);
  border-radius: 14px;
  background: #fff7e9;
  color: #704600;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}

@media (max-width: 767px) {
  .cttm-informative-notice {
    gap: 11px;
    padding: 16px;
    border-radius: 14px;
  }

  .cttm-informative-card-badge {
    font-size: 11px;
  }
}
