/* Unified catalogue controls. Scope: homepage catalogue only. */
@layer voxern-catalog-controls {
  #home-catalog-root {
    --catalog-control-width: 144px;
    --catalog-control-height: 48px;
    --catalog-blue: #3555c9;
    --catalog-purple: #5945bd;
    --catalog-action: linear-gradient(115deg, #3555c9, #5945bd);
  }
  #home-catalog-root .catalog-heading-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px 24px;
    flex-wrap: wrap;
    margin: 0 0 24px !important;
  }
  #home-catalog-root .catalog-heading-bar .home-catalog-title {
    margin: 0 !important;
  }
  #home-catalog-root .catalog-downloads {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    min-width: 0;
  }
  #home-catalog-root :is(button, a.btn) {
    box-sizing: border-box !important;
    width: var(--catalog-control-width) !important;
    min-width: var(--catalog-control-width) !important;
    max-width: var(--catalog-control-width) !important;
    flex: 0 0 var(--catalog-control-width) !important;
    min-height: var(--catalog-control-height) !important;
    height: var(--catalog-control-height) !important;
    padding: 7px 10px !important;
    border: 1px solid var(--catalog-purple) !important;
    border-radius: 9px !important;
    font: 650 12px/1.3 Raleway, Arial, sans-serif !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    text-transform: none !important;
    text-decoration: none !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    box-shadow: none !important;
    cursor: pointer;
  }
  #home-catalog-root :is(.catalog-order, .catalog-show-all, a.btn) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    background: var(--catalog-action) !important;
    border-color: var(--catalog-purple) !important;
  }
  #home-catalog-root :is(.catalog-filter, .catalog-description-toggle) {
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    color: var(--catalog-purple) !important;
    background: #f7f6fd !important;
    border-color: #aaa0d7 !important;
  }
  #home-catalog-root .catalog-filter {
    display: inline-flex !important;
  }
  #home-catalog-root .catalog-filter:is(.active, [aria-pressed="true"]) {
    color: #fff !important;
    background: var(--catalog-purple) !important;
    border-color: var(--catalog-purple) !important;
  }
  #home-catalog-root :is(.catalog-order, .catalog-show-all, a.btn):is(:hover, :focus-visible) {
    color: #fff !important;
    background: #47379e !important;
    border-color: #47379e !important;
  }
  #home-catalog-root :is(.catalog-filter, .catalog-description-toggle):is(:hover, :focus-visible) {
    border-color: var(--catalog-purple) !important;
    box-shadow: inset 0 0 0 1px var(--catalog-purple) !important;
  }
  #home-catalog-root :is(button, a.btn):focus-visible {
    outline: 3px solid #8c7adb !important;
    outline-offset: 3px !important;
  }
  #home-catalog-root .catalog-description-toggle span {
    color: inherit !important;
    font: inherit !important;
  }
  #home-catalog-root .catalog-description-toggle [data-catalog-toggle-icon] {
    flex: 0 0 16px;
    min-width: 16px;
  }
  #home-catalog-root .catalog-filters {
    gap: 8px !important;
  }
  #home-catalog-root :is(.catalog-table, .domain-price-frame table) thead th:last-child {
    width: 176px !important;
  }
  #home-catalog-root [hidden] {
    display: none !important;
  }
  @media (max-width: 760px) {
    #home-catalog-root {
      --catalog-control-width: 96px;
    }
    #home-catalog-root .catalog-heading-bar {
      align-items: flex-start;
      flex-direction: column;
      gap: 16px;
      margin-bottom: 22px !important;
    }
    #home-catalog-root :is(button, a.btn) {
      padding: 6px !important;
      font-size: 11px !important;
      line-height: 1.3 !important;
    }
    #home-catalog-root .catalog-description-toggle {
      display: inline-flex !important;
      font-size: 11px !important;
    }
    #home-catalog-root #jedinstveni-cjenik.catalog-refined .catalog-scroll .catalog-table :is(thead, tbody) > tr {
      grid-template-columns: minmax(0, 1fr) 80px 96px !important;
      width: 100% !important;
      min-width: 0 !important;
      box-sizing: border-box !important;
    }
    #home-catalog-root #jedinstveni-cjenik.catalog-refined .catalog-scroll .catalog-table tr > :last-child {
      padding-inline: 0 !important;
      min-width: 0 !important;
      width: auto !important;
    }
    #home-catalog-root #jedinstveni-cjenik.catalog-refined :is(.catalog-scroll, .catalog-table, .domain-price-frame) {
      min-width: 0 !important;
      max-width: 100% !important;
      width: 100% !important;
    }
    #home-catalog-root #jedinstveni-cjenik.catalog-refined .domain-price-frame :is(thead, tbody) > tr {
      min-width: 0 !important;
      max-width: 100% !important;
    }
    #home-catalog-root #jedinstveni-cjenik.catalog-refined .domain-price-frame tr > :last-child {
      width: auto !important;
    }
    #home-catalog-root [hidden] {
      display: none !important;
    }
  }
}
