@charset "utf-8";
/**
* Links
*/
a {
	color: #004a68;
}

.addLink {
	cursor: pointer;
	display: block;
	margin: 0;
	padding: 2px;
	color: #004a68;
	text-decoration: none;
	font-weight: bold;
	background: #ffffff;
	border: 1px solid #004a68;
	border-right: 15px solid #004a68;
}

.addLink em {
	font-style: normal;
	text-decoration: underline;
}

.addLink:hover {
	padding: 1px;
	border: 2px solid #004a68;
	border-right: 15px solid #004a68;
}

.addLink img {
	background: #004a68;
	vertical-align: text-bottom;
}

.showUnpaid {
	float: right;
	padding: 1px 0 1px 1px;
	width: 250px;
}

.showUnpaid:hover {
	padding: 0px;
}

.addBill {
	margin: 0 255px 0 0;
}

.displayAll {
	float: right;
	padding: 2px 0 0 0;
	cursor: pointer;
	color: #004a68;
	font-size: small;
	font-weight: normal;
	vertical-align: text-bottom;
	border: none;
	text-decoration: none;
	background: none;
}

input.displayAll {
	padding: 0 0 0 0;
	vertical-align: text-bottom;
}

.displayAll:hover {
	text-decoration: underline;
}

.linkButton {
	margin: 0 5px 0 0;
	cursor: pointer;
	padding: 3px 8px 3px 8px;
	color: #004a68;
	font-weight: bold;
	text-decoration: none;		
	background: #ffffff;
	border: 1px solid #004a68;
}

input.linkButton {
	margin: 0 0 0 0;
	padding: 2px 8px 2px 8px;
}

.linkButton em {
	font-style: normal;
	text-decoration: underline;
}

.linkButton:hover {
	padding: 2px 7px 2px 7px;
	color: #004a68;
	border: 2px solid #004a68;
}

input.linkButton:hover {
	padding: 1px 7px 1px 7px;
}

/**
* Forms
*/
.input {
}

.submit {
	cursor: pointer;
	padding: 3px 8px 3px 8px;
	color: #004a68;
	font-weight: bold;
	background: #ffffff;
	border: 1px solid #004a68;
	border-right: 15px solid #004a68;
}

.submit:hover {
	padding: 2px 8px 2px 7px;
	color: #004a68;
	border: 2px solid #004a68;
	border-right: 15px solid #004a68;
}

.submitDisable {
	cursor: default;
	padding: 3px 8px 3px 8px;
	color: #aaaaaa;
	font-weight: bold;
	background: #ffffff;
	border: 1px dashed #aaaaaa;
	border-right: 15px solid #aaaaaa;
}

.reset {
	cursor: pointer;
	padding: 3px 8px 3px 8px;
	color: #004a68;
	font-weight: bold;
	background: #ffffff;
	border: 1px solid #004a68;
}

.reset:hover {
	padding: 2px 7px 2px 7px;
	color: #004a68;
	border: 2px solid #004a68;
}
	
textarea.expand {
	font-family: Verdana, Geneva, sans-serif;
	font-size: 90%;
}

/**
* Calendar
*/
.TDatePicker_default .selected {
	background: #993333;	
	border: 1px solid #004a68;	
}

.TDatePicker_default .hover {
	border: 1px solid #004a68;	
}

.TDatePicker_default .calendarFooter {
	display: none;	
}

/**
* Tables
*/
.data {
	margin: 5px 0 0 0;
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #004a68;
}

.data td {
	color: #000000;
	padding: 4px 4px;
	vertical-align: top;
	border-left: 1px solid #004a68;
	border-right: 1px solid #004a68;
	border-top: 1px dotted #004a68;
	border-bottom: 1px dotted #004a68;
}

.data td.amount {
	text-align: right;
}

.tableHead th {
	padding: 4px 0 4px 0;
	color: #ffffff;
	background: #004a68;
	border: 1px solid #004a68;
}

.tableHead th a {
	color: #ffffff;	
}

.tableHead th a {
}

.tableLine td {
}

.tableLineAlternated td {
}

.data tr:hover {
	background: #e6edf0;
}

.data .imageButton {
	width: 16px;	
}

/**
*	imageButton
*/
.imageButton, .imageButton img {
	height: 16px;
	width: 16px;
	vertical-align: text-bottom;
	color: #ffffff;
	background: #aaa;
}

