material-sass 0.0.4 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/fonts/MaterialIcons-Regular.eot +0 -0
  3. data/app/assets/fonts/MaterialIcons-Regular.ijmap +1 -0
  4. data/app/assets/fonts/MaterialIcons-Regular.ttf +0 -0
  5. data/app/assets/fonts/MaterialIcons-Regular.woff +0 -0
  6. data/app/assets/fonts/MaterialIcons-Regular.woff2 +0 -0
  7. data/app/assets/images/bg/amber.jpg +0 -0
  8. data/app/assets/images/bg/brand.jpg +0 -0
  9. data/app/assets/images/bg/green.jpg +0 -0
  10. data/app/assets/images/bg/purple.jpg +0 -0
  11. data/app/assets/images/bg/red.jpg +0 -0
  12. data/app/assets/images/bg/teal.jpg +0 -0
  13. data/app/assets/javascripts/material.js +664 -507
  14. data/app/assets/javascripts/material.min.js +2 -0
  15. data/app/assets/javascripts/material/_.js +6 -3
  16. data/app/assets/javascripts/material/bootstrap.js +6 -3
  17. data/app/assets/javascripts/material/datepicker.js +95 -64
  18. data/app/assets/javascripts/material/form-adv-label.js +49 -0
  19. data/app/assets/javascripts/material/form-adv-textarea.js +13 -0
  20. data/app/assets/javascripts/material/header.js +12 -56
  21. data/app/assets/javascripts/material/menu.js +188 -38
  22. data/app/assets/javascripts/material/modal.js +10 -8
  23. data/app/assets/javascripts/material/snackbar.js +116 -0
  24. data/app/assets/javascripts/material/tab.js +47 -27
  25. data/app/assets/javascripts/material/tile.js +169 -74
  26. data/app/assets/javascripts/material/wave.js +12 -7
  27. data/app/assets/stylesheets/material.min.css +13 -0
  28. data/app/assets/stylesheets/material/addons/_material-icons.scss +9 -0
  29. data/app/assets/stylesheets/material/addons/_waves.scss +44 -0
  30. data/app/assets/stylesheets/material/{addon/material-design-icon → addons/material-icons}/_core.scss +8 -8
  31. data/app/assets/stylesheets/material/{addon/material-design-icon → addons/material-icons}/_larger.scss +5 -2
  32. data/app/assets/stylesheets/material/addons/material-icons/_path.scss +11 -0
  33. data/app/assets/stylesheets/material/addons/material-icons/_variables.scss +3 -0
  34. data/app/assets/stylesheets/material/base.scss +39 -40
  35. data/app/assets/stylesheets/material/{_grid.scss → base/_grid.scss} +13 -12
  36. data/app/assets/stylesheets/material/{_reset.scss → base/_reset.scss} +160 -161
  37. data/app/assets/stylesheets/material/components/_avatar.scss +94 -0
  38. data/app/assets/stylesheets/material/{element → components}/_breadcrumb.scss +3 -4
  39. data/app/assets/stylesheets/material/components/_button-flat.scss +35 -0
  40. data/app/assets/stylesheets/material/components/_button-float.scss +187 -0
  41. data/app/assets/stylesheets/material/components/_button.scss +86 -0
  42. data/app/assets/stylesheets/material/components/_card.scss +175 -0
  43. data/app/assets/stylesheets/material/{_code.scss → components/_code.scss} +14 -12
  44. data/app/assets/stylesheets/material/components/_dropdown.scss +103 -0
  45. data/app/assets/stylesheets/material/components/_form-adv-checkbox.scss +161 -0
  46. data/app/assets/stylesheets/material/{element → components}/_form-adv-datepicker.scss +87 -108
  47. data/app/assets/stylesheets/material/{element → components}/_form-adv-label.scss +17 -23
  48. data/app/assets/stylesheets/material/components/_form-adv-switch.scss +96 -0
  49. data/app/assets/stylesheets/material/{element → components}/_form-adv-textarea.scss +1 -1
  50. data/app/assets/stylesheets/material/{element → components}/_form.scss +34 -95
  51. data/app/assets/stylesheets/material/components/_label.scss +23 -0
  52. data/app/assets/stylesheets/material/{element → components}/_modal.scss +43 -18
  53. data/app/assets/stylesheets/material/{element → components}/_nav.scss +15 -8
  54. data/app/assets/stylesheets/material/{element → components}/_progress-circular.scss +36 -32
  55. data/app/assets/stylesheets/material/{element → components}/_progress-loadbar.scss +15 -21
  56. data/app/assets/stylesheets/material/{element → components}/_progress.scss +40 -30
  57. data/app/assets/stylesheets/material/components/_snackbar.scss +60 -0
  58. data/app/assets/stylesheets/material/components/_tab.scss +85 -0
  59. data/app/assets/stylesheets/material/components/_table.scss +82 -0
  60. data/app/assets/stylesheets/material/components/_tile.scss +155 -0
  61. data/app/assets/stylesheets/material/elements/_content.scss +42 -0
  62. data/app/assets/stylesheets/material/elements/_footer.scss +10 -0
  63. data/app/assets/stylesheets/material/elements/_header.scss +145 -0
  64. data/app/assets/stylesheets/material/{theme → elements}/_menu.scss +92 -150
  65. data/app/assets/stylesheets/material/mixin/_grid.scss +1 -9
  66. data/app/assets/stylesheets/material/mixin/_responsive.scss +1 -1
  67. data/app/assets/stylesheets/material/mixin/_utilities.scss +1 -1
  68. data/app/assets/stylesheets/material/{_print.scss → utilities/_print.scss} +4 -4
  69. data/app/assets/stylesheets/material/{_utilities-responsive.scss → utilities/_utilities-responsive.scss} +1 -1
  70. data/app/assets/stylesheets/material/{_utilities.scss → utilities/_utilities.scss} +197 -110
  71. data/app/assets/stylesheets/material/var/_colours.scss +336 -0
  72. data/app/assets/stylesheets/material/var/_variables.scss +78 -0
  73. data/lib/material-sass/version.rb +1 -1
  74. metadata +55 -53
  75. data/app/assets/javascripts/material/content.js +0 -46
  76. data/app/assets/javascripts/material/dropdown.js +0 -18
  77. data/app/assets/javascripts/material/esc.js +0 -10
  78. data/app/assets/javascripts/material/footer.js +0 -6
  79. data/app/assets/javascripts/material/form-adv.js +0 -64
  80. data/app/assets/javascripts/material/get-target.js +0 -8
  81. data/app/assets/javascripts/material/toast.js +0 -79
  82. data/app/assets/javascripts/material/webfont.js +0 -47
  83. data/app/assets/javascripts/material/winresize.js +0 -28
  84. data/app/assets/stylesheets/material/_variable.scss +0 -120
  85. data/app/assets/stylesheets/material/addon/_material-design-icon.scss +0 -9
  86. data/app/assets/stylesheets/material/addon/_waves.scss +0 -45
  87. data/app/assets/stylesheets/material/addon/material-design-icon/_path.scss +0 -11
  88. data/app/assets/stylesheets/material/addon/material-design-icon/_variables.scss +0 -3
  89. data/app/assets/stylesheets/material/element/_avatar.scss +0 -67
  90. data/app/assets/stylesheets/material/element/_button-flat.scss +0 -32
  91. data/app/assets/stylesheets/material/element/_button-float.scss +0 -202
  92. data/app/assets/stylesheets/material/element/_button.scss +0 -95
  93. data/app/assets/stylesheets/material/element/_card.scss +0 -245
  94. data/app/assets/stylesheets/material/element/_dropdown.scss +0 -132
  95. data/app/assets/stylesheets/material/element/_form-adv-checkbox.scss +0 -109
  96. data/app/assets/stylesheets/material/element/_form-adv-switch.scss +0 -102
  97. data/app/assets/stylesheets/material/element/_label.scss +0 -22
  98. data/app/assets/stylesheets/material/element/_sortable.scss +0 -8
  99. data/app/assets/stylesheets/material/element/_tab.scss +0 -107
  100. data/app/assets/stylesheets/material/element/_table.scss +0 -48
  101. data/app/assets/stylesheets/material/element/_tile.scss +0 -193
  102. data/app/assets/stylesheets/material/element/_toast.scss +0 -67
  103. data/app/assets/stylesheets/material/project.scss +0 -8
  104. data/app/assets/stylesheets/material/theme/_content.scss +0 -74
  105. data/app/assets/stylesheets/material/theme/_footer.scss +0 -17
  106. data/app/assets/stylesheets/material/theme/_header.scss +0 -128
