@charset "UTF-8";

/// Generates variables for all text-based inputs. Please note that you must use
/// interpolation on the variable: `#{$all-text-inputs}`.
///
/// @type list
///
/// @example scss
///   #{$all-text-inputs} {
///     border: 1px solid #f00;
///   }
///
/// @example css
///   [type='color'],
///   [type='date'],
///   [type='datetime'],
///   [type='datetime-local'],
///   [type='email'],
///   [type='month'],
///   [type='number'],
///   [type='password'],
///   [type='search'],
///   [type='tel'],
///   [type='text'],
///   [type='time'],
///   [type='url'],
///   [type='week'],
///   input:not([type]),
///   textarea {
///     border: 1px solid #f00;
///   }
///
/// @example scss
///   #{$all-text-inputs-focus},
///   #{$all-text-inputs-hover} {
///     border: 1px solid #0f0;
///   }
///
/// @example css
///   [type='color']:focus,
///   [type='date']:focus,
///   [type='datetime']:focus,
///   [type='datetime-local']:focus,
///   [type='email']:focus,
///   [type='month']:focus,
///   [type='number']:focus,
///   [type='password']:focus,
///   [type='search']:focus,
///   [type='tel']:focus,
///   [type='text']:focus,
///   [type='time']:focus,
///   [type='url']:focus,
///   [type='week']:focus,
///   input:not([type]):focus,
///   textarea:focus,
///   [type='color']:hover,
///   [type='date']:hover,
///   [type='datetime']:hover,
///   [type='datetime-local']:hover,
///   [type='email']:hover,
///   [type='month']:hover,
///   [type='number']:hover,
///   [type='password']:hover,
///   [type='search']:hover,
///   [type='tel']:hover,
///   [type='text']:hover,
///   [type='time']:hover,
///   [type='url']:hover,
///   [type='week']:hover,
///   input:not([type]):hover,
///   textarea:hover {
///     border: 1px solid #0f0;
///   }
///
/// @example scss
///   #{$all-text-inputs-active} {
///     border: 1px solid #00f;
///   }
///
/// @example css
///   [type='color']:active,
///   [type='date']:active,
///   [type='datetime']:active,
///   [type='datetime-local']:active,
///   [type='email']:active,
///   [type='month']:active,
///   [type='number']:active,
///   [type='password']:active,
///   [type='search']:active,
///   [type='tel']:active,
///   [type='text']:active,
///   [type='time']:active,
///   [type='url']:active,
///   [type='week']:active,
///   input:not([type]):active,
///   textarea:active {
///     border: 1px solid #00f;
///   }
///
/// @require {function} _assign-inputs

$text-inputs-list: (
  "[type='color']",
  "[type='date']",
  "[type='datetime']",
  "[type='datetime-local']",
  "[type='email']",
  "[type='month']",
  "[type='number']",
  "[type='password']",
  "[type='search']",
  "[type='tel']",
  "[type='text']",
  "[type='time']",
  "[type='url']",
  "[type='week']",
  "input:not([type])",
  "textarea",
);

$all-text-inputs:         _assign-inputs($text-inputs-list);
$all-text-inputs-active:  _assign-inputs($text-inputs-list, active);
$all-text-inputs-focus:   _assign-inputs($text-inputs-list, focus);
$all-text-inputs-hover:   _assign-inputs($text-inputs-list, hover);
$all-text-inputs-invalid: _assign-inputs($text-inputs-list, invalid);
