
/* .csa-dealer-filters{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-bottom:15px;
}

.csa-dealer-filters input[type="text"],
.csa-dealer-filters select {
	max-width: 100%;
	padding: 6px 14px;
	border: 2px solid var(--form_border_color);
} */

/* ================================
   CSA Dealer Portal – Table Tidy
   ================================ */

/* ================================
   CSA Dealer Portal – Compact Table
   ================================ */

.csa-dealer-table {
  font-size: 12px;
  border-collapse: collapse;
}

/* Header */
.csa-dealer-table th {
  padding: 4px 6px;
  font-weight: 600;
  white-space: nowrap;
  vertical-align: middle;
}

/* Body cells */
.csa-dealer-table td {
  padding: 4px 6px !important;
  line-height: 1.15;
  vertical-align: middle;
}

/* Alternate rows – subtle like reference */
.csa-dealer-table tbody tr:nth-child(even) {
  background: #f1f1f1;
}

/* Part number: compact, readable */
.csa-dealer-table td:first-child {
  white-space: nowrap;
  /* font-family: monospace; */
  font-size: 11.5px;
}

/* Numeric columns tighter */
.csa-dealer-table td:nth-child(9),   /* Price */
.csa-dealer-table td:nth-child(10) { /* Stock */
  text-align: center;
  white-space: nowrap;
}

/* Finish column can wrap slightly */
.csa-dealer-table td:nth-child(8) {
  max-width: 220px;
}

/* Keep Order column narrow */
.csa-dealer-table th:last-child,
.csa-dealer-table td:last-child {
  width: 70px;
  text-align: center;
}

.csa-dealer-table-wrap {
  width: 100%;
  overflow-x: auto;
}

/* Pete's styles */
#wrapper .csa-staff-tier-switch {
	font-size: 15px;
}

#wrapper .csa-staff-tier-switch label {
	min-width: 180px;
	width: 100%;
	grid-column: -5 / -3;
	padding-bottom: 0.75em;
	padding-left: 8px;
}

#wrapper .csa-staff-tier-switch select {
	min-width: 180px;
	width: 100%;
	grid-column: -3 / -1;
}

#wrapper .csa-dealer-filters,
#wrapper .csa-staff-tier-switch {
	display: grid;
	grid-template-columns: repeat(14, 1fr);
	align-items: flex-end;
	gap: 10px;
}

#wrapper .csa-dealer-filters input[type="text"],
#wrapper .csa-dealer-filters select,
#wrapper .csa-dealer-filters .csa-filter-field { /* Add third selector shown here */
	min-width: 180px;
	width: 100%;
	grid-column: span 2;
}
/* …and add this to close up some uneven gaps */
#wrapper .csa-dealer-filters .csa-filter-field > span.select2 {
	min-width: 100%;
}


#wrapper .csa-staff-tier-switch {
	font-size: 15px;
}

#wrapper .csa-staff-tier-switch label {
	min-width: 180px;
	width: 100%;
	grid-column: -5 / -3;
	padding-bottom: 0.75em;
	padding-left: 8px;
}

#wrapper .csa-staff-tier-switch select {
	min-width: 180px;
	width: 100%;
	grid-column: -3 / -1;
}

#wrapper .csa-dealer-filters button {
	grid-column: -3/-1;
	grid-row: 1;
	order: 999;
	font-size: 14px;
	background-color: transparent;
	border: 1px solid;
	border-radius: 6px;
	cursor: pointer;
	transition: all ease 0.2s;
	min-height: 2.2em;
	align-self: stretch;
}

#wrapper .csa-dealer-filters button:hover {
	color: var(--awb-color1);
	background-color: var(--awb-custom_color_3);
	border-color: var(--awb-custom_color_3);
}

#wrapper .csa-dealer-filters a {
	grid-column: -3/-1;
	grid-row: 2;
	text-align: center;
	color: var(--awb-custom_color_3);
	font-size: 14px;
	background-color: transparent;
	border: 1px solid transparent;
	border-radius: 6px;
	cursor: pointer;
 	line-height: 2.1em;
 	min-height: 2.2em;
 	transition: all ease 0.2s;
 	align-self: stretch;
	display: flex; 
	align-items: center;
	justify-content: center;
}

#wrapper .csa-dealer-filters a:hover {
	color: var(--awb-custom_color_2);
	border-color: var(--awb-custom_color_2);
}

#wrapper .csa-dealer-table th {
	text-align: center !important;
}

