
body {
    background-color: #FFF;
    background-repeat: no-repeat;
    color: #000000;
    font-size: 12px;
}

html, body, div, span, object, iframe,
h1, h2, h3 {
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    vertical-align: baseline;
}

#direct {
    position: absolute;
    top: 250px;
    left: 45%;
    width: 300px;
    display: none;
    text-align: center;
    padding: 3px 10px 10px 10px;
    z-index: 10;
}


/* titre */
h1 {
    color: white;
    font-family: "WF-011580-002038-000401", "Irma Bold 2", "Irma Bold", Irma-Bold, "Helvetica Bold", "Verdana Bold", "Arial Bold", sans-serif;
    font-size: 24px;
    line-height: 35px;
    text-transform: uppercase;
    font-weight: bold;
    display: block;
    width: calc(100% - 12px);
    border: 0;
    padding: 10px 6px;
    background-color: #4caf50;
    text-align: center;
}

h2, h3 {
    font-family: "WF-011580-002038-000398", "Irma Regular 2", "Irma Regular", Irma-Regular, Helvetica, Verdana, Arial, sans-serif;
    font-weight: 400;
    text-transform: uppercase;
}

h2 {
    color: #CE0000;
    font-size: 15px;
    text-transform: uppercase;
    display: block;
    width: calc(100% - 12px);
    border: 0;
    padding: 10px 6px;
    background-color: #eee;
    font-weight: bold;
}

h3 {
    font-size: 14px;
    line-height: 16px;
    font-weight: bold;
}

/* div principal */
.contenu {
    font-size: 12px;
    padding: 10px 10px;
    min-height: 100vh;
    overflow-wrap: break-word;
    overflow: auto;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

.contenu img {
    max-width: 100%;
    height: auto;
}


/*menu detail d une page */
.menu_detail_page {
    position: fixed;
    bottom: 0;
    right: 30px;
    float: right;
    background-color: #4caf50;
    color: grey;
    font-size: 12px;
    padding: 5px 20px;
}

.menu_detail_page li {
    display: inline;
    list-style: none;
    text-decoration: none;
}

.menu_detail_page a {
    color: black;
    text-decoration: none;
}

.meteo_menu a table tr td {
    width: 100%;
    text-decoration: none;
    color: black;
    font-size: 12px;
}

.meteo_menu a:hover table {
    background-color: #ccc;
    color: black;
    font-size: 12px;
}

/*menu chauffage */
.menu_chauffage {
    font-size: 12px;
    color: #333333;
    width: 100%;
    border-width: 1px;
    border-color: #ebab3a;
    border-collapse: collapse;
}

.menu_chauffage th {
    font-size: 12px;
    background-color: #e6983b;
    border-width: 1px;
    padding: 3px;
    border-style: solid;
    border-color: #ebab3a;
}

.menu_chauffage td {
    text-align: center;
    font-size: 12px;
    border-width: 1px;
    padding: 3px;
    border-style: solid;
    border-color: #ebab3a;
    vertical-align: middle;
    line-height: 20px;
}

.menu_chauffage tr {
    background-color: #f0c169;
}

/*tableau info thermostat*/
.donnees_thermostat {
    font-size: 12px;
    color: #333333;
    width: 100%;
    border-width: 1px;
    border-color: #9dcc7a;
    border-collapse: collapse;
}

.donnees_thermostat th {
    font-size: 12px;
    background-color: #abd28e;
    border-width: 1px;
    padding: 3px;
    border-style: solid;
    border-color: #9dcc7a;
}

.donnees_thermostat tr {
    background-color: #bedda7;
}

.donnees_thermostat td {
    text-align: center;
    border-width: 1px;
    padding: 3px;
    border-style: solid;
    border-color: #9dcc7a;
}

/*affichage des graph*/
/*en mode div */
.div_chauffage {
    font-size: 12px;
    color: #333333;
    min-height: 238px;
    padding: 10px;
    border: 1px solid #9dcc7a;
    text-align: center;
    vertical-align: top;
    background-color: #dcf0d7;
    display: inline-block;
}

/*en mode table */
.graph {
    font-size: 12px;
    color: #333333;
    width: 100%;
    border: 1px solid #4CAF50;
    border-collapse: collapse;
    background-color: #dcf0d7;
}


.graph td {
    font-size: 12px;
    padding: 8px;
    border: 1px solid #9dcc7a;
    text-align: center;
    vertical-align: top;
}

/*tableau fond gris*/
.tab_gris {
    font-size: 12px;
    width: 100%;
    border-collapse: collapse;
    text-align: center;
    background-color: #EEE;
}

.tab_gris th {
    border: 1px solid white;
    padding: 8px;
}

.tab_gris td {
    text-align: center;
    border: 1px solid white;

}

.tab_gris select {
    text-align: center;
    color: black;
    font-size: 10px;
}

.tab_gris tr {
}

.tab_gris a {
    font-size: 12px;
}

/* gestion des onglets */
.onglet {
    display: inline-block;
    margin-left: 3px;
    margin-right: 3px;
    padding: 3px;
    cursor: pointer;
    width: 90px;
    text-align: center;
    font-size: 12px;
}

.onglet2 {
    display: inline-block;
    margin-left: 3px;
    margin-right: 3px;
    padding: 3px;
    cursor: pointer;
    width: 70px;
    text-align: center;
    font-size: 12px;
}

.onglet_n {
    background: #4CAF50;
    color: white;
}

.onglet_n a {
    background: #4CAF50;
    display: block;
    color: white;
    text-decoration: none;
}

.onglet_y a {
    display: block;
    color: #000000;
    text-decoration: none;
    background: #eee;
}

.onglet_y {
    background: #eee;
    padding-bottom: 4px;
}

.content_onglet {
    background-color: #eee;
    margin-top: -1px;
    padding: 5px;
}

/* menu site */
.menu {
    width: 280px;
    font-size: 12px;
    border-collapse: collapse;
    border-spacing: 0;
    border: 0;
    padding: 0;
    margin: 0;
    position: fixed;
}

.menu_titre {
    display: inline-block;
    font-size: 12px;
    width: 280px;
    background-color: #4caf50;
    border: 0 solid black;
    margin: 0;
    margin-top: 8px;
    color: white;
    vertical-align: bottom;
    float: left;
}

.menu_titre a {
    text-decoration: none;
    color: white;
    display: block;
    padding: 2px 4px 0 2px;
    height: 18px;
}

.menu_titre a:hover {
    background-color: #5bcd5f;
    color: white;
}

.menu_titre span {
    text-decoration: none;
    color: white;
    display: block;
    padding: 2px 4px 0 2px;
    height: 18px;
}

.menu_bloc {
    display: inline-block;
    background-color: #eee;
    border: 0 solid black;
    padding: 0;
    float: left;
    width: 258px;
    color: black;
    margin-left: 22px;
    font-size: 12px;
    vertical-align: middle;
}

.menu_bloc table td tr {
    font-size: 12px;
}

.menu_lien {
    display: inline-block;
    background-color: #eee;
    border: 0 solid black;
    margin: 0;
    padding: 0;
    float: left;
    height: 22px;
    vertical-align: middle;
}

.menu_lien a {
    padding: 4px 4px 0 2px;
    text-decoration: none;
    display: block;
    color: black;
    height: 18px;
}

.menu_lien a:hover {
    background-color: #ccc;
}

.menu_lien span {
    padding: 4px 4px 0 2px;
    display: block;
    color: grey;
    height: 18px;
}

/* page meteo */
#meteo_current_det {
    display: none;
}

