/* Tab design */
.rf-catalog-tabs {
      background-color: transparent !important;
      padding: 4px !important;
      gap: 6px !important;
}
.rf-catalog-tabs li {
      background-color: #D9D9D9 !important;
      border-radius: 10px !important;
      overflow: hidden !important;
      border: none !important;
      box-shadow: none !important;
}
.rf-catalog-tabs li button {
      height: 41px !important;
      font-weight: 600 !important;
      padding: 0 16px !important;
      color: #000000 !important;
}
.rf-catalog-tabs li.active {
      background-color: #ffffff !important;
      border-radius: 10px !important;
      border: none !important;
      outline: 2px solid #000000 !important;
      box-shadow: none !important;
      width: auto !important;
}
.rf-catalog-tabs li.active button {
      color: #000000 !important;
}

/* Filter accordion arrow: move to left, point right by default */
.search-filters .filters .catalog-filter {
      display: flex !important;
      align-items: center !important;
      flex-direction: row !important;
      gap: 8px !important;
}
.search-filters .filters .catalog-filter .rfSI {
      float: none !important;
      flex-shrink: 0 !important;
      order: -1 !important;
}
/* Default (collapsed): arrow points right */
.search-filters .filters .catalog-filter svg {
      transform: rotate(90deg) !important;
}
/* Expanded state (.collapsed class added by RainFocus): arrow points down */
.search-filters .filters .catalog-filter.collapsed svg {
      transform: scaleY(-1) !important;
}

/* Black background */
body.rf-body,
.rfComp-canvas,
.search-container,
.search-content,
.main-content,
.rf-widget {
      background-color: #000000 !important;
}

/* White session cards */
.catalog-result {
      background-color: #ffffff !important;
      border-radius: 10px !important;
}

/* White text for filters and page content on black background */
.search-filters,
.search-filters .filters,
.search-filters label,
.search-filters input[type="checkbox"],
.search-filters .catalog-filter,
.search-filters .catalog-filter-header,
h1, h2, h3,
.rf-page-title,
.filters-title {
      color: #ffffff !important;
}

/* Ensure filter labels are white */
.search-filters .filters li label,
.search-filters .filters .filter-group-title,
.search-filters .filters .filter-title {
      color: #ffffff !important;
}

/* Checkbox labels white (My favorites, Recommended for you) */
.rf-checkbox-label {
      color: #ffffff !important;
}
.checkbox-bg {
      border-color: #ffffff !important;
}

/* Clear filters yellow */
.clear-search,
.clear-search .mdBtnR-text,
.clear-search span {
      color: #FFFF00 !important;
      font-weight: 700 !important;
}

/* Clear filters font size */
#rf-catalog .search-filters .filters-header .clear-search .mdBtnR-text {
      font-size: 16px !important;
}

/* Search box */
.catalog-search {
      background-color: #D9D9D9 !important;
      border-radius: 10px !important;
      border: none !important;
      overflow: hidden !important;
}
.catalog-search .rf-input {
      background-color: transparent !important;
      border: none !important;
}
.catalog-search input {
      background-color: transparent !important;
      border: none !important;
      border-radius: 10px !important;
      color: #000000 !important;
      outline: none !important;
      box-shadow: none !important;
}
.catalog-search input::placeholder {
      color: #000000 !important;
      opacity: 1 !important;
}
.catalog-search .search-submit {
      background-color: transparent !important;
      color: #000000 !important;
      border: none !important;
      box-shadow: none !important;
}
.catalog-search .search-submit svg,
.catalog-search .search-submit .rfSI {
      color: #000000 !important;
      fill: #000000 !important;
}

/* Exhibitor tile white background */
.rf-tile.exhibitor-tile,
.rf-tile-body,
.rf-tile-footer {
      background-color: #ffffff !important;
}

/* Exhibitor tile text */
.rf-tile-title,
.rf-tile-title a {
      color: #212121 !important;
}

/* Remove hyperlink appearance/behavior from exhibitor tile title */
.rf-tile-title a {
      text-decoration: none !important;
      pointer-events: none !important;
      cursor: default !important;
}

.rf-tile.exhibitor-tile .rf-tile-title a:hover,
.rf-tile.exhibitor-tile .rf-tile-title a:focus,
.rf-tile.exhibitor-tile .rf-tile-title a:active,
.rf-catalog-tile .rf-tile-title a:hover,
h4.rf-tile-title a:hover,
h4.rf-tile-title a:focus,
h4.rf-tile-title a:active {
      color: #212121 !important;
      text-decoration: none !important;
}

