1
/*
2
 * HTML5 Boilerplate
3
 *
4
 * What follows is the result of much research on cross-browser styling.
5
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
6
 * Kroc Camen, and the H5BP dev community and team.
7
 */
8
9
/* ==========================================================================
10
   Base styles: opinionated defaults
11
   ========================================================================== */
12
13
html,
14
button,
15
input,
16
select,
17
textarea {
18
    color: #222;
19
}
20
21
body {
22
    font-size: 1em;
23
    line-height: 1.4;
24
}
25
26
/*
27
 * Remove text-shadow in selection highlight: h5bp.com/i
28
 * These selection declarations have to be separate.
29
 * Customize the background color to match your design.
30
 */
31
32
::-moz-selection {
33
    background: #b3d4fc;
34
    text-shadow: none;
35
}
36
37
::selection {
38
    background: #b3d4fc;
39
    text-shadow: none;
40
}
41
42
/*
43
 * A better looking default horizontal rule
44
 */
45
46
hr {
47
    display: block;
48
    height: 1px;
49
    border: 0;
50
    border-top: 1px solid #ccc;
51
    margin: 1em 0;
52
    padding: 0;
53
}
54
55
/*
56
 * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
57
 */
58
59
img {
60
    vertical-align: middle;
61
}
62
63
/*
64
 * Remove default fieldset styles.
65
 */
66
67
fieldset {
68
    border: 0;
69
    margin: 0;
70
    padding: 0;
71
}
72
73
/*
74
 * Allow only vertical resizing of textareas.
75
 */
76
77
textarea {
78
    resize: vertical;
79
}
80
81
/* ==========================================================================
82
   Chrome Frame prompt
83
   ========================================================================== */
84
85
.chromeframe {
86
    margin: 0.2em 0;
87
    background: #ccc;
88
    color: #000;
89
    padding: 0.2em 0;
90
}
91
92
/* ==========================================================================
93
   Author's custom styles
94
   ========================================================================== */
95
96
97
98
/* ==========================================================================
99
   Helper classes
100
   ========================================================================== */
101
102
/*
103
 * Image replacement
104
 */
105
106
.ir {
107
    background-color: transparent;
108
    border: 0;
109
    overflow: hidden;
110
    /* IE 6/7 fallback */
111
    *text-indent: -9999px;
112
}
113
114
.ir:before {
115
    content: "";
116
    display: block;
117
    width: 0;
118
    height: 100%;
119
}
120
121
/*
122
 * Hide from both screenreaders and browsers: h5bp.com/u
123
 */
124
125
.hidden {
126
    display: none !important;
127
    visibility: hidden;
128
}
129
130
/*
131
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
132
 */
133
134
.visuallyhidden {
135
    border: 0;
136
    clip: rect(0 0 0 0);
137
    height: 1px;
138
    margin: -1px;
139
    overflow: hidden;
140
    padding: 0;
141
    position: absolute;
142
    width: 1px;
143
}
144
145
/*
146
 * Extends the .visuallyhidden class to allow the element to be focusable
147
 * when navigated to via the keyboard: h5bp.com/p
148
 */
149
150
.visuallyhidden.focusable:active,
151
.visuallyhidden.focusable:focus {
152
    clip: auto;
153
    height: auto;
154
    margin: 0;
155
    overflow: visible;
156
    position: static;
157
    width: auto;
158
}
159
160
/*
161
 * Hide visually and from screenreaders, but maintain layout
162
 */
163
164
.invisible {
165
    visibility: hidden;
166
}
167
168
/*
169
 * Clearfix: contain floats
170
 *
171
 * For modern browsers
172
 * 1. The space content is one way to avoid an Opera bug when the
173
 *    `contenteditable` attribute is included anywhere else in the document.
174
 *    Otherwise it causes space to appear at the top and bottom of elements
175
 *    that receive the `clearfix` class.
176
 * 2. The use of `table` rather than `block` is only necessary if using
177
 *    `:before` to contain the top-margins of child elements.
178
 */
179
180
.clearfix:before,
181
.clearfix:after {
182
    content: " "; /* 1 */
183
    display: table; /* 2 */
184
}
185
186
.clearfix:after {
187
    clear: both;
188
}
189
190
/*
191
 * For IE 6/7 only
192
 * Include this rule to trigger hasLayout and contain floats.
193
 */
194
195
.clearfix {
196
    *zoom: 1;
197
}
198
199
/* ==========================================================================
200
   EXAMPLE Media Queries for Responsive Design.
201
   Theses examples override the primary ('mobile first') styles.
202
   Modify as content requires.
203
   ========================================================================== */
204
205
@media only screen and (min-width: 35em) {
206
    /* Style adjustments for viewports that meet the condition */
207
}
208
209
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
210
       only screen and (min-resolution: 144dpi) {
211
    /* Style adjustments for high resolution devices */
212
}
213
214
/* ==========================================================================
215
   Print styles.
216
   Inlined to avoid required HTTP connection: h5bp.com/r
217
   ========================================================================== */
218
219
@media print {
220
    * {
221
        background: transparent !important;
222
        color: #000 !important; /* Black prints faster: h5bp.com/s */
223
        box-shadow:none !important;
224
        text-shadow: none !important;
225
    }
226
227
    a,
228
    a:visited {
229
        text-decoration: underline;
230
    }
231
232
    a[href]:after {
233
        content: " (" attr(href) ")";
234
    }
235
236
    abbr[title]:after {
237
        content: " (" attr(title) ")";
238
    }
239
240
    /*
241
     * Don't show links for images, or javascript/internal links
242
     */
243
244
    .ir a:after,
245
    a[href^="javascript:"]:after,
246
    a[href^="#"]:after {
247
        content: "";
248
    }
249
250
    pre,
251
    blockquote {
252
        border: 1px solid #999;
253
        page-break-inside: avoid;
254
    }
255
256
    thead {
257
        display: table-header-group; /* h5bp.com/t */
258
    }
259
260
    tr,
261
    img {
262
        page-break-inside: avoid;
263
    }
264
265
    img {
266
        max-width: 100% !important;
267
    }
268
269
    @page {
270
        margin: 0.5cm;
271
    }
272
273
    p,
274
    h2,
275
    h3 {
276
        orphans: 3;
277
        widows: 3;
278
    }
279
280
    h2,
281
    h3 {
282
        page-break-after: avoid;
283
    }
284
}