html, body, div, span, applet, embed, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; font-style: inherit; vertical-align: baseline }
:focus { outline: 0 }
body { line-height: 1; color: black }
ol, ul { list-style: none }
table { border-collapse: separate; border-spacing: 0 }
caption, th, td { text-align: left; font-weight: normal }
blockquote:before, blockquote:after,
q:before, q:after { content: "" }
blockquote, q { quotes: "" "" }

.clearfix:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0 }
.clearfix { display: inline-block }
html[xmlns] .clearfix { display: block }
* html .clearfix { height: 1% }

.left { text-align: left }
.right { text-align: right }
.center { text-align: center }
.fleft { float: left }
.fright { float: right }
.clear { clear:both }
.mright { margin-right: 10px }

.notice, .error, .warning, .info { font-weight: bold; padding: 5px; margin: 10px }
.notice { border: 2px solid #9c9; background: #e2f9e3; color: #060 }
.error { border: 2px solid #c00; background: #fcc; color: #c00 }
.warning { border: 2px solid #dd0; background: #ffc; color: #000 }
.info { border: 2px solid #82c2d4; background: #ebf5f8; color: #000 }
#errorExplanation { border: 2px solid #c00; background: #fcc; padding: 10px; margin: 10px }
#errorExplanation p { font-weight: bold }

h1 { font-size: 218% }
h2 { font-size: 164% }
h3 { font-size: 145% }
h4 { font-size: 118% }
input { overflow: visible }

dt:hover { cursor: pointer }