aboutsummaryrefslogtreecommitdiffstats
path: root/demo/src/less/components/buttons.less
blob: d15389672f7571e022239b7d901fec4771ac632c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
// ==========================================================================
// Buttons
// ==========================================================================

nav {
    ul {
        list-style: none;
        margin: 0;
        padding: 0;
        font-size: 0;
    }
    li {
        display: inline-block;
        margin-top: (@padding-base / 2);
        .font-size();
        white-space: nowrap;
    }
    li + li {
        margin-left: @padding-base;
    }
}

// Tabs
.btn__bar {
    position: relative;
    margin: 0 auto @padding-base;
    white-space: nowrap;

    &::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        height: 1px;
        background: @off-white;
    }

    ul {
        position: relative;
        z-index: 1;
        display: inline-block;
    }
    li {
        margin: 0;

        &:first-child .btn {
            border-radius: 4px 0 0 4px;
        }
        &:last-child .btn {
            border-radius: 0 4px 4px 0;
        }
        & + li .btn {
            margin-left: -1px;
        }

        &.active .btn {
            &:extend(.btn--primary);
            position: relative;
            z-index: 1;

            .icon {
                color: inherit;
            }
        }
        &.active + li .btn:hover {
            z-index: 0;
        }
    }
    .btn {
        position: relative;
        display: block;
        border-radius: 0;

        &:hover,
        &:focus {
            z-index: 1;
        }
    }

    @media (min-width: 560px) {
        margin-bottom: (@padding-base * 2);
    }
}

// Shared
.btn,
.btn__count {
    display: inline-block;
    vertical-align: middle;
    border-radius: @border-radius-base;
    user-select: none;
    font-weight: @font-weight-bold;
}

// Buttons
.btn {
    padding: (@padding-base / 2) ((@padding-base / 2) + 2);
    background: #fff;
    border: 1px solid @gray-lighter;
    color: @gray;
    transition: all .2s ease;
    .font-size(@font-size-small);

    &:hover,
    &:focus {
        border-color: @gray-light;
    }
}

// Sizes
.btn--large {
    padding: (@padding-base / 2) @padding-base;
    .font-size();
}

// Styles
.btn--primary {
    background-color: @link-color;
    border-color: @link-color;
    color: #fff;

    &:hover,
    &:focus {
        color: #fff;
        border-color: darken(@link-color, 5%);
    }
}
.btn--youtube .icon {
    color: @color-youtube;
}
.btn--vimeo .icon {
    color: @color-vimeo;
}
.btn--twitter .icon {
    color: @color-twitter;
}

// Count bubble
.btn__count {
    position: relative;
    margin-left: (@padding-base / 2);
    padding: (@padding-base / 2) (@padding-base * .75);
    background: #fff;
    border: 1px solid @gray-lighter;

    &::before {
        content: "";
        position: absolute;
        display: block;
        width: @arrow-size;
        height: @arrow-size;
        left: 1px;
        top: 50%;
        margin-top: -(@arrow-size / 2);

        background: inherit;
        border: inherit;
        border-width: 1px 0 0 1px;
        transform: rotate(-45deg) translate(-50%, -50%);
    }
}