themepile-abstractio 1.0.2

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 (84) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +28 -0
  3. data/.rbenv-version +1 -0
  4. data/CONTRIBUTING.md +53 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE +22 -0
  7. data/README.md +136 -0
  8. data/Rakefile +2 -0
  9. data/abstractio.gemspec +18 -0
  10. data/js/foundation/foundation.alerts.js +50 -0
  11. data/js/foundation/foundation.clearing.js +516 -0
  12. data/js/foundation/foundation.cookie.js +74 -0
  13. data/js/foundation/foundation.dropdown.js +159 -0
  14. data/js/foundation/foundation.forms.js +516 -0
  15. data/js/foundation/foundation.joyride.js +842 -0
  16. data/js/foundation/foundation.js +403 -0
  17. data/js/foundation/foundation.magellan.js +130 -0
  18. data/js/foundation/foundation.orbit.js +373 -0
  19. data/js/foundation/foundation.placeholder.js +159 -0
  20. data/js/foundation/foundation.reveal.js +276 -0
  21. data/js/foundation/foundation.section.js +409 -0
  22. data/js/foundation/foundation.tooltips.js +206 -0
  23. data/js/foundation/foundation.topbar.js +252 -0
  24. data/js/foundation/index.js +16 -0
  25. data/js/vendor/custom.modernizr.js +4 -0
  26. data/js/vendor/jquery.js +9597 -0
  27. data/js/vendor/zepto.js +1884 -0
  28. data/lib/abstractio.rb +17 -0
  29. data/lib/abstractio/engine.rb +20 -0
  30. data/lib/abstractio/generators/USAGE +15 -0
  31. data/lib/abstractio/generators/install_generator.rb +54 -0
  32. data/lib/abstractio/generators/templates/application.html.erb +46 -0
  33. data/lib/abstractio/generators/templates/application.html.haml +31 -0
  34. data/lib/abstractio/generators/templates/application.html.slim +28 -0
  35. data/lib/abstractio/version.rb +3 -0
  36. data/lib/themepile-abstractio.rb +17 -0
  37. data/scss/abstractio.scss +46 -0
  38. data/scss/abstractio/_variables.scss +1224 -0
  39. data/scss/abstractio/components/_alert-boxes.scss +107 -0
  40. data/scss/abstractio/components/_block-grid.scss +68 -0
  41. data/scss/abstractio/components/_breadcrumbs.scss +125 -0
  42. data/scss/abstractio/components/_button-groups.scss +89 -0
  43. data/scss/abstractio/components/_buttons.scss +227 -0
  44. data/scss/abstractio/components/_clearing.scss +224 -0
  45. data/scss/abstractio/components/_custom-forms.scss +263 -0
  46. data/scss/abstractio/components/_dropdown-buttons.scss +115 -0
  47. data/scss/abstractio/components/_dropdown.scss +150 -0
  48. data/scss/abstractio/components/_flex-video.scss +46 -0
  49. data/scss/abstractio/components/_forms.scss +362 -0
  50. data/scss/abstractio/components/_global.scss +280 -0
  51. data/scss/abstractio/components/_grid.scss +186 -0
  52. data/scss/abstractio/components/_inline-lists.scss +53 -0
  53. data/scss/abstractio/components/_joyride.scss +215 -0
  54. data/scss/abstractio/components/_keystrokes.scss +57 -0
  55. data/scss/abstractio/components/_labels.scss +85 -0
  56. data/scss/abstractio/components/_magellan.scss +23 -0
  57. data/scss/abstractio/components/_orbit.scss +213 -0
  58. data/scss/abstractio/components/_pagination.scss +100 -0
  59. data/scss/abstractio/components/_panels.scss +77 -0
  60. data/scss/abstractio/components/_pricing-tables.scss +131 -0
  61. data/scss/abstractio/components/_progress-bars.scss +71 -0
  62. data/scss/abstractio/components/_reveal.scss +132 -0
  63. data/scss/abstractio/components/_section.scss +318 -0
  64. data/scss/abstractio/components/_side-nav.scss +69 -0
  65. data/scss/abstractio/components/_split-buttons.scss +167 -0
  66. data/scss/abstractio/components/_sub-nav.scss +68 -0
  67. data/scss/abstractio/components/_switch.scss +251 -0
  68. data/scss/abstractio/components/_tables.scss +84 -0
  69. data/scss/abstractio/components/_thumbs.scss +48 -0
  70. data/scss/abstractio/components/_tooltips.scss +117 -0
  71. data/scss/abstractio/components/_top-bar.scss +495 -0
  72. data/scss/abstractio/components/_type.scss +426 -0
  73. data/scss/abstractio/components/_visibility.scss +322 -0
  74. data/scss/normalize.scss +402 -0
  75. data/templates/project/.gitignore +44 -0
  76. data/templates/project/MIT-LICENSE.txt +20 -0
  77. data/templates/project/config.rb +26 -0
  78. data/templates/project/humans.txt +8 -0
  79. data/templates/project/index.html +124 -0
  80. data/templates/project/manifest.rb +45 -0
  81. data/templates/project/robots.txt +4 -0
  82. data/templates/project/scss/app.scss +48 -0
  83. data/templates/upgrade/manifest.rb +34 -0
  84. metadata +153 -0
