16f7ec80eSYoshie Muranaka$btn-primary__bg: $base-01--03;
26f7ec80eSYoshie Muranaka$btn-primary__bg--hover: $base-01--04;
36f7ec80eSYoshie Muranaka$btn-primary__bg--disabled: $base-02--04;
46f7ec80eSYoshie Muranaka$btn-primary__txt: $base-02--08;
56f7ec80eSYoshie Muranaka$btn-primary__txt--disabled: $base-02--03;
6c86ce3c9SYoshie Muranaka
76f7ec80eSYoshie Muranaka$btn-secondary__bg: $base-02--08;
86f7ec80eSYoshie Muranaka$btn-secondary__txt: $base-01--03;
96f7ec80eSYoshie Muranaka$btn-secondary__txt--hover: $base-01--04;
106f7ec80eSYoshie Muranaka$btn-secondary__txt--disabled: $base-02--03;
11c86ce3c9SYoshie Muranaka
12c86ce3c9SYoshie Muranaka$btn-tertiary__bg: transparent;
136f7ec80eSYoshie Muranaka$btn-tertiary__txt: $base-01--03;
146f7ec80eSYoshie Muranaka$btn-tertiary__txt--hover: $base-01--04;
156f7ec80eSYoshie Muranaka$btn-tertiary__txt--disabled: $base-02--03;
16c86ce3c9SYoshie Muranaka
17c86ce3c9SYoshie Muranaka/***
18c86ce3c9SYoshie MuranakaInclude .btn class in addition to the button type.
19c86ce3c9SYoshie MuranakaThese styles provide structural and base properties
20c86ce3c9SYoshie Muranakashared across all buttons. The additional button
21c86ce3c9SYoshie Muranakatype (.btn-primary, .btn-secondary) will provide color
22c86ce3c9SYoshie Muranakaproperties
23c86ce3c9SYoshie Muranaka***/
24c86ce3c9SYoshie Muranakabutton,
25c86ce3c9SYoshie Muranaka.btn,
26c86ce3c9SYoshie Muranaka[type='button'] {
2751946552SMichael Davis  @include fontFamilyBold;
28c86ce3c9SYoshie Muranaka  @include fastTransition-all;
29c86ce3c9SYoshie Muranaka  border-style: solid;
30c86ce3c9SYoshie Muranaka  border-width: 2px;
31c86ce3c9SYoshie Muranaka  border-color: transparent;
32c86ce3c9SYoshie Muranaka  font-size: 1em;
3399d199f3SIftekharul Islam  text-transform: none;
345bd1dec7SYoshie Muranaka  border-radius: 0;
355bd1dec7SYoshie Muranaka  padding: .5em 1em;
365bd1dec7SYoshie Muranaka  line-height: 1;
37c86ce3c9SYoshie Muranaka  display: inline-block;
3899d199f3SIftekharul Islam  cursor: pointer;
39c86ce3c9SYoshie Muranaka  &[disabled],
408947e701SIftekharul Islam  &.disabled {
41c86ce3c9SYoshie Muranaka    opacity: 1;
4299d199f3SIftekharul Islam    cursor: default;
4399d199f3SIftekharul Islam  }
44c86ce3c9SYoshie Muranaka  &.full-width {
45c86ce3c9SYoshie Muranaka    width: 100%;
46c86ce3c9SYoshie Muranaka  }
47c86ce3c9SYoshie Muranaka  .icon,
48c86ce3c9SYoshie Muranaka  i {
49c86ce3c9SYoshie Muranaka    //button symbol
50c86ce3c9SYoshie Muranaka    font-style: normal;
51c86ce3c9SYoshie Muranaka    font-weight: normal;
52c86ce3c9SYoshie Muranaka    text-transform: none;
53c86ce3c9SYoshie Muranaka    display: inline-block;
54c86ce3c9SYoshie Muranaka    margin-right: 0.3em;
55c86ce3c9SYoshie Muranaka    vertical-align: bottom;
56c86ce3c9SYoshie Muranaka  }
57c86ce3c9SYoshie Muranaka  img {
58c86ce3c9SYoshie Muranaka    width: 1.5em;
59c86ce3c9SYoshie Muranaka    height: 1.5em;
60c86ce3c9SYoshie Muranaka    display: inline-block;
61c86ce3c9SYoshie Muranaka    margin-right: 0.5em;
62c86ce3c9SYoshie Muranaka  }
63c86ce3c9SYoshie Muranaka  svg {
64c86ce3c9SYoshie Muranaka    height: 1.2em;
65c86ce3c9SYoshie Muranaka    width: auto;
66309b5da3Sbeccabroek    max-width: 100%;
6799d199f3SIftekharul Islam  }
68*5e8785d3Smiramurali23
69*5e8785d3Smiramurali23  // Override for specific icons
70*5e8785d3Smiramurali23  .icon-add {
71*5e8785d3Smiramurali23    margin-right: 0;
72*5e8785d3Smiramurali23  }
7399d199f3SIftekharul Islam}
7499d199f3SIftekharul Islam
75c86ce3c9SYoshie Muranaka/***
76c86ce3c9SYoshie MuranakaUse for the primary use-case/s that is non-destructive.
77c86ce3c9SYoshie Muranakae.g. directing to a new page, a call to action
78c86ce3c9SYoshie Muranaka***/
79c96980f8SMichael Davis.btn-primary {
80c86ce3c9SYoshie Muranaka  background-color: $btn-primary__bg;
81c86ce3c9SYoshie Muranaka  border-color: $btn-primary__bg;
82c86ce3c9SYoshie Muranaka  color: $btn-primary__txt;
8399d199f3SIftekharul Islam  &:hover {
84c86ce3c9SYoshie Muranaka    background-color: $btn-primary__bg--hover;
85c86ce3c9SYoshie Muranaka    border-color: $btn-primary__bg--hover;
8699d199f3SIftekharul Islam  }
87c86ce3c9SYoshie Muranaka  &[disabled],
8899d199f3SIftekharul Islam  &.disabled {
89c86ce3c9SYoshie Muranaka    background: $btn-primary__bg--disabled;
90c86ce3c9SYoshie Muranaka    border-color: $btn-primary__bg--disabled;
91c86ce3c9SYoshie Muranaka    color: $btn-primary__txt--disabled;
92c86ce3c9SYoshie Muranaka      .icon {
93c86ce3c9SYoshie Muranaka        fill: $btn-primary__txt--disabled;
9499d199f3SIftekharul Islam      }
9599d199f3SIftekharul Islam  }
96c86ce3c9SYoshie Muranaka  .icon {
97c86ce3c9SYoshie Muranaka    fill: $btn-primary__txt;
9899d199f3SIftekharul Islam  }
9999d199f3SIftekharul Islam}
10051946552SMichael Davis
101c86ce3c9SYoshie Muranaka/***
102c86ce3c9SYoshie MuranakaSecondary buttons are actions that fall secondary or
103c86ce3c9SYoshie Muranakaof less priority to primary buttons.
104c86ce3c9SYoshie MuranakaThese usually come coupled with a primary.
105c86ce3c9SYoshie Muranaka***/
106c86ce3c9SYoshie Muranaka.btn-secondary {
107c86ce3c9SYoshie Muranaka  background-color: $btn-secondary__bg;
108c86ce3c9SYoshie Muranaka  border-color: $btn-secondary__txt;
109c86ce3c9SYoshie Muranaka  color: $btn-secondary__txt;
11051946552SMichael Davis  &:hover {
111c86ce3c9SYoshie Muranaka    background-color: $btn-secondary__bg;
112c86ce3c9SYoshie Muranaka    border-color: $btn-secondary__txt--hover;
113c86ce3c9SYoshie Muranaka    color: $btn-secondary__txt--hover;
114c86ce3c9SYoshie Muranaka    .icon {
115c86ce3c9SYoshie Muranaka      fill: $btn-secondary__txt--hover;
11651946552SMichael Davis    }
11751946552SMichael Davis  }
118c86ce3c9SYoshie Muranaka  &[disabled],
119c86ce3c9SYoshie Muranaka  &.disabled {
120c86ce3c9SYoshie Muranaka    background-color: $btn-secondary__bg;
121c86ce3c9SYoshie Muranaka    border-color: $btn-secondary__txt--disabled;
122c86ce3c9SYoshie Muranaka    color: $btn-secondary__txt--disabled;
123c86ce3c9SYoshie Muranaka    .icon {
124c86ce3c9SYoshie Muranaka      fill: $btn-secondary__txt--disabled;
125c86ce3c9SYoshie Muranaka    }
126c86ce3c9SYoshie Muranaka  }
127c86ce3c9SYoshie Muranaka  .icon {
128c86ce3c9SYoshie Muranaka    fill: $btn-secondary__txt;
129c86ce3c9SYoshie Muranaka  }
130c86ce3c9SYoshie Muranaka}
131c86ce3c9SYoshie Muranaka
132c86ce3c9SYoshie Muranaka/***
133c86ce3c9SYoshie MuranakaTertiary text buttons are used to identify less pressing or
134c86ce3c9SYoshie Muranakaoptional actions given on a page.
135c86ce3c9SYoshie Muranaka***/
136c86ce3c9SYoshie Muranaka.btn-tertiary {
137c86ce3c9SYoshie Muranaka  background-color: $btn-tertiary__bg;
138c86ce3c9SYoshie Muranaka  border-color: $btn-tertiary__bg;
139c86ce3c9SYoshie Muranaka  color: $btn-tertiary__txt;
140c86ce3c9SYoshie Muranaka  &:hover {
141c86ce3c9SYoshie Muranaka    color: $btn-tertiary__txt--hover;
142c86ce3c9SYoshie Muranaka    .icon {
143c86ce3c9SYoshie Muranaka      fill: $btn-tertiary__txt--hover;
144c86ce3c9SYoshie Muranaka    }
145c86ce3c9SYoshie Muranaka  }
146c86ce3c9SYoshie Muranaka  &[disabled],
147c86ce3c9SYoshie Muranaka  &.disabled {
148c86ce3c9SYoshie Muranaka    color: $btn-tertiary__txt--disabled;
149c86ce3c9SYoshie Muranaka    .icon {
150c86ce3c9SYoshie Muranaka      fill: $btn-tertiary__txt--disabled;
151c86ce3c9SYoshie Muranaka    }
152c86ce3c9SYoshie Muranaka  }
153c86ce3c9SYoshie Muranaka  .icon {
154c86ce3c9SYoshie Muranaka    fill: $btn-tertiary__txt;
15551946552SMichael Davis  }
15651946552SMichael Davis}
157fb79e54cSYoshie Muranaka
158fb79e54cSYoshie Muranaka.btn-password-toggle {
159fb79e54cSYoshie Muranaka  position: absolute;
160fb79e54cSYoshie Muranaka  right: 0;
161fb79e54cSYoshie Muranaka  margin-top: -34px;
162fb79e54cSYoshie Muranaka  height: 32px;
163fb79e54cSYoshie Muranaka  width: 52px;
164fb79e54cSYoshie Muranaka  padding-top: 6px;
165fb79e54cSYoshie Muranaka  padding-bottom: 6px;
166fb79e54cSYoshie Muranaka  padding-right: 0;
167fb79e54cSYoshie Muranaka  .icon {
168fb79e54cSYoshie Muranaka    margin-right: 0;
169fb79e54cSYoshie Muranaka  }
170fb79e54cSYoshie Muranaka  &.password-visible {
171fb79e54cSYoshie Muranaka    .icon {
172fb79e54cSYoshie Muranaka      fill: $btn-tertiary__txt--disabled;
173fb79e54cSYoshie Muranaka    }
174fb79e54cSYoshie Muranaka  }
175fb79e54cSYoshie Muranaka  &.password-hidden {
176fb79e54cSYoshie Muranaka    .icon {
177fb79e54cSYoshie Muranaka      // Adding tweaks to make sure the icons
178fb79e54cSYoshie Muranaka      // are in the same place when toggling show/hide
179fb79e54cSYoshie Muranaka      margin-right: 1px;
180fb79e54cSYoshie Muranaka      width: 20px;
181fb79e54cSYoshie Muranaka    }
182fb79e54cSYoshie Muranaka  }
183fb79e54cSYoshie Muranaka}