html, body, div, span, applet, object, iframe, table, caption, tbody, tfoot, thead, tr, th, td, 
 del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, 
 h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, 
 dl, dt, dd, ol, ul, li, fieldset, form, label, legend {
    vertical-align: baseline;
    font-family: inherit;
    font-weight: inherit;
    font-style: inherit;
    font-size: 100%;
    outline: 0;
    padding: 0;
    margin: 0;
    border: 0;
    }
 /*  HTML5 display definitions */
 article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
 audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
 audio:not([controls]) { display: none; }
 [hidden] { display: none; }    
 /* remove text-shadow in selection highlight */
 ::-moz-selection { 
    color: #fff; 
    text-shadow: none; 
    }
 ::selection { 
    color: #fff; 
    text-shadow: none; 
    }   
 /* remember to define focus styles! */
 :focus, a:hover, a:active {
    outline: 0;
    }
 html { 
    font-size: 100%; 
    -webkit-text-size-adjust: 100%; 
    -ms-text-size-adjust: 100%; 
    }
 html, button, input, select, textarea { 
    font-family: sans-serif; 
    color: #222; 
    }
 body {
    line-height: 1;
    margin: 0; font-size: 1em;
    color:#333;
    }
 small { font-size: 85%; }
 sub, sup { 
    font-size: 75%; 
    line-height: 0; 
    position: relative; 
    vertical-align: baseline; 
    }
 sup { top: -0.5em; }
 sub { bottom: -0.25em; }
 ol, ul {
    list-style: none;
    }
 /* tables still need cellspacing="0" in the markup */
 table {
    border-collapse: separate;
    border-spacing: 5px;
    }
 caption, th, td {
    font-weight: normal;
    text-align: left;
    }
 /* remove possible quote marks (") from <q> & <blockquote> */
 blockquote:before, blockquote:after, q:before, q:after {
    content: "";
    }
 blockquote, q {
    quotes: "" "";
    }
 img { 
    border: 0; 
    -ms-interpolation-mode: bicubic; 
    vertical-align: middle; 
    }
 svg:not(:root) { overflow: hidden; }
 figure { margin: 0; }
 ul, ol { margin: 0; padding: 0; list-style: none; list-style-image: none; }
 /* forms and inputs */
 form { margin: 0; }
 fieldset { 
    border: 0; 
    margin: 0; 
    padding: 0; 
    }
 label { cursor: pointer; }
 legend { 
    border: 0; 
    *margin-left: -7px; 
    padding: 0; 
    white-space: normal; 
    }
 button, input, select, textarea { 
    font-size: 100%; 
    margin: 0; 
    vertical-align: baseline; 
    *vertical-align: middle; 
    }
 button, input { line-height: normal; }
 button, input[type="button"], input[type="reset"], input[type="submit"] { 
    cursor: pointer; 
    -webkit-appearance: button; 
    *overflow: visible; 
    }
 button[disabled], input[disabled] { cursor: default; }
 input[type="checkbox"], input[type="radio"] { 
    box-sizing: border-box; 
    padding: 0; 
    *width: 13px; 
    *height: 13px; 
    }
 input[type="search"] { 
    -webkit-appearance: textfield; 
    -moz-box-sizing: content-box; 
    -webkit-box-sizing: content-box; 
    box-sizing: content-box; 
    }
 input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
 button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
 textarea { overflow: auto; vertical-align: top; resize: vertical; }
 input:valid, textarea:valid {  }
 input:invalid, textarea:invalid { background-color: #f0dddd; }
 
 .chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }