view default/assets/scss/components/_forms.scss @ 0:1d038bc9b3d2 default tip

Up:default
author Liny <dev@neowd.com>
date Sat, 31 May 2025 09:21:51 +0800
parents
children
line wrap: on
line source

// main: ../style.scss
/********************************
 *********************************
 BASIC
 *********************************
 *********************************/

/* Basic Form
========================*/
select,
button,
textarea,
input {
  font-family: inherit;
  @include placeholder {
    color: $text-muted;
    opacity: 1;
  }
}

.form-group {
  position: relative;
}

.form-text { color: #8d9ea7 }

label {
  text-transform: uppercase;
  font-weight: 700;
  color: #222;
  font-size: 12px;
  font-family: $headings-font-family;

  .radiobox &,
  .checkbox & {
    font-weight: 400;
    text-transform: none;
  }
}

.col-form-label {
  @include padding( calc(#{$input-padding-y} + #{$input-btn-border-width}) null);

}

.input-group-addon {
  border: 1px solid $input-border-color;
  &:first-child { border-right: 0 }
  i { font-size: rem(18) }
}

.bootstrap-tagsinput .label-info {
  background: $info;
}

.checkbox {
  position: relative;
  padding: $input-padding-y 0 ;
  border-width: 1px;
  &, label, span.label-text {
    border-style: solid;
    border-color: transparent;
  }
  + .checkbox { padding-top: 0 }
  input[type="checkbox"] {
    opacity: 0;
    &:disabled + label {
      cursor: not-allowed;
    }
  }
  label {
    padding-left: 0;
    cursor: pointer;
    margin-bottom: 0;
    border-width: inherit;
    font-weight: inherit;
    font-size: inherit;
    color: inherit;
  }
  .label-text {
    position: relative;
    padding-left: em(30);
    border-width: inherit;
    font-weight: inherit;
    color: inherit;
    &:after {
      @include position(absolute, 50% null null 0);
      content: "";
      font-family: "feather";
      font-feature-settings: 'liga';
      font-size: $font-size-base;
      border-color: #eee;
      border-style: solid;
      border-width: inherit;
      @include size( em(18) );
      line-height: 1;
      transform: translateY(-50%);
      transition: all 0.5s ease;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
    }
  }

  &.checkbox-circle {
    span.label-text::after {
      border-radius: 100%;
    }
  }

  &.checkbox-rounded {
    span.label-text::after {
      border-radius: 5px;
    }
  }

  &.checkbox-full-bg {
    margin-bottom: em(10);
    span.label-text {
      font-size: em(14);
      letter-spacing: -.05em;
      font-weight: 500;
    }
    span.label-text::after {
      background: #f9f9f9;
      border-radius: 3px;
      font-size: rem(12);
    }
  }

  &.checkbox-lg {
    span.label-text {
      padding-left: em(40);
    }
    span.label-text::after {
      @include size(em(38));
    }
  }

  &.checkbox-md {
    span.label-text {
      margin-left: em(33);
    }
    span.label-text,
    span.label-text::after {
      @include size(em(28));
    }
  }

  input[type=checkbox]:checked + .label-text:after {
    content: "\e925";
    background: #eee;
    border-color: #ddd;
    color: $body-color;
  }

  input[type=checkbox]:disabled + .label-text:after {
    opacity: 0.5;
    cursor: not-allowed;
  }

  &.checkbox-star {
    .label-text:after {
      @include size(1em);
      content: '\e9bf';
      color: $text-muted;
      border: 0;
      font-size: inherit;
    }

    input[type=checkbox]:checked + .label-text:after {
      content: '\e9bf';
      color: $warning;
      background: none;
    }
  }

  @each $col, $val in $theme-colors {
    &.checkbox-#{$col} {
      input[type=checkbox]:checked + span.label-text::after {
        background: $val;
        border-color: $val;
        color: #fff;
      }
    }
    &.checkbox-full-bg.checkbox-#{$col} {
      input[type="checkbox"]:checked + span.label-text::after {
        color: #fff;
      }
    }
  }

  @each $col, $val in $colors {
    &.checkbox-#{$col} {
      input[type=checkbox]:checked + span.label-text::after {
        background: $val;
        border-color: $val;
        color: #fff;
      }
    }
    &.checkbox-full-bg.checkbox-#{$col} {
      input[type="checkbox"]:checked + span.label-text::after {
        color: #fff;
      }
    }
  }

  body.rtl & {
    .label-text {
      padding-left: 0;
      padding-right: em(30);
      &:after {
        left: auto;
        right: 0;
      }
    }
  }
}

