/* Common CSS Classes */
/* Text & image Horizontal alignment*/
.aligncenter { text-align: center !important; }
.alignleft { text-align: left !important; }
.alignright { text-align: right !important; }

/* Image Vertical alignment */
.valigntop { vertical-align: top !important; }
.valigntexttop { vertical-align: text-top !important; }
.valignmiddle { vertical-align: middle !important; }
.valignbottom { vertical-align: bottom !important; }
.valigntextbottom { vertical-align: text-bottom !important; }
.valignbaseline { vertical-align: baseline !important; }
.valignsub { vertical-align: sub !important; }
.valignsuper { vertical-align: super !important; }

/* Margins */
.nomargin { margin: 0em !important; }
.automargin { margin: auto !important; }
.autolrmargin { margin-left: auto !important; margin-right: auto !important; }
.autotbmargin { margin-top: auto !important; margin-bottom: auto !important; }
.marginhalfem { margin: .5em !important; }
.marginlhalfem { margin-left: .5em !important; }
.marginrhalfem { margin-right: .5em !important; }
.marginlrhalfem { margin-left: .5em !important; margin-right: .5em !important; }
.marginthalfem { margin-top: .5em !important; }
.marginbhalfem { margin-bottom: .5em !important; }
.margintbhalfem { margin-top: .5em !important; margin-bottom: .5em !important; }

/* Padding */
.nopadding { padding: 0em !important; }
.autopadding { padding: auto !important; }
.autolrpadding { padding-left: auto !important; padding-right: auto !important; }
.autotbpadding { padding-top: auto !important; padding-bottom: auto !important; }
.paddinghalfem { padding: .5em !important; }
.paddinglhalfem { padding-left: .5em !important; }
.paddingrhalfem { padding-right: .5em !important; }
.paddinglrhalfem { padding-left: .5em !important; padding-right: .5em !important; }
.paddingthalfem { padding-top: .5em !important; }
.paddingbhalfem { padding-bottom: .5em !important; }
.paddingtbhalfem { padding-top: .5em !important; padding-bottom: .5em !important; }

/* Display modes */
.inline { display: inline !important; }
.block { display: block !important; }
.inline-block { display: inline-block !important; }
.table { display: table !important; }
.tablerow { display: table-row; }
.tablecell { display: table-cell !important; }
.hidden { display: none !important; }
.invisible { visibility: hidden !important; }
.visible { visibility: visible !important; }

/* Preset widths */
.wholewidth { width: 100% !important; }
.width99 { width: 99% !important; }
.width98 { width: 98% !important; }
.width97 { width: 97% !important; }
.width96 { width: 96% !important; }
.width95 { width: 95% !important; }
.width90 { width: 90% !important; }
.width80 { width: 80% !important; }
.width60 { width: 60% !important; }
.width50 { width: 50% !important; }
.width49 { width: 49% !important; }
.width48 { width: 48% !important; }
.width47 { width: 47% !important; }
.width46 { width: 46% !important; }
.width45 { width: 45% !important; }
.width40 { width: 40% !important; }
.width20 { width: 20% !important; }
.widthauto { width: auto !important; }

/* Clearing & floating */
.clearboth { clear: both !important; }
.clearleft { clear: left !important; }
.clearright { clear: right !important; }
.floatleft { float: left !important; }
.floatright { float: right !important; }
.nofloat { float: none !important; }

/* Borders */
.noborder { border: none !important; }
.border { border: solid 1px; }
.bottomborder { border-bottom: solid 1px; }
.topborder { border-top: solid 1px; }
.leftborder { border-left: solid 1px; }
.rightborder { border-right: solid 1px; }

/* Overflow */
.overflowhidden { overflow: hidden !important; }
.overflowshow { overflow: visible !important; }
.overflowauto { overflow: auto !important; }

/* Indention */
.indent { padding-left: 8em !important; }
.blockindent { margin-left: 8em !important; }

/* Text Decoration */
.nodecoration { text-decoration: none; }
.underline { text-decoration: underline; }
.overline { text-decoration: overline; }
.strikeout { text-decoration: line-through; }
.blink { text-decoration: blink; }

/* Positioning */
.relative { position: relative; }

/* IE hacks */
.gainlayout { _zoom: 1 !important; }