.imageButton:hover, .imageButton:hover img {
	background: #004a68;
}

/**
* Pager
*/
.pager {
	float: right;
	margin: 5px 0 0 0;
	color: #004a68;
}

.pager span {
	font-weight: bold;
	border-bottom: 2px solid #004a68;	
}

.pager a {
	padding: 0 2px;
	text-decoration: none;
	border-bottom: 2px solid #ffffff;
}

.pager a:hover {
	color: #ffffff;
	background: #004a68;	
	border-bottom: 2px solid #004a68;
}

select.itemPerPage {
	margin: 2px 0 0 0;
	color: #004a68;
	border: 1px solid #004a68;	
}

/**
* Client and User fieldset
*/
fieldset.client, fieldset.clientVisu, fieldset.userVisu {
	margin: 0 30px 15px 0;
	min-height: 7.5em;
	border: 1px solid #004a68;
}

fieldset.clientVisu, fieldset.userVisu {
	margin: 0 0 15px 0;
}

fieldset.clientVisu legend, fieldset.client legend, fieldset.userVisu legend {
	padding: 0 5px;
	color: #004a68;
	font-weight: bold;
}

fieldset.clientVisu legend *, fieldset.client legend *, fieldset.userVisu legend * {
	color: #004a68;
}

fieldset.clientVisu .address, fieldset.client .address {
	float: left;
	width: 50%;
}

fieldset.clientVisu .contact, fieldset.client .contact {
	margin: 0 0 0 50%;
}

/**
* Estimate and Facture Forms
*/

.estimate, .bill, .subscription {
	width: 100%;	
	border-collapse: collapse;
	border-bottom: 1px solid #004a68;
}

.estimate th, .bill th, .subscription th {
	padding: 8px 0 6px 0;
	color: #fff;
	background: #004a68;
	border: 1px solid #004a68;
}

.estimate th.notHeader, .bill th.notHeader, .subscription th.notHeader {
	background: none;
	border: none;
	border-bottom: 1px solid #004a68;
}

.estimate td, .bill td, .subscription td {
	padding: 5px 8px 5px 5px;
	vertical-align: top;	
	border-left: 1px solid #004a68;
	border-right: 1px solid #004a68;
	border-top: 1px dotted #004a68;
	border-bottom: 1px dotted #004a68;
}

.reference {
	width: 11em;	
}

.created {
	text-align: center;
	width: 6em;
}

.quantity {
	text-align: right;
	width: 4em;
}

.price {
	text-align: right;
	width: 7em;
}

.total {
	text-align: right;
	width: 8em;
}

.bill {
	text-align: center;
	width: 4.5em;
}

.amount * {
	text-align: right;
}

.amount div {
	padding-right: 3px;
}

.quantity *, .price *, .total *, amount * {
	text-align: right;
	font-weight: bold;
}

.estimate td input, .estimate td textarea, 
.bill td input, .bill td textarea,  
.amount * {
	border: 1px solid #fff;
	width: 100%;	
}

.label input {
	border: 1px solid #fff;
}

.estimate td input:hover, .bill td input:hover, .amount input:hover,
.estimate td textarea:hover, .bill td textarea:hover {
	border: 1px solid #fff;
}

.estimate td input:focus, .bill td input:focus, .amount input:focus,
.estimate td textarea:focus, .bill td textarea:focus {
	border: 1px solid #fff;
}

.estimate td .editable:hover, .bill td .editable:hover, .amount .editable:hover {
	border: 1px dashed #bbb;
}

.estimate td .editable:focus, .bill td .editable:focus, .amount .editable:focus {
	border: 1px solid #aaa;
}

.estimate .deletesOccurrence, .bill .deletesOccurrence,
.estimate .deletesSubscription, .bill .deletesSubscription {
	width: 16px;	
}

.estimate td .datepicker input, .estimate td .datepicker select, 
.bill td .datepicker input, .bill td .datepicker select {
	display: inline;
    width: auto;
}

.estimate .calendarHeader td, 
.bill .calendarHeader td {
	border: none;
    padding: 0;
}

.estimate .weekDayHead, 
.bill .weekDayHead {
	border: none;
    padding: 0;
    background: none;
    color: #000000;
}

.summary {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
}

.summary td {
	padding: 0px 8px 2px 5px;
}

.summary td.addOccurrence {
	padding: 2px 0;
	font-weight: bold;
	color: #004a68;	
}

