
/* ################################################# */
/*  RobHolmes.net
/*  CSS Stylesheet
/*  Copyright 2007
/* ################################################# */
/*  Author: Rob Holmes
/* ################################################# */


/* ########################### */
/*  Browser Reset
/* ########################### */

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img { 
	border:0;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym {
  border:0;
}

#sfWebDebugBar { float:right; position:relative !important; }

/* ########################### */
/*  Layout Styles
/* ########################### */

  body {
    background:#191919;
    color:#6f6f6f;
  }
  
  .clearup { clear:left; }
  

/* ########################### */
/*  Typography Styles
/* ########################### */

  body,
  textarea        { font: small Arial, Sans-Serif; }
  
  a               { color:#ffffff; text-decoration:none; border-bottom:1px dashed #6f6f6f; }
  a:hover         { color:#419C1D; text-decoration:none; }
  
  h1, h2, h3, h4  { color:#ffffff; }
  
  h1              { font-size:290%; }
  .content h1     { font-size:250%; padding-bottom:0.1em; }
  h2              { font-size:170%; }
  h3              { font-size:140%; }
  h4              { font-size:110%; color:#419C1D; padding-bottom:0.3em; }
  h5              { font-size:100%; padding-bottom:0.5em; }
  
  p               { margin:0.75em 0; line-height:1.4em; }
  
  strong          { font-weight:bold; }
  
/* ########################### */
/*  Form Elements
/* ########################### */

  fieldset p { margin:0; padding:0.2em 0; }
  fieldset p input {  }
  fieldset p label {
    width:140px;
    float:left;
    text-align:right;
    padding-right:10px;
  }
  fieldset p span input {
    vertical-align:middle;
  }
  
  input, textarea, select {
    padding:1px 4px;
    background-color:#303030;
    border:1px solid #808080;
    color:#ffffff;
    font-size:100%;
  }
  input:focus, textarea:focus, select:focus {
    border:1px solid #ffffff;
  }
  
  textarea {
    height:10em;
    width:300px;
  }
  
  fieldset p.submit { margin-left:150px; }
  fieldset p.submit input { font-weight:normal; }
  fieldset p.submit input:hover { color:#419C1D; }
  
  .form_error {
    float:left;
    width:475px;
    padding:4px 0 0 150px;
    color:#F00;
  }
  
  img#cryptogram {
    margin-top:4px;
    border:1px solid #808080;
  }
  a#cryptogram_reload {
    font-size:80%;
    cursor:pointer;
  }
  #anti_spam_captcha {
    float:left; clear:left;
  }

/* ########################### */
/*  Header
/* ########################### */

  #header {
    float:left;
    width:100%;
    background:#000000 url(/gfx/template/bg_stripe.gif) bottom left repeat-x;
  }
    #header .page {
      clear:left;
      width:900px;
      margin:0 auto;
      padding:32px 32px 36px;
    }
      #header h1,
      #header h2 {
        
      }
      #header h1 span {
        font-size:70%;
      }
      #header h1 span,
      #header h2 {
        color:#6f6f6f;
      }

/* ########################### */
/*  Footer
/* ########################### */

  #footer {
    clear:both;
    width:100%;
    padding:32px 0;
    background:#000000 url(/gfx/template/bg_stripe_inverted.gif) top left repeat-x;
    border-top:1px solid #0a0a0a;
    text-align:center;
  }
    #footer a {
      margin:0 8px;
      
    }