#meteo_current_simple {
    display: block;
}

#meteo_hourly_det {
    display: none;
}

#meteo_hourly_simple {
    display: block;
}

#meteo_daily_det {
    display: none;
}

#meteo_daily_simple {
    display: block;
}

/* divers */


.debug_url {
    display: none;
}

.debug_debug {
    display: none;
}

.valid_form {
    -webkit-appearance: none;
    background-color: #4CAF50;
    color: white;
    border: 1px solid white;
    border-radius: 10px;
}

.carre_rouge {
    display: inline;
    width: 20px;
    padding: 2px;
    border: 1px solid #e20600;
    text-align: center;
    color: #e20600;
}

.on {
    display: block;
}

.off {
    display: none;
}

.droite {
    text-align: right;
    float: right;
}

.formulaire_login tbody tr td {
    width: 100%;
    padding: 2px 2px;
    font-size: 12px;
}

.fermeture {
    display: none;
}


/* cas ecran large */
@media (min-width: 740px) {
    .acces_menu_mobile {
        display: none;
    }

    .contenu {
        margin-left: 286px;
        max-width: calc(100% - 287px - 20px);
    }

    #fb {
        display: inline-block;
        width: 280px;
    }

    .accueil {
        float: left;
        width: 49%;
    }

    .accueil2 {
        float: right;
        width: 49%;
    }

    .accueil_t {
        float: right;
        width: 25%;
    }

    .accueil_t2 {
        display: none;
    }

    .accueil_v {
        float: left;
        width: 73%;
        text-align: center;
        align-content: center;
    }

    .menu_titre1 {
        width: 92%;
        float: left;
    }

    .menu_titre2 {
        width: 8%;
        float: right;
        margin: 0 auto 0 auto;
    }

    .menu_titre3 {
        width: 8%;
        float: right;
        margin: 0 auto 0 auto;

    }
}


