// placeholder spacific scss .form-control{ &::placeholder{ font-size: 0.85rem; color: rgba($black, 0.4); transition: all .2s ease; } &:-ms-input-placeholder { color: darken($body-bg, 20%); } &:focus{ &::placeholder{ transform: translate(5px); transition: all .2s ease; } ~.form-control-position{ i{ color: $primary; } } } } /* Form specific Scss */ // Form Label Scscc label{ color: darken($body-bg, 70%); font-size: 0.85rem; margin-bottom: 0; padding-left: 0.2rem; } // Text area fontsize and line height textarea.form-control{ line-height: 1.6rem; font-size: 1rem; } // Form group Scscc .form-group{ margin-bottom: 1.5rem; } // Form control Scscc .form-control{ border: 1px solid darken($body-bg, 12%); color: darken($body-bg, 60%); } // Used for Card - Check it and remove if not used .form-section{ color: $gray-600; line-height: 3rem; margin-bottom: 20px; border-bottom: 1px solid $gray-600; i{ font-size: 20px; margin-left: 5px; margin-right: 10px; } } /* .form-body{ overflow: hidden; } */ // Used for Card - Check it and remove if not used .form-actions{ border-top: 1px solid darken($body-bg, 10%); padding: 20px 0; margin-top: 20px; &.filled{ background-color: $body-bg; } &.center{ text-align: center; } &.right{ text-align: right; } &.top{ border-top: 0; border-bottom: 1px solid darken($body-bg, 10%); margin-top: 0; margin-bottom: 20px; } @include media-breakpoint-down(sm) { .buttons-group{ float: left !important; margin-bottom: 10px; } } } // Form-horizotnal layout .form-horizontal{ .form-group{ @include media-breakpoint-up(sm) { .label-control{ text-align: right; } } } } // Form Control Large .form-control.form-control-lg{ padding: 1rem; &::placeholder{ font-size: 1.25rem; } } // Form Control Small .form-control.form-control-sm{ padding: 0.6rem; &::placeholder{ font-size: 0.7rem; } } // Custom-File-Input .custom-file-label{ padding: 0.4rem $custom-file-padding-x; &::after{ padding: 0.4rem $custom-file-padding-x; height: auto; } } // Select Inputs Specific SCSS select.form-control { &:not([multiple="multiple"]){ background-image: url("../images/pages/arrow-down.png"); background-position: calc(100% - 12px) 13px, calc(100% - 20px) 13px, 100% 0; background-size: 12px 12px, 10px 10px; background-repeat: no-repeat; -webkit-appearance: none; -moz-appearance: none; padding-right: 1.5rem; } } // For customs-select remove double arrow .custom-select{ -moz-appearance: none; // For firefox -webkit-appearance: none; // for chorme } // input group addon .input-group-addon { background-color: #ECEFF1; border-color: #BABFC7; } // Custom Checkbox .custom-control-label::before, .custom-control-label::after{ width: 1.143rem; height: 1.143rem; top: 0.08rem; } // Custom-checkbox when not disabled and active .custom-control-input:not(:disabled){ &:active ~ .custom-control-label{ &::before { background-color: $primary; border-color: $primary; } } } /* Floating label Group */ .form-label-group{ position: relative; margin-bottom: 1.5rem; // Form-Control-Large in Floating Label Group .form-control-lg{ ~ label{ font-size: 1.25rem; padding: 1rem; } } // Form-Control-Small in Floating Label Group .form-control-sm{ ~ label{ font-size: 0.7rem; } } // Form-label > label { position: absolute; top: 0; left: 0; display: block; transition: all .25s ease-in-out; padding: .6rem; pointer-events: none; cursor: text; color: rgba($black, 0.4); font-size: .85rem; opacity: 0; } // form-input > input, textarea{ padding: .6rem; // from-input on focus change label color &:focus, &:not(:active){ &:not(:placeholder-shown) ~ label { color: rgba($primary, 1) !important; transition: all .25s ease-in-out; opacity: 1; } } &:not(:focus){ &:not(:placeholder-shown) ~ label { color: rgba($black, 0.4) !important; } } // form-label after entering text in input box &:not(:placeholder-shown) ~ label { padding : .25rem 0; font-size: .7rem; top: -20px; left: 3px; } } // has-icon left with input &.has-icon-left{ > label{ left: 36px; } } } /* Vuexy Custom Checkbox */ .vs-checkbox-con{ position: relative; display: flex; align-items:center; justify-content: flex-start; margin: .25rem 0; input { position: absolute; width: 100%; height: 100%; opacity: 0; z-index: 200; cursor: pointer; top: 0; &:checked{ ~.vs-checkbox{ transform: rotate(0deg); border-color: $primary; .vs-checkbox--check{ transform: translate(0); background-color: $primary; .vs-icon{ transform: translate(0); line-height: 1.2; opacity: 1; } } &.vs-checkbox-sm{ .vs-checkbox--check .vs-icon{ font-size: 0.75rem; } } &.vs-checkbox-lg{ .vs-checkbox--check .vs-icon{ font-size: 1.2rem; } } } } &:active:checked+.vs-checkbox{ .vs-checkbox--check{ transform: translate(3px); background-color: $primary; .vs-icon{ opacity: 1; transform: translate(6px); } } } &:disabled{ cursor: default; pointer-events: none; +.vs-checkbox { cursor: default; opacity: .5; } } } .vs-checkbox{ cursor: pointer; position: relative; width: $vs-checkbox-box; height: $vs-checkbox-box; border-width: $vs-checkbox-radio-border-width; border-style: solid; border-color: $vs-checkbox-radio-border-color; border-radius: 2px; transform: rotate(-90deg); transition: all .2s ease; overflow: hidden; margin-right: .5rem; &.vs-checkbox-sm{ width: $vs-checkbox-box-sm; height: $vs-checkbox-box-sm; } &.vs-checkbox-lg{ width: $vs-checkbox-box-lg; height: $vs-checkbox-box-lg; } .vs-checkbox--check{ width: 100%; height: 100%; position: absolute; left: 0; transform: translate(100%); transform-origin: right; transition: all .2s ease; z-index: 10; .vs-icon{ display: flex; justify-content: center; align-items: center; color: $white; } } } } /* Vuexy Custom Radio */ .vs-radio-con{ position: relative; display: flex; align-items:center; justify-content: flex-start; margin: .25rem 0; input { position: absolute; width: 100%; height: 100%; opacity: 0; z-index: 200; cursor: pointer; &:checked{ ~.vs-radio{ transform: rotate(0deg); outline: 0; .vs-radio--circle{ background: rgba($primary,1); box-shadow: 0 3px 12px 0 rgba($primary,.4); opacity: 1; transform: scale(1); } .vs-radio--border{ opacity: 0; transform: scale(0.3); } } } &:disabled{ cursor: default; pointer-events: none; +.vs-radio { cursor: default; opacity: .5; } } &:active{ ~.vs-radio{ transform: scale(1.1); } } } .vs-radio{ cursor: pointer; position: relative; width: $vs-radio-box; height: $vs-radio-box; transition: all .2s ease; margin-right: .5rem; &.vs-radio-sm{ width: $vs-radio-box-sm; height: $vs-radio-box-sm; } &.vs-radio-lg{ width: $vs-radio-box-lg; height: $vs-radio-box-lg; } .vs-radio--border, .vs-radio--circle { width: 100%; height: 100%; position: absolute; left: 0; transition: all .25s ease; top: 0; border-radius: 50%; } .vs-radio--border{ background: transparent; border: $vs-checkbox-radio-border-width solid $vs-checkbox-radio-border-color; } .vs-radio--circle{ opacity: 0; transform: scale(0.1); } } } /* Switches */ .custom-switch{ padding-left: 0; .custom-control-label{ height: 1.571rem; width: 3.1rem; padding: 0; /* For bg color of switch*/ &::before{ border: none; background-color: $switch-bg-color; height: 1.571rem; left: -.2857rem; box-shadow: none !important; transition: all .25s ease; cursor: pointer; user-select: none; top: 0; left: 0; } /*For Switch handle*/ &:after{ position: absolute; top: 2px; left: 2px; box-shadow: none; background-color: $switch-indicator-color; transition:all .25s ease; cursor: pointer; user-select: none; } /*For Switch text*/ .switch-text-left,.switch-text-right, .switch-icon-left,.switch-icon-right{ position: absolute; top: 5px; font-size: .7rem; cursor: pointer; user-select: none; } .switch-text-left,.switch-icon-left{ left: 7px; color: $white } .switch-text-right,.switch-icon-right{ right: 7px } &:focus{ outline: 0; } } /*For Switch label*/ .switch-label{ padding-left: 1rem; } // after its checked .custom-control-input:checked ~ .custom-control-label::before{ box-shadow: none; } /*For Switch Handle Animation*/ .custom-control-input:checked ~ .custom-control-label::after{ transform: translateX(1.4rem); } .custom-control-input:not(:checked) ~ .custom-control-label{ .switch-text-left{ opacity: 0; } .switch-text-right{ opacity: 1; } } .custom-control-input:checked ~ .custom-control-label{ .switch-text-right{ opacity: 0; } .switch-text-left{ opacity: 1; } } .custom-control-input:not(:disabled):active ~ .custom-control-label::before{ background-color: $switch-bg-color; } // For Switch Sizes // switch md &.switch-md{ .custom-control-label{ width: $switch-md-size; height: 1.571rem; &::before{ width: $switch-md-size; border: none; background-color: $switch-bg-color; height: 1.571rem; left: -.2857rem; box-shadow: none !important; transition: all .25s ease; cursor: pointer; user-select: none; } &:after{ box-shadow: none; background-color: $switch-indicator-color; transition:all .25s ease; cursor: pointer; user-select: none; position: absolute; top: 2px; left:-2px; } .switch-text-right,.switch-icon-right{ right: 9px; } .switch-text-left,.switch-icon-left{ left: 5px; } } .custom-control-input:checked ~ .custom-control-label::after{ transform: translateX(2.3rem); } } // switch lg &.switch-lg{ .custom-control-label{ width: $switch-lg-size; height: 1.571rem; &::before{ width: $switch-lg-size; border: none; background-color: $switch-bg-color; height: 1.571rem; left: -.2857rem; box-shadow: none !important; transition: all .25s ease; cursor: pointer; user-select: none; } &:after{ position: absolute; top: 2px; left: -2px; box-shadow: none; background-color: $switch-indicator-color; transition:all .25s ease; cursor: pointer; user-select: none; } .switch-text-right,.switch-icon-right{ right: 10px; } } .custom-control-input:checked ~ .custom-control-label::after{ transform: translateX(3.8rem); } } } /* Textarea with Counter */ .counter-value{ background-color: $primary; color: $white; padding: 1px 6px; font-size: .6rem; border-radius: 0 0 5px 5px; margin-right: 1rem; } /* Input box with icon divider */ .form-group{ &.input-divider-left{ .form-control-position{ i{ padding: 0.2rem 0.5rem; border-right: 1px solid darken($body-bg, 12%); } } } &.input-divider-right{ .form-control-position{ i{ padding: 0.2rem 0.5rem; border-left: 1px solid darken($body-bg, 12%); } } } } /* input-groups-lg and input-groups-sm */ .input-group-lg, .input-group-sm{ .form-control{ padding: 0.7rem; } } /* Bootstrap touchspin */ .bootstrap-touchspin{ &.input-group{ width: 8.4rem; align-items: center; .form-control{ padding: 5px; height: auto; border: 0; background-color: $body-bg; border-radius: 5px !important; text-align: center; font-weight: 500; &:focus{ z-index: 1; box-shadow: none; } } } .bootstrap-touchspin-injected{ margin: 0 !important; .bootstrap-touchspin-down, .bootstrap-touchspin-up{ padding: 0; min-width: 22px; min-height: 22px; border-radius: 5px !important; position: relative; i{ font-size: 0.8rem; position: relative; top: -1px; } } .bootstrap-touchspin-down{ left: 12px; } .bootstrap-touchspin-up{ right: 12px; } } // Disabled Touchspin &.disabled-touchspin{ .bootstrap-touchspin-down, .bootstrap-touchspin-up{ background-color: rgba(0,0,0,.5) !important; cursor: default; opacity: .5; } } // Touchspin Large &.input-group-lg{ width: 9.375rem; .touchspin{ &.form-control{ height: auto !important; } } .bootstrap-touchspin-down, .bootstrap-touchspin-up{ i{ font-size: 1rem; } } } // Touchspin Small &.input-group-sm{ width: 6.25rem; .touchspin{ &.form-control{ height: auto !important; } } .bootstrap-touchspin-injected{ .bootstrap-touchspin-down, .bootstrap-touchspin-up{ min-width: 16px; min-height: 16px; padding-top: 2.2px; i{ font-size: 0.6rem; } } } } } .btn.disabled-max-min{ background-color: rgba(0,0,0,.5) !important; cursor: default; } /* Number Type Input Box Scss for - Remove arrow on hover */ input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button{ -webkit-appearance: none; } /* Number Type Input Box Scss for Touchspin - Remove arrow for firefox */ .bootstrap-touchspin{ &.input-group{ input[type=number] {-moz-appearance: textfield;} } } // IE Specific CSS @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { // floating Label Group .form-label-group{ label { display: none; } } // Bootstrap Select select.form-control { &:not([multiple="multiple"]){ background: none; } } // Custom-File-Input .custom-file-label{ &::after{ padding: 1.34rem 0.7rem 1.25rem; } } } // Date & Time Picker - Form Control Bg color .picker__input{ &.form-control { background-color: $white; } } // input Groups specific SCSS .input-group { .form-control{ height: auto; } .input-group-prepend, .input-group-append { // dropdown arrow position .dropdown-toggle{ &::after{ left: 0; } } // checkbox and radio margin .vs-checkbox-con, .vs-checkbox, .vs-radio-con, .vs-radio{ margin: 0; } } &.input-group-lg{ .form-control{ &::placeholder{ font-size: 1.25rem; } } .input-group-prepend, .input-group-append{ .btn{ line-height: 1.3; font-size: 1.3rem; } } } &.input-group-sm{ .form-control{ &::placeholder{ font-size: 0.7rem; } } } }