/* ===========================================
   html elements */

    html, body{
        width:              100%;
        height:             100%;
        margin:             0;
    }

    h1{ margin: 0; }
    h2{ margin: 0; }
    h3{ margin: 0; }
    h4{ margin: 0; }
    h5{ margin: 0; }
    h6{ margin: 0; }

    img{ border: none; }
    img.middle{ vertical-align: middle; }
    img.bottom{ vertical-align: bottom; }

    a{ text-decoration: underline; }
    a:hover{ text-decoration: underline; }
    a:visited{}

    p{ margin-top: 0; }

    .pointer{ cursor: pointer; }

/* ===========================================
   table elements */

    table{ border-collapse: collapse; }

    table.expand{ width: 100%; }

    th, td{
        vertical-align: top;
        padding:        0;
        text-align:     left;
    }

    /*table level assignment*/
    table.middle tr th, table.middle tr td{ vertical-align: middle; }
    table.bottom tr th, table.bottom tr td{ vertical-align: bottom; }
    table.align- tr th, table.align- tr td{ text-align: right; }
    table.-align- tr th, table.-align- tr td{ text-align: center; }

    /* row level alignment */
    table tr.middle th, table tr.middle td{ vertical-align: middle; }
    table tr.bottom th, table tr.bottom td{ vertical-align: bottom; }
    table tr.align- th, table tr.align- td{ text-align: right; }
    table tr.-align- th, table tr.-align- td{ text-align: center; }

    /* cell level assignment */
    table tr th.middle, table tr td.middle{ vertical-align: middle; }
    table tr th.bottom, table tr td.bottom{ vertical-align: bottom; }
    table tr th.align-, table tr td.align-{ text-align: right; }
    table tr th.-align-,table tr td.-align-{ text-align: center; }

/* ===========================================
   list elements */

    ul{
        list-style-type:        disc;
        list-style-position:    outside;
        margin-top:             0;
    }

    ol{
        list-style-type:        decimal;
        list-style-position:    outside;
        margin-top:             0;
    }

    li{ margin-bottom: .5em; }

    dl{}
    dt{}
    dl{}

    /* ul.custom is for including your own symbol inside <li> rather than using the standard markers */
    ul.custom{ list-style-type: none; }
    ul.custom-align{ list-style-type: none; margin-left: 0; padding-left: 0; }
    ul.custom li, ul.custom-align li{ margin-left: 0px; padding-left: .75em; text-indent: -.75em; }

    /* these get you close but will have to be tweaked for various font sizes*/
    /* don't recommend doing this */
    ul.align{ margin-left: -2em; }
    ol.align{ margin-left: -2em; }

    ul.nomarker{ list-style-type: none; }
    ul.nomarker-align{ list-style-type: none; margin-left: 0; padding-left: 0; }

/* ===========================================
   form elements */

    form{ margin: 0px; }
    input{}
    input.middle{ vertical-align: middle; }
    select{}
    option{}

/* ===========================================
   positioning */

    .floats{
        overflow:   hidden;
        width:      100%;
    }

    .clear{ clear: both; }

    .left{ float: left; }
    .right{ float: right; }

    .inline{ display: inline; }

    .relative{ position: relative; }
    .absolute{ position: absolute; }
    .hidden{ visibility: hidden; }

    .block{ display: block; }

    div.center-horizontal{ margin-left:auto; margin-right:auto; }

  /* ===========================================
     common font */

    .bold{ font-weight:bold; }
    .italic{ font-style: italic; }
    .underline{ text-decoration: underline; }

    .line-none{ line-height: 0; }
    .line-single{ line-height: 1em; }
    .line-double{ line-height: 1.4em; }

    .nomargin{ margin: 0; }


