/*  ----------------------------------------------------------------------------
    * Filename:         generic.css
    * Description:      Provides a library of commonly used classes
    * Version:          1.0 (2011-06-06)
    ------------------------------------------------------------------------- */

/*  ----------------------------------------------------------------------------
    1. Display & Visibility
----------------------------------------------------------------------------- */

.block                  { display: block; }
.hidden                 { visibility: hidden; position: absolute; left: -9999px; }
.inline                 { display: inline; }
.none                   { display: none; }
.wide                   { clear: both !important; width: auto !important; float: none !important; }

/*  ----------------------------------------------------------------------------
    2. Alignment & Typography
----------------------------------------------------------------------------- */

.center                 { margin-left: auto; margin-right: auto; }
.left                   { float: left; }
.right                  { float: right; }
.align-left             { text-align: left !important; }
.align-center           { text-align: center !important; }
.align-right            { text-align: right !important; }
.align-justify          { text-align: justify !important; }
.bold                   { font-weight: bold; }
.italic                 { font-style: italic; }
.underline              { text-decoration: underline; }
.strike                 { text-decoration: line-through; }
.capitalize             { text-transform: capitalize; }
.lowercase              { text-transform: lowercase; }
.uppercase              { text-transform: uppercase; }
.wrap                   { white-space: normal; }
.nowrap                 { white-space: nowrap; }

.no-margin              { margin:0 !important; }
.no-margin-left         { margin-left:0 !important; }
.no-margin-right        { margin-right:0 !important; }
.no-margin-top          { margin-top:0 !important; }
.no-margin-bottom       { margin-bottom:0 !important; }

.no-padding             { padding:0 !important; }
.no-padding-left        { padding-left:0 !important; }
.no-padding-right       { padding-right:0 !important; }
.no-padding-top         { padding-top:0 !important; }
.no-padding-bottom      { padding-bottom:0 !important; }

.ellipsis               { white-space:nowrap; overflow:hidden; text-overflow:ellipsis;  }

.table          { width:100%; height:100%; }
.table td       { padding:10px; border:1px solid #e5e5e5; }

.table-holder   { display:table; width:100%; height:100%; }
.table-fixed    { table-layout:fixed; }
.table-cell-holder { display:table-cell; width:100%; height:100%; vertical-align:middle; float:none !important; }

.vertical-align-top { vertical-align: top; }
.vertical-align-bottom { vertical-align: bottom; }
.vertical-align-middle { vertical-align: middle; }

.table-responsive {
    min-height: 0.01%;
    overflow-x: auto;
}

@media screen and (max-width: 767px) {
    .table-responsive {
        overflow-y: hidden;
        width: 100%;
    }
    .table-responsive > .table {
        margin-bottom: 0;
    }
    .table-responsive > .table > tbody > tr > td, .table-responsive > .table > tbody > tr > th, .table-responsive > .table > tfoot > tr > td, .table-responsive > .table > tfoot > tr > th, .table-responsive > .table > thead > tr > td, .table-responsive > .table > thead > tr > th {
        white-space: nowrap;
    }
    .table-responsive > .table-bordered {
        border: 0 none;
    }
    .table-responsive > .table-bordered > tbody > tr > td:first-child, .table-responsive > .table-bordered > tbody > tr > th:first-child, .table-responsive > .table-bordered > tfoot > tr > td:first-child, .table-responsive > .table-bordered > tfoot > tr > th:first-child, .table-responsive > .table-bordered > thead > tr > td:first-child, .table-responsive > .table-bordered > thead > tr > th:first-child {
        border-left: 0 none;
    }
    .table-responsive > .table-bordered > tbody > tr > td:last-child, .table-responsive > .table-bordered > tbody > tr > th:last-child, .table-responsive > .table-bordered > tfoot > tr > td:last-child, .table-responsive > .table-bordered > tfoot > tr > th:last-child, .table-responsive > .table-bordered > thead > tr > td:last-child, .table-responsive > .table-bordered > thead > tr > th:last-child {
        border-right: 0 none;
    }
    .table-responsive > .table-bordered > tbody > tr:last-child > td, .table-responsive > .table-bordered > tbody > tr:last-child > th, .table-responsive > .table-bordered > tfoot > tr:last-child > td, .table-responsive > .table-bordered > tfoot > tr:last-child > th {
        border-bottom: 0 none;
    }
}
/*  ----------------------------------------------------------------------------
    3. Clearing & Horizontal lines
----------------------------------------------------------------------------- */

.clear,
.clear-left,
.clear-right,
.separator              { display: table; font-size: 0; height: 0; line-height: 0; overflow: hidden; background: transparent; }
.clear                  { clear: both; }
.clear-left             { clear: left; }
.clear-right            { clear: right; }
.separator              { width: 100%; }

/*  Clearfix
----------------------------------------------------------------------------- */

.clearfix:before,
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  overflow: hidden;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    zoom: 1; /* IE < 8 */
}

/*  ----------------------------------------------------------------------------
    5. Forms & Iframe
----------------------------------------------------------------------------- */

input[type="button"],
input[type="reset"],
input[type="submit"],
input.input-button      { cursor: pointer; overflow: visible; text-align: center; }
input[type="checkbox"],
input.input-checkbox    { background: #FFFFFF; }
input[type="checkbox"],
input[type="radio"],
input.input-checkbox,
input.input-radio       { width: 13px !important; height: 13px !important; }

iframe { display:block; }

/*  ----------------------------------------------------------------------------
    6. Debugging
----------------------------------------------------------------------------- */

.debug                  { background: #FF9900 !important; }

/*  ----------------------------------------------------------------------------
    7. Media
----------------------------------------------------------------------------- */

@media screen {
    .screen             { }
    .print              { display: none !important; }
}
@media print {
    .screen             { display: none !important; }
    .print              { }
}