
/* Copyright (c) 2002-2010 Open2b Software Snc. */

body { font: 12px arial, helvetica, clean, sans-serif; }

select, input, button, textarea { font: 100% arial, helvetica, sans-serif; }

select, input[type='text'], input[type='password'], textarea { margin: 0; }

body, form { margin: 0; padding: 0; }

h1 { font-size: 20px; margin: 0 0 15px 0; line-height: 1em; }
h2 { font-size: 14px; margin: .8em 0; line-height: 1em; }
h3 { font-size: 13px; margin: 1em 0; line-height: 1em; }
p  { margin: .8em 0; line-height: 1.5em; }
ul { line-height: 1.4em; }
li { padding: 2px 0; }

a, object { outline: none; }

/* forms */

form { display: inline; }

fieldset { border: 1px solid black; padding-left: 1em; padding-right: 1em; }
legend   { color: black; *margin-left: -7px; }

/* tables */

table { border-collapse: collapse; border-spacing: 0;  }
  /* 'border-spacing: 0' non mostra spazio tra le celle ( in concomitanza con 'border-collapse: collapse' ).
     Siccome non è supportato da IE è meglio fissarlo a 0. */
td    { text-align: left; vertical-align: top; }
th    { font-weight: normal; text-align: left; vertical-align: top; }

q:before, q:after { content: ''; }

img   { border: 0; }
a img { vertical-align: text-bottom; }
  /* 'vertical-align: text-bottom' toglie lo spazio sotto un'immagine con un link */

.clearfloat { clear: both; height:0; font-size: 1px; line-height: 0px; }

hr { height: 1px; border: 0; padding: 0; margin: 0; margin: 10px 0; }

/*** Layout ***/

body { text-align: center; min-width: 800px; }
    /* centra il contenitore in IE6. Il testo viene quindi impostato con
       l'allineamento predefinito a sinistra nel selettore #page */

body.dialog { background: white; min-width: inherit; padding: 5px; text-align: left; }

#page { margin: 0 auto; overflow: hidden; padding: 0; position: relative; text-align: left; width: 991px; }

#middle         { clear: both; overflow: hidden; zoom: 1; }
#middle-content { overflow: hidden; zoom: 1; }
#center-content { overflow: hidden; }

/* 'overflow: hidden' è richiesto da IE6 per evitare che contenuto troppo largo
   possa allargare la colonna.
  'display: inline' è richiesto da IE6 per evitare il margin dalla stessa parte
   del float venga raddoppiato */

#left, #center, #right { display: inline; float: left; overflow: hidden; }

#left   { width: 180px; padding: 5px; }
#center { width: 630px; padding: 5px; }
#right  { width: 180px; padding: 5px; }

#footer { clear: both; padding: 2em; }

.column    { font-size: 11px; }
.column h2 { margin: 1px 0 10px 0; }

/*** Menus ***/

.menu ul, .menu ol { list-style: none; margin: 0; overflow: hidden; padding: 0; zoom: 1; line-height: normal; }
.menu li           { margin: 0; }
.menu a            { text-decoration: none; }

.vertical .menu li         { padding: 3px 0; }
.vertical .menu a          { border: 0; display: block; zoom: 1; }
  /* 'border: 0' rende in IE8b2 tutta la riga cliccabile */
.vertical .menu li li      { margin-left: 8px; padding-left: 8px; }
.vertical .menu li li.last { border-bottom: none; }

.horizontal .menu h2 { display: none; }
.horizontal .menu li { display: inline; float: left; padding: 0 6px; }
    /* padding-top e padding-bottom devono avere gli stessi valori dell'elemento <a> in esso contenuto */
.horizontal .menu a  { display: inline; padding: 0; }

/*** Breadcrumb ***/

.breadcrumb ul { list-style-type: none; margin: 0 0 10px 0; overflow: hidden; padding: 0; zoom: 1; }
.breadcrumb li { background: url('images/path-separator.gif') scroll no-repeat left center; display: inline; float: left; font-size: 11px; margin: 0 0 0 -10px; padding: 0 20px 0 10px; zoom: 1; }


/*** Checks and Radios ***/

fieldset.check-radio                      { border: 0; margin: 0; padding: 0; }
fieldset.check-radio label,
label.check-radio                         { display: block; line-height: 20px; margin: 0; padding: 0 0 0 20px; width: auto; }
fieldset.check-radio span,
label.check-radio span                    { display: block; line-height: 1.2em; }
fieldset.check-radio input,
label.check-radio input                   { clear: left; float: left; margin-left: -20px;  }
*+html > body fieldset.check-radio input,
*+html > body label.check-radio input     { margin-right: 3px; } /* only IE7 */

