_form_element.scss 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824
  1. /*form-element*/
  2. .form-element{
  3. .input-group{
  4. .input-group-addon{
  5. border:none;
  6. -webkit-background-clip: padding-box;
  7. background-color: transparent;
  8. background-position: center bottom, center calc(100% - 1px);
  9. background-repeat: no-repeat;
  10. background-size: 0 2px, 100% 1px;
  11. }
  12. }
  13. .form-control{
  14. color: lighten($black, 45%);
  15. min-height: 42px;
  16. display: initial;
  17. -webkit-background-clip: padding-box;
  18. background-color: transparent;
  19. background-position: center bottom, center calc(100% - 1px);
  20. background-repeat: no-repeat;
  21. background-size: 0 2px, 100% 1px;
  22. padding: 0;
  23. -webkit-transition: background 0s ease-out 0s;
  24. -o-transition: background 0s ease-out 0s;
  25. transition: background 0s ease-out 0s;
  26. border: 0;
  27. border-radius: 0;
  28. -webkit-box-shadow: none;
  29. box-shadow: none;
  30. float: none;
  31. :focus{
  32. border: 0;
  33. border-radius: 0;
  34. -webkit-box-shadow: none;
  35. box-shadow: none;
  36. float: none;
  37. background-size: 100% 2px, 100% 1px;
  38. outline: 0;
  39. -webkit-transition-duration: .3s;
  40. -o-transition-duration: .3s;
  41. transition-duration: .3s;
  42. }
  43. .focus{
  44. background-size: 100% 2px, 100% 1px;
  45. outline: 0;
  46. -webkit-transition-duration: .3s;
  47. -o-transition-duration: .3s;
  48. transition-duration: .3s;
  49. }
  50. }
  51. }
  52. .form-group {
  53. margin-bottom: 1rem;
  54. }
  55. @-webkit-keyframes ripple {
  56. 0% {
  57. -webkit-box-shadow: 0 0 0 1px transparent;
  58. box-shadow: 0 0 0 1px transparent;
  59. }
  60. 50% {
  61. -webkit-box-shadow: 0 0 0 15px rgba(0, 0, 0, .1);
  62. box-shadow: 0 0 0 15px rgba(0, 0, 0, .1);
  63. }
  64. 100% {
  65. -webkit-box-shadow: 0 0 0 15px transparent;
  66. box-shadow: 0 0 0 15px transparent;
  67. }
  68. }
  69. @keyframes ripple {
  70. 0% {
  71. -webkit-box-shadow: 0 0 0 1px transparent;
  72. box-shadow: 0 0 0 1px transparent;
  73. }
  74. 50% {
  75. -webkit-box-shadow: 0 0 0 15px rgba(0, 0, 0, .1);
  76. box-shadow: 0 0 0 15px rgba(0, 0, 0, .1);
  77. }
  78. 100% {
  79. -webkit-box-shadow: 0 0 0 15px transparent;
  80. box-shadow: 0 0 0 15px transparent;
  81. }
  82. }
  83. .demo-checkbox {
  84. label{
  85. min-width: 200px;
  86. margin-bottom: 20px;
  87. }
  88. }
  89. .demo-radio-button{
  90. label{
  91. min-width: 200px;
  92. margin-bottom: 20px;
  93. }
  94. }
  95. .demo-swtich{
  96. .demo-switch-title{
  97. width: 150px;
  98. margin-bottom: 10px;
  99. display: inline-block;
  100. }
  101. .switch{
  102. width: 150px;
  103. margin-bottom: 10px;
  104. display: inline-block;
  105. }
  106. }
  107. .cours-search {
  108. padding: 10px;
  109. background-color: rgba(255,255,255,0.3);
  110. border-radius: 4px;
  111. max-width: 700px;
  112. margin: auto;
  113. margin-bottom: 50px;
  114. width: 100%;
  115. .form-control {
  116. border: 0;
  117. height: 50px;
  118. border-radius: $fct-border-radius !important;
  119. padding: 10px 20px;
  120. font-size: $fs-16;
  121. }
  122. .input-group-append {
  123. margin-left: 10px;
  124. .btn{
  125. border-radius: $fct-border-radius;
  126. }
  127. }
  128. .select2-container--default .select2-selection--single{
  129. height: 50px;
  130. }
  131. .select2-container--default .select2-selection--single .select2-selection__rendered{
  132. line-height: 44px;
  133. }
  134. .select2-container--default .select2-selection--single .select2-selection__arrow{
  135. height: 44px;
  136. }
  137. .btn {
  138. height: 50px;
  139. line-height: 30px;
  140. }
  141. }
  142. /* Radio Buttons
  143. ========================================================================== */
  144. [type="radio"]:not(:checked),
  145. [type="radio"]:checked {
  146. position: absolute;
  147. left: -9999px;
  148. opacity: 0;
  149. }
  150. [type="radio"]:not(:checked) + label,
  151. [type="radio"]:checked + label {
  152. position: relative;
  153. padding-left: 35px;
  154. cursor: pointer;
  155. display: inline-block;
  156. height: 25px;
  157. line-height: 25px;
  158. font-size: 1rem;
  159. transition: .28s ease;
  160. /* webkit (konqueror) browsers */
  161. -webkit-user-select: none;
  162. -moz-user-select: none;
  163. -ms-user-select: none;
  164. user-select: none;
  165. }
  166. [type="radio"] + label:before,
  167. [type="radio"] + label:after {
  168. content: '';
  169. position: absolute;
  170. left: 0;
  171. top: 0;
  172. margin: 4px;
  173. width: 16px;
  174. height: 16px;
  175. z-index: 0;
  176. transition: .28s ease;
  177. }
  178. /* Unchecked styles */
  179. [type="radio"]:not(:checked) + label:before,
  180. [type="radio"]:not(:checked) + label:after,
  181. [type="radio"]:checked + label:before,
  182. [type="radio"]:checked + label:after,
  183. [type="radio"].with-gap:checked + label:before,
  184. [type="radio"].with-gap:checked + label:after {
  185. border-radius: 50%;
  186. }
  187. [type="radio"]:not(:checked) + label:before,
  188. [type="radio"]:not(:checked) + label:after {
  189. border: 2px solid #5a5a5a;
  190. }
  191. [type="radio"]:not(:checked) + label:after {
  192. z-index: -1;
  193. -webkit-transform: scale(0);
  194. transform: scale(0);
  195. }
  196. /* Checked styles */
  197. [type="radio"]:checked + label:before {
  198. border: 2px solid transparent;
  199. animation: ripple 0.2s linear forwards;
  200. }
  201. [type="radio"]:checked + label:after,
  202. [type="radio"].with-gap:checked + label:before,
  203. [type="radio"].with-gap:checked + label:after {
  204. border: 2px solid #26a69a;
  205. }
  206. [type="radio"]:checked + label:after,
  207. [type="radio"].with-gap:checked + label:after {
  208. background-color: #26a69a;
  209. z-index: 0;
  210. }
  211. [type="radio"]:checked + label:after {
  212. -webkit-transform: scale(1.02);
  213. transform: scale(1.02);
  214. }
  215. /* Radio With gap */
  216. [type="radio"].with-gap:checked + label:after {
  217. -webkit-transform: scale(0.5);
  218. transform: scale(0.5);
  219. }
  220. /* Focused styles */
  221. [type="radio"].tabbed:focus + label:before {
  222. box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1);
  223. animation: ripple 0.2s linear forwards;
  224. }
  225. /* Disabled Radio With gap */
  226. [type="radio"].with-gap:disabled:checked + label:before {
  227. border: 2px solid rgba(0, 0, 0, 0.26);
  228. animation: ripple 0.2s linear forwards;
  229. }
  230. [type="radio"].with-gap:disabled:checked + label:after {
  231. border: none;
  232. background-color: rgba(0, 0, 0, 0.26);
  233. }
  234. /* Disabled style */
  235. [type="radio"]:disabled:not(:checked) + label:before,
  236. [type="radio"]:disabled:checked + label:before {
  237. background-color: transparent;
  238. border-color: rgba(0, 0, 0, 0.26);
  239. animation: ripple 0.2s linear forwards;
  240. }
  241. [type="radio"]:disabled + label {
  242. color: rgba(0, 0, 0, 0.26);
  243. }
  244. [type="radio"]:disabled:not(:checked) + label:before {
  245. border-color: rgba(0, 0, 0, 0.26);
  246. }
  247. [type="radio"]:disabled:checked + label:after {
  248. background-color: rgba(0, 0, 0, 0.26);
  249. border-color: #BDBDBD;
  250. }
  251. /* Checkboxes
  252. ========================================================================== */
  253. /* CUSTOM CSS CHECKBOXES */
  254. form p {
  255. margin-bottom: 10px;
  256. text-align: left;
  257. }
  258. form p:last-child {
  259. margin-bottom: 0;
  260. }
  261. /* Remove default checkbox */
  262. [type="checkbox"]:not(:checked),
  263. [type="checkbox"]:checked {
  264. position: absolute;
  265. left: -9999px;
  266. opacity: 0;
  267. }
  268. [type="checkbox"] {
  269. /* checkbox aspect */
  270. }
  271. [type="checkbox"] + label {
  272. position: relative;
  273. padding-left: 35px;
  274. cursor: pointer;
  275. display: inline-block;
  276. height: 25px;
  277. line-height: 25px;
  278. font-size: 1rem;
  279. -webkit-user-select: none;
  280. /* webkit (safari, chrome) browsers */
  281. -moz-user-select: none;
  282. /* mozilla browsers */
  283. -khtml-user-select: none;
  284. /* webkit (konqueror) browsers */
  285. -ms-user-select: none;
  286. /* IE10+ */
  287. }
  288. [type="checkbox"] + label:before,
  289. [type="checkbox"]:not(.filled-in) + label:after {
  290. content: '';
  291. position: absolute;
  292. top: 0;
  293. left: 0;
  294. width: 18px;
  295. height: 18px;
  296. z-index: 0;
  297. border: 2px solid #5a5a5a;
  298. border-radius: 1px;
  299. margin-top: 2px;
  300. transition: .2s;
  301. }
  302. [type="checkbox"]:not(.filled-in) + label:after {
  303. border: 0;
  304. -webkit-transform: scale(0);
  305. transform: scale(0);
  306. }
  307. [type="checkbox"]:not(:checked):disabled + label:before {
  308. border: none;
  309. background-color: rgba(0, 0, 0, 0.26);
  310. }
  311. [type="checkbox"].tabbed:focus + label:after {
  312. -webkit-transform: scale(1);
  313. transform: scale(1);
  314. border: 0;
  315. border-radius: 50%;
  316. box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1);
  317. background-color: rgba(0, 0, 0, 0.1);
  318. }
  319. [type="checkbox"]:checked + label:before {
  320. top: -4px;
  321. left: -5px;
  322. width: 12px;
  323. height: 22px;
  324. border-top: 2px solid transparent;
  325. border-left: 2px solid transparent;
  326. border-right: 2px solid #26a69a;
  327. border-bottom: 2px solid #26a69a;
  328. -webkit-transform: rotate(40deg);
  329. transform: rotate(40deg);
  330. -webkit-backface-visibility: hidden;
  331. backface-visibility: hidden;
  332. -webkit-transform-origin: 100% 100%;
  333. transform-origin: 100% 100%;
  334. }
  335. [type="checkbox"]:checked:disabled + label:before {
  336. border-right: 2px solid rgba(0, 0, 0, 0.26);
  337. border-bottom: 2px solid rgba(0, 0, 0, 0.26);
  338. }
  339. /* Indeterminate checkbox */
  340. [type="checkbox"]:indeterminate + label:before {
  341. top: -11px;
  342. left: -12px;
  343. width: 10px;
  344. height: 22px;
  345. border-top: none;
  346. border-left: none;
  347. border-right: 2px solid #26a69a;
  348. border-bottom: none;
  349. -webkit-transform: rotate(90deg);
  350. transform: rotate(90deg);
  351. -webkit-backface-visibility: hidden;
  352. backface-visibility: hidden;
  353. -webkit-transform-origin: 100% 100%;
  354. transform-origin: 100% 100%;
  355. }
  356. [type="checkbox"]:indeterminate:disabled + label:before {
  357. border-right: 2px solid rgba(0, 0, 0, 0.26);
  358. background-color: transparent;
  359. }
  360. [type="checkbox"].filled-in + label:after {
  361. border-radius: 2px;
  362. }
  363. [type="checkbox"].filled-in + label:before,
  364. [type="checkbox"].filled-in + label:after {
  365. content: '';
  366. left: 0;
  367. position: absolute;
  368. /* .1s delay is for check animation */
  369. transition: border .25s, background-color .25s, width .20s .1s, height .20s .1s, top .20s .1s, left .20s .1s;
  370. z-index: 1;
  371. }
  372. [type="checkbox"].filled-in:not(:checked) + label:before {
  373. width: 0;
  374. height: 0;
  375. border: 3px solid transparent;
  376. left: 6px;
  377. top: 10px;
  378. -webkit-transform: rotateZ(37deg);
  379. transform: rotateZ(37deg);
  380. -webkit-transform-origin: 20% 40%;
  381. transform-origin: 100% 100%;
  382. }
  383. [type="checkbox"].filled-in:not(:checked) + label:after {
  384. height: 20px;
  385. width: 20px;
  386. background-color: transparent;
  387. border: 2px solid #5a5a5a;
  388. top: 0px;
  389. z-index: 0;
  390. }
  391. [type="checkbox"].filled-in:checked + label:before {
  392. top: 0;
  393. left: 1px;
  394. width: 8px;
  395. height: 13px;
  396. border-top: 2px solid transparent;
  397. border-left: 2px solid transparent;
  398. border-right: 2px solid $white !important;
  399. border-bottom: 2px solid $white !important;
  400. -webkit-transform: rotateZ(37deg);
  401. transform: rotateZ(37deg);
  402. -webkit-transform-origin: 100% 100%;
  403. transform-origin: 100% 100%;
  404. }
  405. [type="checkbox"].filled-in:checked + label:after {
  406. top: 0;
  407. width: 20px;
  408. height: 20px;
  409. border: 2px solid #26a69a;
  410. background-color: #26a69a;
  411. z-index: 0;
  412. }
  413. [type="checkbox"].filled-in.tabbed:focus + label:after {
  414. border-radius: 2px;
  415. border-color: #5a5a5a;
  416. background-color: rgba(0, 0, 0, 0.1);
  417. }
  418. [type="checkbox"].filled-in.tabbed:checked:focus + label:after {
  419. border-radius: 2px;
  420. background-color: #26a69a;
  421. border-color: #26a69a;
  422. }
  423. [type="checkbox"].filled-in:disabled:not(:checked) + label:before {
  424. background-color: transparent;
  425. border: 2px solid transparent;
  426. }
  427. [type="checkbox"].filled-in:disabled:not(:checked) + label:after {
  428. border-color: transparent;
  429. background-color: #BDBDBD;
  430. }
  431. [type="checkbox"].filled-in:disabled:checked + label:before {
  432. background-color: transparent;
  433. }
  434. [type="checkbox"].filled-in:disabled:checked + label:after {
  435. background-color: #BDBDBD;
  436. border-color: #BDBDBD;
  437. }
  438. input[type="color"]{
  439. height: 42px;
  440. }
  441. .custom-file-label{
  442. border-radius: $fct-border-radius;
  443. &::after {
  444. border-radius: 0 $fct-border-radius $fct-border-radius 0;
  445. }
  446. }
  447. .form-type-roundinput{
  448. &.form-control{
  449. border-radius: 10rem;
  450. padding-left: 20px;
  451. padding-right: 20px;
  452. }
  453. }
  454. .form-type-round{
  455. input{
  456. &.form-control{
  457. border-radius: 10rem;
  458. padding-left: 20px;
  459. padding-right: 20px;
  460. }
  461. }
  462. }
  463. .form-type-roundselect:not([multiple]){
  464. &.form-control{
  465. border-radius: 10rem;
  466. padding-left: 20px;
  467. padding-right: 20px;
  468. }
  469. }
  470. .form-type-round select:not([multiple]){
  471. &.form-control{
  472. border-radius: 10rem;
  473. padding-left: 20px;
  474. padding-right: 20px;
  475. }
  476. }
  477. .form-group{
  478. label{
  479. font-weight: 500;
  480. }
  481. &.has-success {
  482. .help-block{
  483. color: $success;
  484. }
  485. label{
  486. color: $success;
  487. }
  488. .form-control{
  489. border-color: $success;
  490. box-shadow: none;
  491. }
  492. .input-group-addon{
  493. border-color: $success;
  494. box-shadow: none;
  495. }
  496. }
  497. &.has-warning {
  498. .help-block{
  499. color: $warning;
  500. }
  501. label{
  502. color: $warning;
  503. }
  504. .form-control{
  505. border-color: $warning;
  506. box-shadow: none;
  507. }
  508. .input-group-addon{
  509. border-color: $warning;
  510. box-shadow: none;
  511. }
  512. }
  513. &.has-error {
  514. .help-block{
  515. color: $danger;
  516. }
  517. label{
  518. color: $danger;
  519. }
  520. .form-control{
  521. border-color: $danger;
  522. box-shadow: none;
  523. }
  524. .input-group-addon{
  525. border-color: $danger;
  526. box-shadow: none;
  527. }
  528. }
  529. }
  530. .form-control, .form-select{
  531. border-radius: $fct-border-radius;
  532. box-shadow: none;
  533. border-color: darken($light, 32%);
  534. height: auto;
  535. &:focus{
  536. box-shadow: none;
  537. }
  538. @include placeholder{
  539. color: lighten($black, 40%);
  540. opacity: 1;
  541. }
  542. &:not(select){
  543. -webkit-appearance: none;
  544. -moz-appearance: none;
  545. appearance: none;
  546. }
  547. &+.input-group-addon:not(:first-child){
  548. border-radius: 0px $fct-border-radius $fct-border-radius 0px;
  549. border-left: 0;
  550. }
  551. }
  552. .input-group-addon, .input-group-btn {
  553. white-space: nowrap;
  554. vertical-align: middle;
  555. }
  556. textarea{
  557. &.form-control {
  558. border-radius: $fct-border-radius;
  559. }
  560. }
  561. .iCheck-helper{
  562. border-radius: 0;
  563. }
  564. .icheckbox_flat-blue{
  565. border-radius: 0;
  566. input {
  567. border-radius: 0;
  568. }
  569. }
  570. .icheck{
  571. >label{
  572. padding-left: 0;
  573. }
  574. }
  575. .input-group{
  576. .input-group-addon {
  577. border-radius: $fct-border-radius 0px 0px $fct-border-radius;
  578. border-color: darken($light, 32%);
  579. background-color: $white;
  580. }
  581. .input-group-text {
  582. border-color: darken($light, 32%);
  583. border-radius: $fct-border-radius;
  584. }
  585. }
  586. .input-group-addon {
  587. font-weight: 300;
  588. padding: .425rem .75rem;
  589. border: 1px solid darken($light, 32%);
  590. line-height: 1.25;
  591. color: $dark;
  592. text-align: center;
  593. margin-bottom: 0;
  594. font-size: 1.15rem;
  595. }
  596. .form-control-feedback{
  597. &.fa{
  598. line-height: 34px;
  599. }
  600. }
  601. .form-group-lg{
  602. .form-control{
  603. &+.form-control-feedback{
  604. &.fa{
  605. line-height: 46px;
  606. }
  607. }
  608. }
  609. }
  610. .form-group-sm{
  611. .form-control+.form-control-feedback.fa{
  612. line-height: 30px;
  613. }
  614. }
  615. .input-group-sm+.form-control-feedback.fa{
  616. line-height: 30px;
  617. }
  618. .input-sm+.form-control-feedback.fa{
  619. line-height: 30px;
  620. }
  621. .form-group-feedback{
  622. position: relative;
  623. &.form-group-feedback-right{
  624. .form-control-feedback{
  625. position: absolute;
  626. top: 0;
  627. color: lighten($black, 20%);
  628. padding-left: .875rem;
  629. padding-right: .875rem;
  630. line-height: 2.25003rem;
  631. min-width: 1rem;
  632. }
  633. }
  634. }
  635. .form-group-feedback-right{
  636. .form-control-feedback {
  637. right: 0;
  638. }
  639. }
  640. .input-group-lg{
  641. &+.form-control-feedback{
  642. &.fa{
  643. line-height: 46px;
  644. }
  645. }
  646. }
  647. .input-lg{
  648. &+.form-control-feedback{
  649. &.fa{
  650. line-height: 46px;
  651. }
  652. }
  653. }
  654. /*Bootstrap select*/
  655. .bootstrap-select{
  656. .btn-group{
  657. .dropdown-menu{
  658. -webkit-box-shadow: 0 1px 4px 0 rgba($black, .1);
  659. box-shadow: 0 1px 4px 0 rgba($black, .1);
  660. }
  661. }
  662. &:not([class*=col-]):not([class*=form-control]):not(.input-group-btn){
  663. width: 100%;
  664. }
  665. .dropdown-menu{
  666. li{
  667. a{
  668. display: block;
  669. padding: 7px 20px;
  670. clear: both;
  671. font-weight: 400;
  672. line-height: 1.42857143;
  673. color: $dark;
  674. white-space: nowrap;
  675. @include hover-focus-state{
  676. color: $primary;
  677. background: $light;
  678. }
  679. }
  680. }
  681. }
  682. .show{
  683. >.dropdown-menu{
  684. display: block;
  685. }
  686. }
  687. &.btn-group{
  688. .dropdown-menu {
  689. -webkit-box-shadow: 0 1px 4px 0 rgba($black, .1);
  690. box-shadow: 0 1px 4px 0 rgba($black, .1);
  691. li{
  692. &.divider{
  693. margin: 0.2rem auto;
  694. }
  695. a{
  696. span{
  697. &.text{
  698. letter-spacing: inherit;
  699. }
  700. }
  701. }
  702. }
  703. }
  704. }
  705. }
  706. .bootstrap-touchspin{
  707. .input-group-btn-vertical{
  708. >.btn{
  709. padding: 9px 10px;
  710. }
  711. }
  712. }
  713. .btn{
  714. &.bootstrap-touchspin-up{
  715. border-radius: $fct-border-radius;
  716. }
  717. }
  718. .btn.bootstrap-touchspin-down{
  719. border-radius: $fct-border-radius;
  720. }
  721. /*---form-group---*/
  722. .input-group-append .btn, .input-group-prepend .btn {
  723. border-radius: $fct-border-radius;
  724. }
  725. .file-group input[type="file"] {
  726. position: absolute;
  727. opacity: 0;
  728. z-index: -1;
  729. width: 20px;
  730. }
  731. .form-groups-attached{
  732. margin-bottom: 1rem;
  733. .form-group {
  734. margin-bottom: 0;
  735. border-radius: 0;
  736. }
  737. > div:not(:last-child), > div:not(:last-child) .form-group{
  738. border-bottom-color: transparent;
  739. }
  740. .row {
  741. margin-left: 0;
  742. margin-right: 0;
  743. > .form-group:not(:last-child) {
  744. border-right-color: transparent;
  745. }
  746. }
  747. }
  748. .file-group {
  749. position: relative;
  750. overflow: hidden;
  751. display: inline-grid;
  752. input[type="file"] {
  753. position: absolute;
  754. opacity: 0;
  755. z-index: 2;
  756. width: 100%;
  757. display: block;
  758. top: 0;
  759. cursor: pointer;
  760. }
  761. }
  762. .file-group-inline {
  763. display: inline-block;
  764. }
  765. @include screen-sm {
  766. .form-inline .form-control , .form-inline .form-select {
  767. display: inline-block;
  768. width: auto;
  769. vertical-align: middle;
  770. }
  771. }