#wrapper .csa-dealer-table th:nth-child(3),
#wrapper .csa-dealer-table td:nth-child(3),
#wrapper .csa-dealer-table th.style,
#wrapper .csa-dealer-table td.style {
	min-width: 12em;
}

#wrapper .csa-dealer-table th:nth-child(7),
#wrapper .csa-dealer-table td:nth-child(7),
#wrapper .csa-dealer-table th.bore,
#wrapper .csa-dealer-table td.bore {
	max-width: 7em;
	white-space: normal;
}

#wrapper .csa-dealer-table th.price {
	text-align: center !important;
}

#wrapper .csa-dealer-table td:first-child {
	text-align: left;
}

#wrapper .csa-dealer-table tr:hover td:first-child {
	background-color: var(--awb-custom_color_2) !important;
	color: var(--awb-color1);
	border-left-color: var(--awb-custom_color_2);
}

#wrapper .csa-dealer-table .csa-add-to-form {
	font-size: 0.92em;
	padding: 0.25em 0.75em !important;
	line-height: 1.1;
	border-radius: 3px;
	background-color: transparent;
	color: var(--awb-custom_color_3); /* Black NEW */
	border: 1px solid;
	font-weight: var(--button_typography-font-weight);
}

#wrapper .csa-dealer-table tr:hover .csa-add-to-form {
	background-color: var(--awb-custom_color_3);
	color: var(--awb-color1);
	border-color: var(--awb-custom_color_3);
}

#wrapper .csa-dealer-table tr:hover .csa-add-to-form:hover {
	color: var(--awb-color1);
	background-color: var(--awb-custom_color_2); /* CSA Red */
	border-color: var(--awb-custom_color_2);
	cursor: pointer;
}

#wrapper .csa-dealer-table tr:has(.csa-add-to-form:hover) {
	color: var(--awb-custom_color_2);
}

#wrapper .csa-dealer-table tr:hover td {
	border-color: rgb(from var(--awb-custom_color_2) r g b / 15%);
	border-bottom-color: var(--awb-custom_color_2);
	background-color: transparent !important;
}
#wrapper .csa-dealer-table tr:hover {
	background-color: rgb(from var(--awb-custom_color_2) r g b / 5%) !important;
}

#wrapper .fusion-form-field.fusion-form-submit-field {
	width: auto; /* Allow buttons to be flex > row positioned */
}

#wrapper .fusion-form-field:not(.fusion-form-radio-field) label,
#wrapper .fusion-form-field span.label {
	font-weight: 400;
}

#wrapper .fusion-form-form-wrapper .fusion-form-field.error .fusion-form-input {
	box-shadow: none;
	border-bottom-width: 3px;
}

.stock b {
  font-weight: 500;
}

.nostock {
  color: #bbb;
}

td.stock {
  /* display: grid; */
  /* border-left: 0 none !important;
  border-right: 0 none !important; */
  /* border-bottom: 0 none !important; */
  /* grid-template-columns: repeat(5, 1fr); */
  text-align: center !important;
  padding: 7px 0 !important;
  /* transform: translateY(-0.5px); */
}

.stock span {
  padding: 0 7px;
}
/* .csa-dealer-table th.stock,
.csa-dealer-table td.stock {
    text-align: center;
} */
 #wrapper .csa-dealer-table tr:hover td.stock {
  border-bottom: 1px solid var(--awb-custom_color_2) !important;
}
/* State view: centered single number */
.csa-dealer-table td.stock { text-align: center; }

/* National view: don't center the whole cell */
.csa-dealer-table td.stock.is-national { text-align: left; }

/* Grid layout inside cell */
.csa-dealer-table td.stock.is-national .csa-stock-grid{
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
  align-items: center;
  width: 100%;
}

/* Keep each chunk on one line */
.csa-dealer-table td.stock.is-national .csa-stock-state{
  white-space: nowrap;
}

/* Optional: bold state only */
.csa-stock-label{ font-weight:700; }
.csa-stock-value{ font-weight:400; }

/* Grey out 0 stock */
.csa-stock-state.nostock{ opacity:.35; }
/* National grid: spacing is handled by gap, not span padding */
.csa-dealer-table td.stock.is-national .csa-stock-grid .csa-stock-state {
  padding: 0 !important;
  margin: 0 !important;
}
.csa-stock-label { font-weight:500; }
.csa-stock-value { font-weight:300; }