.summary td.addOccurrence select {
	color: #004a68;	
}

.summary td.separator {
	height: 5px;	
}

.summary td.deposit {
	vertical-align: bottom;
}

.summary td.deposit table {
	border-collapse: collapse;
	border: 1px solid #004a68;	
}

.summary td.deposit th {
	background: #004a68;
	color: #ffffff;
}

.summary td.deposit td {
	border: 1px solid #004a68;	
}

.summary td.deposit td input {
	font-size: 150%;
	text-align: center;
}

.summary td.deposit td input.percent {
	width: 6em;
	border: 1px solid #ffffff;
}

.summary td.deposit td input.percent:hover, .summary td.deposit td input.percent:focus {
	border: 1px solid #ffffff;	
}

.summary td.deposit td.amount input {
	width: 8em;
}

.summary .label {
	padding: 5px 22px 2px 5px;
	width: 11em;
}

.summary .label input {
	width: 5em;
}

.summary .amount {
	width: 8em;
}

.summary .blank {
	width: 17px;
}

.summary .borderTop {
	border-top: 1px solid #004a68;	
}

.summary .borderBottom {
	border-bottom: 1px solid #004a68;	
}

.summary .borderLeft {
	border-left: 1px solid #004a68;	
}

.summary .borderRight {
	border-right: 1px solid #004a68;	
}

.summary .due {
	padding-top: 3px;
	padding-bottom: 3px;
	background: #004a68;
	border: 1px solid #004a68;	
}

.summary .due * {
	font-size: 130%;
	font-weight: bold;	
	border: 1px solid #004a68;
	color: #ffffff;
	background: #004a68;
}

.summary .due input:hover, .summary .due input:focus {
	border: 1px solid #004a68;
}

/**
* Visualisation
*/
.visualisationSummary {
	margin: 1em 0 0 0;
	border-collapse: collapse;
	width: 100%;
}

.visualisationSummary .blank {
  height: 0.5em;
}

.visualisationSummary .inverted {
	color: #ffffff;
	background: #004a68;
}

.labelSummary {
	width: 11em;
	padding: 0px 22px 2px 5px;
	border: 1px solid #004a68;
}

.inputSummary {
	width: 8em;
	padding: 0px 8px 2px 5px;
	border: 1px solid #004a68;
	text-align: right;
}

/**
* Layout base
*/
h1 {
	color: #004a68;	
}

h1.marginTop {
	margin: 1em 0 0 0;	
}

ul {
	list-style-position: inside;
	list-style-type: none;
}

#menu {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	width: 165px;
}

#menu #logo {
	height: 200px;
	width: 200px;
}

#menu ul {
	margin: 0 0 0 35px;
	width: 125px;
}

* html #menu ul {
	padding: 0 0 0 35px;
}

#menu a {
	display: block;
	padding: 15px 18px 10px 0;
	color: #dddddd;
	text-decoration: none;
	text-align: right;
	background: url(./images/bullet_background.png) bottom center no-repeat;
}

* html #menu a {
	margin: -17px 0 0 0;	
}

#menu a.current {
	font-weight: bold;
	background: url(./images/bullet_background.png) bottom left no-repeat;
}

#menu a:hover {
	color: #ffffff;
	font-weight: bold;
	background: url(./images/bullet_background.png) bottom right no-repeat;
}

#menu a em {
	text-decoration: underline;
	font-style: normal;
}

/* for all browsers that understand min-width */
.width {
	margin: 0;
	padding: 0;
	width: 100%; 
	min-width: 980px; 
	background: #004a68;
}

/* the bodge for IE6 browsers */
* html .minwidth {
	margin: 0;
	padding: 0;
	border-left: 980px solid #ececec; 
	position: relative;  
	background: #004a68; 
	float:left; 
	z-index:1;
}
* html .container {
	margin-left:-980px; 
	position:relative; 
	float:left; 
	z-index:2; 
	background: #004a68; 
}
.rule {
	margin: 0;
	padding: 0;
	width: 930px; 
	height: 1px;
}

.page {
	margin: 10px 30px 0 225px;
	color: #111;
	background: #fff;	
	border: 1px solid #ffffff;
}

.page .header {
	margin: 5px 5px 0 5px;
	padding: 10px 10px 0 10px;
	height: 75px;
	border: 3px solid #eee;
	border-bottom: none;
}

