html {
   margin: 0;
   padding: 0;
}

body {
   margin: 0;
   padding: 0;
   font-family: Verdana, Arial, Helvetica, sans-serif;
   font-size: 0.86em;
   color: #333;
   line-height: 24px;
   background: #CCD5B7;
   position: relative;
}

::-moz-selection {
   background: #01A8DF;
   color: #fff;
}

::selection {
   background: #01A8DF;
   color: #fff;
}

a:link, a:visited {
   text-decoration: none;
   color: #0000CC;
}

a:hover, a:focus, a :active {
   color: #FF3333;
}

a img {
   border: none;
}

hr.accessibility {
   display: none;
}

noscript div {
   padding: 10px;
   padding-left: 52px;
   color: #FF0000;
   border: 3px solid red;
   font-weight: bold;
   text-align: right;
   background: #E2FEA9 url(../img/nojs.png) no-repeat left bottom;
}

#cover {
   filter: alpha(opacity = 0);
   -moz-opacity: 0;
   opacity: 0;
   background: #0066CC;
   position: absolute;
   top: 0;
   left: 0;
   z-index: 8000;
   width: 100%;
   height: 0;
   display: none;
}

/* contenitore generale */
#container {
   margin: 0 0 0 20px;
   padding: 0;
   width: 690px;
   background: #FFF;
}

/* form mail a discesa */
#contacts {
   height: 260px;
   background: #FF9900;
   width: 300px;
   position: absolute;
   top: -310px;
   left: 205px;
   padding: 10px;
   z-index: 8001;
   border: 0 solid;
   font-family: Verdana, Arial, Helvetica, sans-serif;
   font-size: 12px;
}

#contacts h3 {
   margin: 0;
   padding: 0;
   position: absolute;
   top: 5px;
   left: 5px;
   background: url(../img/email_title.jpg) no-repeat left center;
   height: 35px;
   width: 250px;
}

#contacts h3 span {
   display: none;
}

a#close {
   position: absolute;
   right: 13px;
   top: 14px;
   cursor: pointer;
}

#contacts form {
   padding: 0;
   margin: 0;
}

#contacts ul {
   margin: 0;
   padding: 0;
   list-style: none;
   position: absolute;
   top: 50px;
   left: 10px;
   width: 300px;
}

#contacts ul li {
   border: 0px solid red;
   margin-bottom: 5px;
}

#contacts ul li img {
   vertical-align: middle;
}

#contacts label {
   float: left;
   width: 80px;
   color: #FFFFFF;
   text-align: right;
   padding-right: 4px;
}

#contacts input, #contacts textarea {
   width: 207px;
   border: 2px solid #FFFFCC;
   vertical-align: middle;
   background: #FFFFCC;
   padding: 1px;
   font-family: "Courier New", Courier, monospace;
   color: #333333;
   font-size: 12px;
}

#contacts textarea#mess {
   height: 80px;
   overflow: auto;
   position: static;
}

#contacts input:focus, #contacts textarea:focus {
   background: #E1E6FB;
   border-color: #E1E6FB;
}

#contacts #captcha {
   width: 98px;
   margin-left: 5px;
}

#contacts #send {
   width: 100px;
   margin-left: 197px;
   border: 1px solid #666;
   background: #CCC;
   padding: 2px 0;
   font-family: Verdana, Arial, Helvetica, sans-serif;
}

#dialog_box_send {
   text-align: center;
   padding: 0 50px;
   margin: 0;
   height: 65px;
   width: 220px;
   background: url(../img/bg_contacts.gif) no-repeat center bottom;
   color: #990000;
   position: absolute;
   top: 232px;
   left: 0;
   color: #FFF;
   font-size: 12px;
   font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: bold;
}

/* header ed rss */
#header {
   margin: 0;
   padding: 0;
   width: 100%;
   background: #fff url(../img/logo.jpg) no-repeat left top;
   height: 128px;
   border: 0px solid red;
   position: relative;
   top: 0;
   left: 0;
}

#header h1 {
   display: none;
   margin: 0;
}

#header h3 {
   display: none;
   margin: 0;
}

a#rss {
   display: block;
   border: 0px solid red;
   width: 90px;
   height: 28px;
   position: absolute;
   top: 75px;
   right: 10px;
   background: url(../img/rss.png) no-repeat right top;
}

a#rss:hover {
   background-position: right bottom;
}

a#rss span {
   display: none;
}

