input:not([type="hidden"]):not([type="checkbox"]),
select {
  width: 100%;
  min-width: 200px;
  height: 42px;
  padding: 9px 11px;
  border: 1px solid #d1d5db;
  border-radius: 7px;
  background-color: #fff;
  color: var(--ink);
  font: inherit;
}

select {
  appearance: none;
  -webkit-appearance: none;
  padding: 0 38px 0 11px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 20 20'%3E%3Cpath d='m6 8 4 4 4-4' fill='none' stroke='%23667085' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px 16px;
}

button:not(.link-button) {
  display: inline-flex;
  min-width: 80px;
  height: 42px;
  padding: 8px 12px;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  white-space: nowrap;
}

button.danger {
  border-color: #fecaca;
  color: var(--bad);
}

button.danger:hover {
  border-color: #fca5a5;
  background: #fff0ee;
}

.filter-reset {
  display: inline-flex;
  min-width: 80px;
  height: 42px;
  padding: 8px 12px;
  align-items: center;
  justify-content: center;
  border: 1px solid #d1d5db;
  border-radius: 7px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  font-weight: 600;
  white-space: nowrap;
}

.filter-reset:hover {
  border-color: #aeb8c7;
  background: #f8fafc;
}

.filter-reset:focus-visible {
  border-color: var(--brand);
  outline: 3px solid rgba(24, 90, 219, .16);
  outline-offset: 1px;
}

input:not([type="hidden"]):not([type="checkbox"]):focus,
select:focus,
button:focus-visible {
  border-color: var(--brand);
  outline: 3px solid rgba(24, 90, 219, .16);
  outline-offset: 1px;
}

.filters input {
  width: min(300px, 100%);
  max-width: 300px;
}

.filters select {
  width: auto;
  min-width: 170px;
}

.inline-form > label {
  min-width: 200px;
}

.inline-form > button {
  align-self: end;
}

.login-card input,
.stack input {
  min-width: 0;
}

@media (max-width: 720px) {
  input:not([type="hidden"]):not([type="checkbox"]),
  select {
    min-width: 0;
  }

  .filters,
  .inline-form {
    width: 100%;
    gap: 12px;
  }

  .filters input,
  .filters select,
  .filters button,
  .filters .filter-reset,
  .inline-form > label,
  .inline-form > button,
  .stack > button {
    width: 100%;
    max-width: none;
    min-width: 0;
  }

  .token-box {
    align-items: stretch;
    flex-direction: column;
  }

  .token-box button {
    width: 100%;
  }
}