@@ -3,41 +3,43 @@ kbd,
3
3
  pre,
4
4
  samp {
5
5
  font-family: $font-fam-mono;
6
+ font-size: 1em;
6
7
  }
7
8
 
8
9
  code {
9
- background-color: $white-bg;
10
- border: 1px solid $black-bg;
10
+ background-color: $offwhite-solid;
11
+ border: 1px solid $black-divider-solid;
11
12
  border-radius: 4px;
12
- color: $palette-red-dark;
13
+ color: $brand-color-accent;
13
14
  font-size: 75%;
14
15
  line-height: 1;
15
16
  padding: 2px 4px;
16
17
  }
17
18
 
18
19
  kbd {
19
- background-color: $black-text;
20
+ background-color: $black-text-solid;
20
21
  border-radius: 4px;
21
- color: $white;
22
+ color: $white-text-solid;
22
23
  font-size: 75%;
23
24
  padding: 2px 4px;
24
25
  kbd {
25
26
  font-size: 100%;
26
- font-weight: $font-weight-bold;
27
+ font-weight: $font-weight-medium;
27
28
  padding: 0;
28
29
  }
29
30
  }
30
31
 
31
32
  pre {
32
- background-color: $white-bg;
33
- border: 1px solid $black-bg;
33
+ background-color: $offwhite-solid;
34
+ border: 1px solid $black-divider-solid;
34
35
  border-radius: 2px;
35
- color: $black-text;
36
+ color: $black-text-solid;
36
37
  display: block;
37
38
  font-size: $font-size-h6;
38
39
  line-height: $line-height-h6;
39
- margin: $line-height 0 ;
40
- padding: ($line-height / 2) ($grid-gutter / 2);
40
+ margin: $margin-md 0;
41
+ overflow: auto;
42
+ padding: $margin-sm ($grid-gutter / 2);
41
43
  word-break: break-all;
42
44
  word-wrap: break-word;
43
45
  code {
@@ -48,4 +50,4 @@ pre {
48
50
  padding: 0;
49
51
  white-space: pre-wrap;
50
52
  }
51
- }
53
+ }
@@ -0,0 +1,103 @@
1
+ .dropdown {
2
+ position: relative;
3
+ z-index: 1;
4
+ [data-toggle="dropdown"] {
5
+ cursor: pointer;
6
+ }
7
+ }
8
+
9
+ .dropdown-inline {
10
+ display: inline-block;
11
+ }
12
+
13
+ .dropdown-menu {
14
+ background-color: $white;
15
+ border: 1px solid $black-divider;
16
+ border-radius: 0 2px 2px 2px;
17
+ box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06), 0 0 3px rgba(0, 0, 0, 0.18), 0 1px 3px rgba(0, 0, 0, 0.18);
18
+ list-style: none;
19
+ margin: 0 !important;
20
+ min-width: 100%;
21
+ opacity: 0;
22
+ padding-top: $margin-base !important;
23
+ padding-right: 0;
24
+ padding-bottom: $margin-base !important;
25
+ padding-left: 0;
26
+ position: absolute !important;
27
+ top: 100%;
28
+ left: 0;
29
+ transform: scale(0.3, 0);
30
+ transform-origin: 0 0;
31
+ transition-duration: 0.3s;
32
+ transition-property: opacity, transform;
33
+ transition-timing-function: $timing;
34
+ .dropdown.open & {
35
+ opacity: 1;
36
+ transform: scale(1, 1);
37
+ }
38
+ &.dropdown-menu-right,
39
+ .dropdown.pull-right &,
40
+ .nav.pull-right & {
41
+ border-radius: 2px 0 2px 2px;
42
+ // position
43
+ right: 0;
44
+ left: auto;
45
+ transform-origin: 100% 0;
46
+ }
47
+ a,
48
+ .a {
49
+ color: $black-text-solid !important;
50
+ @include text-overflow();
51
+ &:focus,
52
+ &:hover {
53
+ background-color: $offwhite-solid;
54
+ }
55
+ }
56
+ .active > a,
57
+ .active > .a {
58
+ background-color: $offwhite-solid;
59
+ }
60
+ }
61
+
62
+ .dropdown-toggle {
63
+ transition: background-color 0.3s $timing;
64
+ .dropdown.open & {
65
+ background-color: $offwhite;
66
+ border-radius: 2px 2px 0 0;
67
+ }
68
+ }
69
+
70
+ .dropdown-toggle-btn {
71
+ margin-right: 1px;
72
+ margin-left: 1px;
73
+ padding-right: $grid-gutter;
74
+ padding-left: $grid-gutter;
75
+ position: relative;
76
+ z-index: 1;
77
+ .dropdown.open & {
78
+ background-color: $white;
79
+ box-shadow: none;
80
+ color: $black-text-solid;
81
+ }
82
+ ~ .dropdown-menu {
83
+ min-width: 100%;
84
+ padding-top: ($btn-height + $margin-base + ($nav-height - $btn-height)) !important;
85
+ // position
86
+ top: ($margin-base * -1 + ($nav-height - $btn-height) / -2);
87
+ left: 0;
88
+ transform: scale(1, 0);
89
+ &.dropdown-menu-right,
90
+ .dropdown.pull-right &,
91
+ .nav.pull-right & {
92
+ // position
93
+ right: 0;
94
+ left: auto;
95
+ }
96
+ }
97
+ }
98
+
99
+ .dropdown-wrap {
100
+ margin-top: $line-height;
101
+ margin-bottom: $line-height;
102
+ @include clearfix();
103
+ }
@@ -0,0 +1,161 @@
1
+ .checkbox-adv,
2
+ .radiobtn-adv {
3
+ font-size: $font-size;
4
+ line-height: $line-height;
5
+ }
6
+
7
+ [class*="checkbox-circle"],
8
+ [class*="radiobtn-circle"] {
9
+ display: block;
10
+ height: $font-size;
11
+ position: absolute;
12
+ top: (($line-height - $font-size) / 2 - 1);
13
+ left: 0;
14
+ width: $font-size;
15
+ }
16
+
17
+ [class*="radiobtn-circle"] {
18
+ border-radius: 50%;
19
+ }
20
+
21
+ .checkbox-circle,
22
+ .radiobtn-circle {
23
+ border: 2px solid $black-sec;
24
+ transition: border-color 0.3s $timing;
25
+ }
26
+
27
+ .checkbox-circle {
28
+ input[type="checkbox"]:focus ~ & {
29
+ border-color: $black-text;
30
+ }
31
+ fieldset[disabled] input[type="checkbox"] ~ &,
32
+ input[type="checkbox"][disabled] ~ &,
33
+ .checkbox-adv.disabled input[type="checkbox"] ~ & {
34
+ border-color: $black-hint;
35
+ }
36
+ }
37
+
38
+ .radiobtn-circle {
39
+ input[type="radio"]:focus ~ & {
40
+ border-color: $black-text;
41
+ }
42
+ input[type="radio"]:checked ~ & {
43
+ border-color: $brand-color-accent;
44
+ }
45
+ fieldset[disabled] input[type="radio"] ~ &,
46
+ input[type="radio"][disabled] ~ &,
47
+ .radiobtn-adv.disabled input[type="radio"] ~ & {
48
+ border-color: $black-hint;
49
+ }
50
+ fieldset[disabled] input[type="radio"]:checked ~ &,
51
+ input[type="radio"]:checked[disabled] ~ &,
52
+ .radiobtn-adv.disabled input[type="radio"]:checked ~ & {
53
+ border-color: $brand-color-accent-light;
54
+ }
55
+ }
56
+
57
+ .checkbox-circle-check,
58
+ .radiobtn-circle-check {
59
+ background-color: transparent;
60
+ transform: scale(0, 0);
61
+ transition: transform 0.3s $timing;
62
+ &:after,
63
+ &:before {
64
+ background-color: $brand-color-accent;
65
+ border-radius: 50%;
66
+ content: "";
67
+ display: block;
68
+ opacity: 0;
69
+ position: absolute;
70
+ }
71
+ &:after {
72
+ height: ($font-size * 5);
73
+ // position
74
+ top: ($font-size * -2);
75
+ left: ($font-size * -2);
76
+ width: ($font-size * 5);
77
+ }
78
+ &:before {
79
+ height: 100%;
80
+ // position
81
+ top: 0;
82
+ left: 0;
83
+ transition: opacity 0.3s $timing;
84
+ width: 100%;
85
+ }
86
+ }
87
+
88
+ .checkbox-circle-check {
89
+ input[type="checkbox"]:checked ~ & {
90
+ transform: scale(0.5, 0.5);
91
+ &:after {
92
+ animation: circle-check 0.6s;
93
+ }
94
+ }
95
+ fieldset[disabled] &,
96
+ input[type="checkbox"][disabled] ~ &,
97
+ .checkbox-adv.disabled & {
98
+ display: none;
99
+ }
100
+ }
101
+
102
+ .radiobtn-circle-check {
103
+ input[type="radio"]:checked ~ & {
104
+ transform: scale(0.5, 0.5);
105
+ &:after {
106
+ animation: circle-check 0.6s;
107
+ }
108
+ &:before {
109
+ opacity: 1;
110
+ }
111
+ }
112
+ fieldset[disabled] &,
113
+ input[type="radio"][disabled] ~ &,
114
+ .radiobtn-adv.disabled & {
115
+ &:after,
116
+ &:before {
117
+ display: none;
118
+ }
119
+ }
120
+ fieldset[disabled] input[type="radio"]:checked ~ &,
121
+ input[type="radio"]:checked[disabled] ~ &,
122
+ .radiobtn-adv.disabled input[type="radio"]:checked ~ & {
123
+ background-color: $brand-color-accent-light;
124
+ }
125
+ }
126
+
127
+ .checkbox-circle-icon {
128
+ background-color: $brand-color-accent;
129
+ color: $brand-text-accent;
130
+ opacity: 0;
131
+ transform: scale(0.5, 0.5);
132
+ transition-duration: 0.3s;
133
+ transition-property: opacity, transform;
134
+ transition-timing-function: $timing;
135
+ &:before {
136
+ // position
137
+ top: auto;
138
+ }
139
+ input[type="checkbox"]:checked ~ & {
140
+ opacity: 1;
141
+ transform: scale(1, 1);
142
+ }
143
+ fieldset[disabled] input[type="checkbox"]:checked ~ &,
144
+ input[type="checkbox"]:checked[disabled] ~ &,
145
+ .checkbox-adv.disabled input[type="checkbox"]:checked ~ & {
146
+ background-color: $brand-color-accent-light;
147
+ }
148
+ }
149
+
150
+ // animation
151
+ @keyframes circle-check {
152
+ 0% {
153
+ opacity: 0;
154
+ }
155
+ 25% {
156
+ opacity: 0.25;
157
+ }
158
+ 100% {
159
+ opacity: 0;
160
+ }
161
+ }
@@ -5,44 +5,30 @@
5
5
  }