/* citazioni */
#quote {
   position: absolute;
   top: 0;
   right: -208px;
   width: 180px;
   background: url(../img/foglio.jpg) no-repeat right bottom;
   font-size: 13px;
   font-family: Georgia;
   line-height: 22px;
   font-style: italic;
   text-align: left;
   padding: 10px 18px 35px 10px;
   border: 0px solid red;
   color: #333;
}

#quote span {
   display: block;
   margin-top: 7px;
   font-weight: bold;
   text-align: right;
   padding-right: 20px;
}

/* menu laterale destro */
#menu {
   width: 150px;
   float: right;
   margin: 0;
   border: 0px solid red;
   background: url(../img/bg_menu.gif) no-repeat top right;
   padding: 0 0 0 19px;
   position: relative;
   top: -20px;
   margin-bottom: -10px;
   left: 0;
   font-family: Verdana, Arial, Helvetica, sans-serif;
   overflow: hidden;
   height: 220px;
   line-height: 22px;
}

#corpo #menu ul {
   margin: 0;
   margin-top: 3px;
   padding: 0;
   list-style: none;
}

#corpo #menu ul li {
   margin: 0;
   padding: 0;
   list-style: none;
   margin-bottom: 5px;
   border: 0px solid red;
}

#corpo #menu ul li a {
   display: block;
   padding-left: 18px;
   background-image: url(../img/punto_menu.png);
   background-repeat: no-repeat;
   background-position: left top;
}

#corpo #menu ul li a:hover {
   background-position: left bottom;
}

#corpo #menu ul li a span {
   background-position: bottom right;
   background-repeat: no-repeat;
   padding-right: 20px;
}

#corpo #menu ul li a span#delicious_menu {
   background-image: url(../img/delicious.png);
}

#corpo #menu ul li a span#flickr_menu {
   background-image: url(../img/flickr.png);
   padding-right: 25px;
}

#corpo #menu ul li a span#contacts_menu {
   background-image: url(../img/contacts.png);
}

#corpo #menu ul li a span#search_menu {
   background-image: url(../img/search.png);
}

#corpo #menu ul li a span#help_menu {
   background-image: url(../img/help.png);
   width: 80px;
}

/* corpo dei contenuti */
#corpo {
   border: 0px solid red;
   width: auto;
   padding: 15px;
   padding-bottom: 45px;
   min-height: 350px;
   height: auto !important;
   height: 350px;
   position: relative;
   top: 0;
   left: 0;
   z-index: 2;
}

#corpo p#primo {
   margin-top: 0;
}

#corpo p {
   padding: 0;
   margin: 0;
   margin-bottom: 15px;
   text-align: justify;
}

#corpo p a {
   text-decoration: underline;
}

/* accordion articoli */
div#accordion {
   border-bottom: 1px solid #999;
   background: transparent;
   margin: 0px -15px;
}

div#accordion div {
   padding: 0;
   margin: 0;
}

/* titoli delle sezioni nell'accordion degli articoli */
div#accordion div h3 {
   background-color: #fff;
   padding: 5px 0 4px 0;
   margin: 0;
   height: 25px;
   cursor: pointer;
}

div#accordion div.off h3 {
   border: 1px solid #999;
   border-left: 0;
   border-right: 0;
   border-bottom: 0;
}

div#accordion div.on h3 {
   border: 1px solid #000;
   border-left: 0;
   border-right: 0;
   border-bottom: 0;
}

div#accordion div h3 span {display: none;}
#php {background: url(../img/php.png) no-repeat 6px center;}
#java {background: url(../img/java.png) no-repeat 6px center;}
#js {background: url(../img/js.png) no-repeat 9px center;}
#css {background: url(../img/css.png) no-repeat 9px center;}

/* liste articoli */
div#accordion div ul {
   margin: 0 0 0 0;
   padding: 0 0 0 0;
   list-style: none;
   background: #fff;
   overflow: hidden
}

div#accordion ul.liste li {
   margin: 0;
   padding: 3px 0 3px 12px;
   list-style: none;
   border-bottom: 1px solid #D6D6D6;
   background: url(../img/dot_lista.png) no-repeat 10px 10px;
}

div#accordion ul.liste li.intro {
   background: none;
   color: #222;
   font-size: 11px;
   list-style: none;
   margin: 0px 0 3px 0;
   padding: 3px 10px 5px 10px;
   line-height: 16px;
   font-style: italic;
   border-top: 1px solid #000;
}

div#accordion ul.liste li.last {
   border: 0;
   padding-bottom: 5px;
}