@media screen and (max-width: 1340px) {
	#wrapper .csa-dealer-filters,
	#wrapper .csa-staff-tier-switch {
		grid-template-columns: repeat(12, 1fr);
	}
}

@media screen and (max-width: 1190px) {
	#wrapper .csa-dealer-filters,
	#wrapper .csa-staff-tier-switch {
		grid-template-columns: repeat(8, 1fr);
	}
}

@media screen and (max-width: 820px) {
	#wrapper .csa-dealer-filters,
	#wrapper .csa-staff-tier-switch {
		grid-template-columns: repeat(6, 1fr);
	}
	
	#wrapper .csa-dealer-filters button {
	  grid-column: -7/-3;
	  grid-row: 3;
	}
	
	#wrapper .csa-dealer-filters a {
	  grid-column: -3/-1;
	  grid-row: 3;
	}
}

@media screen and (max-width: 620px) {
	#wrapper .csa-dealer-filters,
	#wrapper .csa-staff-tier-switch {
		grid-template-columns: repeat(4, 1fr);
	}
	
	#wrapper .csa-dealer-filters button {
	  grid-column: -5/-3;
	  grid-row: 4;
	}
	
	#wrapper .csa-dealer-filters a {
	  grid-column: -3/-1;
	  grid-row: 4;
	}
}

@media screen and (max-width: 430px) {
	#wrapper .csa-dealer-filters,
	#wrapper .csa-staff-tier-switch {
		grid-template-columns: repeat(2, 1fr);
	}

#wrapper .csa-staff-tier-switch label {
		grid-column: span 2;
		padding-bottom: 0;
		padding-left: 5px;
		padding-top: 1em;
	}
	
	#wrapper .csa-staff-tier-switch select {
		grid-column: span 2;
	}
}

/* ================================
   Dealer Portal Filter Controls
   ================================ */

/* Keep stock portal filter controls aligned when Select2 fields wrap */
#wrapper .csa-dealer-filters {
    align-items: end !important;
}

/* Standardise normal search/select fields */
#wrapper .csa-dealer-filters input[type="text"],
#wrapper .csa-dealer-filters select {
    height: 42px !important;
    min-height: 42px !important;
    border: 1px solid #cccccc !important;
    border-radius: 0 !important;
    padding: 5px 32px 5px 10px !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    color: #222222 !important;
    background-color: #ffffff !important;
    text-align: left !important;
    box-sizing: border-box !important;
}

/* Keep Select2 full-width inside the filter grid */
#wrapper .csa-dealer-filters .select2-container {
    width: 100% !important;
    min-width: 100% !important;
}

/* Select2 main field - make it look like native browser fields */
#wrapper .csa-dealer-filters .select2-container--default .select2-selection--multiple {
    position: relative !important;
    width: 100% !important;
    min-height: 42px !important;
    height: auto !important;
    border: 1px solid #cccccc !important;
    border-radius: 0 !important;
    background-color: #ffffff !important;
  	padding: 5px 32px 5px 10px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    color: #222222 !important;
}

/* Add native-like chevron arrow to Select2 multi fields */
#wrapper .csa-dealer-filters .select2-container--default .select2-selection--multiple::after {
    content: "" !important;
    position: absolute !important;
    right: 13px !important;
    top: 50% !important;
    width: 7px !important;
    height: 7px !important;
    border: solid #222222 !important;
    border-width: 0 1px 1px 0 !important;
    transform: translateY(-65%) rotate(45deg) !important;
    pointer-events: none !important;
}
/* Selected items / placeholder wrapper */
#wrapper .csa-dealer-filters .select2-container--default .select2-selection--multiple .select2-selection__rendered {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 30px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    align-content: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left !important;
    list-style: none !important;
} 

/* Custom left-aligned placeholder for empty Select2 multi fields */
#wrapper .csa-dealer-filters .select2-container.csa-select2-empty .select2-selection__rendered {
    position: relative !important;
}

#wrapper .csa-dealer-filters .select2-container.csa-select2-empty .select2-selection__rendered::before {
    content: attr(data-placeholder);
    position: absolute;
    left: 0;
    top: 50%;
    z-index: 2;
    transform: translateY(-50%);
    color: #222222;
    font-family: inherit;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;
    pointer-events: none;
}

/* Hide Select2's own generated textarea placeholder when empty */
#wrapper .csa-dealer-filters .select2-container.csa-select2-empty .select2-search__field::placeholder {
    color: transparent !important;
}