/* ########################### */
/*  Navigation
/* ########################### */

  #navtop {
    float:left; clear:left;
    width:100%;
    background:#161616;
    border-bottom:1px solid #303030;
  }
    
    #navtop ul {
      width:900px;
      margin:0 auto;
    }
      
      #navtop ul li {
        float:right;
      }
        
        #navtop ul li a {
          display:block;
          padding:8px 16px 10px;
          border:none;
          border-right:1px solid #161616;
          border-left:1px solid #161616;
          color:#6f6f6f;
        }
        #navtop ul li a:hover,
        #navtop ul li a.current {
          background:#419C1D url(/gfx/template/bg_menu_highlight.gif) bottom left repeat-x;
          border-right:1px solid #2d6d14;
          border-left:1px solid #4ab422;
          color:#ffffff;
        }
  
  #navsub {
    float:left; clear:left;
    width:100%;
    background:#323232;
    border-top:1px solid #4f4f4f;
    border-bottom:1px solid #0a0a0a;
  }
    
    #navsub ul {
      width:900px;
      margin:0 auto;
    }
      
      #navsub ul li {
        float:left;
        padding-right:10px;
      }
      #navsub ul li.right {
        float:right;
      }
      #navsub ul li.highlight {
        color:#419C1D !important;
      }
        
        #navsub ul li a,
        #navsub ul li span {
          display:block;
          padding:8px 0 10px;
          border:none;
          color:#808080;
        }
        #navsub ul li a:hover {
          color:#419C1D;
        }
        #navsub ul li a.current {
          color:#419C1D;
        }

/* ########################### */
/*  Content
/* ########################### */

  .page {
    clear:left;
    width:900px;
    margin:0 auto;
    padding:0 32px 32px;
  }
  
  .content {
    float:left;
    width:626px;
    padding:16px 16px 16px 0;
  }
    .content .title {
      padding-bottom:12px;
    }
  
/* ########################### */
/*  Sidebar
/* ########################### */

  .sidebar {
    float:right;
    width:242px;
    padding:16px 0 16px 16px;
  }
  
  .sidebar div,
  .sidebar fieldset {
    padding:0 0 16px;
  }
  
  .tag_cloud {
    text-align:justify;
    line-height:2em;
  }
    .tag_cloud a {
      margin:0 2px; display:inline;
      vertical-align:bottom;
    }
  
  .sidebar fieldset p label {
    float:left;
    text-align:left;
    width:80px;
    padding-right:10px;
  }
  .sidebar fieldset p input#username,
  .sidebar fieldset p input#password {
    width:120px;
  }
  
  .sidebar fieldset p.submit {
    padding-left:90px;
    margin:0;
  }
  
/* ########################### */
/*  Blog
/* ########################### */

  .post {
    padding:0 0 20px;
  }
    .post h1 {
      padding-bottom:5px;
    }
      .post h1 a { border:none; }
      
    .post h5 { overflow:hidden; }
      .post h5 span { float:right; margin-bottom:-3px; }
        .post h5 span a { border:none; }
          .post h5 span a img { opacity:0.6;filter:alpha(opacity=25); }
    
    .post .body {
      padding:4px 0 5px;
      margin:1px 0 2px;
      border-top:1px dashed #303030;
      border-bottom:1px dashed #303030;
    }
    pre, code {
      display:block;
      width:624px;
      padding: 8px;
      background: #323232;
      border:1px dashed #4f4f4f;
      font-family: 'Bitstream Vera Sans Mono', 'Courier New', monospace;
      overflow-x:auto;
    }
    html>body pre, code {
      overflow:auto;
    }
    
    .post .tags {
      text-align:right;
    }
    