span.titolo_a {
   padding: 0;
   margin: 0;
   margin-left: 15px;
}

span.titolo_a span.lang {
   font-family: "Courier New", Courier, monospace;
   float: right;
   margin-right: 6px;
}

/* liste progetti open source bla bla bla */
#corpo h3.tit_proj {
   background: #009933;
   font-size: 15px;
   margin: 0;
   margin-top: 20px;
   color: #FFF;
   padding-left: 7px;
}

#corpo div.proj {
   padding: 7px;
   background: #fff;
   border: 1px solid #009933;
   margin: 0 0 0 0;
}

#corpo div.proj p {
   margin: 0;
}

#corpo div.proj p.specifiche {
   text-align: right;
   padding-top: 5px;
}

#corpo div.proj p.specifiche a {

}

/* area CV */
#album {
   display: block;
   width: 160px;
   height: 160px;
   float: left;
   position: relative;
   top: 0px;
   left: 0px;
   border: 1px solid #999;
   margin-right: 8px;
   z-index: 2
}

#album img {
   position: absolute;
   top: 3px;
   left: 3px;
}

/* area ricerca nel sito */
#formSiteSearch {
   margin: 0;
   padding: 0;
}

form div#SiteSearch {
   border: 1px solid #ccc;
   width: 465px;
   padding: 12px;
   position: relative;
   top: 0;
   left: 0;
}

#labelSearch {
   position: absolute;
   right: 12px;
   top: -10px;
   background: #fff;
   border: 1px solid #ccc;
   padding: 0 5px;
   font-size: 10px;
   line-height: 16px;
}

form div#SiteSearch input#searchQuery {
   border: 1px solid #222;
   width: 200px;
   padding: 2px;
}

form div#SiteSearch #errorMsg {
   width: 170px;
   height: 28px;
   font-size: 10px;
   color: red;
   position: absolute;
   top: 14px;
   right: 12px;
   line-height: 14px;
   text-align: center;

}

#siteSearchResults {
   width: 465px;
   font-size: 14px;
   padding: 20px 0 0 15px;
}

#siteSearchResults h3 {
   margin: 0 0 10px 0;
   font-weight: normal;
   font-size: 16px;
   color: #000;
}

#siteSearchResults div {
   margin-bottom: 16px;
}

#siteSearchResults div a {
   color: #0E774A;
}

#siteSearchResults span {
   font-size: 11px;
   display: block;
   margin: 0px;
   line-height: 12px;
   padding-left: 17px;
}

/* aggiustamenti contestuali (in area search) del menu dx */
#searchPage #menu {
   float: none;
   position: absolute;
   left: 506px;
   top: -5px;
}

/* footer */
body #footer {
   background: #fff url(../img/footer.jpg) no-repeat left bottom;
   border: 0px solid red;
   color: #999900;
   font-weight: bold;
   padding: 0;
   padding-left: 20px;
   padding-bottom: 10px;
   text-align: left;
   margin-top: -80px;
   position: relative;
   z-index: 1;
   height: 210px;
}

body#homepage #footer {
   background: #fff url(../img/footer_home.jpg) no-repeat left bottom;
   position: relative;
   margin-top: -90px;
}

#testo_footer {
   position: absolute;
   left: 15px;
   bottom: 5px;
}

#testo_footer a {
   color: #999900;
   text-decoration: none;
}

#testo_footer a:hover {color: #FFF;}

.valid {
   padding-left: 19px;
   background: url(../img/valid.png) no-repeat left center;
}

/* flickr */
#flickr {
   position: absolute;
   bottom: 48px;
   left: 65px;
   width: 300px;
   padding: 0;
   margin: 0;
   border: 0px solid red;
}

#flickr h3 {
   display: none;
}

#flickr a {
   border: 5px solid #CCC;
   margin-right: 5px;
   float: left;
   height: 75px;
}

#flickr a:hover {
   border: 5px solid #fff;
}

/* --------------------- stili articoli --------------------- */
#corpo p em {
   color: #00CC00;
   font-weight: bold;
}

#corpo h1 {
   font-size: 16px;
   margin: 5px 0 15px 0;
}

#corpo h2 {
   font-size: 14px;
   margin: 30px 0 7px 0;
}

#corpo h2#dateArticle {
   font-size: 11px;
   font-weight: normal;
   margin: -12px 0 40px 0;
   padding: 0px;
   border-bottom: 1px solid #ccc;
   color: #666;
}

