
/* TradesFolks Public Component Ownership — Sprint 806
   Phase 2: component-level ownership for high-change public controls.
   Loaded after the shared shell ownership layer. */

/* Header action cluster */
.site-header .header-actions{
  min-width:0;
}
.site-header .header-actions > a,
.site-header .header-actions > button{
  flex-shrink:0;
}

/* Search box + suggestion panel */
.site-header .global-search{
  isolation:isolate;
}
.site-header .global-search [role="listbox"],
.site-header .global-search .search-suggestions,
.site-header .global-search [data-search-suggestions],
.site-header .global-search .enterprise-search-suggestions{
  box-sizing:border-box;
  width:100%;
  max-width:100%;
  border:1px solid #dbe4ee;
  border-radius:0 0 13px 13px;
  background:#fff;
  box-shadow:0 12px 30px rgba(7,27,70,.12);
}
.site-header .global-search [role="option"],
.site-header .global-search .search-suggestion-item{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Canonical cart control states */
.site-header .shopping-cart-link,
.site-header .cart-button,
.site-header .tf-header-cart-v2,
.site-header .tf-mobile-header-cart{
  transition:background-color .16s ease,border-color .16s ease,transform .12s ease;
}
.site-header .shopping-cart-link:focus-visible,
.site-header .cart-button:focus-visible,
.site-header .tf-header-cart-v2:focus-visible,
.site-header .tf-mobile-header-cart:focus-visible{
  outline:3px solid rgba(11,95,197,.18);
  outline-offset:2px;
}

/* Floating marketplace tools */
.market-floating-actions,
.tf-mobile-tools-popover{
  box-sizing:border-box;
}
.market-floating-actions a,
.market-floating-actions button,
.tf-mobile-tools-popover a,
.tf-mobile-tools-popover button{
  text-decoration:none;
  box-sizing:border-box;
}

/* Avoid visual drift from inherited global button rules */
.market-floating-actions button,
.tf-mobile-tools-popover button,
.tf-mobile-tools-dock-toggle{
  font:inherit;
}

/* Mobile dock */
@media(max-width:767px){
  .tf-mobile-market-dock-row{
    align-items:stretch;
  }
  .tf-mobile-market-pill{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:stretch;
  }
  .tf-mobile-market-pill > a{
    display:flex;
    min-width:0;
    align-items:center;
    justify-content:center;
    flex-direction:column;
  }
  .tf-mobile-tools-dock-toggle{
    align-self:stretch;
  }

  /* Keep suggestion/results layers above homepage hero and below dialogs. */
  .site-header .global-search [role="listbox"],
  .site-header .global-search .search-suggestions,
  .site-header .global-search [data-search-suggestions],
  .site-header .global-search .enterprise-search-suggestions{
    z-index:2300;
  }
}

/* Search/results cards: ownership of containment only, not visual redesign */
.search-results,
.product-results,
.supplier-results,
.category-results{
  min-width:0;
}
.search-results img,
.product-results img,
.supplier-results img{
  max-width:100%;
}

/* Shared no-overlap guard for cards/buttons on narrow phones */
@media(max-width:480px){
  .site-header .header-actions,
  .site-header .mobile-header-actions{
    gap:4px;
  }

  .market-floating-actions a small,
  .market-floating-actions button small,
  .tf-mobile-tools-popover small{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}