/*** Form section ***/

#center fieldset.form-section div                  { margin: .3em 0; overflow: hidden; zoom: 1; }
#center fieldset.form-section div label            { float: left; width: 10em; }
#center fieldset.form-section div div              { margin: 0; }
#center fieldset.form-section input                { max-width: 23em; }
#center fieldset.form-section input + input,
#center fieldset.form-section input + span + input { margin-top: .3em; }

#center .button  { margin: 20px 0; overflow: hidden; text-align: center; }
#center .buttons { margin: 20px 0; overflow: hidden; }

/*** Grid ***/

.grid ul, .grid ol      { list-style-type: none; margin: 0; overflow: hidden; padding: 0; zoom: 1; }
.grid li                { border: none; float: left; margin: 0; padding: 0; }
.grid li.item-1-columns { width: 100%; }
.grid li.item-2-columns { width: 49.9001%; }
.grid li.item-3-columns { width: 33.2%; }
.grid li.item-,
.grid li.item-4-columns { width: 24.8138%; }
.grid li.item-5-columns { width: 19.8412%; }
.grid li.item-6-columns { width: 16.5009%; }
.grid li .item-content  { margin: 2px; overflow: hidden; padding: 5px; }

/*** Sort and Paging ***/

.sort                          { font-size: .85em; margin-bottom: 5px; padding: 2px; text-align: right; }
.paging                        { font-size: .85em; margin-top: 5px; padding: 5px; text-align: center; }
.paging a, .paging b           { padding: 5px; margin: 0 1px; }
.paging a                      { text-decoration: none; }
.paging a:hover                { border-width: 0 1px; margin: 0; }
.paging b                      { font-weight: bold; }
.column .sort, .column .paging { display: none; }

/*** Login ***/

.page-login,
.page-remember-password { margin: 0 auto; width: 450px; }

.page-login .login-email                    { margin-bottom: 10px; overflow: hidden; }
.page-login .login-email div                { margin-left: 35px; padding-bottom: 2px; }
.page-login .login-email label              { margin-right: 2px; }
.page-login .login-email input#design-email { margin-bottom: -2px; width: 22em; }

.page-login .login-password                  { margin-bottom: 10px; }
.page-login .login-password fieldset         { margin-left: 30px; }
.page-login .login-password div              { margin-top: 10px; overflow: visible; }
.page-login .login-password div label        { float: left; margin-right: 5px; }
.page-login .login-password #design-password { clear: none; margin-left: 0; margin-top: 0; width: 10em; }

/*** Share ***/

.share-this span { margin-left: 3px; }

.share-image  { margin: 3px; float: right; padding: 10px 50px; }

.share-with-social            { float: left; overflow: hidden; }
.share-with-social ul         { line-height: 30px; list-style: none; margin: 0; text-decoration: none; }
.share-with-social li         { padding: 0 6px; }
    /* padding-top e padding-bottom devono avere gli stessi valori dell'elemento <a> in esso contenuto */
.share-with-social li a       { display: inline; font-size: 120%; padding: 2px 0 2px 20px; text-decoration: none; }

span.open2b-share-facebook  a { background: url('images/social/facebook.png') no-repeat;  }
span.open2b-share-twitter   a { background: url('images/social/twitter.png') no-repeat; }
span.open2b-share-myspace   a { background: url('images/social/myspace.png') no-repeat; }
span.open2b-share-delicious a { background: url('images/social/delicious.png') no-repeat; }

.share-with-email     { clear: both; overflow: hidden; }
.share-sender         { margin-bottom: 15px; }
.share-sender-content { margin-left: 20px; }
.share-sender dt      { float: left; margin-bottom: 4px; width: 70px; vertical-align: middle; }
.share-sender dd      { margin-bottom: 4px; margin-left: 70px; }
.share-sender input   { width: 200px; }

.share-register-for-send   { text-align: center; }
.share-recipients          { margin-bottom: 15px; }
.share-recipients-content  { margin-left: 20px; }
.share-recipients textarea { height: 40px; width: 458px; }
.share-recipients label    { color: #666; display: block; margin-top: 3px; font-size: 90%; }

.share-message-content  { margin-left: 20px; }
.share-message textarea { height: 80px; width: 458px; }

.share-send-button { text-align: center; margin-top: 30px; }

/*** Note, Messages and Errors ***/

.o-status-alert   { color: red; font-weight: bold; padding: 1em; text-align: center; }
.o-status-confirm { color: green; font-weight: bold; padding: 1em; text-align: center; }
.o-error          { color: red; margin-top: 2px; }

.note     { text-align: center; font-size: 12px; }
.required {  color: red; }
div span.error { display: block; color: red; padding-bottom: 2px; }