.radiobox {
  padding: $input-padding-y 0 ;
  + .radiobox { padding-top: 0 }
  input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    &:disabled + label { cursor: not-allowed }
  }
  label {
    cursor: pointer;
    font-weight: normal;
    margin-bottom: 0;
    border-width: inherit;
    font-weight: inherit;
    font-size: inherit;
    color: inherit;
  }
  span.label-text {
    position: relative;
    padding-left: em(30);
    border-width: inherit;
    font-weight: inherit;
    color: inherit;
    &:before {
      content: "";
      @include size( em(20) );
      display: inline-block;
      background: none;
      border: 1px solid #ddd;
      border-radius: 100%;
      vertical-align: middle;
      @include position(absolute, 50% null null 0);
      transform: translateY(-50%);
    }
    &:after {
      content: "";
      @include size(em(10));
      display: inline-block;
      border-radius: 100%;
      background: $primary;
      @include position(absolute, 50% null null 0);
      transform: translateY(-50%) translateX(5px) scale(0);
      opacity: 0;
      transition: all 0.3s ease;
    }
  }

  &.radiobox-lg {
    span.label-text {
      padding-left: em(40);
    }
    span.label-text::after {
      @include size(em(38));
    }
  }

  &.radiobox-md {
    span.label-text {
      margin-left: em(33);
    }
    span.label-text,
    span.label-text::after {
      @include size(em(28));
    }
  }

  input[type="radio"]:checked + span.label-text {
    &:after {
      transform: translateY(-50%) translateX(5px) scale(1);
      opacity: 1;
      transition-delay: 0.1s;
    }
    &:before {
      border-color: $primary;
    }
  }

  input[type="radio"]:disabled + span.label-text {
    &:after, &:before { opacity: 0.5 }
  }

  @each $col, $val in $colors {
    &.radio-#{$col} {
      input[type=radio]:checked + span.label-text::after {
        background: $val;
      }
      input[type=radio]:checked + span.label-text::before {
        border-color: $val;
      }
    }
  }

  @each $col, $val in $theme-colors {
    &.radio-#{$col} {
      input[type=radio]:checked + span.label-text::after {
        background: $val;
      }
      input[type=radio]:checked + span.label-text::before {
        border-color: $val;
      }
    }
  }

  body.rtl & {
    .label-text {
      padding-left: 0;
      padding-right: em(30);
      &:before,
      &:after {
        left: auto;
        right: 0;
      }
      &:after {
        transform: translateY(-50%) translateX(-50%) scale(0)
      }
    }
    input[type="radio"]:checked + span.label-text:after {
      transform: translateY(-50%) translateX(-50%) scale(1)
    }
  }
}

.checkbox input[type=checkbox],
.checkbox-inline input[type=checkbox],
.radio input[type=radio],
.radio-inline input[type=radio] {
  position: absolute;
}

.form-input-icon {
  position: relative;

  > i {
    @include position(absolute, 50% null null rem(10) );
    transform: translateY(-50%);
    line-height: 1;
    z-index: 3;
    text-align: center;
    color: #b8beca;
  }

  .form-control {
    padding-left: rem(40);
  }
}

.form-input-icon-right {
  > i {
    left: auto;
    right: rem(10)
  }

  .form-control {
    padding-left: 1rem;
    padding-right: rem(40);
  }
}

.form-control-rounded {
  border-radius: 500px;
}

