{"version":3,"sources":["../src/src/forms/form-control.scss","../src/src/support/variables/typography.scss","../src/src/support/variables/misc.scss","../src/src/support/mixins/layout.scss","../src/src/support/variables/layout.scss","../src/src/forms/form-select.scss","../src/src/support/mixins/color-modes.scss","../src/src/forms/form-group.scss","../src/src/forms/form-validation.scss","../src/src/forms/input-group.scss","../src/src/forms/radio-group.scss"],"names":[],"mappings":"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","file":"forms.css","sourcesContent":["// Needs refactoring\n// stylelint-disable selector-no-qualifying-type, selector-max-compound-selectors\n// stylelint-disable selector-max-type\n// Base form controls\n//\n// Overrides for common inputs for easier styling.\n\nfieldset {\n  padding: 0;\n  margin: 0;\n  border: 0;\n}\n\nlabel {\n  font-weight: $font-weight-bold;\n}\n\n.form-control,\n.form-select {\n  // stylelint-disable-next-line primer/spacing\n  padding: 5px 12px;\n  font-size: $body-font-size;\n  // stylelint-disable-next-line primer/typography\n  line-height: 20px;\n  color: var(--color-text-primary);\n  vertical-align: middle;\n  background-color: var(--color-input-bg);\n  background-repeat: no-repeat; // Repeat and position set for form states (success, error, etc)\n  background-position: right 8px center; // For form validation. This keeps images 8px from right and centered vertically.\n  border: $border-width $border-style var(--color-input-border);\n  border-radius: $border-radius;\n  outline: none;\n  box-shadow: var(--color-shadow-inset);\n\n  &.focus,\n  &:focus {\n    border-color: var(--color-state-focus-border);\n    outline: none;\n    box-shadow: var(--color-state-focus-shadow);\n  }\n\n  &[disabled] {\n    color: var(--color-text-disabled);\n    background-color: var(--color-input-disabled-bg);\n    border-color: var(--color-input-disabled-border);\n  }\n\n  // Ensures inputs don't zoom on mobile iPhone but are body-font size on iPad\n  @supports (-webkit-touch-callout: none) {\n    font-size: $h4-size;\n    @include breakpoint(md) {\n      font-size: $body-font-size;\n    }\n  }\n}\n\n// Textarea\ntextarea.form-control {\n  padding-top: $spacer-2;\n  padding-bottom: $spacer-2;\n  line-height: $lh-default;\n}\n\n// Inputs with contrast for easy light gray backgrounds against white.\n.input-contrast {\n  background-color: var(--color-input-contrast-bg);\n\n  &:focus { background-color: var(--color-input-bg); }\n}\n\n// Custom styling for HTML5 validation bubbles (WebKit only)\n::placeholder {\n  color: var(--color-text-placeholder);\n  opacity: 1; // override opacity in normalize.css\n}\n\n// Mini inputs, to match .minibutton\n.input-sm {\n  min-height: $size-4;\n  // stylelint-disable-next-line primer/spacing\n  padding-top: 3px;\n  // stylelint-disable-next-line primer/spacing\n  padding-bottom: 3px;\n  font-size: $font-size-small;\n  // stylelint-disable-next-line primer/typography\n  line-height: 20px;\n}\n\n// Large inputs\n.input-lg {\n  font-size: $h4-size;\n}\n\n// Full-width inputs\n.input-block {\n  display: block;\n  width: 100%;\n}\n\n// Inputs with monospace text\n.input-monospace {\n  font-family: $mono-font;\n}\n\n// Hide the icon that tries to autofill contact info in webkit\n.input-hide-webkit-autofill {\n  &::-webkit-contacts-auto-fill-button {\n    position: absolute;\n    right: 0;\n    display: none !important;\n    pointer-events: none;\n    visibility: hidden;\n  }\n}\n\n// Checkboxes and Radiobuttons\n//\n// For checkboxes and radio button selections.\n.form-checkbox {\n  // stylelint-disable-next-line primer/spacing\n  padding-left: 20px;\n  // stylelint-disable-next-line primer/spacing\n  margin: 15px 0;\n  vertical-align: middle;\n\n  label {\n    em.highlight {\n      position: relative;\n      left: -$spacer-1;\n      // stylelint-disable-next-line primer/spacing\n      padding: 2px $spacer-1;\n      font-style: normal;\n      // stylelint-disable-next-line primer/colors\n      background: var(--color-attention-subtle, var(--color-auto-yellow-1));\n      border-radius: $border-radius;\n    }\n  }\n\n  input[type=checkbox],\n  input[type=radio] {\n    float: left;\n    // stylelint-disable-next-line primer/spacing\n    margin: 5px 0 0 -20px;\n    vertical-align: middle;\n  }\n\n  .note {\n    display: block;\n    margin: 0;\n    font-size: $font-size-small;\n    font-weight: $font-weight-normal;\n    color: var(--color-text-secondary);\n  }\n}\n\n.form-checkbox-details {\n  display: none;\n}\n\n.form-checkbox-details-trigger {\n  &:checked {\n    // child of sibling or sibling\n    ~ * .form-checkbox-details,\n    ~ .form-checkbox-details { // eslint-disable selector-combinator-space-before\n      display: block;\n    }\n  }\n}\n\n// Field groups\n//\n// Wrap field groups in `<div.hfields>` to lay them out horizontally - great for\n// the top of pages with autosave.\n.hfields {\n  // stylelint-disable-next-line primer/spacing\n  margin: 15px 0;\n  @include clearfix;\n\n  .form-group {\n    float: left;\n    // stylelint-disable-next-line primer/spacing\n    margin: 0 30px 0 0;\n\n    dt, // TODO: Deprecate\n    .form-group-header {\n      label {\n        display: inline-block;\n        // stylelint-disable-next-line primer/spacing\n        margin: 5px 0 0;\n        color: var(--color-text-secondary);\n      }\n\n      img {\n        position: relative;\n        top: -2px;\n      }\n    }\n  }\n\n  .btn {\n    float: left;\n    // stylelint-disable-next-line primer/spacing\n    margin: 28px 25px 0 -20px;\n  }\n\n  // stylelint-disable-next-line primer/spacing\n  .form-select { margin-top: 5px; }\n}\n\n// Hide the up/down buttons in <input type=\"number\"> in the login form, the\n// input is used for two-factor auth codes, type=\"number\" makes it more usable\n// on phones\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n  margin: 0;\n  appearance: none;\n}\n\n// Input groups\n\n.form-actions {\n  @include clearfix;\n\n  .btn {\n    float: right;\n\n    + .btn {\n      // stylelint-disable-next-line primer/spacing\n      margin-right: 5px;\n    }\n  }\n}\n\n.form-warning {\n  padding: $spacer-2 10px;\n  // stylelint-disable-next-line primer/spacing\n  margin: 10px 0;\n  font-size: $h5-size;\n  color: var(--color-text-warning);\n  background: var(--color-bg-warning);\n  border: $border-width $border-style var(--color-border-warning);\n  border-radius: $border-radius;\n\n  p {\n    margin: 0;\n    line-height: $lh-default;\n  }\n\n  a { font-weight: $font-weight-bold; }\n}\n","// Typography variables\n\n// Heading sizes - mobile\n// h4-h6 remain the same size on both mobile & desktop\n$h00-size-mobile: 40px !default;\n$h0-size-mobile: 32px !default;\n$h1-size-mobile: 26px !default;\n$h2-size-mobile: 22px !default;\n$h3-size-mobile: 18px !default;\n\n// Heading sizes - desktop\n$h00-size: 48px !default;\n$h0-size: 40px !default;\n$h1-size: 32px !default;\n$h2-size: 24px !default;\n$h3-size: 20px !default;\n$h4-size: 16px !default;\n$h5-size: 14px !default;\n$h6-size: 12px !default;\n\n$font-size-small: 12px !default;\n\n// Font weights\n$font-weight-bold: 600 !default;\n$font-weight-semibold: 500 !default;\n$font-weight-normal: 400 !default;\n$font-weight-light: 300 !default;\n\n// Line heights\n$lh-condensed-ultra: 1 !default;\n$lh-condensed: 1.25 !default;\n$lh-default: 1.5 !default;\n\n// Font stacks\n// stylelint-disable no-eol-whitespace\n$body-font:\n  // Apple OSs\n  -apple-system,\n  BlinkMacSystemFont,\n  \n  // Windows\n  // Note this should be prioritized over `system-ui` to avoid legacy fonts.\n  // See https://infinnie.github.io/blog/2017/systemui.html\n  \"Segoe UI Variable\",\n  \"Segoe UI\",\n  \n  // Linux-friendly system-level fonts + fallbacks\n  system-ui,\n  ui-sans-serif,\n  Helvetica,\n  Arial,\n  sans-serif,\n  \n  // Emojis\n  \"Apple Color Emoji\",\n  \"Segoe UI Emoji\" !default;\n// stylelint-enable no-eol-whitespace\n\n// Monospace font stack\n// Note: SFMono-Regular needs to come before SF Mono to fix an older version of the font in Chrome\n$mono-font: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace !default;\n\n// The base body size\n$body-font-size: 14px !default;\n$body-line-height: $lh-default !default;\n","// Miscellaneous variables\n\n// Border\n$border-width: 1px !default;\n$border-style: solid !default;\n$border: $border-width $border-style var(--color-border-primary) !default;\n\n// Border Radius\n$border-radius-1:  4px !default;\n$border-radius-2:  6px !default;\n$border-radius-3:  8px !default;\n$border-radius: $border-radius-2 !default;\n\n// Tooltips\n$tooltip-max-width: 250px !default;\n$tooltip-delay: 0.4s !default;\n$tooltip-duration: 0.1s !default;\n","// Responsive media queries\n\n@mixin breakpoint($breakpoint) {\n  @if $breakpoint == \"\" {\n    @content;\n  }\n\n  @else {\n    // Retrieves the value from the key\n    $value: map-get($breakpoints, $breakpoint);\n\n    // If the key exists in the map\n    @if $value != null {\n      // Prints a media query based on the value\n      @media (min-width: $value) {\n        @content;\n      }\n    }\n\n    // If the key doesn't exist in the map\n    @else {\n      @warn \"Unfortunately, no value could be retrieved from `#{$breakpoint}`. \"\n        + \"Please make sure it is defined in `$breakpoints` map.\";\n    }\n  }\n}\n\n// Retina media query\n\n@mixin retina-media-query {\n  @media\n    only screen and (-webkit-min-device-pixel-ratio: 2),\n    only screen and (min--moz-device-pixel-ratio: 2),\n    only screen and (-moz-min-device-pixel-ratio: 2),\n    only screen and (-o-min-device-pixel-ratio: 2/1),\n    only screen and (min-device-pixel-ratio: 2),\n    only screen and (min-resolution: 192dpi),\n    only screen and (min-resolution: 2dppx) {\n    @content;\n  }\n}\n\n// Clearfix\n//\n// Clears floats via mixin.\n\n@mixin clearfix {\n  &::before {\n    display: table;\n    content: \"\";\n  }\n\n  &::after {\n    display: table;\n    clear: both;\n    content: \"\";\n  }\n}\n","// Layout variables\n\n// these are values for the display CSS property\n$display-values: (\n  block,\n  flex,\n  inline,\n  inline-block,\n  inline-flex,\n  none,\n  table,\n  table-cell\n) !default;\n\n// maps edges to respective corners for border-radius\n$edges: (\n  top: (top-left, top-right),\n  right: (top-right, bottom-right),\n  bottom: (bottom-right, bottom-left),\n  left: (bottom-left, top-left)\n) !default;\n\n// These are our margin and padding utility spacers. The default step size we\n// use is 8px. This gives us a key of:\n//    0 => 0px\n//    1 => 4px\n//    2 => 8px\n//    3 => 16px\n//    4 => 24px\n//    5 => 32px\n//    6 => 40px\n$spacer: 8px !default;\n\n// Our spacing scale\n$spacer-0: 0 !default;                  // 0\n$spacer-1: $spacer * 0.5 !default;      // 4px\n$spacer-2: $spacer !default;            // 8px\n$spacer-3: $spacer * 2 !default;        // 16px\n$spacer-4: $spacer * 3 !default;        // 24px\n$spacer-5: $spacer * 4 !default;        // 32px\n$spacer-6: $spacer * 5 !default;        // 40px\n\n// The list of spacer values\n$spacers: (\n  $spacer-0,\n  $spacer-1,\n  $spacer-2,\n  $spacer-3,\n  $spacer-4,\n  $spacer-5,\n  $spacer-6,\n) !default;\n\n// And the map of spacers, for easier looping:\n// @each $scale, $length in $spacer-map { ... }\n$spacer-map: (\n  0: $spacer-0,\n  1: $spacer-1,\n  2: $spacer-2,\n  3: $spacer-3,\n  4: $spacer-4,\n  5: $spacer-5,\n  6: $spacer-6,\n) !default;\n\n// Increases the core spacing scale first by 8px for $spacer-7, then by 16px\n// increments from $spacer-8 to $spacer-12, i.e. after 40px, we have 48, 64,\n// 80, 96, etc.\n$spacer-7:  $spacer * 6 !default;  // 48px\n$spacer-8:  $spacer * 8 !default;  // 64px\n$spacer-9:  $spacer * 10 !default; // 80px\n$spacer-10: $spacer * 12 !default; // 96px\n$spacer-11: $spacer * 14 !default; // 112px\n$spacer-12: $spacer * 16 !default; // 128px\n\n$spacers-large: (\n  7: $spacer-7,\n  8: $spacer-8,\n  9: $spacer-9,\n  10: $spacer-10,\n  11: $spacer-11,\n  12: $spacer-12,\n) !default;\n\n$spacer-map-extended: map-merge(\n  (\n    0: 0,\n    1: $spacer-1,\n    2: $spacer-2,\n    3: $spacer-3,\n    4: $spacer-4,\n    5: $spacer-5,\n    6: $spacer-6,\n  ),\n  $spacers-large,\n) !default;\n\n// Em spacer variables\n$em-spacer-1: 0.0625em !default; // 1/16\n$em-spacer-2: 0.125em !default;  // 1/8\n$em-spacer-3: 0.25em !default;   // 1/4\n$em-spacer-4: 0.375em !default;  // 3/8\n$em-spacer-5: 0.5em !default;    // 1/2\n$em-spacer-6: 0.75em !default;   // 3/4\n\n// Size scale\n// Used for buttons, inputs, labels, avatars etc.\n$size: 16px !default;\n\n$size-0: 0 !default;\n$size-1: $size !default;           // 16px\n$size-2: $size-1 +  4px !default;  // 20px\n$size-3: $size-2 +  4px !default;  // 24px\n$size-4: $size-3 +  4px !default;  // 28px\n$size-5: $size-4 +  4px !default;  // 32px\n$size-6: $size-5 +  8px !default;  // 40px\n$size-7: $size-6 +  8px !default;  // 48px\n$size-8: $size-7 + 16px !default;  // 64px\n\n// Fixed-width container variables\n$container-width: 980px !default;\n$grid-gutter:     10px !default;\n\n// Breakpoint widths\n$width-xs: 0 !default;\n// Small screen / phone\n$width-sm: 544px !default;\n// Medium screen / tablet\n$width-md: 768px !default;\n// Large screen / desktop (980 + (16 * 2)) <= container + gutters\n$width-lg: 1012px !default;\n// Extra large screen / wide desktop\n$width-xl: 1280px !default;\n\n// Responsive container widths\n$container-sm: $width-sm !default;\n$container-md: $width-md !default;\n$container-lg: $width-lg !default;\n$container-xl: $width-xl !default;\n\n// Breakpoints in the form (name: length)\n$breakpoints: (\n  sm: $width-sm,\n  md: $width-md,\n  lg: $width-lg,\n  xl: $width-xl\n) !default;\n\n// This map in the form (breakpoint: variant) is used to iterate over\n// breakpoints and create both responsive and non-responsive classes in one\n// loop:\n//\n// ```scss\n// @each $breakpoint, $variant of $responsive-variants {\n//   @include breakpoint($breakpoint) {\n//     .foo#{$variant}-bar { foo: bar !important; }\n//   }\n// }\n// ```\n$responsive-variants: (\n  \"\": \"\",\n  sm: \"-sm\",\n  md: \"-md\",\n  lg: \"-lg\",\n  xl: \"-xl\",\n) !default;\n\n// responive utility position values\n$responsive-positions: (\n  static,\n  relative,\n  absolute,\n  fixed,\n  sticky\n) !default;\n\n$sidebar-width: (\n  sm: 220px,\n  md: 256px,\n  lg: 296px,\n  xl: 320px\n) !default;\n\n$sidebar-narrow-width: (\n  md: 240px,\n  lg: 256px,\n  xl: 296px\n) !default;\n\n$sidebar-wide-width: (\n  md: 296px,\n  lg: 320px,\n  xl: 344px\n) !default;\n\n$gutter: (\n  md: $spacer-3,\n  lg: $spacer-4,\n  xl: $spacer-5\n) !default;\n\n$gutter-condensed: (\n  md: $spacer-3,\n  lg: $spacer-3,\n  xl: $spacer-4\n) !default;\n\n$gutter-spacious: (\n  md: $spacer-4,\n  lg: $spacer-5,\n  xl: $spacer-6\n) !default;\n","// Custom select\n//\n// Apply `.select` to any `<select>` element for custom styles.\n.form-select {\n  display: inline-block;\n  max-width: 100%;\n  height: $size-5;\n  padding-right: $spacer-4;\n  background-color: var(--color-bg-primary);\n  // SVG with fill: #586069 (--color-icon-secondary)\n  background-image: url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0iIzU4NjA2OSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNC40MjcgOS40MjdsMy4zOTYgMy4zOTZhLjI1MS4yNTEgMCAwMC4zNTQgMGwzLjM5Ni0zLjM5NkEuMjUuMjUgMCAwMDExLjM5NiA5SDQuNjA0YS4yNS4yNSAwIDAwLS4xNzcuNDI3ek00LjQyMyA2LjQ3TDcuODIgMy4wNzJhLjI1LjI1IDAgMDEuMzU0IDBMMTEuNTcgNi40N2EuMjUuMjUgMCAwMS0uMTc3LjQyN0g0LjZhLjI1LjI1IDAgMDEtLjE3Ny0uNDI3eiIgLz48L3N2Zz4=\");\n  background-repeat: no-repeat;\n  background-position: right 4px center;\n  background-size: 16px;\n  appearance: none;\n\n  // Hides the default caret in IE11\n  &::-ms-expand {\n    opacity: 0;\n  }\n\n  &[multiple] {\n    height: auto;\n  }\n}\n\n@include color-mode(dark) {\n  .form-select {\n    // SVG with fill: #6e7681 (--color-icon-secondary)\n    background-image: url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0iIzZlNzY4MSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNC40MjcgOS40MjdsMy4zOTYgMy4zOTZhLjI1MS4yNTEgMCAwMC4zNTQgMGwzLjM5Ni0zLjM5NkEuMjUuMjUgMCAwMDExLjM5NiA5SDQuNjA0YS4yNS4yNSAwIDAwLS4xNzcuNDI3ek00LjQyMyA2LjQ3TDcuODIgMy4wNzJhLjI1LjI1IDAgMDEuMzU0IDBMMTEuNTcgNi40N2EuMjUuMjUgMCAwMS0uMTc3LjQyN0g0LjZhLjI1LjI1IDAgMDEtLjE3Ny0uNDI3eiIgLz48L3N2Zz4=\");\n  }\n}\n\n.select-sm {\n  height: $size-4;\n  // stylelint-disable-next-line primer/spacing\n  padding-top: 3px;\n  // stylelint-disable-next-line primer/spacing\n  padding-bottom: 3px;\n  font-size: $font-size-small;\n\n  &[multiple] {\n    height: auto;\n    min-height: 0;\n  }\n}\n","@mixin color-mode-theme($theme-name, $include-root: false) {\n  @if $include-root {\n    :root,\n    [data-color-mode=\"light\"][data-light-theme=\"#{$theme-name}\"],\n    [data-color-mode=\"dark\"][data-dark-theme=\"#{$theme-name}\"] {\n      @content;\n\n      /*! */ // This is a fix for a cssstats bug see https://github.com/cssstats/cssstats/issues/331\n    }\n  }\n  @else {\n    [data-color-mode=\"light\"][data-light-theme=\"#{$theme-name}\"],\n    [data-color-mode=\"dark\"][data-dark-theme=\"#{$theme-name}\"] {\n      @content;\n    }\n  }\n\n  @media (prefers-color-scheme: light) {\n    [data-color-mode=\"auto\"][data-light-theme=\"#{$theme-name}\"] {\n      @content;\n    }\n  }\n\n  @media (prefers-color-scheme: dark) {\n    [data-color-mode=\"auto\"][data-dark-theme=\"#{$theme-name}\"] {\n      @content;\n    }\n  }\n}\n\n@mixin color-mode($mode) {\n  @if $mode == light {\n    :root,\n    [data-color-mode=\"light\"][data-light-theme*=\"#{$mode}\"],\n    [data-color-mode=\"dark\"][data-dark-theme*=\"#{$mode}\"] {\n      @content;\n    }\n  }\n  @else {\n    [data-color-mode=\"light\"][data-light-theme*=\"#{$mode}\"],\n    [data-color-mode=\"dark\"][data-dark-theme*=\"#{$mode}\"] {\n      @content;\n    }\n  }\n\n  @media (prefers-color-scheme: light) {\n    [data-color-mode=\"auto\"][data-light-theme*=\"#{$mode}\"] {\n      @content;\n    }\n  }\n\n  @media (prefers-color-scheme: dark) {\n    [data-color-mode=\"auto\"][data-dark-theme*=\"#{$mode}\"] {\n      @content;\n    }\n  }\n}\n\n// This mixin takes a map of color mode vars and splits them into dark and light mode\n// The goal is to reduce the amount of dark/light mode selectors compiled.\n//\n// Example input for $color-map\n//\n// @include color-variables((\"custom-css-variable-1\": (\n//     light: var(--color-scale-gray-3),\n//     dark: var(--color-scale-gray-5)\n//   ),\n//   \"custom-css-variable-2\": (\n//     light: var(--color-scale-gray-2),\n//     dark: var(--color-scale-gray-6)\n//   ),\n//   \"custom-css-variable-3\": (\n//     light: var(--color-scale-gray-2),\n//     dark: var(--color-scale-gray-6)\n//   )\n// ));\n@mixin color-variables($color-map) {\n  // Create map to store incoming variables\n  $dark-colors: ();\n  $light-colors: ();\n\n  @each $name, $value in $color-map {\n    @each $type, $color in $value {\n      @if $type == dark {\n        $dark-colors: append($dark-colors, (--color-#{$name}, #{$color}));\n      }\n      @else {\n        $light-colors: append($light-colors, (--color-#{$name}, #{$color}));\n      }\n    }\n  }\n\n  $mode-colors: (\n    dark: $dark-colors,\n    light: $light-colors\n  );\n\n  // Loop through sorted list\n  @each $mode, $variables in $mode-colors {\n    @include color-mode($mode) {\n      @each $prop, $val in $variables {\n        #{$prop}: $val;\n      }\n    }\n  }\n}\n","// stylelint-disable selector-max-compound-selectors\n// stylelint-disable selector-max-type\n\n// Form groups\n//\n// Usage:\n//\n// <div class=\"form-group\">\n//   <div class=\"form-group-header\"> containing the label\n//   <div class=\"form-group-body\"> containing the form elements\n// </div>\n\n.form-group {\n  // stylelint-disable-next-line primer/spacing\n  margin: 15px 0;\n\n  // Text fields\n  .form-control {\n    width: 440px;\n    max-width: 100%;\n    // stylelint-disable-next-line primer/spacing\n    margin-right: 5px;\n    background-color: var(--color-input-contrast-bg);\n\n    &:focus {\n      background-color: var(--color-input-bg);\n    }\n\n    &.shorter { width: 130px; }\n\n    &.short { width: 250px; }\n\n    &.long { width: 100%; }\n  }\n\n  // Textarea\n  // stylelint-disable selector-no-qualifying-type\n  textarea.form-control {\n    width: 100%;\n    height: 200px;\n    min-height: 200px;\n\n    &.short {\n      height: 50px;\n      min-height: 50px;\n    }\n  }\n  // stylelint-enable selector-no-qualifying-type\n\n  // The Label\n  dt, // TODO: Deprecate\n  .form-group-header {\n    // stylelint-disable-next-line primer/spacing\n    margin: 0 0 6px;\n  }\n\n  label {\n    position: relative;\n  }\n\n  &.flattened dt, // TODO: Deprecate\n  &.flattened .form-group-header {\n    float: left;\n    margin: 0;\n    // stylelint-disable-next-line primer/typography\n    line-height: 32px;\n  }\n\n  &.flattened dd, // TODO: Deprecate\n  &.flattened .form-group-body {\n    // stylelint-disable-next-line primer/typography\n    line-height: 32px;\n  }\n\n  //\n  // Form Elements\n  //\n  // stylelint-disable selector-no-qualifying-type\n  dd, // TODO: Deprecate\n  .form-group-body {\n    h4 {\n      margin: $spacer-1 0 0;\n\n      &.is-error { color: var(--color-text-danger); }\n\n      &.is-success { color: var(--color-text-success); }\n\n      + .note {\n        margin-top: 0;\n      }\n    }\n  }\n  // stylelint-enable selector-no-qualifying-type\n\n  //\n  // Variants\n  //\n\n  &.required {\n    dt label::after, // TODO: Deprecate\n    .form-group-header label::after {\n      // stylelint-disable-next-line primer/spacing\n      padding-left: 5px;\n      color: var(--color-text-danger);\n      content: \"*\";\n    }\n  }\n\n  // Form AJAX states\n  //\n  // Form fields that need feedback for AJAX loading, success\n  // states and errored states.\n  .success,\n  .error,\n  .indicator {\n    display: none;\n    font-size: $font-size-small;\n    font-weight: $font-weight-bold;\n  }\n\n  &.loading {\n    opacity: 0.5;\n\n    .indicator {\n      display: inline;\n    }\n\n    .spinner {\n      display: inline-block;\n      vertical-align: middle;\n    }\n  }\n\n  &.successful {\n    .success {\n      display: inline;\n      color: var(--color-text-success);\n    }\n  }\n\n  // Form validation\n  //\n  // Our inline errors\n\n  &.successed,\n  &.warn,\n  &.errored {\n    .success,\n    .warning,\n    .error {\n      position: absolute;\n      z-index: 10;\n      display: block; // Show up in errored/warn state\n      max-width: 450px; // Keep our long errors readable\n      padding: $spacer-1 $spacer-2;\n      margin: $spacer-2 0 0;\n      font-size: $font-size-small;\n      font-weight: $font-weight-normal;\n      border-style: $border-style;\n      border-width: $border-width;\n      border-radius: $border-radius;\n\n      &::after,\n      &::before {\n        position: absolute;\n        bottom: 100%;\n        left: 10px;\n        z-index: 15;\n        width: 0;\n        height: 0;\n        pointer-events: none;\n        content: \" \";\n        // stylelint-disable-next-line primer/borders\n        border: $border-style transparent;\n      }\n\n      &::after {\n        // stylelint-disable-next-line primer/borders\n        border-width: 5px;\n      }\n\n      &::before {\n        // stylelint-disable-next-line primer/spacing\n        margin-left: -1px;\n        // stylelint-disable-next-line primer/borders\n        border-width: 6px;\n      }\n    }\n  }\n\n  &.successed {\n    .success {\n      color: var(--color-input-tooltip-success-text);\n      background-color: var(--color-bg-canvas); // Makes sure the background is opaque to cover any content underneath\n      background-image: linear-gradient(var(--color-input-tooltip-success-bg), var(--color-input-tooltip-success-bg));\n      border-color: var(--color-input-tooltip-success-border);\n\n      &::after { border-bottom-color: var(--color-input-tooltip-success-bg); } // stylelint-disable-line primer/borders\n      &::before { border-bottom-color: var(--color-input-tooltip-success-border); }\n    }\n  }\n\n  &.warn {\n    .form-control {\n      border-color: var(--color-input-warning-border);\n    }\n\n    .warning {\n      color: var(--color-input-tooltip-warning-text);\n      background-color: var(--color-bg-canvas); // Makes sure the background is opaque to cover any content underneath\n      background-image: linear-gradient(var(--color-input-tooltip-warning-bg), var(--color-input-tooltip-warning-bg));\n      border-color: var(--color-input-tooltip-warning-border);\n\n      &::after { border-bottom-color: var(--color-input-tooltip-warning-bg); } // stylelint-disable-line primer/borders\n      &::before { border-bottom-color: var(--color-input-tooltip-warning-border); }\n    }\n  }\n\n  &.errored {\n    .form-control {\n      border-color: var(--color-input-error-border);\n    }\n\n    label {\n      color: var(--color-text-danger);\n    }\n\n    .error {\n      color: var(--color-input-tooltip-error-text);\n      background-color: var(--color-bg-canvas); // Makes sure the background is opaque to cover any content underneath\n      background-image: linear-gradient(var(--color-input-tooltip-error-bg), var(--color-input-tooltip-error-bg));\n      border-color: var(--color-input-tooltip-error-border);\n\n      &::after { border-bottom-color: var(--color-input-tooltip-error-bg); } // stylelint-disable-line primer/borders\n      &::before { border-bottom-color: var(--color-input-tooltip-error-border); }\n    }\n  }\n}\n\n// tooltip\n.note {\n  min-height: 17px;\n  margin: $spacer-1 0 2px;\n  font-size: $font-size-small;\n  color: var(--color-text-secondary);\n\n  .spinner {\n    // stylelint-disable-next-line primer/spacing\n    margin-right: 3px;\n    vertical-align: middle;\n  }\n}\n","// Needs refactoring\n// stylelint-disable selector-no-qualifying-type, selector-max-type\ndl.form-group > dd, // TODO: Deprecate\n.form-group > .form-group-body {\n  .form-control {\n    &.is-autocheck-loading,\n    &.is-autocheck-successful,\n    &.is-autocheck-errored {\n      // stylelint-disable-next-line primer/spacing\n      padding-right: 30px; // Leave some space for our validation icons\n    }\n\n    &.is-autocheck-loading {\n      background-image: url(\"/images/spinners/octocat-spinner-16px.gif\");\n    }\n\n    &.is-autocheck-successful {\n      background-image: url(\"/images/modules/ajax/success.png\");\n    }\n\n    &.is-autocheck-errored {\n      background-image: url(\"/images/modules/ajax/error.png\");\n    }\n  }\n}\n\n// Retinization of form validation icons that aren't octicons yet\n@include retina-media-query {\n  dl.form-group > dd, // TODO: Deprecate\n  .form-group > .form-group-body {\n    .form-control {\n      &.is-autocheck-loading,\n      &.is-autocheck-successful,\n      &.is-autocheck-errored {\n        background-size: 16px 16px;\n      }\n\n      &.is-autocheck-loading {\n        background-image: url(\"/images/spinners/octocat-spinner-32.gif\");\n      }\n\n      &.is-autocheck-successful {\n        background-image: url(\"/images/modules/ajax/success@2x.png\");\n      }\n\n      &.is-autocheck-errored {\n        background-image: url(\"/images/modules/ajax/error@2x.png\");\n      }\n    }\n  }\n}\n\n// Inline verification\n// This overrides primer's inline form stuff\n.status-indicator {\n  display: inline-block;\n  width: 16px;\n  height: 16px;\n  // stylelint-disable-next-line primer/spacing\n  margin-left: 5px;\n\n  .octicon {\n    display: none;\n  }\n}\n\n.status-indicator-success {\n  // Override primer\n  &::before {\n    content: \"\";\n  }\n\n  .octicon-check {\n    display: inline-block;\n    color: var(--color-text-success);\n    fill: var(--color-icon-success);\n  }\n\n  .octicon-x {\n    display: none;\n  }\n}\n\n.status-indicator-failed {\n  // Override primer\n  &::before {\n    content: \"\";\n  }\n\n  .octicon-check {\n    display: none;\n  }\n\n  .octicon-x {\n    display: inline-block;\n    color: var(--color-text-danger);\n    fill: var(--color-icon-danger);\n  }\n}\n\n.status-indicator-loading {\n  width: 16px;\n  background-image: url(\"/images/spinners/octocat-spinner-32-EAF2F5.gif\");\n  background-repeat: no-repeat;\n  background-position: 0 0;\n  background-size: 16px;\n}\n\n.inline-form {\n  display: inline-block;\n\n  .btn-plain {\n    background-color: transparent;\n    border: 0;\n  }\n}\n\n// Drag and drop\n//\n// Previously part of `_forms.scss` in Primer. Needs accounting for.\n\n.drag-and-drop {\n  // stylelint-disable-next-line primer/spacing\n  padding: 7px 10px;\n  margin: 0;\n  // stylelint-disable-next-line primer/typography\n  font-size: 13px;\n  // stylelint-disable-next-line primer/typography\n  line-height: 16px;\n  color: var(--color-text-secondary);\n  background-color: var(--color-bg-secondary);\n  border: $border-width $border-style var(--color-drag-and-drop-border);\n  border-top: 0;\n  border-bottom-right-radius: $border-radius;\n  border-bottom-left-radius: $border-radius;\n\n  .default,\n  .loading,\n  .error {\n    display: none;\n  }\n\n  .error {\n    color: var(--color-text-danger);\n  }\n\n  // Spinner\n  img {\n    vertical-align: top;\n  }\n}\n\n.is-default .drag-and-drop .default {\n  display: inline-block;\n}\n\n.is-uploading .drag-and-drop .loading {\n  display: inline-block;\n}\n\n.is-bad-file .drag-and-drop .bad-file {\n  display: inline-block;\n}\n\n.is-duplicate-filename .drag-and-drop .duplicate-filename {\n  display: inline-block;\n}\n\n.is-too-big .drag-and-drop .too-big {\n  display: inline-block;\n}\n\n.is-hidden-file .drag-and-drop .hidden-file {\n  display: inline-block;\n}\n\n.is-empty .drag-and-drop .empty {\n  display: inline-block;\n}\n\n.is-bad-permissions .drag-and-drop .bad-permissions {\n  display: inline-block;\n}\n\n.is-repository-required .drag-and-drop .repository-required {\n  display: inline-block;\n}\n\n.drag-and-drop-error-info {\n  font-weight: $font-weight-normal;\n  color: var(--color-text-secondary);\n\n  a {\n    color: var(--color-text-link);\n  }\n}\n\n.is-failed .drag-and-drop .failed-request {\n  display: inline-block;\n}\n\n.manual-file-chooser {\n  position: absolute;\n  width: 240px;\n  // stylelint-disable-next-line primer/spacing\n  padding: 5px;\n  // stylelint-disable-next-line primer/spacing\n  margin-left: -80px;\n  cursor: pointer;\n  opacity: 0.0001;\n}\n\n.manual-file-chooser:hover + .manual-file-chooser-text {\n  text-decoration: underline;\n}\n\n.btn {\n  // align manual-file-chooser inside a button\n  .manual-file-chooser {\n    top: 0;\n    padding: 0;\n    // stylelint-disable-next-line primer/typography\n    line-height: 34px;\n  }\n}\n\n// Focused Textarea styles\n.upload-enabled {\n  textarea {\n    display: block;\n    // stylelint-disable-next-line primer/borders\n    border-bottom: $border-width dashed var(--color-upload-enabled-border);\n    border-bottom-right-radius: 0;\n    border-bottom-left-radius: 0;\n  }\n\n  &.focused {\n    border-radius: $border-radius;\n    box-shadow: var(--color-input-shadow), var(--color-state-focus-shadow);\n\n    .form-control {\n      box-shadow: none;\n    }\n\n    .drag-and-drop {\n      border-color: var(--color-upload-enabled-border-focused);\n    }\n  }\n}\n\n// Dropping a file on top\n.dragover textarea,\n.dragover .drag-and-drop {\n  // stylelint-disable-next-line primer/box-shadow\n  box-shadow: rgba(#c9ff00, 1) 0 0 3px;\n}\n\n.write-content {\n  position: relative;\n}\n\n// Form style with a write and a preview tab\n.previewable-comment-form {\n  position: relative;\n\n  .tabnav {\n    position: relative;\n    padding: $spacer-2 $spacer-2 0;\n  }\n\n  .comment {\n    border: $border-width $border-style var(--color-previewable-comment-form-border);\n  }\n\n  .comment-form-error { margin-bottom: $spacer-2; }\n\n  .write-content,\n  .preview-content {\n    display: none;\n    margin: 0 $spacer-2 $spacer-2;\n  }\n\n  &.write-selected .write-content,\n  &.preview-selected .preview-content {\n    display: block;\n  }\n\n  textarea {\n    display: block;\n    width: 100%;\n    min-height: 100px;\n    max-height: 500px;\n    padding: $spacer-2;\n    resize: vertical;\n  }\n}\n\n// Used in our boxed-group-less form styles. Give the sumbit button enough space\n// to breathe without the need for the extra hr.\n.form-action-spacious {\n  // stylelint-disable-next-line primer/spacing\n  margin-top: 10px;\n}\n\n// A two column form, with a .main and a .sidebar column\n//\n// Override some `.timeline-comment-wrapper` defaults.\n// The `div` is needed to be more specific than the other class.\ndiv.composer {\n  margin-top: 0;\n  border: 0;\n}\n\n// Override the previewable comment form defaults\n.composer .comment-form-textarea {\n  height: 200px;\n  min-height: 200px;\n}\n\n// stylelint-disable-next-line primer/spacing\n.composer .tabnav { margin: 0 0 10px; }\n\n// Misc CSS\n//\n// Previously part of `_forms.scss` in Primer. Needs accounting for.\n\nh2.account {\n  // stylelint-disable-next-line primer/spacing\n  margin: 15px 0 0;\n  // stylelint-disable-next-line primer/typography\n  font-size: 18px;\n  font-weight: $font-weight-normal;\n  color: var(--color-text-secondary);\n}\n\np.explain {\n  position: relative;\n  font-size: $font-size-small;\n  color: var(--color-text-secondary);\n\n  strong {\n    color: var(--color-text-primary);\n  }\n\n  .octicon {\n    // stylelint-disable-next-line primer/spacing\n    margin-right: 5px;\n    // stylelint-disable-next-line primer/colors\n    color: var(--color-icon-tertiary);\n  }\n\n  .minibutton {\n    top: -4px;\n    float: right;\n  }\n}\n\n// fix for chrome bug, see https://github.com/github/github/issues/53931\n.form-group label {\n  position: static;\n}\n",".input-group {\n  display: table;\n\n  .form-control {\n    position: relative;\n    width: 100%;\n\n    &:focus {\n      z-index: 2;\n    }\n\n    + .btn {\n      margin-left: 0;\n    }\n  }\n\n  // For when you want the input group to behave like inline-block.\n  &.inline {\n    display: inline-table;\n  }\n}\n\n.input-group .form-control,\n.input-group-button {\n  display: table-cell;\n}\n\n.input-group-button {\n  width: 1%;\n  vertical-align: middle; // Match the inputs\n}\n\n.input-group .form-control:first-child,\n.input-group-button:first-child .btn {\n  border-top-right-radius: 0;\n  border-bottom-right-radius: 0;\n}\n\n.input-group-button:first-child .btn {\n  // stylelint-disable-next-line primer/spacing\n  margin-right: -1px;\n}\n\n.input-group .form-control:last-child,\n.input-group-button:last-child .btn {\n  border-top-left-radius: 0;\n  border-bottom-left-radius: 0;\n}\n\n.input-group-button:last-child .btn {\n  // stylelint-disable-next-line primer/spacing\n  margin-left: -1px;\n}\n","// Tab like radio group\n\n.radio-group {\n  @include clearfix;\n}\n\n.radio-label {\n  float: left;\n  // stylelint-disable-next-line primer/spacing\n  padding: 6px $spacer-3 6px ($spacer-3 + 12px + $spacer-2); // 12px is the size of the radio-input\n  // stylelint-disable-next-line primer/spacing\n  margin-left: -1px;\n  font-size: $body-font-size;\n  // stylelint-disable-next-line primer/typography\n  line-height: 20px; // Specifically not inherit our `<body>` default\n  color: var(--color-text-primary);\n  cursor: pointer;\n  border: $border-width $border-style var(--color-border-primary);\n\n  :checked + & {\n    position: relative;\n    z-index: 1;\n    border-color: var(--color-border-info);\n  }\n\n  &:first-of-type {\n    margin-left: 0;\n    border-top-left-radius: $border-radius;\n    border-bottom-left-radius: $border-radius;\n  }\n\n  &:last-of-type {\n    border-top-right-radius: $border-radius;\n    border-bottom-right-radius: $border-radius;\n  }\n}\n\n.radio-input {\n  z-index: 3;\n  float: left;\n  // stylelint-disable-next-line primer/spacing\n  margin: 10px (-$spacer-5) 0 $spacer-3;\n}\n"]}