2 box-sizing: border-box;
3 font-family: sans-serif;
9 color: inherit; background: transparent;
10 padding: 0; margin: 0;
15 color: #000; background-color: #FFF;
18 p { margin-bottom: 1em; }
21 text-decoration: underline;
26 i, em { font-style: italic; }
27 b, strong { font-weight: bolder; }
28 ul, ol { margin-left: 1.125em; }
36 h1:first-child, h2:first-child, h3:first-child,
37 p + h1, p + h2, p + h3 {
41 h4, h5, h6, form legend {
46 h1 { font-size: 1.5em; }
47 h2 { font-size: 1.125em; }
49 select, input, button, textarea,
51 display: inline-block;
52 background-color: #FFF;
55 vertical-align: text-bottom;
60 text-decoration: none;
63 select { padding: .375em 0; }
65 input[type=radio], input[type=checkbox] {
66 vertical-align: baseline;
69 button, input[type=button],
71 box-shadow: .125em .125em .25em;
74 label { margin-right: .75em; }
79 /* =========== FILTER AND SEARCH Headers ========= */
81 form.search, form.sort, form.filter, form.newcard, form.newcourses {
82 margin-top: 1em; padding: 0 1em;
85 form.filter > h1 { display: none; }
87 form.filter fieldset { margin-top: .5em; }
88 form.filter fieldset.item + fieldset.item legend { display: none; }
89 form.filter fieldset.item input[type=radio] { display: none; }
90 form.filter fieldset.item input[type=radio] + label {
93 background-color: #EEE;
95 border-width: .5pt .25pt 0 .25pt;
97 form.filter fieldset.item input[type=radio] + label:first-of-type {
98 border-left: 1pt solid;
100 form.filter fieldset.item input[type=radio]:checked + label {
102 background-color: #FFF;
103 box-shadow: .125em -.125em .125em #888;
106 form.filter fieldset.item input[type=text],
107 form.filter fieldset.item fieldset.categories {
112 padding: .25em .75em;
114 box-shadow: .125em .125em .25em #888;
116 form.filter fieldset.item fieldset.categories { display: none; }
117 form.filter fieldset.item input[value=CATEGORIES]:checked + label + input[type=text] { display: none; }
118 form.filter fieldset.item input[value=CATEGORIES]:checked + label + input[type=text] + fieldset.categories { display: block; }
120 form.filter fieldset.order legend {
121 float: left; margin-right: 1em;
124 form.filter fieldset label,
125 form.filter fieldset a { white-space: pre;}
126 form.filter button[type=submit] {
127 margin-top: .5em; margin-bottom: .5em;
131 /* ============ LIST ITEMS, Generic ============= */
137 width: 98%; width: calc(100% - 2em);
138 margin-left: auto; margin-right: auto;
140 box-shadow: .125em .125em .25em;
144 /* HACK: put anchor point 10em above card and highlight target element */
145 div:target { box-shadow: none; z-index: 0; }
158 top: 10em; bottom: 0;
159 box-shadow: .125em .125em .25em;
160 animation: highlight 4s;
163 @keyframes highlight { from { background-color: #FF0; } to { background-color: transparent; } }
166 div .section, form .section {
171 word-break: break-word;
174 div .section :last-child, form .section :last-child {
178 div .section h2, form .section h2,
179 div .section h3, form .section h3 {
180 border-bottom: 1pt solid #EEE;
182 div .control, form .control {
183 background-color: #EEE;
188 @media(min-width: 60em) {
189 div .section, form .section {
191 width: calc(100% / 10);
193 div .section :last-child { margin-bottom: 0; }
194 div .control, form .control {
195 background-color: transparent;
197 div .section:nth-of-type(2n) {
198 background-color: #EEE;
201 @media(min-width: 80em) {
202 div .control, form .control {
204 width: calc(100% / 10);
206 div .control .item, form .control .item {
208 margin-bottom: .25em;
212 div .section .item, form .section .item,
213 form .section.attendance > label {
218 form .section .item {
219 margin-bottom: .25em;
222 form .section button[value^=addfield] {
224 margin-top: .5em; padding: 0 .375em;
227 /* HACK: "responsive" Delete Button above each field */
228 form input.delete { display: none; }
229 form input.delete + label {
233 max-width: .75em; height: .875em; overflow: hidden;
234 color: #FBB; background-color: #444;
235 margin: 0; padding: .125em .5em 0 .5em;
236 border-radius: 4pt 4pt 0 0;
237 transition: max-width .3s;
239 form input.delete + label:before { content: '\274c '; margin-right: .5em; }
240 form input.delete + label:hover { max-width: 10em; }
241 -form input.delete + label:hover:before { content: ''; }
242 -form input.delete + label:hover:after { content: ' \274c'; }
243 form input.delete:checked + label,
244 form input.delete:checked + label + * {
250 /* ====== right hand Control Buttons on list items ====== */
257 form .control .item {
258 display: inline-block;
259 margin-bottom: .25em;
260 vertical-align: text-bottom;
263 /* Combined Select/Submit Box */
264 form .control .item.newfield { box-shadow: .125em .125em .25em; }
265 form .control .item.newfield select { margin-right: -1pt; }
266 form .control .item.newfield button { box-shadow: none; }
269 /* HACK: Delete Checkbox before delete Button */
270 form .control .item.delete {
272 bottom: .375em; left: .25em; width: auto;
273 padding-bottom: calc(2.25em + 2pt);
276 form .control .item.delete input + label + button {
279 bottom: 0; width: 100%;
281 background-color: #FEE;
284 form .control .item.delete:after {
285 content: attr(label);
288 bottom: 0; width: 100%;
293 box-shadow: .125em .125em .25em;
295 form .control .item.delete input:checked + label + button { display: block; }
298 @media(min-width: 80em) {
299 form .control { padding: .25em; min-height: 16em; }
300 form .control .item { width: 100%; }
301 form .control .item.newfield select { width: calc(100% - 2.5em); }
302 form .control .item.delete { bottom: .125em; right: .25em; }