.form-material {
  .form-control {
    &:disabled,
    &.disabled {
      cursor: not-allowed;
      color: rgba($content-color, .5);
    }
  }

  input, textarea, select {
    &, &:focus {
      box-shadow: none;
    }
    @include placeholder{
      opacity: 0;
    }
  }

  .form-group {
    position: relative;
  }

  .form-group > label {
    @include position(absolute, 50% null null 0 );
    transform: translateY(-50%);
    margin-bottom: 0;
    transition: all 0.3s ease;
    pointer-events: none;
    opacity: 0.7;
  }


  .input-focused,
  .input-has-value {
    input {
      @include placeholder {
        opacity: 1;
      }
    }
  }

  .form-group > input[type="file"] {
    padding-top: 1em;
  }

  .form-group > textarea + label {
    top: calc(#{$input-padding-y} * 2);
  }

  .form-group {
    > input[type="file"] + label,
    > select + label,
    &.input-has-value label,
    &.input-focused label {
      font-size: .75em;
      top: 0;
      opacity: 1;
    }
  }

  .form-control {
    border-radius: 0;
    border: 0;
    padding-left: 0;
    padding-right: 0;
    background-color: rgba(0, 0, 0, 0);
    background-position: center bottom, center calc(99%);
    background-repeat: no-repeat;
    background-size: 0 2px, 100% 1px;
    transition: background 0s ease-out 0s;
    background-image: linear-gradient($color-scheme, $color-scheme), linear-gradient(#e4e9f0, #e4e9f0);
    padding: calc(#{$input-padding-y} + 4px) 0;
  }

  .form-control-icon {
    .input-group .form-control,
    label {
      padding-left: rem(35)
    }
    .input-group > i {
      @include position(absolute, 50% null null 0);
      transform: translateY(-50%);
    }

    &.input-has-value label,
    &.input-focused label {
      padding-left: 0;
    }

    &.form-control-icon-right {
      label,
      .form-control {
        padding-left: 0;
        padding-right: rem(35);
      }
      .input-group > i {
        left: auto;
        right: 0;
      }
    }
  }

  .form-control:focus {
    background-size: 100% 2px, 100% 1px;
    outline: 0 none;
    transition-duration: 0.3s;
  }

  body.rtl & {
    .form-group > label {
      left: auto;
      right: 0;
    }
  }
}

.form-bordered {
  .form-group {
    padding-bottom: $form-group-margin-bottom;
    border-bottom: 1px solid #f2f2f2;

    &:first-child { padding-top: $form-group-margin-bottom }
    &:last-child { border-bottom: 0 }
  }
}

.has-feedback label ~ .form-control-feedback {
  top: 50%;
  transform: translateY(-50%);
  right: em(15);
}

/* File Dropzone
========================*/
.dropzone {
  position: relative;
  border: 2px dashed #ddd;
  .dz-message {
    margin: 0;
    @include position(absolute, 0);
    span {
      @include position(absolute, 50% 50% null null);
      transform: translateY(-50%) translateX(50%);
    }
  }
  .dz-preview {
    .dz-progress { margin-top: 0 }
    .dz-details { @include size(100%) }

    .dz-success-mark {
      @include position(absolute, 50% 50% null null);
      transform: translateY(-50%) translateX(50%);
    }

    .dz-success-mark,
    .dz-error-mark {
      @include size( rem(54) );
    }

    &.dz-error {
      .dz-image {
        background: $danger;
      }
      .dz-details {
        .dz-filename,
        .dz-size {
          opacity: 0.5;
        }
      }
      .dz-error-mark {
        animation: none;
        margin: 0;
        @include position(absolute, 50% 50% null null);
        transform: translateY(-50%) translateX(-50%);
      }
      .dz-error-message {
        color: #fff;
        background: $danger;

        &:after {
          border-bottom-color: $danger;
        }
      }
    }
  }

  .dz-preview .dz-remove {
    padding: em(5,9);
    @include position(absolute, null 0 0 0);
    z-index: 100;
    display: block;
    background: $color-scheme;
    color: #fff;
    transition: all 0.3s ease;
    font-size: em(9);
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.1em;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;

    &:hover {
      text-decoration: none;
    }
  }

  .dz-image-preview{
    .dz-remove {
      opacity: 0;
    }

    &:hover .dz-remove {
      opacity: 1;
    }
  }

}


/* Spectrum Color Picker
========================*/
.colorpicker{
  .input-group-addon {
    cursor: pointer;
    position: relative;
    i {
      width: 1em;
      display: block;

      &:after {
        content: '';
        background: inherit;
        @include position(absolute,0);
        display: block;
      }
    }
  }
}

.sp-container {
  background: #f9f9f9;
  border: 1px solid #ddd;
}

.sp-input {
  border: 1px solid #ddd;
  &:focus {
    border-color: #ccc;
  }
}


/* Date Range Picker
========================*/
.predefinedRanges {
  display: inline-block;
}

.daterangepicker {

  td.active {
    &, &:hover {
      background-color: $color-scheme;
    }
  }

  .input-mini.active {
    border-color: $color-scheme;
  }

  body.rtl & {
    .ranges ul {
      padding-right: 0;
    }
  }
}

.daterangepicker.dropdown-menu {
  box-shadow: 0 0px 10px 0px rgba(0, 0, 0, 0.1);
  width: auto;
  padding: em(10) em(15);
  z-index: 10;

  &.show-calendar {
    padding-top: em(20);
  }

  .calendar-table {
    border: 1px solid $theme-border-color;
    border-left: 0;

    tbody {
      color: #666;
    }
  }

  .left .calendar-table {
    border-left: 1px solid $theme-border-color;
  }

  .range_inputs {
    margin-left: em(15);
  }
}

.ranges {
  width: rem(180);
  padding: 0;

  ul {
    margin-bottom: em(10);
  }

  li {
    margin: 0;
    padding: em(5) em(20);
    color: $nav-sub-link-hover-color;
    background: transparent;
    border-radius: 0;
    border: 0;

    &:hover {
      border: 0;
      color: $nav-sub-link-hover-color;
      background: $nav-link-hover-color;
    }

    &.active {
      background: $color-scheme;
      border: 0;
      &:hover { color: #fff; }
    }
  }
}


/* Date Picker
========================*/
.datepicker {
  margin: 0 auto;

  &.dropdown-menu {
    width: auto;
    padding: em(15) em(25);
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2);
  }

  tbody {
    color: #666;
  }

  table tr td span.active,
  table tr td span.active:hover,
  td .month.active {
    background: $color-scheme !important;
  }

  td.active,
  td.selected {
    background: $color-scheme !important;
  }
}


/* Select2 Select Dropdown
========================*/
.select2-selection__rendered {
  .select2-container--default .select2-selection--single &,
  .select2-container--default .select2-selection--multiple & {
    background: none;
    line-height: $input-height !important;
    margin-bottom: rem(-2);
    padding-left: 1em;
  }
}

.select2-container--default {
  max-width: 100%;

  &.select2 {
    width: 100% !important;
  }

  .select2-selection--single {
    border: 1px solid #ccc;
    padding-right: rem(10);
    height: #{$input-height} !important;

    .select2-selection__arrow {
      top: 50%;
      transform: translateY(-50%);
      right: rem(15);
    }
  }

  .select2-selection--multiple {
    min-height: #{$input-height} !important;
    height: auto;
    line-height: 1;
    border: 1px solid #ccc;

    .select2-selection__rendered {
      display: flex;
      flex-wrap: wrap;
      align-items: center;

      .select2-selection__choice {
        display: flex-item;
        margin: em(5,12) em(2,12);
        border-radius: 20px;
        font-size: rem(12);
        line-height: 2em;
        padding-right: rem(10);
        background: $info;
        color: #fff;
        border-color: $info;

        &:first-child { margin-left: 0 }
      }
    }

    .select2-search__field {
      margin-top: 0;
      margin-bottom: 0;
    }

    .select2-selection__rendered .select2-selection__choice {
    }
    .select2-selection__choice__remove {
      width: rem(15);
      text-align: center;
      color: #fff;
      opacity: 0.4;
      &:hover {
        opacity: 1;
        color: #fff;
      }
    }
  }

  &.select2-container--focus .select2-selection--multiple{
    border-color: $info;
  }

  .select2-seach--inline {
    line-height: 1.3 !important;
  }

  &.select2-container--open .select2-selection--single {
    border-color: $info;
  }

  .select2-results__option[aria-selected="true"] {
    display: none;
  }

  .select2-results__option--highlighted[aria-selected] {
    background: $info;
  }
}

body.rtl {
  .select2-results__options {
    padding-right: 0;
  }
}


/* SelectPicker Select Dropdown
========================*/
.bootstrap-select{
  &.btn-group .dropdown-toggle .bs-caret {
    @include position(absolute, 0);
    .caret {
      transform: translateY(-50%);
      line-height: 1;
      margin: 0;
    }
  }
  &.open {
    .dropdown-menu {
      display: none;
    }
    &.show .dropdown-menu {
      display: block;
    }
  }
  .dropdown-menu {
    li {
      a {
        line-height: 2em;
        display: block;
        width: 100%;
        color: lighten($body-color, 20%);
        padding: em(5) em(20);

        &:hover,
        &:focus {
          color: $body-color;
          background: #f7fafc;
        }

        span {
          &::before {
            font-family: "feather";
            font-feature-settings: "liga";
            font-size: rem(18);
            font-weight: 600;
          }
        }

        .glyphicon-ok::before {
          content: "\e925";
        }
      }
    }
  }

  .dropdown-menu[aria-expanded="true"] {
    display: block;
  }

  .dropdown-menu {
    a[aria-selected="true"] {
      color: #fff !important;
      background: $primary !important;
    }
  }
}

.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark {
  top: 50%;
  transform: translateY(-50%);
  margin-top: 0;
}


/* Tags Input
========================*/
.bootstrap-tagsinput {
  width: 100%;
  .tag {
    font-size: rem(12);
    padding: em(4,12) em(10,12);
    border-radius: 100px;
    display: inline-block;
    margin: em(5,12) 0;
    [data-role="remove"]::after {
      content: "\e9ea";
      font-family: "feather";
      font-feature-settings: "liga";
      line-height: 1;
      vertical-align: middle;
      padding: 0;
      margin: 0;
    }
  }
  input[type="text"] {
    min-width: rem(150);
    line-height: 2;
  }

  .input-group & {
    &:first-child {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
    }
    &:not(:first-child):not(:nth-last-child(2)) {
      border-radius: 0;
    }
    &:nth-last-child(2) {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
    }
  }
}

/* Switchery
=======================*/
.switchery {
  width: em(60);
  > small {
    box-shadow: none;
  }
}

.switchery-small {
  height: rem(24);
  border-radius: rem(24);

  > small {
    @include size( rem(24) );
  }
}

.switchery-large {
  width: em(80);
}

/* Touchspin
=======================*/
.bootstrap-touchspin {
  .input-group-btn-vertical {
    min-width: rem(20);
    .bootstrap-touchspin-down,
    .bootstrap-touchspin-up {
      display: block;
      font-size: 9px;
      @include size(20px, 50%);
      @include position(absolute, 0 0 null null);
      i {
        @include position(absolute, 50% null null 50%);
        transform: translateY(-50%) translateX(-50%);
        font-size: 14px;
        line-height: 1;
        font-style: normal;
      }
    }

    .bootstrap-touchspin-up i::before {
      content: "+";
    }
    .bootstrap-touchspin-down {
      top: calc(50% + 2px);
      i:before {
        content: "-";
      }
    }
  }
}


/* MultiSelect
========================*/
.ms-container {
  width: 100%;
  .ms-list {
    border-radius: 0;
    &.ms-focus {
      border-color: $color-scheme;
      box-shadow: 0 0 7px -2px $color-scheme;
    }
  }
  .ms-selection,
  .ms-selectable {
    li {
      line-height: 2;
      &.ms-hover {
        background: $color-scheme;
      }
    }
  }

  body.rtl & {
    .ms-optgroup {
      padding-right: 0;
    }

    .ms-optgroup-label {
      padding-right: 5px;
    }
  }
}

.multi-step-signup {
  .multi-step-form {
    fieldset {
      text-align: center;
      display: none;
      &.active {
        display: block;
      }
      textarea {
        resize: none;
      }
      input[type=number]::-webkit-inner-spin-button,
      input[type=number]::-webkit-outer-spin-button {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        margin: 0;
      }
    }
  }

  .steps-tab {
    li {
      padding: 0 80px;
      position: relative;
    }
    a {
      line-height: 40px;
      font-size: 12px;
      color: #fff;
    }

    .step {
      display: block;
      margin-left: 25%;
      width: 40px;
      height: 40px;
      line-height: 30px;
      color: $color-scheme;
      background-color: #F5F7FA;
      border: 5px solid map-get($theme-colors, color-scheme);
      font-size: 0.8rem;
      border-radius: 50%;
      z-index: 1;
    }

    @media (max-width: 768px) {
      li {
        padding: 0 20px;
      }
    }

    li::before {
      content: "";
      top: 18px;
      width:  100%;
      height: 5px;
      z-index: -1;
      display: block;
      position: absolute;
      left: -50%;
      background-color: map-get($theme-colors, color-scheme);
      opacity: .7;
    }


    li:first-child::before {
      display: none;
    }

    li:last-child::after {
      display: none;
    }

    ul{
      li.done{
        .step {
          background-color: $color-scheme;
          border-color: $color-scheme;
          color: #FFF;
        }

        &::before {
          background-color: $color-scheme;
          opacity: 1;
        }
      }
    }

    ul{
      li.active{
        .step {
          border-color: $color-scheme;
          background-color: #FFF;
          color: $color-scheme;
        }

        &::before {
          background-color: $color-scheme;
          opacity: 1;
        }
      }
    }
  }

  body.rtl & {
    .steps-tab li::before {
      left: auto;
      right: calc(-50% - 10px);
    }
  }
}


/* Bootstrap Wysiwyg
========================*/
.wysihtml5-sandbox {
  width: 100% !important;
  border: 1px solid #eee !important;
  padding: 20px !important;
}

ul.wysihtml5-toolbar {
  border: 1px solid #eee;
  border-bottom: 0;
  > li {
    margin: 0;

    .btn {
      background: none;
      border: 0;

      .glyphicon {
        margin-right: 1em;
      }

      &:active,
      &:focus {
        background: none;
      }
    }
  }

  body.rtl & {
    > li .btn .glyphicon {
      margin-right: 0;
      margin-left: 1em;
    }
  }
}

ul.wysihtml5-toolbar > li .modal {
  .btn {
    background: $primary;
    color: #fff;
  }
  .checkbox {
    label{
      padding-left: 30px;
      position: relative;
      &:before {
        content: '';
        font-family: 'Material Icons';
        font-feature-settings: 'liga';
        border: 1px solid #ddd;
        display: block;
        @include size(20px);
        line-height: 20px;
        text-align: center;
        color: #fff;
        @include position(absolute, 0 null null 0);
      }

      &.checkbox-checked:before {
        background: $primary;
        border-color: $primary;
        content: 'check';
      }

    }
  }
}

.input-group {
  body.rtl & {
    .input-group-btn-vertical:first-child:last-child .btn,
    .input-group-btn-vertical .btn,
    .input-group-btn:first-child:last-child .btn,
    .input-group-btn .btn,
    .input-group-addon:first-child:last-child,
    .input-group-addon {
      border-radius: $border-radius;
    }
    .input-group-btn-vertical:first-child .btn,
    .input-group-btn:first-child .btn,
    .input-group-addon:first-child {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
      border-right: 1px solid $theme-border-color;
      border-left: 0;
    }
    .input-group-btn-vertical:last-child .btn,
    .input-group-btn:last-child .btn,
    .input-group-addon:last-child {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
      border-left: 1px solid $theme-border-color;
      border-right: 0;
    }
    .input-group-btn-vertical:not(:first-child):not(:last-child) .btn,
    .input-group-btn:not(:first-child):not(:last-child) .btn,
    .input-group-addon:not(:first-child):not(:last-child) {
      border-radius: 0;
    }

    .form-control:first-child:last-child,
    .form-control {
      border-radius: $border-radius;
    }
    .form-control:first-child {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
    }
    .form-control:last-child {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
    }
    .form-control:not(:first-child):not(:last-child) {
      border-radius: 0;
    }
  }
}

input[data-plugin="knob"] {
  right: 50% !important;
  transform: translateX(50%) !important;
}