#wrapper .csa-dealer-filters
.select2-container--default
.select2-selection--multiple
.select2-selection__choice {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;

    width: max-content !important;
    min-width: max-content !important;
    max-width: none !important;

    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;

    margin: 0 !important;
    padding: 1px 5px !important;

    background-color: #eeeeee !important;
    border: 1px solid #bbbbbb !important;
    border-radius: 3px !important;
    box-sizing: border-box !important;

    color: #222222 !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 18px !important;

    white-space: nowrap !important;
    overflow: visible !important;
}

/* Text inside selected pills */
#wrapper .csa-dealer-filters .select2-container--default .select2-selection--multiple .select2-selection__choice__display {
    display: inline-block !important;
    flex: 0 0 auto !important;
    width: max-content !important;
    min-width: max-content !important;
    max-width: none !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

/* Small x inside each pill */
#wrapper .csa-dealer-filters .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    height: 18px !important;
    min-height: 18px !important;

    margin: 0 3px 0 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;
    color: #777777 !important;

    font-size: 12px !important;
    line-height: 18px !important;
}

/* Clear-all x on the right */
#wrapper .csa-dealer-filters .select2-container--default .select2-selection--multiple .select2-selection__clear {
    position: absolute !important;
    right: 24px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    border: 0 !important;
    background: transparent !important;
    color: #222222 !important;
    font-size: 16px !important;
    line-height: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    z-index: 2 !important;
}

/* Search input wrapper when selected values exist */
#wrapper .csa-dealer-filters
.select2-container--default
.select2-search--inline {
    display: block !important;
    float: none !important;
    flex: 0 0 8px !important;
    width: 8px !important;
    min-width: 8px !important;
    max-width: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Empty field: give the custom placeholder the full field width */
#wrapper .csa-dealer-filters
.select2-container.csa-select2-empty
.select2-search--inline {
    flex: 1 1 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

/* Search field when selected values exist */
#wrapper .csa-dealer-filters
.select2-container--default
.select2-search--inline
.select2-search__field {
    display: block !important;
    width: 8px !important;
    min-width: 8px !important;
    max-width: 8px !important;
    height: 30px !important;
    min-height: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    font-family: inherit !important;
    font-size: 14px !important;
    line-height: 30px !important;
    color: #222222 !important;
    text-align: left !important;
}

/* Empty field: allow the left-aligned custom placeholder full width */
#wrapper .csa-dealer-filters
.select2-container.csa-select2-empty
.select2-search__field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

#wrapper .csa-dealer-filters .select2-search__field::placeholder {
    color: #222222 !important;
    opacity: 1 !important;
    font-size: 14px !important;
    text-align: left !important;
}

/* Dropdown shell */
body .select2-container--open .select2-dropdown,
body .select2-container--default .select2-dropdown {
    background-color: #ffffff !important;
    border: 1px solid #aaaaaa !important;
    color: #222222 !important;
    opacity: 1 !important;
    z-index: 999999 !important;
}

/* Dropdown option list */
body .select2-container--default .select2-results,
body .select2-container--default .select2-results__options {
    background-color: #ffffff !important;
    color: #222222 !important;
    opacity: 1 !important;
}

/* Individual dropdown options */
body .select2-container--default .select2-results__option {
    background-color: #ffffff !important;
    color: #222222 !important;
    padding: 6px 10px !important;
}

/* Hover / keyboard highlight */
body .select2-container--default .select2-results__option--highlighted[aria-selected],
body .select2-container--default .select2-results__option--highlighted {
    background-color: #e5e5e5 !important;
    color: #111111 !important;
}

/* Selected options inside dropdown */
body .select2-container--default .select2-results__option[aria-selected="true"] {
    background-color: #dcdcdc !important;
    color: #111111 !important;
}

/* Make Select2 dropdown lists taller */
body .select2-container--default .select2-results > .select2-results__options {
    max-height: 420px !important;
    overflow-y: auto !important;
}

/* Keep Check Stock fixed size and aligned with the normal input row */
#wrapper .csa-dealer-filters button {
    grid-column: -3 / -1;
    grid-row: 1;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    align-self: end !important;
    justify-self: stretch !important;
    padding: 0 18px !important;
    line-height: 1.1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Keep Reset directly below the button */
#wrapper .csa-dealer-filters a {
    grid-column: -3 / -1;
    grid-row: 2;
    align-self: start !important;
    justify-self: stretch !important;
    min-height: 24px !important;
    line-height: 24px !important;
}