/* cas ecran reduit - mobile */
@media (max-width: 740px) {

    .acces_menu_mobile {
        position: fixed;
        left: 0;
        height: 100px;
        width: 18px;
        top: 30px;
        background-color: #eee;
        color: grey;
        font-size: 12px;
        padding: 0 0;
        margin: auto;
        writing-mode: vertical-lr;
        text-orientation: mixed;
        text-align: center;
        z-index: 10;
    }

    .acces_menu_mobile a {
        text-decoration: none;
        color: black;
        display: inline-block;
        margin: auto;
        width: 100%;
        height: 100%;
    }

    .acces_menu_mobile a:hover {
        background-color: #ccc;
    }

    .contenu {
        margin-left: 0;
        width: 100%;
    }

    #fb {
        display: none;
    }

    .fb-page {
        display: none;
    }

    .accueil {
        display: inline-block;
    }

    .accueil2 {
        display: inline-block;
    }

    .accueil_t {
        display: none;
    }

    .accueil_v {
        float: left;
        width: 100%;
    }

    .menu {
        position: relative;
        margin: 0 auto 10px auto;
    }

    .menu_detail_page {
        left: 30px;
        right: unset;
    }

    .menu_titre1 {
        width: 100%;
        float: left;
    }

    .menu_titre2 {
        display: none;
    }

    .menu_titre3 {
        display: none;
    }
}


/* cas impression */
@media print {

    @page {
        margin: 10%;
    }

    .contenu {
        margin-left: 0;
        margin-top: 0;
        width: 100%;
        max-width: 100%;
    }

    .acces_menu_mobile a {
        display: none;
    }

    #fb {
        display: none;
    }

    .fb-page {
        display: none;
    }

    .accueil_t {
        display: none;
    }

    .menu {
        display: none;
    }

    .donnees_thermostat {
        display: none;
    }

    .menu_chauffage {
        display: none;
    }

    .contact {
        display: none;
    }

    .tab_gris {
        text-align: center;
        border: 1px solid #000000;
    }

    .valid_form {
        display: none;
    }

    .onglets {
        display: none;
    }

    h1, h2, h3 {
        color: black;
    }

    div img {
        page-break-inside: avoid;
        break-inside: avoid;
    }

    ul, li {
        page-break-inside: avoid;
        break-inside: avoid;
    }

    h1, h2, h3, h4 {
        page-break-after: avoid;
        break-after: avoid;
    }

    a[href]:not([href^="javascript:"]):not([href^="#"])::after {
        content: " (" attr(href) ")";
        opacity: 0.8;
        font-size: 0.8em;
    }

    * {
        background: transparent !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    .print_non {
        display: none;
    }
}

/*mode sombre*/
@media (prefers-color-scheme: dark) {
    body {
        background-color: #1c1c1e;
        color: #AAAAAA;
    }

    .menu_bloc {
        background-color: #eee;

    }

    .menu_lien {
        background-color: #eee;
        color: #fefefe;
    }

    h2 {
        background-color: #eee;
    }

    .tab_gris {
        background-color: #eee;
    }

    .acces_menu_mobile {
        background-color: #eee;
    }

    img {
        filter: grayscale(40%);
    }

    .accueil2 {
        background-color: #eee;
    }

    .onglet_y {
        background-color: #eee;
    }

    .onglet_y a {
        background-color: #eee;
    }

    .content_onglet {
        background-color: #eee;
        color: black;
    }

    .valid_form {
        background-color: #4CAF50;
        border: 1px solid #4CAF50;
        color: #fefefe;
    }

    .tab_gris th {
        border: 1px solid #aaa;
        color: black;
    }

    .tab_gris td {
        border: 1px solid #aaa;
        color: black;
    }

    .tab_gris select {
        color: black;
        background-color: #1c1c1e;
    }

    textarea {
        background-color: #eee;
        color: black;
    }

    input {
        background-color: #eee;
        color: black;
    }

    .accueil_t {
        display: none;

    }

    .accueil_t2 {
        display: block;
        float: right;
        width: 25%;
    }

    .invert {
        filter: invert(100%) grayscale(20%);
    }

    a {
        color: grey;
    }

    td a {
        color: inherit;
    }
}


@media (prefers-color-scheme: dark) and  (max-width: 740px) {
    .accueil_t2 {
        display: none;
    }
}