#corpo h4 {
   font-size: 12px;
   margin: 0;
   margin-bottom: 10px;
   color: #CC0000;
   padding: 2px 0 2px 15px;
   background: url(../img/arrowNouFw.gif) no-repeat left center;
   border-top: 1px dotted #000;
}

#corpo h6 {
   font-size: 24px;
   color: #CC3333;
   font-weight: bold;
   margin: 0;
   margin-bottom: 10px;
   border-bottom: 1px solid #CC3333;
   padding-bottom: 3px;
}

#corpo ul li, #corpo ol li {
   margin-bottom: 7px;
}

#corpo ul {
   list-style: square;
}

div.cWrapp {
   background: #333;
   padding: 7px 10px;
   margin: 0 auto 15px auto;
   overflow: auto;
   white-space: pre;
   width: 640px;
   font-family: "Courier New", Courier, monospace;
   font-size: 1em;
   line-height: 22px;
   color: #fff;
   -moz-border-radius: 12px 0 12px 0;
   border-radius: 12px 0 12px 0;
}

div.cWrapp b {
   color: lime;
}

li div.cWrapp {
   border: none;
   background: none;
   padding: 0;
   margin: 15px auto;
   overflow: auto;
   white-space: pre;
   width: auto;
}

p span.code, p.allerta span.code, ul li span.code, ol li span.code {
   font-family: "Courier New", Courier, monospace;
   font-size: 15px;
   color: brown;
   font-style: normal;
   border: 1px dotted #999;
   padding: 0 4px;
}

.quote {
   margin: 25px auto;
   width: 600px;
   text-align: left;
   text-indent: 25px;
   background: url(../img/quotes1.png);
   background-position: 0 2px;
   background-repeat: no-repeat;
   text-align: justify;
}

.quote p {
   font-size: 13px;
   font-family: Georgia, "Times New Roman", Times, serif;
   color: #4F8A5E;
   margin: 0;
   display: inline;
}

#corpo p.allerta {
   padding: 2px 8px;
   border: 4px solid #FF0000;
   border-right: 0;
   border-left: 0;
   background: #FFFF99;
   color: #FF0000;
   width: 640px;
   margin-right: auto;
   margin-left: auto;
   font-style: italic;
}

/* comments */
#corpo div#commentsArea {
   border: 1px solid #333;
   color: #fff;
   padding: 6px 12px 7px 12px;
   margin-bottom: 10px;
   background: #666;
}

#corpo div#commentsArea h2 {
   padding: 0;
   margin-bottom: 0px;
}

#corpo div#commentsArea p {
   padding: 0;
   margin: 0;
}

#corpo p#backTop {
   text-align: center;
   margin-top: 28px;
}

#corpo p#backTop a {
   text-decoration: none;
   padding: 2px 6px;
   border: 1px solid
}

/* delicious */
#delicious {
   font-size: 11px;
   margin: 0px -15px;
   background: #E0E0A0 url(../img/bg_latestlinks.jpg) no-repeat left top;
   position: relative;
}

#delicious h3 {
   visibility: hidden;
   margin: 0 0 35px 0;
}

#delicious a#more_delicious {
   position: absolute;
   top: 18px;
   right: 10px;
   padding-right: 19px;
   background: url(../img/delicious_more.png) no-repeat right 6px;
   display: block;
}

#delicious #deliciousWrapper {
   height: 124px;
   overflow: hidden;
   position: relative;
   top: 0;
   left: 0;
}

#delicious #deliciousInnerWrapper {
   position: absolute;
   top: 0;
   left: 0;
   width: 690px;
}

#delicious span.out {
   background-position: right top;
}

#delicious div.bookmarkWrapper {
   position: relative;
   top: 0;
   left: 0;
   padding-left: 12px;
}

#delicious span.tags {
   margin-left: 5px;
}

#delicious span.tags span {
   color: brown;
}

#delicious span.date {
   position: absolute;
   top: 1px;
   right: 12px;
}

#bookmarks_dashboard {
   position: absolute;
   bottom: -25px;
   right: 12px;
}

#bookmarks_dashboard a {
   color: #000;
   font-weight: bold;
}

#bookmarks_dashboard a#next_bookmarks {
   padding-left: 11px;
   background: url(../img/more_bookmarks.png) no-repeat left 4px;
}

#bookmarks_dashboard a#prev_bookmarks {
   padding-right: 11px;
   background: url(../img/less_bookmarks.png) no-repeat right 4px;
}