.page .header .searchBox {
	padding: 27px 10px 0 0;
	float: right;	
}

.page .header .searchBox select, .page .header .searchBox input[type=text]{
	color: #aaaaaa;
	border: 1px solid #aaaaaa;
}

.page .header .searchBox:hover select, .page .header .searchBox:hover input[type=text] {
	color: #555555;
}

.page .header .searchButton {
	margin: 0;	
	vertical-align: bottom;
}

.page #banner {
	margin: 0 0 0 8px;
	padding: 0;
}

.page #banner img, .page #banner a img {
	border-bottom: 1px dotted #b4b4b4;
}

.middle {
	margin: 0 5px 5px 5px;
	padding: 10px 20px 20px 20px;
	min-height: 500px;
	height: auto;
	background: transparent;
	border: 3px solid #eee;
	border-top: none;
} 

* html .middle {
	height: 500px;
}

.centeredDiv {
	width: 630px;
	margin: 1em auto 0 auto;
	padding: 0 50px 0 0;
}

.centeredDiv table {
	width: 100%;
	border-spacing: 0 1px;
}

.centeredDiv table td {
	padding: 2px 5px 2px 2px;
	vertical-align: top;
}

.centeredDiv table .label {
	padding: 6px 2px 0px 2px;
	width: 180px;	
	font-weight: bold;
	color: #555555;
}
.centeredDiv table tr:hover .label {
	color: #004a68;	
}

.centeredDiv table input, .centeredDiv table select, .centeredDiv table textarea {
	width: 100%;
}

.centeredDiv input[type=button], .centeredDiv input[type=image], , .centeredDiv input[type=reset] {
	padding: 2px 25px;
	width: auto;
	color: #ffffff;
	background: #004a68;
	border: 0;
}

.centeredDiv table select, .centeredDiv table input, .centeredDiv table textarea  {
	padding: 2px;
	color: #555555;
	border: 1px solid #aaaaaa;
}

.centeredDiv table input.little {
	width: 200px;
}

.centeredDiv table input[type=checkbox] {
	width: auto;
}

.centeredDiv table input[type=image]  {
	width: auto;
}

.centeredDiv .TColorPicker_button * {
	margin:  0 0 0 2px;
	padding: 0;
	border: 1px solid #aaaaaa;
	vertical-align: bottom;
}

.centeredDiv table select:hover, .centeredDiv table input:hover, .centeredDiv table textarea:hover {
	color: #004a68;
	border: 1px dashed #004a68;
}

.centeredDiv table select:focus, .centeredDiv table input:focus, .centeredDiv table textarea:focus {
	color: #004a68;
	border: 1px solid #004a68;
}

.centeredDiv table .thumbnail {
	width: 150px;	
}

.centeredDiv table .toPaid input[type=text] {
	width: 400px;
}

.centeredDiv table td.toPaid:hover input[type=text] {
	border: 1px dashed #004a68;
	border-right: 1px solid #004a68;
}

.centeredDiv table .toPaid input[type=submit] {
	float: right;
	vertical-align: top;
	width: 50px;
	font-weight: bold;
	color: #ffffff;
	background: #aaaaaa;
	border: none;
}

.centeredDiv table .toPaid input[type=submit]:hover, .centeredDiv table .toPaid input[type=submit]:focus {
	background: #004a68;
}

.centeredDiv table td:hover input[type=submit] {
	color: #ffffff;
	background: #004a68;
}

.centeredDiv table tr:hover textarea, .centeredDiv table tr:hover input,  .centeredDiv table tr:hover select {
	color: #004a68;
}

.centeredDiv .buttonDiv {
	margin: 1em 0 0 0;
	padding: 0 5px 0 0;
	text-align: right;	
}

.centeredDiv table input.disable {
	color: #555555;
	font-weight: bold;
	border: 1px solid #ffffff;
	background: none;
}

.centeredDiv table input.disable:hover {
	color: #004a68;
	border: 1px solid #ffffff;
}

/* Footer */
.footer {
	margin: 5px 31px 10px 226px;
	color: #dddddd;
	font-size: 80%;
	font-variant: small-caps;
	letter-spacing: 1px;
}

.footer a {
	color: #dddddd;
	font-weight: bold;
	text-decoration: none;
}

.footer em {
	text-decoration: underline;
	font-style: normal;
}

.footer a:hover {
	color: #ffffff;
}