/* Override global .rf-tile-title:hover rule (bubbled hover due to pointer-events:none on link) */
.rf-tile.exhibitor-tile .rf-tile-title:hover a,
.exhibitor-tile-container .rf-tile-title:hover a,
h4.rf-tile-title:hover a,
.rf-tile-title:hover a {
      color: #212121 !important;
      text-decoration: none !important;
}

/* Tile footer link/button text */
.rf-tile-footer a,
.rf-tile-footer button,
.rf-tile-footer .mdBtnR-text {
      color: #212121 !important;
}



/* Filters header - inline layout  */
.search-filters .filters-header {
      display: flex !important;
      flex-direction: row !important;
      align-items: center !important;
      justify-content: space-between !important;
      width: 100% !important;
}
.search-filters .filters-header .filters-title {
      margin: 0 !important;
      flex: 1 !important;
}
.search-filters .filters-header .clear-search {
      margin-left: auto !important;
      flex-shrink: 0 !important;
}

/* Sponsor pill colors - dark theme */
.rf-pill.exhibitor-type-premier {
      background-color: #1D91D0 !important;
      color: #ffffff !important;
      border: none !important;
}
.rf-pill.exhibitor-type-diamond {
      background-color: #E5E5E5 !important;
      color: #212121 !important;
      border: none !important;
}
.rf-pill.exhibitor-type-gold {
      background-color: #D7CB1D !important;
      color: #212121 !important;
      border: none !important;
}
.rf-pill.exhibitor-type-silver {
      background-color: #BFBFBF !important;
      color: #212121 !important;
      border: none !important;
}
.rf-pill.exhibitor-type-bronze {
      background-color: #CD7523 !important;
      color: #ffffff !important;
      border: none !important;
}
.rf-pill.exhibitor-type-innovatorsalley {
      background-color: #FEC6B1 !important;
      color: #212121 !important;
      border: none !important;
}
.rf-pill.exhibitor-type-fusionfactorymarquee {
      background-color: #2AD0A9 !important;
      color: #212121 !important;
      border: none !important;
}
.rf-pill.exhibitor-type-factorysponsor {
      background-color: #21A183 !important;
      color: #ffffff !important;
      border: none !important;
}
.rf-pill.exhibitor-type-autodesk {
      background-color: #000000 !important;
      color: #ffffff !important;
      border: 1px solid #ffffff !important;
}

/* Fix Filters header layout - Filters + Clear inline, search box below */
.search-filters .filters-header {
      display: flex !important;
      flex-direction: row !important;
      flex-wrap: wrap !important;
      align-items: center !important;
      width: 100% !important;
}
.search-filters .filters-header h2 {
      flex: 1 !important;
      margin: 0 !important;
}
.search-filters .filters-header .clear-search {
      flex-shrink: 0 !important;
      order: 2 !important;
}
.search-filters .filters-header .search-bar {
      flex: 0 0 100% !important;
      width: 100% !important;
      order: 3 !important;
      margin-top: 8px !important;
}

