/**
 * Noiz Template - Custom CSS
 * 
 * Custom overrides and plugin-specific styles
 */

/* Suspicious message warnings (from plugin) */
ul#messages_area .suspicious-msg .suspicious-message-warning {
    background-color: #ffdddd;
    border: 1px solid #ff5c5c;
    padding: 10px;
    margin-bottom: 15px;
    border-radius: 4px;
    color: #000000;
}

ul#messages_area li.suspicious-msg {
    border-color: #ff5c5c !important;
}

/* Multi-line listing titles override */
ul.featured.with-pictures ul.card-info > li.title a {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    display: block !important;
    line-height: 1.3em;
    max-height: none;
    font-weight: 500;
}

article.item:not(.no-image) ul.card-info > li.title,
ul.featured.with-pictures ul.card-info > li.title {
    display: block !important;
    -webkit-line-clamp: unset !important;
    max-height: none !important;
    overflow: visible !important;
}

section#listings.grid > article:not(.no-image) ul.card-info > li.title {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    display: block !important;
}

section#listings.list ul.card-info > li.title a {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    display: block !important;
    line-height: 1.3em;
}

body.home-page .header-tabs { display: none; } 

div.gallery > #media[data-view="gallery"] .preview:not(.locked) + .map-container + .nav-buttons .nav-button.zoom, div.gallery > #media[data-view="gallery"] .preview:not(.locked) + .map-container + .nav-buttons .nav-button.map, div.gallery .nav-buttons .nav-button {
    background: var(--noiz-dark-orange);
    color: #ffffff !important;
}

.submission_instructions {
    font-size: 14px;
}

.submission_instructions a {
    color: var(--noiz-dark-orange);
}

.carousel-slide-heading { }
 
 .table-cell .checkboxes > *:not(.active) { display: none; }
 
 .carousel-caption .button { background-color:  var(--noiz-dark-orange) !important; }

/* Delete conversation button styles */
#messages_cont .delete-conversation {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    margin: 0 0 20px 0 !important;
    background: transparent !important;
    border: 1px solid #dc3545 !important;
    border-radius: 6px !important;
    color: #dc3545 !important;
    cursor: pointer !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
    margin-left: auto !important;
    width: fit-content !important;
}

#messages_cont .delete-conversation:hover {
    background: #dc3545 !important;
    color: white !important;
}

#messages_cont .delete-conversation svg {
    flex-shrink: 0 !important;
}

#messages_cont .delete-conversation:hover svg {
    stroke: white !important;
}

#messages_cont ul#messages_area {
    clear: both !important;
}

.message-list-item {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
}

.message-item-link {
    flex: 1 !important;
}

/* Individual message delete icon */
.message-sender-info {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.delete-message {
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 4px !important;
    border-radius: 4px !important;
    transition: background 0.2s ease !important;
}

.delete-message:hover {
    background: rgba(220, 53, 69, 0.1) !important;
}

.delete-message svg {
    display: block !important;
}
 
.content_block.no-style.no-header.banners { 
    width: auto !important;
    height: auto !important; 
    margin: 0;
    padding: 0;
 }
 
 
 
 .fieldset a:link, .fieldset a:visited, .fieldset .link { color: var(--body-font-color); }
 
 #theme-switcher .icon path {
   fill: var(--noiz-dark-orange) !important;
 }
 
 
 article.highlight a.link-large, article.highlight ul.ad-info > li.title > a { background: none !important; box-shadow: none !important; }
 .text-notice a:link {
     color: var(--noiz-dark-orange);
 }
 
 .banners { padding: 0px; }
 
 #banner_14, #banner_12, #banner_13, #banner_11, #banner_8, #banner_25, #banner_26, #banner_21, #banner_21, #banner_20, #banner_3, #banner_5, #banner_6, #banner_32, #banner_10, #banner_34, #banner_38, #banner_24, #banner_33, #banner_39, #banner_40, #banner_41, #banner_42, #banner_27,  #banner_39, #banner_15, #banner_19, #banner_44, #banner_45, #banner_46 {
   width: auto !important;
   height: auto !important; 
 }
 
 .banners-box {
    width: auto !important;
    height: auto !important;  
  }
  