6
6
 
7
7
  .picker__box {
8
- background-clip: padding-box;
9
- background-color: $white;
10
8
  border-radius: 4px;
11
9
  box-shadow: 0 1px 30px rgba(0, 0, 0, 0.5);
10
+ display: flex;
11
+ flex-direction: column;
12
12
  outline: 0;
13
- overflow: hidden;
14
13
  position: relative;
15
14
  vertical-align: middle;
16
15
  z-index: 1;
17
- @include clearfix();
18
16
  // 992
19
17
  @include responsive(md) {
20
- &:before {
21
- background-color: $brand-color;
22
- border-radius: 4px 0 0 4px;
23
- content: "";
24
- display: block;
25
- height: 100%;
26
- position: absolute;
27
- top: 0;
28
- left: 0;
29
- width: (($grid-gutter + $line-height * 2 * 7) / 2);
30
- z-index: -1;
31
- }
18
+ flex-direction: row;
32
19
  }
33
20
  }
34
21
 
35
22
  .picker__date-display {
36
23
  background-color: $brand-color;
37
24
  border-radius: 4px 4px 0 0;
38
- color: $white;
39
- padding: ($line-height / 2) $grid-gutter;
25
+ color: $brand-text;
26
+ padding: $margin-sm $grid-gutter;
40
27
  text-align: left;
41
28
  // 992
42
29
  @include responsive(md) {
43
- border-radius: 4px 0 0 0;
44
- float: left;
45
- width: (($grid-gutter + $line-height * 2 * 7) / 2);
30
+ border-radius: 4px 0 0 4px;
31
+ width: floor(($cell-height * 7 + $grid-gutter) / 2);
46
32
  }
47
33
  }
