/* Shared toolbar search field; product source is the Invoicing filter pill. */
.nv-search-field {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 220px;
  min-width: 180px;
  max-width: 240px;
  height: 36px;
  padding: 0 14px;
  border: 0;
  border-radius: 14px;
  background: var(--nv-search-surface, var(--inv-filter-surface, var(--color-control-glass, var(--color-well))));
  box-shadow: none;
  -webkit-backdrop-filter: var(--control-glass-blur, blur(8px));
  backdrop-filter: var(--control-glass-blur, blur(8px));
}

.nv-search-field--wide { width: 100%; min-width: 0; max-width: none; flex: 1 1 auto; }

.nv-search-field:focus-within,
.nv-search-field.is-focused { outline: 2px solid var(--nv-table-focus, var(--dash-focus-ring, var(--dash-accent))); outline-offset: 2px; }

.nv-search-field.is-loading { opacity: .7; }

.nv-search-field > svg,
.nv-search-field > .nv-input-wrap__icon { width: 14px; height: 14px; flex: none; color: var(--dash-text-subtle); }
.nv-search-field > .nv-input-wrap__icon svg { width: 14px; height: 14px; }

.nv-search-field__input,
.nv-search-field > input,
.nv-search-field > .nv-input {
  min-width: 0;
  flex: 1;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--dash-text);
  font: inherit;
  font-size: var(--nv-type-callout-size);
  letter-spacing: var(--nv-type-callout-tracking);
}

.nv-search-field__input::placeholder,
.nv-search-field > input::placeholder,
.nv-search-field > .nv-input::placeholder { color: var(--dash-text-subtle); }

.nv-search-field .nv-search-field__input:focus,
.nv-search-field .nv-search-field__input:focus-visible { border-color: transparent; outline: 0; box-shadow: none; }

.nv-search-field__input::-webkit-search-cancel-button,
.nv-search-field > input::-webkit-search-cancel-button,
.nv-search-field > .nv-input::-webkit-search-cancel-button { display: none; }

.nv-search-field__clear {
  display: grid;
  width: 28px;
  height: 28px;
  flex: none;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--dash-text-muted);
  cursor: pointer;
}

.nv-search-field__clear[hidden] { display: none; }
.nv-search-field__clear:is(:hover, :focus-visible) { background: var(--color-well-hover); color: var(--dash-text); }
.nv-search-field__clear:focus-visible { outline: 2px solid var(--nv-table-focus, var(--dash-focus-ring, var(--dash-accent))); outline-offset: 1px; }
.nv-search-field__clear svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; }

@media (max-width: 42rem) {
  .nv-search-field { width: 100%; max-width: none; }
}

/* Nucleus country picker receives the same component classes at runtime. */
:is(#nucleus-dashboard-container, #nucleus-sidebar-taxes-drawer-panel) .nucleus-taxes-country-dd-search-wrap.nv-search-field {
  width: auto;
  min-width: 0;
  max-width: none;
  height: 36px;
  margin: 8px;
  padding: 0 14px;
  border: 0;
  border-radius: 14px;
  background: var(--color-control-glass, var(--color-well));
}

:is(#nucleus-dashboard-container, #nucleus-sidebar-taxes-drawer-panel) .nucleus-taxes-country-search-input.nv-search-field__input {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  outline: 0;
  background: transparent;
  color: var(--dash-text, var(--color-input-text));
  font-size: var(--nv-type-callout-size);
  letter-spacing: var(--nv-type-callout-tracking);
}