/* ########################### */
/*  Comment
/* ########################### */

  .comment_number {
    width:32px;
    padding-right:10px;
    font-size:2em;
    color:#252525;
    text-align:right;
    vertical-align:top;
  }
    .comment_number span { font-size:2em; }
  
  table.comment {
    width:100%;
    margin-bottom:10px;
  }
    
  td.comment {
    display:inline;
    padding:0 0 8px;
  }
    td.comment h4 {
      padding-bottom:5px;
      color:#ffffff;
    }
    
    td.comment .body {
      padding:4px 0 5px;
      margin:1px 0 2px;
      border-top:1px dashed #303030;
      border-bottom:1px dashed #303030;
    }
    
  form.comment {
    
  }
    form.comment fieldset {
      float:left;
      width:201px;
    }
      form.comment fieldset input.field {
        width:172px;
      }
    
    form.comment fieldset.body {
      float:right;
      width:425px;
    }
      form.comment fieldset.body textarea {
        width:415px; height:74px;
      }
      
    form.comment fieldset label {
      text-align:left;
    }
    
    form.comment fieldset p {
      padding-bottom:0;
    }
    form.comment fieldset p.submit {
      margin-top:10px;
      margin-left:0px;
    }
      form.comment fieldset p.submit input {
        float:right;
      }
    
    form.comment fieldset .form_error {
      width:201px;
      padding:8px 0 4px;
    }
    form.comment fieldset.body .form_error {
      width:425px;
    }
    
/* ########################### */
/*  Pagination
/* ########################### */

  ul.pagination {
    width:100%;
    overflow:hidden;
    margin-bottom:12px;
  }
    ul.pagination li {
      float:left;
      padding:4px 8px;
      margin-right:10px;
      background:#323232;
      color:#808080;
    }
    ul.pagination li.right {
      float:right;
      margin-right:0;
      margin-left:10px;
    }
    
/* ########################### */
/*  Icons
/* ########################### */

  .icon_login { background:url(/gfx/icons/user.png) 2px 50% no-repeat; padding-left:24px !important; }
  .icon_admin { background:url(/gfx/icons/cog_edit.png) 2px 50% no-repeat; padding-left:24px !important; }
  
  .icon_online { background:url(/gfx/icons/status_online.png) 2px 50% no-repeat; padding-left:24px !important; }
  .icon_offline { background:url(/gfx/icons/status_offline.png) 2px 50% no-repeat; padding-left:24px !important; }
  
  .icon_tag { background:url(/gfx/icons/tag_green.png) 2px 50% no-repeat; padding-left:24px !important; }
  .icon_comments { background:url(/gfx/icons/comments.png) 2px 50% no-repeat; padding-left:24px !important; }
  .icon_comment_add { background:url(/gfx/icons/comment_add.png) 2px 50% no-repeat; padding-left:24px !important; }
  
/* ########################### */
/*  Calendar
/* ########################### */

  table.calendar {
    margin:0 0 10px;
  }
  table.calendar { width:100%; border:1px solid #313131; }
    
    table.calendar caption {
      position:relative;
      width:100%;
      padding:10px;
      margin:10px 0 0;
      color:#fff;
      font-size:150%;
    }
    
    table.calendar td,
    table.calendar th {
      border:1px solid #313131;
    }
    table.calendar th {
      background:#202020;
      font-weight:bold;
      text-align:center;
    }
    table.calendar td.weekend { background:#212121; }
    
    table.calendar thead tr { height:3em; }
    table.calendar thead th { vertical-align:middle; }
    
    table.calendar.month tbody tr { height:6em; }
    table.calendar.week tbody tr  { height:20em; }
    
    table.calendar.week td,
    table.calendar.month td { width:77px; }
    
    table.calendar tbody td { vertical-align:top; }
    table.calendar tbody td div {
      padding:1px 3px;
      background:#282828;
      font-size:90%;
    }
    table.calendar tbody td div.day_head a {
      border:none;
    }
    table.calendar tbody td.today div.day_head {
      background:#419C1D;
      color:#fff;
      font-weight:bold;
    }
    table.calendar tbody td.today div.day_head a:hover {
      color:#ccc;
    }
    
    /* ########################### */
    /*  Calendar Year              */
    /* ########################### */
    
    div.year_table_wrap { float:left; width:30%; padding-right:20px; height:14em; }
    table.calendar.year { float:left; font-size:90%; }
    table.calendar.year caption {  }
    table.calendar.year tbody td div.day_head a {
      color:#ccc;
    }
    table.calendar.year tbody td div.day_head a:hover {
      color:#419C1D;
    }