@@ -0,0 +1,107 @@
1
+ //
2
+ // Alert Variables
3
+ //
4
+ $include-html-alert-classes: $include-html-classes !default;
5
+
6
+ // We use this to control alert padding.
7
+ $alert-padding-top: emCalc(11px) !default;
8
+ $alert-padding-default-float: $alert-padding-top !default;
9
+ $alert-padding-opposite-direction: $alert-padding-top + emCalc(10px) !default;
10
+ $alert-padding-bottom: $alert-padding-top + emCalc(1px) !default;
11
+
12
+ // We use these to control text style.
13
+ $alert-font-weight: bold !default;
14
+ $alert-font-size: emCalc(14px) !default;
15
+ $alert-font-color: #fff !default;
16
+ $alert-font-color-alt: darken($secondary-color, 60%) !default;
17
+
18
+ // We use this for close hover effect.
19
+ $alert-function-factor: 10% !default;
20
+
21
+ // We use these to control border styles.
22
+ $alert-border-style: solid !default;
23
+ $alert-border-width: 1px !default;
24
+ $alert-border-color: darken($primary-color, $alert-function-factor) !default;
25
+ $alert-bottom-margin: emCalc(20px) !default;
26
+
27
+ // We use these to style the close buttons
28
+ $alert-close-color: #333 !default;
29
+ $alert-close-position: emCalc(5px) !default;
30
+ $alert-close-font-size: emCalc(22px) !default;
31
+ $alert-close-opacity: 0.3 !default;
32
+ $alert-close-opacity-hover: 0.5 !default;
33
+ $alert-close-padding: 5px 4px 4px !default;
34
+
35
+ // We use this to control border radius
36
+ $alert-radius: $global-radius !default;
37
+
38
+ //
39
+ // Alert Mixins
40
+ //
41
+
42
+ // We use this mixin to create a default alert base.
43
+ @mixin alert-base {
44
+ border-style: $alert-border-style;
45
+ border-width: $alert-border-width;
46
+ display: block;
47
+ font-weight: $alert-font-weight;
48
+ margin-bottom: $alert-bottom-margin;
49
+ position: relative;
50
+ padding: $alert-padding-top $alert-padding-opposite-direction $alert-padding-bottom $alert-padding-default-float;
51
+ font-size: $alert-font-size;
52
+ }
53
+
54
+ // We use this mixin to add alert styles
55
+ @mixin alert-style($bg:$primary-color) {
56
+
57
+ // This find the lightness percentage of the background color.
58
+ $bg-lightness: lightness($bg);
59
+
60
+ // We control which background color and border come through.
61
+ background-color: $bg;
62
+ border-color: darken($bg, $alert-function-factor);
63
+
64
+ // We control the text color for you based on the background color.
65
+ @if $bg-lightness > 70% { color: $alert-font-color-alt; }
66
+ @else { color: $alert-font-color; }
67
+
68
+ }
69
+
70
+ // We use this to create the close button.
71
+ @mixin alert-close {
72
+ font-size: $alert-close-font-size;
73
+ padding: $alert-close-padding;
74
+ line-height: 0;
75
+ position: absolute;
76
+ top: $alert-close-position + emCalc(2px);
77
+ #{$opposite-direction}: $alert-close-position;
78
+ color: $alert-close-color;
79
+ opacity: $alert-close-opacity;
80
+ &:hover,
81
+ &:focus { opacity: $alert-close-opacity-hover; }
82
+ }
83
+
84
+ // We use this to quickly create alerts with a single mixin.
85
+ @mixin alert($bg:$primary-color, $radius:false) {
86
+ @include alert-base;
87
+ @include alert-style($bg);
88
+ @include radius($radius);
89
+ }
90
+
91
+ @if $include-html-alert-classes != false {
92
+
93
+ /* Foundation Alerts */
94
+ .alert-box {
95
+ @include alert;
96
+
97
+ .close { @include alert-close; }
98
+
99
+ &.radius { @include radius($alert-radius); }
100
+ &.round { @include radius($global-rounded); }
101
+
102
+ &.success { @include alert-style($success-color); }
103
+ &.alert { @include alert-style($alert-color); }
104
+ &.secondary { @include alert-style($secondary-color); }
105
+ }
106
+
107
+ }
@@ -0,0 +1,68 @@
1
+ //
2
+ // Block Grid Variables
3
+ //
4
+ $include-html-grid-classes: $include-html-classes !default;
5
+
6
+ // We use this to control the maximum number of block grid elements per row
7
+ $block-grid-elements: 12 !default;
8
+ $block-grid-default-spacing: 10px !default;
9
+
10
+ //
11
+ // Block Grid Mixins
12
+ //
13
+
14
+ // We use this mixin to create different block-grids. You can apply per-row and spacing options.
15
+ // Setting $base-style to false will ommit default styles.
16
+ @mixin block-grid($per-row:false, $spacing:$block-grid-default-spacing, $base-style:true) {
17
+
18
+ @if $base-style {
19
+ display: block;
20
+ padding: 0;
21
+ margin: 0 (-$spacing);
22
+ @include clearfix;
23
+
24
+ &>li {
25
+ display: inline;
26
+ height: auto;
27
+ float: $default-float;
28
+ padding: 0 $spacing $spacing;
29
+ }
30
+ }
31
+
32
+ @if $per-row {
33
+ &>li {
34
+ width: 100%/$per-row;
35
+ padding: 0 $spacing $spacing;
36
+
37
+ &:nth-of-type(n) { clear: none; }
38
+ &:nth-of-type(#{$per-row}n+1) { clear: both; }
39
+ }
40
+ }
41
+
42
+ }
43
+
44
+ @if $include-html-grid-classes {
45
+ /* Foundation Block Grids for below small breakpoint */
46
+ @media only screen {
47
+ [class*="block-grid-"] { @include block-grid; }
48
+
49
+ @for $i from 1 through $block-grid-elements {
50
+ .small-block-grid-#{($i)} {
51
+ @include block-grid($i,$block-grid-default-spacing,false);
52
+ }
53
+ }
54
+ }
55
+
56
+ /* Foundation Block Grids for above small breakpoint */
57
+ @media #{$small} {
58
+ /* Remove small grid clearing */
59
+ @for $i from 1 through $block-grid-elements {
60
+ .small-block-grid-#{($i)} > li:nth-of-type(#{$i}n+1) { clear: none; }
61
+ }
62
+ @for $i from 1 through $block-grid-elements {
63
+ .large-block-grid-#{($i)} {
64
+ @include block-grid($i,$block-grid-default-spacing,false);
65
+ }
66
+ }
67
+ }
68
+ }
@@ -0,0 +1,125 @@
1
+ //
2
+ // Breadcrumb Variables
3
+ //
4
+ $include-html-nav-classes: $include-html-classes !default;
5
+
6
+ // We use this to set the background color for the breadcrumb container.
7
+ $crumb-bg: lighten($secondary-color, 5%) !default;
8
+
9
+ // We use these to set the padding around the breadcrumbs.
10
+ $crumb-padding: emCalc(9px) emCalc(14px) emCalc(9px) !default;
11
+ $crumb-side-padding: emCalc(12px) !default;
12
+
13
+ // We use these to control border styles.
14
+ $crumb-function-factor: 10% !default;
15
+ $crumb-border-size: 1px !default;
16
+ $crumb-border-style: solid !default;
17
+ $crumb-border-color: darken($crumb-bg, $crumb-function-factor) !default;
18
+ $crumb-radius: $global-radius !default;
19
+
20
+ // We use these to set various text styles for breadcrumbs.
21
+ $crumb-font-size: emCalc(11px) !default;
22
+ $crumb-font-color: $primary-color !default;
23
+ $crumb-font-color-current: #333 !default;
24
+ $crumb-font-color-unavailable: #999 !default;
25
+ $crumb-font-transform: uppercase !default;
26
+ $crumb-link-decor: underline !default;
27
+
28
+ // We use these to control the slash between breadcrumbs
29
+ $crumb-slash-color: #aaa !default;
30
+ $crumb-slash: "/" !default;
31
+
32
+ //
33
+ // Breakcrumb Mixins
34
+ //
35
+
36
+ // We use this mixin to create a container around our breadcrumbs
37
+ @mixin crumb-container {
38
+ display: block;
39
+ padding: $crumb-padding;
40
+ overflow: hidden;
41
+ margin-#{$default-float}: 0;
42
+ list-style: none;
43
+ border-style: $crumb-border-style;
44
+ border-width: $crumb-border-size;
45
+
46
+ // We control which background color and border come through.
47
+ background-color: $crumb-bg;
48
+ border-color: $crumb-border-color;
49
+ }
50
+
51
+ // We use this mixin to create breadcrumb styles from list items.
52
+ @mixin crumbs {
53
+
54
+ // A normal state will make the links look and act like clickable breadcrumbs.
55
+ margin: 0;
56
+ float: $default-float;
57
+ font-size: $crumb-font-size;
58
+ text-transform: $crumb-font-transform;
59
+ color: $crumb-font-color;
60
+
61
+ &:hover a, &:focus a { text-decoration: $crumb-link-decor; }
62
+
63
+ a,
64
+ span {
65
+ text-transform: $crumb-font-transform;
66
+ color: $crumb-font-color;
67
+ }
68
+
69
+ // Current is for the link of the current page
70
+ &.current {
71
+ cursor: default;
72
+ color: $crumb-font-color-current;
73
+ a {
74
+ cursor: default;
75
+ color: $crumb-font-color-current;
76
+ }
77
+
78
+ &:hover, &:hover a,
79
+ &:focus, &:focus a { text-decoration: none; }
80
+ }
81
+
82
+ // Unavailable removed color and link styles so it looks inactive.
83
+ &.unavailable {
84
+ color: $crumb-font-color-unavailable;
85
+ a { color: $crumb-font-color-unavailable; }
86
+
87
+ &:hover,
88
+ &:hover a,
89
+ &:focus,
90
+ a:focus {
91
+ text-decoration: none;
92
+ color: $crumb-font-color-unavailable;
93
+ cursor: default;
94
+ }
95
+ }
96
+
97
+ &:before {
98
+ content: "#{$crumb-slash}";
99
+ color: $crumb-slash-color;
100
+ margin: 0 $crumb-side-padding;
101
+ position: relative;
102
+ top: 1px;
103
+ }
104
+
105
+ &:first-child:before {
106
+ content: " ";
107
+ margin: 0;
108
+ }
109
+
110
+ }
111
+
112
+
113
+ @if $include-html-nav-classes != false {
114
+
115
+ /* Breadcrumbs */
116
+ .breadcrumbs {
117
+ @include crumb-container;
118
+ @include radius($crumb-radius);
119
+
120
+ &>* {
121
+ @include crumbs;
122
+ }
123
+ }
124
+
125
+ }
@@ -0,0 +1,89 @@
1
+ //
2
+ // Button Group Variables
3
+ //
4
+ $include-html-button-classes: $include-html-classes !default;
5
+
6
+ // Sets the margin for the right side by default, and the left margin if right-to-left direction is used
7
+ $button-bar-margin-opposite: emCalc(10px) !default;
8
+
9
+ //
10
+ // Button Group Mixins
11
+ //
12
+
13
+ // We use this to add styles for a button group container
14
+ @mixin button-group-container($styles:true, $float:false) {
15
+ @if $styles {
16
+ list-style: none;
17
+ margin: 0;
18
+ @include clearfix();
19
+ }
20
+ @if $float {
21
+ float: #{$default-float};
22
+ margin-#{$opposite-direction}: $button-bar-margin-opposite;
23
+ & div { overflow: hidden; }
24
+ }
25
+ }
26
+
27
+ // We use this to control styles for button groups
28
+ @mixin button-group-style($radius:false, $even:false, $float:$default-float) {
29
+
30
+ // We use this to control the flow, or remove those styles completely.
31
+ @if $float {
32
+ margin: 0 0 0 -1px;
33
+ float: $float;
34
+ // Make sure the first child doesn't get the negative margin.
35
+ &:first-child { margin-#{$default-float}: 0; }
36
+ }
37
+
38
+ // We use these to control left and right radius on first/last buttons in the group.
39
+ @if $radius == true {
40
+ &:first-child,
41
+ &:first-child > a,
42
+ &:first-child > button,
43
+ &:first-child > .button { @include side-radius($default-float, $button-radius); }
44
+ &:last-child,
45
+ &:last-child > a,
46
+ &:last-child > button,
47
+ &:last-child > .button { @include side-radius($opposite-direction, $button-radius); }
48
+ }
49
+ @else if $radius {
50
+ &:first-child,
51
+ &:first-child > a,
52
+ &:first-child > button,
53
+ &:first-child > .button { @include side-radius($default-float, $radius); }
54
+ &:last-child,
55
+ &:last-child > a,
56
+ &:last-child > button,
57
+ &:last-child > .button { @include side-radius($opposite-direction, $radius); }
58
+ }
59
+
60
+ // We use this to make the buttons even width across their container
61
+ @if $even {
62
+ width: percentage((100/$even) / 100);
63
+ button, .button { width: 100%; }
64
+ }
65
+
66
+ }
67
+
68
+ // Only include these CSS classes if $include-html-classes: true
69
+ @if $include-html-button-classes != false {
70
+
71
+ /* Button Groups */
72
+ .button-group { @include button-group-container;
73
+
74
+ &> * { @include button-group-style(); }
75
+
76
+ &.radius > * { @include button-group-style($radius:$button-radius, $float:null); }
77
+ &.round > * { @include button-group-style($radius:$button-round, $float:null); }
78
+
79
+ @for $i from 2 through 8 {
80
+ &.even#{-$i} li { @include button-group-style($even:$i, $float:null); }
81
+ }
82
+ }
83
+
84
+ .button-bar {
85
+ @include clearfix;
86
+ .button-group { @include button-group-container($styles:false,$float:true); }
87
+ }
88
+
89
+ }
@@ -0,0 +1,227 @@
1
+ //
2
+ // Button Variables
3
+ //
4
+ $include-html-button-classes: $include-html-classes !default;
5
+
6
+ // We use these to build padding for buttons.
7
+ $button-med: emCalc(12px) !default;
8
+ $button-tny: emCalc(7px) !default;
9
+ $button-sml: emCalc(9px) !default;
10
+ $button-lrg: emCalc(16px) !default;
11
+
12
+ // We use this to control the display property.
13
+ $button-display: inline-block !default;
14
+ $button-margin-bottom: emCalc(20px) !default;
15
+
16
+ // We use these to control button text styles.
17
+ $button-font-family: inherit !default;
18
+ $button-font-color: #fff !default;
19
+ $button-font-color-alt: #333 !default;
20
+ $button-font-med: emCalc(16px) !default;
21
+ $button-font-tny: emCalc(11px) !default;
22
+ $button-font-sml: emCalc(13px) !default;
23
+ $button-font-lrg: emCalc(20px) !default;
24
+ $button-font-weight: bold !default;
25
+ $button-font-align: center !default;
26
+
27
+ // We use these to control various hover effects.
28
+ $button-function-factor: 10% !default;
29
+
30
+ // We use these to control button border styles.
31
+ $button-border-width: 1px !default;
32
+ $button-border-style: solid !default;
33
+ $button-border-color: darken($primary-color, $button-function-factor) !default;
34
+
35
+ // We use this to set the default radius used throughout the core.
36
+ $button-radius: $global-radius !default;
37
+ $button-round: $global-rounded !default;
38
+
39
+ // We use this to set default opacity for disabled buttons.
40
+ $button-disabled-opacity: 0.6 !default;
41
+
42
+
43
+ //
44
+ // Button Mixins
45
+ //
46
+
47
+ // We use this mixin to create a default button base.
48
+ @mixin button-base($style:true, $display:$button-display) {
49
+ @if $style {
50
+ border-style: $button-border-style;
51
+ border-width: $button-border-width;
52
+ cursor: pointer;
53
+ font-family: $button-font-family;
54
+ font-weight: $button-font-weight;
55
+ line-height: 1;
56
+ margin: 0 0 $button-margin-bottom;
57
+ position: relative;
58
+ text-decoration: none;
59
+ text-align: $button-font-align;
60
+ }
61
+ @if $display { display: $display; }
62
+ }
63
+
64
+ // We use this mixin to add button size styles
65
+ @mixin button-size($padding:$button-med, $full-width:false, $is-input:false) {
66
+
67
+ // We control which padding styles come through,
68
+ // these can be turned off by setting $padding:false
69
+ @if $padding {
70
+ padding-top: $padding;
71
+ padding-#{$opposite-direction}: $padding * 2;
72
+ padding-bottom: $padding + emCalc(1px);
73
+ padding-#{$default-float}: $padding * 2;
74
+
75
+ // We control the font-size based on mixin input.
76
+ @if $padding == $button-med { font-size: $button-font-med; }
77
+ @else if $padding == $button-tny { font-size: $button-font-tny; }
78
+ @else if $padding == $button-sml { font-size: $button-font-sml; }
79
+ @else if $padding == $button-lrg { font-size: $button-font-lrg; }
80
+ @else { font-size: $padding - emCalc(2px); }
81
+ }
82
+
83
+ // We can set $full-width:true to remove side padding extend width.
84
+ @if $full-width {
85
+ // We still need to check if $padding is set.
86
+ @if $padding {
87
+ padding-top: $padding;
88
+ padding-bottom: $padding + emCalc(1px);
89
+ } @else if $padding == false {
90
+ padding-top:0;
91
+ padding-bottom:0;
92
+ }
93
+ padding-right: 0px;
94
+ padding-left: 0px;
95
+ width: 100%;
96
+ }
97
+
98
+ // <input>'s and <button>'s take on strange padding. We added this to help fix that.
99
+ @if $is-input == $button-lrg {
100
+ padding-top: $is-input + emCalc(.5px);
101
+ padding-bottom: $is-input + emCalc(.5px);
102
+ }
103
+ @else if $is-input {
104
+ padding-top: $is-input + emCalc(1px);
105
+ padding-bottom: $is-input;
106
+ }
107
+ }
108
+
109
+ // We use this mixin to add button color styles
110
+ @mixin button-style($bg:$primary-color, $radius:false, $disabled:false) {
111
+
112
+ // We control which background styles are used,
113
+ // these can be removed by setting $bg:false
114
+ @if $bg {
115
+ // This find the lightness percentage of the background color.
116
+ $bg-lightness: lightness($bg);
117
+
118
+ background-color: $bg;
119
+ border-color: darken($bg, $button-function-factor);
120
+ &:hover,
121
+ &:focus { background-color: darken($bg, $button-function-factor); }
122
+
123
+ // We control the text color for you based on the background color.
124
+ @if $bg-lightness > 70% {
125
+ color: $button-font-color-alt;
126
+ &:hover,
127
+ &:focus { color: $button-font-color-alt; }
128
+ }
129
+ @else {
130
+ color: $button-font-color;
131
+ &:hover,
132
+ &:focus { color: $button-font-color; }
133
+ }
134
+ }
135
+
136
+ // We can set $disabled:true to create a disabled transparent button.
137
+ @if $disabled {
138
+ cursor: default;
139
+ opacity: $button-disabled-opacity;
140
+ -webkit-box-shadow: none;
141
+ box-shadow: none;
142
+ &:hover,
143
+ &:focus { background-color: $bg; }
144
+ }
145
+
146
+ // We can control how much button radius us used.
147
+ @if $radius == true { @include radius($button-radius); }
148
+ @else if $radius { @include radius($radius); }
149
+
150
+ }
151
+
152
+ // We use this to quickly create buttons with a single mixin. As @jaredhardy puts it, "the kitchen sink mixin"
153
+ @mixin button($padding:$button-med, $bg:$primary-color, $radius:false, $full-width:false, $disabled:false, $is-input:false, $is-prefix:false) {
154
+ @include button-base;
155
+ @include button-size($padding, $full-width, $is-input);
156
+ @include button-style($bg, $radius, $disabled);
157
+ }
158
+
159
+
160
+ //
161
+ // Button Classes
162
+ //
163
+
164
+ // Only include these classes if the variable is true, otherwise they'll be left out.
165
+ @if $include-html-button-classes != false {
166
+
167
+ // Default styles applied outside of media query
168
+ button, .button {
169
+ @include button-base;
170
+ @include button-size;
171
+ @include button-style;
172
+
173
+ &.secondary { @include button-style($bg:$secondary-color); }
174
+ &.success { @include button-style($bg:$success-color); }
175
+ &.alert { @include button-style($bg:$alert-color); }
176
+
177
+ &.large { @include button-size($padding:$button-lrg); }
178
+ &.small { @include button-size($padding:$button-sml); }
179
+ &.tiny { @include button-size($padding:$button-tny); }
180
+ &.expand { @include button-size($padding:null,$full-width:true); }
181
+
182
+ &.left-align { text-align: left; text-indent: emCalc(12px); }
183
+ &.right-align { text-align: right; padding-right: emCalc(12px); }
184
+
185
+ &.disabled, &[disabled] { @include button-style($bg:$primary-color, $disabled:true);
186
+ &.secondary { @include button-style($bg:$secondary-color, $disabled:true); }
187
+ &.success { @include button-style($bg:$success-color, $disabled:true); }
188
+ &.alert { @include button-style($bg:$alert-color, $disabled:true); }
189
+ }
190
+
191
+ }
192
+
193
+ button, .button {
194
+ @include button-size($padding:false, $is-input:$button-med);
195
+ &.tiny { @include button-size($padding:false, $is-input:$button-tny); }
196
+ &.small { @include button-size($padding:false, $is-input:$button-sml); }
197
+ &.large { @include button-size($padding:false, $is-input:$button-lrg); }
198
+ }
199
+
200
+ // Styles for any browser or device that support media queries
201
+ @media only screen {
202
+
203
+ button, .button {
204
+ @include inset-shadow();
205
+ @include single-transition(background-color);
206
+
207
+ &.large { @include button-size($padding:false, $full-width:false); }
208
+ &.small { @include button-size($padding:false, $full-width:false); }
209
+ &.tiny { @include button-size($padding:false, $full-width:false); }
210
+
211
+ &.radius { @include button-style($bg:false, $radius:true); }
212
+ &.round { @include button-style($bg:false, $radius:$button-round); }
213
+ }
214
+
215
+ }
216
+
217
+ // Additional styles for screens larger than 768px
218
+ @media #{$small} {
219
+
220
+ button, .button {
221
+ @include button-base($style:false, $display:inline-block);
222
+ @include button-size($padding:false, $full-width:false);
223
+ }
224
+
225
+ }
226
+
227
+ }