/* =============================================================================
   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; }
   
   
   /* =============================================================================
      Base test
      ========================================================================== */
   
   /*
    * 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units (left in for completeness)
    * 2. Force vertical scrollbar in non-IE
    * 3. Prevent iOS text size adjust on device orientation change, without disabling user zoom
    */
   
   html { font-size: 100%; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
   
   body { margin: 0; font-size: .875em; line-height: 1.4; }
   
   body, button, input, select, textarea { font-family: sans-serif; color: rgb(34, 34, 34); }
   
   /*
    * Remove text-shadow in selection highlight
    * These selection declarations have to be separate
    */
   ::-moz-selection { background: rgb(50, 151, 253); color: rgb(255, 255, 255); text-shadow: none; }
   ::selection { background: rgb(50, 151, 253); color: rgb(255, 255, 255); text-shadow: none; }
   
   
   /* =============================================================================
      Headings
      ========================================================================== */
   h1, h2, h3, h4, h5, h6, th {
     color: rgb(28, 64, 148);
   }
   
   h4, h6 {
     color: rgb(34, 34, 34);
   }
   
   h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
     margin: 1em 0 .5em;
   }
     h1, .h1 {
       font-size: 20px;
       font-weight: bold;
     }
     h2, .h2 {
       font-size: 16px;
       font-weight: bold;
     }
     h3, .h3 {
       font-size: 14px;
       font-weight: bold;
     }
     h4, .h4 {
       font-size: 14px;
       font-weight: bold;
     }
     h5, .h5 {
       font-weight: bold;
       font-size: 12px;
     }
     h6, .h6 {
       font-size: 12px;
       font-weight: normal;
     }
   
   
   /* =============================================================================
      Links
      ========================================================================== */
   
   a { color: rgb(28, 64, 148); }
   a:visited { color: rgb(128, 0, 128); }
   a:hover { color: rgb(93, 151, 50); }
   a:focus { outline: thin dotted; }
   
   /* Improve readability when focused and hovered in all browsers */
   a:hover, a:active { outline: 0; }
   
   
   /* =============================================================================
      Typography
      ========================================================================== */
   abbr { cursor: help; }
   abbr[title] { border-bottom: 1px dotted; }
   
   b, strong { font-weight: bold; }
   
   blockquote {
     margin: 0 0 1em;
     padding: 0 0 0 15px;
     border-left: 5px solid rgb(238, 238, 238);
   }
     blockquote p {
       margin: 0;
     }
     blockquote small {
       display: block;
       line-height: 18px;
       color: rgb(153, 153, 153);
     }
       blockquote small::before {
         content: '\2014 \00A0';
       }
     blockquote.float-r {
       padding: 0 15px 0 0;
       border-left: 0;
       border-right: 5px solid rgb(238, 238, 238);
     }
   
   dfn { font-style: italic; }
   
   hr { display: block; height: 1px; border: 0; border-top: 1px solid rgb(204, 204, 204); margin: 1em 0; padding: 0; }
   
   ins { background: rgb(255, 255, 153); color: rgb(0, 0, 0); text-decoration: none; }
   
   mark { background: rgb(255, 255, 0); color: rgb(0, 0, 0); font-style: italic; font-weight: bold; }
   
   /* Redeclare monospace font family */
   pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
   
   /* Improve readability of pre-formatted text in all browsers */
   pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
   
   q { quotes: none; }
   q:before, q:after { content: ""; content: none; }
   
   small { font-size: 85%; }
   
   
   /* =============================================================================
      Embedded content
      ========================================================================== */
   
   /*
    * 1. Improve image quality when scaled in IE7 (left for completeness)
    * 2. Remove the gap between images and borders on image containers
    */
   
   img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
   
   /*
    * Correct overflow not hidden in IE9
    */
   
   svg:not(:root) { overflow: hidden; }
   
   
   /* =============================================================================
      Figures
      ========================================================================== */
   
   figure { margin: 0; }  
   
   /*
    * 1. Correct color not inheriting in IE6/7/8/9
    * 2. Correct alignment displayed oddly in IE6/7 (left completeness)
    */
   
   legend { border: 0; *margin-left: -7px; padding: 0; }
  
  .callout {
    border-radius: 10px;
    background-color: #f3f3f3;
  }
  
  /* ==|== Margins ========================================================== */
.mar-none { margin: 0 !important; }
.mar-divide { margin: .5em !important; }
.mar-default { margin: 1em !important; }
.mar-double { margin: 2em !important; }

.mar-b-none { margin-bottom: 0 !important; }
.mar-l-none { margin-left: 0 !important; }
.mar-r-none { margin-right: 0 !important; }
.mar-t-none { margin-top: 0 !important; }

.mar-b-divide { margin-bottom: .5em !important; }
.mar-l-divide { margin-left: .5em !important; }
.mar-r-divide { margin-right: .5em !important; }
.mar-t-divide { margin-top: .5em !important; }

.mar-b-default { margin-bottom: 1em !important; }
.mar-l-default { margin-left: 1em !important; }
.mar-r-default { margin-right: 1em !important; }
.mar-t-default { margin-top: 1em !important; }

.mar-b-double { margin-bottom: 2em !important; }
.mar-l-double { margin-left: 2em !important; }
.mar-r-double { margin-right: 2em !important; }
.mar-t-double { margin-top: 2em !important; }


/* ==|== Padding ========================================================== */
.pad-none { padding: 0 !important; }
.pad-divide { padding: .5em !important; }
.pad-default { padding: 1em !important; }
.pad-double { padding: 2em !important; }

.pad-b-none { padding-bottom: 0 !important; }
.pad-l-none { padding-left: 0 !important; }
.pad-r-none { padding-right: 0 !important; }
.pad-t-none { padding-top: 0 !important; }

.pad-b-divide { padding-bottom: .5em !important; }
.pad-l-divide { padding-left: .5em !important; }
.pad-r-divide { padding-right: .5em !important; }
.pad-t-divide { padding-top: .5em !important; }

.pad-b-default { padding-bottom: 1em !important; }
.pad-l-default { padding-left: 1em !important; }
.pad-r-default { padding-right: 1em !important; }
.pad-t-default { padding-top: 1em !important; }

.pad-b-double { padding-bottom: 2em !important; }
.pad-l-double { padding-left: 2em !important; }
.pad-r-double { padding-right: 2em !important; }
.pad-t-double { padding-top: 2em !important; }


.message {
    border: 1px solid;
    margin: 0px .25em;
    padding: .25em .5em;
    display: inline-block;
    border-radius: 5px;
}

.message-summary {
    font-size: 20px;
    font-weight: bold;
    margin: .25em;
}

.message-detail {
    margin-left: .25em;
}

.message-info  {
    color: #1c4094;
    background-color: #f2f8ff;
    border-color: #acc7e5
}

.message-warn  {
    color: #c88a37;
    background-color: #fff9f2;
    border-color: #e5cdac
}

.message-error  {
    color: #b94a48;
    background-color: #fef2f2;
    border-color: #e5acac
}

.message-success  {
    color: #5d9732;
    background-color: #f6fff2;
    border-color: #bbe5ac
}