48
34
 
@@ -53,28 +39,42 @@
53
39
 
54
40
  .picker__date-display-top {
55
41
  color: $brand-color-light;
56
- font-weight: $font-weight-light;
57
- margin-bottom: ($line-height / 4);
42
+ margin-bottom: $margin-base;
43
+ }
44
+
45
+ .picker__date-inner {
46
+ background-color: $white;
47
+ border-radius: 0 0 4px 4px;
48
+ flex: 1;
49
+ // 992
50
+ @include responsive(md) {
51
+ border-radius: 0 4px 4px 0;
52
+ }
58
53
  }
59
54
 
60
55
  .picker__day {
61
56
  border-radius: 50%;
62
57
  display: inline-block;
63
- height: ($line-height * 1.5);
64
- padding: ($line-height / 4) 0;
65
- width: ($line-height * 1.5);
58
+ height: $btn-height;
59
+ padding: (($btn-height - $line-height) / 2) 0;
60
+ width: $btn-height;
66
61
  &:focus,
67
62
  &:hover {
68
- color: $link-color;
63
+ color: $brand-color;
69
64
  cursor: pointer;
70
65
  }
71
- &.picker__day--selected {
72
- background-color: $brand-color;
73
- color: $white !important;
66
+ &.picker__day--disabled {
67
+ color: inherit;
68
+ cursor: not-allowed;
69
+ opacity: 0.5;
74
70
  }
75
- &.picker__day--today {
71
+ &.picker__day--highlighted {
76
72
  color: $brand-color;
77
73
  }
74
+ &.picker__day--selected {
75
+ background-color: $brand-color;
76
+ color: $brand-text !important;
77
+ }
78
78
  }
79
79
 
80
80
  .picker__day-display {
@@ -82,96 +82,91 @@
82
82
  }
83
83
 
84
84
  .picker__day--outfocus {
85
- color: $white-bg-dark;
85
+ display: none;
86
86
  }
87
87
 
88
88
  .picker__footer {
89
- clear: both;
90
- padding: ($line-height / 2) ($grid-gutter / 2);
89
+ padding: $margin-base $grid-gutter;
90
+ text-align: right;
91
91
  button {
92
92
  margin-left: ($grid-gutter / 2);
93
93
  &:first-child {
94
94
  margin-left: 0;
95
95
  }
96
96
  }
97
- // 480
98
- @include responsive(xs) {
99
- text-align: right;
97
+ // 992
98
+ @include responsive(md) {
99
+ padding-right: ($grid-gutter * 1.5);
100
+ padding-left: ($grid-gutter * 1.5);
100
101
  }
101
102
  }
102
103
 
103
104
  .picker__frame {
104
- display: inline-block;
105
- margin: ($line-height * 2) auto;
106
- max-width: ($grid-gutter + $line-height * 1.5 * 7);
105
+ margin: $margin-lg auto;
106
+ max-width: ($btn-height * 7 + $grid-gutter);
107
+ position: relative;
107
108
  transform: scale(0, 0);
108
- transition: all 0.3s $timing;
109
- transition-property: transform;
110
- vertical-align: middle;
111
- white-space: normal;
109
+ transition: transform 0.3s $timing;
112
110
  .picker--opened & {
113
111
  transform: scale(1, 1);
114
112
  }
115
- // 480
116
- @include responsive(xs) {
117
- max-width: ($grid-gutter + $line-height * 1.75 * 7);
118
- }
119
113
  // 992
120
114
  @include responsive(md) {
121
- max-width: (($grid-gutter + $line-height * 2 * 7) * 1.5);
115
+ max-width: ceil(($cell-height * 7 + $grid-gutter) * 1.5);
122
116
  }
123
117
  }
124
118
 
125
119
  .picker__header {
126
- margin: ($line-height / 2) ($grid-gutter / 2) ($line-height / 4);
120
+ margin-top: $margin-sm;
121
+ margin-bottom: (($btn-height - $line-height) / 2);
127
122
  position: relative;
128
- // 992
129
- @include responsive(md) {
130
- float: left;
131
- margin-top: ($line-height / 4);
132
- margin-right: 0;
133
- margin-left: 0;
134
- width: ($grid-gutter + $line-height * 14);
135
- }
136
123
  }
137
124
 
138
125
  .picker__holder {
126
+ align-items: center;
139
127
  backface-visibility: hidden;
128
+ display: flex;
140
129
  overflow-x: hidden;
141
130
  overflow-y: auto;
142
131
  position: fixed;
143
- top: 100%;
132
+ top: 0;
144
133
  right: 0;
145
134
  bottom: 0;
146
135
  left: 0;
147
136
  text-align: center;
148
- transition: background-color 0.3s $timing, top 0s linear 0.3s;
149
- white-space: nowrap;
137
+ transform: translateY(100%);
138
+ transition: transform 0s 0.3s;
150
139
  width: 100%;
151
140
  -webkit-overflow-scrolling: touch;
152
141
  -ms-overflow-style: -ms-autohiding-scrollbar;
153
- &:after {
142
+ &:before {
143
+ background-color: $black;
154
144
  content: "";
155
- display: inline-block;
145
+ display: block;
156
146
  height: 100%;
157
- vertical-align: middle;
158
- width: 1px;
147
+ opacity: 0;
148
+ position: absolute;
149
+ top: 0;
150
+ left: 0;
151
+ transition: opacity 0.3s $timing;
152
+ width: 100%;
159
153
  }
160
154
  .picker--opened & {
161
- background-color: rgba(0, 0, 0, 0.5);
162
- // position
163
- top: 0;
164
- transition: background-color 0.3s $timing, top 0s linear 0s;
155
+ transform: translateZ(0);
156
+ transition: none;
157
+ &:before {
158
+ opacity: 0.5;
159
+ }
165
160
  }
166
161
  }
167
162
 
168
163
  .picker__input {
169
164
  background-color: transparent !important;
170
165
  border-bottom-style: solid !important;
171
- color: $black-text !important;
166
+ color: inherit !important;
172
167
  cursor: text !important;
173
168
  &.picker__input--active {
174
- border-color: $link-color;
169
+ border-color: $brand-color-accent;
175
170
  border-bottom-width: 2px;
176
171
  &.form-control-default {
177
172
  border-bottom-width: 1px;
@@ -191,69 +186,57 @@
191
186
  .picker__nav--next,
192
187
  .picker__nav--prev {
193
188
  cursor: pointer;
189
+ height: $btn-height;
194
190
  line-height: $line-height;
195
- margin-top: ($line-height / -2);
191
+ margin-top: ($btn-height / -2);
192
+ padding-top: (($btn-height - $line-height) / 2);
193
+ padding-bottom: (($btn-height - $line-height) / 2);
196
194
  position: absolute;
197
195
  top: 50%;
198
196
  text-align: center;
199
- width: ($line-height * 1.5);
197
+ width: $btn-height;
200
198
  &:focus,
201
199
  &:hover {
202
- color: $link-color;
200
+ color: $brand-color;
203
201
  }
204
- // 480
205
- @include responsive(xs) {
206
- width: ($line-height * 1.75);
207
- }
208
202
  // 992
209
203
  @include responsive(md) {
210
- width: ($line-height * 2);
204
+ width: $cell-height;
211
205
  }
212
206
  }
213
207
 
214
208
  .picker__nav--next {
215
209
  // position
216
- right: 0;
210
+ right: ($grid-gutter / 2);
217
211
  &:before {
218
212
  content: "keyboard_arrow_right";
219
213
  }
220
- // 992
221
- @include responsive(md) {
222
- right: ($grid-gutter / 2);
223
- }
224
214
  }
225
215
 
226
216
  .picker__nav--prev {
227
217
  // position
228
- left: 0;
218
+ left: ($grid-gutter / 2);
229
219
  &:before {
230
220
  content: "keyboard_arrow_left";
231
221
  }
232
- // 992
233
- @include responsive(md) {
234
- left: ($grid-gutter / 2);
235
- }
236
222
  }
237
223
 
238
224
  .picker__select--month,
239
225
  .picker__select--year {
240
226
  @extend .form-control;
227
+ background-position: 100% (($line-height - 12) / 2) !important;
241
228
  border-bottom: 0;
242
229
  display: inline-block;
243
230
  height: $line-height;
244
231
  margin-left: $grid-gutter;
245
- padding-top: 0;
246
- padding-bottom: 0;
232
+ padding: 0;
247
233
  width: auto;
248
234
  &:first-child {
249
235
  margin-left: 0;
250
236
  }
251
- }
252
-
253
- @media only screen and (-webkit-min-device-pixel-ratio: 0) {
254
- select.picker__select--month,
255
- select.picker__select--year {
256
- background-position: 100% 50%;
237
+ &:focus {
238
+ border-bottom: 0;
239
+ padding-bottom: 0;
257
240
  }
258
241
  }
259
242
 
@@ -264,7 +247,6 @@
264
247
  table-layout: fixed;
265
248
  // 992
266
249
  @include responsive(md) {
267
- float: left;
268
250
  margin: 0;
269
251
  }
270
252
  }
@@ -278,28 +260,25 @@
278
260
  padding: 0;
279
261
  text-align: center;
280
262
  vertical-align: middle;
281
- width: ($line-height * 1.5);
282
- // 480
283
- @include responsive(xs) {
284
- width: ($line-height * 1.75);
285
- }
263
+ width: $btn-height;
286
264
  // 992
287
265
  @include responsive(md) {
288
- width: ($line-height * 2);
266
+ width: $cell-height;
289
267
  &:first-child {
290
268
  padding-left: ($grid-gutter / 2);
291
- width: ($grid-gutter / 2 + $line-height * 2);
269
+ width: ($cell-height + $grid-gutter / 2);
292
270
  }
293
271
  &:last-child {
294
272
  padding-right: ($grid-gutter / 2);
295
- width: ($grid-gutter / 2 + $line-height * 2);
273
+ width: ($cell-height + $grid-gutter / 2);
296
274
  }
297
275
  }
298
276
  }
299
277
 
300
278
  .picker__weekday {
301
- color: $black-hint;
302
- font-weight: $font-weight-light;
279
+ color: $black-hint-solid;
280
+ padding-top: (($btn-height - $line-height) / 2) !important;
281
+ padding-bottom: (($btn-height - $line-height) / 2) !important;
303
282
  }
304
283
 
305
284
  .picker__weekday-display {