/* ------------------------------------
   BASE GLOBALE
-------------------------------------*/
body {
    font: 0.85em "Trebuchet MS", Arial, Verdana, sans-serif;
    background-color: #A596B5;
    margin: 0;
    text-align: center;
    color: #333;
}

table, td {
    font-size: 100%;
}

a {
    color: #333;
    background-color: inherit;
}

a:hover,
#header a:hover {
    background-color: #9999cc;
    color: #663366;
    text-decoration: none;
}

hr {
    background-color: #ccc;
    color: #ccc;
    border: #ccc;
    height: 1px;
}

/* ------------------------------------
   ÉVÉNEMENTS
-------------------------------------*/
.event_box {
    background: #f4f4f4;
    border: 1px solid #669933;
    padding: 5px;
}

.event_title {
    color: #663366;
    font-weight: bold;
    font-size: 130%;
}

/* ------------------------------------
   HEADERS & TITRES
-------------------------------------*/
.header1 {
    color: #663366;
    position: absolute;
    top: 40px;
    left: 300px;
    font-size: 180%;
}

.header2 {
    color: #9999cc;
    position: absolute;
    top: 90px;
    left: 550px;
    text-align: right;
    font-size: 130%;
}

h1 {
    color: #663366;
    font-size: 130%;
    border-bottom: 1px solid #663366;
}

h2 {
    font-size: 120%;
    width: 100%;
    border-bottom: 1px solid #333;
}

h3 {
    font-size: 110%;
    width: 75%;
    border-bottom: 1px solid #999;
}

h4, h5 {
    font-size: 100%;
}

pre {
    font-size: 115%;
}

/* ------------------------------------
   MISE EN PAGE
-------------------------------------*/
.floatleft { float: left; margin: 10px; }
.clearfloats { clear: both; }

.noborder { border: none; }

.col_left { text-align: left; }
.col_right { text-align: right; }
.col_center { text-align: center; }
.col_center_small { text-align: center; width: 30px; }

.col_left_em,
.col_right_em,
.col_center_em,
.col_center_small_em {
    background-color: #eee;
}

.col_center_small_em { width: 30px; }

/* ------------------------------------
   BOITES & INFOS
-------------------------------------*/
.infobox,
.infobox_print {
    border: 1px dashed #333;
    background-color: #eee;
    text-align: center !important;
    padding: 10px;
    margin: 10px;
}

.progress_done { background-color: #ffcc66; }
.progress_remaining { background-color: #f9f3cb; }

.emph {
    margin-right: 50px;
    color: #f00;
}

/* ------------------------------------
   POSITIONNEMENT SPÉCIFIQUE
-------------------------------------*/
.langue { position: absolute; top: 10px; left: 210px; }
.slogan { position: absolute; top: 55px; left: 20px; font-size: 90%; }

.username { position: absolute; top: 35px; left: 570px; }
.userid { position: absolute; top: 35px; left: 210px; }
.login { position: absolute; top: 10px; left: 570px; }

.logo { position: absolute; top: 5px; left: 20px; }

/* ------------------------------------
   STRUCTURE DU SITE
-------------------------------------*/
#conteneur {
    width: 100%;
    max-width: 895px;
    text-align: left;
    margin: 10px auto 5px;
}

#header {
    position: relative;
    background-color: #fff;
    color: #333;
    width: 100%;
    max-width: 896px;
    height: auto;
    background: url(../images/bgtop.png) top left no-repeat;
    margin-bottom: 0;
}

#header a { color: #333; text-decoration: none; }
#header a img { border: 0; }

#contentarea {
    width: 100%;
    max-width: 893px;
    background-color: #fff;
    border: 1px solid #eee;
}

#menu {
    float: left;
    width: 165px;
    padding: 35px 40px 5px 40px;
    text-align: left;
}

#menu ul {
    list-style-type: none;
    margin: 0;
    padding: 0 5px 0 10px;
}

#menu p {
    font-weight: bold;
    margin: 10px 5px 0 0;
}

#menu li {
    border-bottom: 1px dotted #333;
}

#menu a {
    color: #333;
    text-decoration: none;
}

#contenu {
    float: left;
    width: 100%;
    max-width: 575px;
    padding: 10px 25px 10px 46px;
    box-sizing: border-box;
}

#contenu p,
#contenu li {
    text-align: justify;
}

#contenu input,
#contenu textarea {
    font: inherit;
    color: #333;
    margin-bottom: 6px;
    vertical-align: middle;
}

#contenu table tr td img,
#contenu a img {
    vertical-align: middle;
    border: 0;
}

#footer {
    width: 100%;
    max-width: 890px;
    font-size: 85%;
    text-align: left;
    padding: 5px;
    margin: 0 auto;
    box-sizing: border-box;
}

#footer a { color: #333; text-decoration: none; }
#footer a img { border: 0; }

/* ------------------------------------
   FORMULAIRES
-------------------------------------*/
.tinyform {
    border: none;
    margin: 0;
    padding: 0;
    display: inline;
}

form td.label {
    text-align: right;
    vertical-align: top;
    font-weight: bold;
}

form td.note {
    text-align: left;
    vertical-align: top;
    font-size: 90%;
}

form td .requis,
form td .erreur {
    color: #f00;
}

input,
textarea,
select {
    background: #eee;
    border: 1px solid #333;
    color: #333;
    cursor: pointer;
}

input:focus,
textarea:focus,
select:focus {
    background: #fff;
}