/* Shared category/filter cards. Scoped to the two modules; no accordion visibility resets. */
@layer sg-sidebar-catalog {
  :is(.ps-categorytree,#search-filters).sg-sidebar-card {
    display:block !important; box-sizing:border-box !important; min-width:0 !important; padding:0 !important;
    margin:0 0 16px !important; border:1px solid #dce4ee !important;
    border-radius:14px !important; background:#fff !important;
    color:#071b36 !important; box-shadow:0 8px 26px rgba(7,27,54,.045) !important;
    overflow:visible !important;
  }
  :is(.ps-categorytree,#search-filters).sg-sidebar-card > .left-block__title {
    display:flex !important; align-items:center !important; justify-content:flex-start !important;
    min-height:56px !important; gap:9px !important; padding:12px !important; margin:0 !important;
    border-bottom:1px solid #e2e8f0 !important; border-left:3px solid #f4d36a !important;
    border-radius:13px 13px 0 0 !important; background:#f5f7fb !important;
    color:#071b36 !important; font-size:19px !important; line-height:1.35 !important;
    font-weight:600 !important; text-transform:none !important;
  }
  :is(.ps-categorytree,#search-filters).sg-sidebar-card > .left-block__title::after { content:none !important; display:none !important; }
  .sg-sidebar-card .left-block__title-link { display:flex !important; align-items:center !important; gap:11px !important; min-width:0 !important; color:inherit !important; font:inherit !important; }
  .sg-sidebar-card .sg-sidebar-icon {
    display:inline-flex !important; align-items:center !important; justify-content:center !important;
    width:30px !important; height:30px !important; flex:0 0 30px !important;
    padding:4px !important; border:1px solid #e5eaf0 !important; border-radius:8px !important;
    background:#fff !important; color:#071b36 !important; box-sizing:border-box !important;
  }
  .sg-sidebar-card .sg-sidebar-icon svg { display:block !important; width:20px !important; height:20px !important; max-width:20px !important; max-height:20px !important; fill:none !important; stroke:currentColor !important; stroke-width:1.5 !important; stroke-linecap:round !important; stroke-linejoin:round !important; }
  .sg-sidebar-card .sg-sidebar-icon svg :is(path,rect) { fill:none !important; stroke:currentColor !important; stroke-width:1.5 !important; }
  .sg-sidebar-card > .accordion { padding:8px !important; }
  .sg-sidebar-card.ps-categorytree :is(.accordion-item,.category-tree__item) { border:0 !important; background:transparent !important; padding:0 !important; margin:0 !important; }
  .sg-sidebar-card.ps-categorytree .category-tree__list { padding:0 !important; margin:0 !important; gap:0 !important; list-style:none !important; }
  .sg-sidebar-card.ps-categorytree .category-tree__item-header { display:flex !important; align-items:center !important; gap:3px !important; margin:0 !important; padding:0 !important; }
  .sg-sidebar-card.ps-categorytree .category-tree__item-link {
    display:flex !important; align-items:center !important; flex:1 1 0% !important; gap:9px !important;
    min-width:0 !important; min-height:34px !important; padding:3px 6px !important;
    color:#071b36 !important; font-size:14px !important; line-height:1.45 !important;
    font-weight:400 !important; text-decoration:none !important; border-radius:9px !important;
  }
  .sg-sidebar-card.ps-categorytree .sg-sidebar-category-name { min-width:0; overflow-wrap:anywhere; }
  .sg-sidebar-card.ps-categorytree .category-tree__list[data-depth='0'] > .category-tree__item > .category-tree__item-header > a { font-weight:600 !important; }
  .sg-sidebar-card.ps-categorytree .category-tree__item-link > .sg-sidebar-icon { width:26px !important; height:26px !important; flex-basis:26px !important; padding:2px !important; }
  .sg-sidebar-card.ps-categorytree .accordion-body { margin:0 0 2px 15px !important; padding:0 0 0 7px !important; border-left:1px solid #e2e8f0 !important; }
  .sg-sidebar-card.ps-categorytree .category-tree__list:not([data-depth='0']) .category-tree__item-link { min-height:30px !important; padding-block:2px !important; }
  .sg-sidebar-card.ps-categorytree .category-tree__list:not([data-depth='0']) .sg-sidebar-icon { border:0 !important; background:transparent !important; width:22px !important; height:22px !important; flex-basis:22px !important; padding:1px !important; }
  .sg-sidebar-card.ps-categorytree .category-tree__item-link[aria-current='page'] { background:#fff9e5 !important; box-shadow:inset 3px 0 #f4d36a !important; font-weight:600 !important; }
  .sg-sidebar-card.ps-categorytree .category-tree__item-link:is(:hover,:focus-visible) { color:#f4d36a !important; background:#071b36 !important; }
  .sg-sidebar-card.ps-categorytree .category-tree__item-link:is(:hover,:focus-visible) .sg-sidebar-icon { color:#f4d36a !important; background:transparent !important; border-color:rgba(244,211,106,.3) !important; }
  .sg-sidebar-card.ps-categorytree .accordion-button { flex:0 0 32px !important; width:32px !important; height:30px !important; min-height:30px !important; padding:8px !important; margin:0 !important; background:transparent !important; box-shadow:none !important; border-radius:8px !important; color:#071b36 !important; }
  .sg-sidebar-card.ps-categorytree .accordion-button::after { margin:0 !important; width:14px !important; height:14px !important; background-size:14px !important; }
  #search-filters.sg-sidebar-card .accordion-item { border:0 !important; border-bottom:1px solid #e8edf3 !important; background:transparent !important; }
  #search-filters.sg-sidebar-card .accordion-item:last-child { border-bottom:0 !important; }
  #search-filters.sg-sidebar-card .accordion-button { padding:10px 8px !important; color:#071b36 !important; font-size:14px !important; line-height:1.4 !important; font-weight:600 !important; background:transparent !important; box-shadow:none !important; }
  #search-filters.sg-sidebar-card .accordion-body { padding:2px 8px 10px !important; margin:0 !important; }
  #search-filters.sg-sidebar-card .search-filters__link { font-size:14px !important; line-height:1.5 !important; color:#071b36 !important; overflow-wrap:anywhere; }
  #search-filters.sg-sidebar-card .search-filters__link:is(:hover,:focus-visible) { color:#f4d36a !important; background:#071b36 !important; border-radius:3px; }
  #search-filters.sg-sidebar-card .search-filters__clear { position:static !important; padding:12px 16px 0 !important; margin:0 !important; width:auto !important; }
  #search-filters.sg-sidebar-card .js-search-filters-clear-all { color:#071b36 !important; background:#fff9e5 !important; border:1px solid #f4d36a !important; border-radius:8px !important; font-size:12px !important; min-height:36px !important; }
  #search-filters.sg-sidebar-card .form-check-input:checked { background-color:#071b36 !important; border-color:#071b36 !important; }
  .sg-sidebar-card :is(a,button,input):focus-visible { outline:2px solid #f4d36a !important; outline-offset:2px !important; }
  #offcanvas-faceted #search-filters.sg-sidebar-card { box-shadow:none !important; }
  /* Extend only the sidebar cards into measured free space, keeping their right edge fixed. */
  @media (min-width:768px) {
    #left-column > :is(.ps-categorytree.sg-sidebar-card,#search_filters_wrapper,#search-filters.sg-sidebar-card) {
      box-sizing:border-box !important;
      width:calc(100% + var(--sg-sidebar-expand-left,0px)) !important;
      max-width:none !important; margin-left:calc(-1 * var(--sg-sidebar-expand-left,0px)) !important;
    }
  }
  /* Compact spacing must not reduce finger targets in the mobile accordion. */
  @media (max-width:767.98px), (pointer:coarse) {
    .sg-sidebar-card.ps-categorytree .category-tree__item-link,
    .sg-sidebar-card.ps-categorytree .category-tree__list:not([data-depth='0']) .category-tree__item-link { min-height:44px !important; }
    .sg-sidebar-card.ps-categorytree .accordion-button { width:44px !important; flex-basis:44px !important; height:44px !important; min-height:44px !important; }
  }
}