/* Pill height */
.rf-pill {
    height: 21px !important;
    line-height: 21px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Pill display fix */
.rf-pill {
    display: inline-flex !important;
    width: fit-content !important;
    align-items: center !important;
}

/* Pill align fix - prevent flex stretch */
.rf-pill {
    align-self: flex-start !important;
}



/* Clear filters vertical alignment */
.search-filters .filters-header .clear-search {
    align-self: center !important;
    line-height: 1 !important;
    padding: 0 !important;
}



/* Fix Clear filters - bottom align with Filters heading */
.search-filters .filters-header {
    align-items: flex-end !important;
}
.search-filters .filters-header .clear-search {
    align-self: flex-end !important;
    padding-bottom: 4px !important;
}

/* Active tab - remove black border, fix sizing */
.rf-catalog-tabs li.active {
    border: none !important;
    width: auto !important;
}

/* More space above tabs */
.main-content {
    padding-top: 48px !important;
}

/* Space between toggle and tabs */
.catalog-toggle-wrapper {
    margin-bottom: 16px !important;
}

/* Card rounded corners - clip children to border-radius */
.rf-tile.exhibitor-tile {
    overflow: hidden !important;
    border-radius: 8px !important;
}

/* Round card bottom corners explicitly */
.rf-tile.exhibitor-tile .rf-tile-footer {
    border-radius: 0 0 8px 8px !important;
}
.rf-tile.exhibitor-tile .rf-tile-body {
    border-radius: 0 !important;
}

/* Hide blue hero banner */
.erc_tasks_page_hero_banner {
    display: none !important;
}
/* Section title spacing */
.exhibitor-catalog-section-title {
    padding-top: 24px !important;
}
/* Remove space between tabs and content */
.rf-catalog-tabs {
    margin-bottom: 0px !important;
}
.search-content {
    margin-top: 0px !important;
}
.exhibitor-catalog-section-title:first-child {
    padding-top: 0px !important;
}
/* === Exhibitor Detail Page Fixes === */

/* View All Exhibitors button - white border, text, arrow */
.exhibitor-details-back-to-catalog a {
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-decoration: none !important;
}
.exhibitor-details-back-to-catalog a .rfSI svg {
    fill: #ffffff !important;
}
.exhibitor-details-back-to-catalog a .rfSI {
    color: #ffffff !important;
}

/* Description text - white */
.exhibitor-details-content .description,
.exhibitor-details-content .description *,
.exhibitor-details-content .custom-component,
.exhibitor-details-content .custom-component * {
    color: #ffffff !important;
}

/* Exhibitor detail page pills - match catalog colors */
.exhibitor-details-page-frame .rf-pill.exhibitor-type-premier {
    background-color: #1D91D0 !important;
    color: #ffffff !important;
}
.exhibitor-details-page-frame .rf-pill.exhibitor-type-diamond {
    background-color: #E5E5E5 !important;
    color: #212121 !important;
}
.exhibitor-details-page-frame .rf-pill.exhibitor-type-gold {
    background-color: #D7CB1D !important;
    color: #212121 !important;
}
.exhibitor-details-page-frame .rf-pill.exhibitor-type-silver {
    background-color: #BFBFBF !important;
    color: #212121 !important;
}
.exhibitor-details-page-frame .rf-pill.exhibitor-type-bronze {
    background-color: #CD7523 !important;
    color: #ffffff !important;
}
.exhibitor-details-page-frame .rf-pill.exhibitor-type-innovatorsalley {
    background-color: #FEC6B1 !important;
    color: #212121 !important;
}
.exhibitor-details-page-frame .rf-pill.exhibitor-type-thefactoryexperiencemarquee {
    background-color: #000000 !important;
    color: #ffffff !important;
}
.exhibitor-details-page-frame .rf-pill.exhibitor-type-fusionfactory {
    background-color: #000000 !important;
    color: #ffffff !important;
}
/* Exhibitor URL link - white */
.exhibitor-details-content .exhibitor-url a {
    color: #ffffff !important;
}
/* Session cards inside exhibitor detail page - force dark text on white background */
.exhibitor-details-content .catalog-result.session-result,
.exhibitor-details-content .catalog-result.session-result * {
    color: #212121 !important;
}
/* Session attribute rows spacing - add gap between each field */
.catalog-result.session-result .attributes-component > div {
    margin-bottom: 10px !important;
}
.catalog-result.session-result .session-attributes > div {
    margin-bottom: 10px !important;
}

/* Top border on footer links */

.footer .middle-footer .flex-box-section-full-interior {
    border-top: 1px solid #AAAAAA;
    padding-top: 35px;
}


/* Filter arrow (chevron) hover color */
.search-filters .filters .catalog-filter:hover svg,
.search-filters .filters .catalog-filter:hover .rfSI {
    color: #ffffff !important;
    fill: #ffffff !important;
}

/* Speaker name link styling in Sponsored Sessions */
#rf-content .speaker-trigger {
    text-decoration: underline !important;
    text-decoration-color: #000000 !important;
}
#rf-content .speaker-trigger:hover,
#rf-content .speaker-trigger:hover .mdBtnR-text {
    color: #1D91D0 !important;
    text-decoration-color: #000000 !important;
}

/* Session title link styling in Sponsored Sessions */
#rf-content #exhibitor-sessions .catalog-result-title-text button .title-text {
    text-decoration: underline !important;
    text-decoration-color: #000000 !important;
}
#rf-content #exhibitor-sessions .catalog-result-title-text button:hover .title-text {
    color: #1D91D0 !important;
    text-decoration-color: #000000 !important;
}

/* Exhibitor URL link hover styling */
#rf-content .exhibitor-url a:hover {
    color: #1D91D0 !important;
}

/* Stack exhibitor logo above title/badge on exhibitor detail page */
.exhibitor-title.rf-flex-frame {
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
}
.exhibitor-title .exhibitor-logo {
    margin-bottom: 35px !important;
}
.exhibitor-title .title-info.rf-flex-horizontal-center {
    align-items: flex-start !important;
}

.rf-tile-banner {
  background: #ffffff;
}
.rf-tile-banner img {
  object-fit: contain;
  padding: 14px;
  background: #ffffff;
}