.no-header .banners-box > #banner_40 { height: 0px !important; }
  
/*** add margin to google ad manager banners ***/

/* 728x90 */
#div-gpt-ad-1768003178315-0, #div-gpt-ad-1768004940321-0, #div-gpt-ad-1768005277940-0, #div-gpt-ad-1768047167352-0, #div-gpt-ad-1768064109564-0
{ 
  margin-bottom: 30px;
}

/* 300x250 */
#div-gpt-ad-1767973228893-0, #div-gpt-ad-1767979343553-0, #div-gpt-ad-1767989690321-0, #div-gpt-ad-1768004520256-0, #div-gpt-ad-1768005501468-0, #div-gpt-ad-1768046913894-0, #div-gpt-ad-1768047515310-0, #div-gpt-ad-1768064264124-0
{
  margin-bottom: 60px;
}

  
 #banner_3 { padding-bottom: 35px; }
 
 .fieldset .cf-apply a { color: var(--noiz-light-orange); border-bottom: 1px dotted;  }
 
 /* Mobile responsive styles for messaging and avatars */
 @media (max-width: 767px) {
     /* Mobile sticky behavior for user info */
     .messaging-user-info {
         position: sticky;
         top: 0;
         z-index: 100;
         margin-bottom: 10px;
         box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
         padding: 16px;
     }
     
     .user-info-header {
         gap: 12px;
         margin-bottom: 12px;
         padding-bottom: 12px;
     }
     
     .user-avatar {
         width: 50px;
         height: 50px;
     }
     
     .user-name {
         font-size: 1.125em;
     }
     
     .user-actions .button {
         font-size: 0.813em;
         padding: 8px 14px;
     }
     
     .user-contact-details {
         grid-template-columns: 1fr;
         gap: 8px;
     }
 
     /* Mobile message adjustments */
     ul#messages_area li {
         gap: 8px;
         padding: 10px;
         margin-bottom: 12px;
     }
     
     .message-avatar {
         width: 35px;
         height: 35px;
     }
     
     .message-avatar .avatar-initials {
         width: 35px;
         height: 35px;
         font-size: 0.875em;
     }
     
     .sender-name {
         font-size: 0.688em;
         max-width: 45px;
     }
     
     .message-text {
         font-size: 0.875em;
     }
 
     /* Full width send button on mobile */
     div.send-controls #send_message {
         width: 100%;
     }
 
     /* Avatar sizing for mobile */
     .messaging-user-info .avatar-initials {
         width: 50px;
         height: 50px;
         font-size: 1.125em;
     }
 
     /* Messages list mobile adjustments */
     .message-item-link {
         gap: 12px;
         padding: 12px;
     }
 
     .message-item-avatar .avatar-initials,
     .message-item-avatar img {
         width: 48px;
         height: 48px;
         border-radius: 50%;
     }
 
     .unread-badge {
         width: 20px;
         height: 20px;
         font-size: 0.688em;
     }
 
     .message-item-header {
         flex-direction: column;
         align-items: flex-start;
         gap: 4px;
     }
 
     .message-item-name {
         font-size: 0.938em;
     }
 
     .message-item-preview {
         font-size: 0.813em;
     }
 
     .message-item-arrow {
         display: none;
     }
 }
 
 /* Desktop - not sticky */
 @media (min-width: 768px) {
     .messaging-user-info {
         position: relative;
     }
 }
 
 .home-page .middle .banners { padding-top: 15px !important; padding-bottom: 15px !important; }
 
 .listings_box a.m-auto  { font-size: 1.25rem; color: var(--noiz-black); border-bottom: 1px dotted var(--noiz-light-orange); }