:root { 
    /* Couleurs communes */
    --blanc: 255, 255, 255;
    --texte-info: rgba(var(--blanc), 1);
    --texte-info-2: rgba(var(--blanc), 0.75);
    --texte-date: rgba(var(--blanc), 1);
    --fond-date: rgba(var(--rouge), 1);
    --fond-news: rgba(var(--rouge), 1);
    --texte-jour: rgba(var(--noir), 1);
    --fond-jour: rgba(var(--blanc), 1);
    --erreur: rgba(var(--rouge), 1);
    --submit: rgba(var(--bleu), 1);

    --fond-jour-icone: rgba(var(--jour), 0.75);
    --fond-nuit-icone: rgba(var(--nuit), 0.75);
    --meteo-jour: -webkit-linear-gradient(top, rgb(var(--jour)), rgb(var(--nuit)));
    --meteo-nuit: -webkit-linear-gradient(top, rgb(var(--nuit)), rgb(var(--fin-nuit)));

    --fond-sp: -webkit-linear-gradient(bottom, rgb(var(--terre)) 20%, rgb(var(--ciel)) 20%);
}

body {
    color: var(--texte);
}

.error {
    color: var(--erreur);
}

.body {
    background: var(--fond-2);
}

header .titre {
    background: var(--fond-titre);
}

.shirt {
    background: var(--fond);
}

.map_container, .map_iframe {
    background: var(--fond-2);
}

.loading_body {
    background-color: var(--fond-2);
}

#loading {
    background-color: var(--loading);
}

header .titre {
    color: var(--texte-titre);
}

footer {
    color: var(--texte-2);
}

.compte_info a, .news .text a, .listen_info a, .home_connect_detail a, .connect_info a, .footer_label a, .liste th, .par, .qualite, .comments, .concert_gris, .rss_read, .rss_feedauthor, .url, .inst_owner, .inst_not_owned, .search_desc, .polluant table td.polluant_name {
    color: var(--texte-2);
}

.compte_info a::after, .news .text a::after, .listen_info a::after, .home_connect_detail a::after, .connect_info a::after, .footer_label a::after {
    opacity: 0.25;
}

.inst_owner_icone, .comments img.icone, img.host_down, .connect_info img.icone, .room img.icone, .connect_info img.menu_icone, .rss_read img.fav {
    opacity: 0.25;
}

.rss_icone {
    opacity: 1;
}

.clearart, #form_photo_preview, #form_wallpaper_preview, .memento, .readme {
    border-bottom: 1px solid var(--barre);
}

.menu {
    background: var(--fond);
}

.demi_thumb, .user_info {
    background: var(--fond-2);
}

.footer_menu {
    background: var(--fond-2);
}

.thumb_text, .weather_map_text {
    color: var(--texte-info);
    background: -webkit-linear-gradient(top, rgba(var(--noir), 0), rgba(var(--noir), 0.40));
}

.shade {
    background: var(--shade-top);
}

.home_shade_top {
    background: var(--shade-top);
}

.shade_bottom {
    background: var(--shade-bottom);
}

a {
    color: var(--texte-lien);
}

.WeatherLink:hover {
    background-color: var(--fond);
}

a.bouton, .update {
    color: var(--texte);
    opacity: .5;
}

a.sp, a.openweather {
    opacity: 1;
}

.demi_thumb a, .user_info a, .nolink, .menu_title {
    opacity: .5;
    color: var(--texte);
}

.demi_thumb a.bookmark {
    opacity: 1;
    color: var(--texte-menu);
}

.footer_menu a.bouton, .media_info, .search_string, .monitor_temp {
    color: var(--texte);
    opacity: .5;
}

td, th, .news .source, .news.nothumb, .wgraph, .listen_ligne, .infobloc, footer.nothumb, .sous_titre, .listen_info, .compte_info, .homeconnect_info, .network_group, .sport_info,
.readme .text h1, .readme .text h2, .readme .text h3, .readme .text h4, .readme .text h5, .readme .text h6, img.network {
    border-top: 1px solid var(--barre);
}

#marge_thumb .sous_titre {
    border-top: 0;
}

.detail th {
    border-top: 1px solid var(--barre);
}

.liste td, .liste th, td.resume, .weatherdate td {
    border: 0;
}

td.liste {
    border: 0;
}

table, .compte_info_graph, .listen_table, .mybutton, .sous_titre.colle, .homeconnect_info, img.network, .sport_info, .news .source.link {
    border-bottom: 1px solid var(--barre);
}

.info table {
    border-bottom: 0;
}

.loading, .loading_window, .map_container {
    opacity: 1;
    background-image: var(--loading-icon);
}

.exif .loading_window {
    filter: invert(100%);
}

#kodi, #sonarr, #radarr, #lidarr, #sabnzbd, #plex, #calibreweb, #nextcloud {
    background-image: var(--loading-icon);
}

fieldset.user, .tv_guide, .tv_guide_heure {
    border-top: 1px solid var(--barre);
}

label {
    color: var(--texte);
    border-bottom: 1px solid var(--barre);
}

td label.label_checkbox {
    font-weight: normal;
    border-bottom: none;
}

input[type="text"], input[type="password"], input[type="submit"], textarea {
    color: var(--texte);
    background: transparent;
    border-bottom: 1px solid var(--barre);
}

.inactif {
    color: var(--texte-inactif);
    border-bottom: 1px solid var(--barre);
}

select {
    color: var(--texte);
    border-bottom: 1px solid var(--barre);
}

select {
    background: transparent var(--select-icon) no-repeat 10px 10px;
    background-size: 24px 24px;
    padding-left: 42px;
}

input[type="submit"], .upload_label {
    color: var(--submit);
}

input:-moz-placeholder, textarea:-moz-placeholder {
    color: var(--texte-3);
}

input:focus::-moz-placeholder, textarea:focus::-moz-placeholder {
    color: transparent;
}

input:-webkit-input-placeholder, textarea:-webkit-input-placeholder {
    color: var(--texte-3);
}

input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder {
    color: transparent;
}

input:focus, select:focus, textarea:focus {
    border-bottom: 1px solid var(--barre);
    outline: none;
}

td input[type="text"], td select:focus, td select, .search input[type="text"] {
    border-bottom: none;
}

.login, .search {
    background-color: var(--fond);
}

.menusep {
    border-bottom: 1px solid var(--menu-sep);
}

.duration, .counts, .counts_concert {
    color: var(--texte-info-2);
    background: -webkit-linear-gradient(bottom, rgba(var(--noir), 0), rgba(var(--noir), 0.40));    
}

.counts_concert img, .counts img {
    opacity: 0.7;
}

.nbs {
    font-size: 10px;
    color: var(--texte-info-2);
}


.date_update_month, .date_update_month_concert, .date_update_month_tv, .date_cal_month {
    color: var(--texte-date);
    background: var(--fond-date);
}

.date_update_day, .date_update_day_tv, .date_cal_day {
    color: var(--texte-jour);
    background: var(--fond-jour);
}


/* EXIF */
.exif {
    background: rgba(var(--noir), 0.75);
}

.exif a.tab {
    color: rgb(var(--blanc));
}

.exif a.tab:hover {
    color: rgb(var(--blanc));
    background-color: rgba(var(--blanc), 0);
}

.exif table td {
    color: rgba(var(--blanc), 0.5);
}

.exif table th {
    /*border-bottom: 1px solid rgba(var(--blanc), 0.4);*/
    /*border-bottom: 1px solid rgba(var(--blanc), 0.1);*/
    color: rgb(var(--blanc));
}

.select_tab {
    color: rgb(var(--blanc));
    /*background-color: rgba(var(--blanc), 0.1);*/
}

.tv_guide {
    background-color: var(--fond-2);
}

.tv_heure, .tv_desc, .tv_program_heure, .sw_year {
    color: var(--texte-4);
}

.tv_program {
    border-top: 1px solid var(--barre);
    border-left: 1px solid var(--barre);
    background-color: var(--fond);
}

.tv_program_heure {
    border-top: 1px solid var(--barre);
    background: var(--fond-programme);
}

.tv_guide_header {
    background: var(--fond-programme);
    border-left: 1px solid var(--barre);
}

.tv_guide_header_heure, .tv_guide_headers, .device {
    background: var(--fond-programme);
}

.tv_prime_header {
    background: var(--fond-programme);
    border-right: 1px solid var(--barre);
}

.sw_year {
    background: var(--fond-sw);
    border-right: 1px solid var(--barre);
}

.tv_prime {
    color: var(--texte);
}

.tv_program .tv_prime {
    color: var(-texte);
}

.tv_guides, .graph {
    border-bottom: 1px solid var(--barre);
}

.tv_guide_first {
    border-left: 0;
}

.tv_now {
    color: var(--tv-now);
    background-color: var(--fond);
    border-bottom: 2px solid var(--tv-now);
}

.jour, .nuit {
    color: var(--texte-info) !important;
}

.jour {
    background: var(--meteo-jour);
}

.jour_icon {
    background-color: var(--fond-jour-icone) !important;
}

.nuit_icon {
    background-color: var(--fond-nuit-icone) !important;
}

.nuit {
    background: var(--meteo-nuit);
}

.sp_user_img, .sp_user_img_map {
    background: var(--fond-sp);
}

img.disc, img.bigdisc, img.p_disc, img.p_bigdisc, img.artist, img.bigartist, img.concert, img.landscape, img.banner, img.thumb, img.p_movie, img.p_bigmovie, img.bigbook, img.book, img.movie, .tv_prog_icon, img.album, img.photo, img.pic, img.nologo, img.listen, img.weather_map, .poi-image {
    background-color: var(--miniature);
    background-position: center center;
    background-repeat: no-repeat;
}

img.disc, img.bigdisc, img.artist, img.bigartist, img.concert, img.thumb, img.bigbook, img.book, img.movie, img.album, img.p_disc, img.p_bigdisc, img.listen {
    background-size: 50% auto;
}

.poi-image {
    background-size: 50% auto !important;
}

img.landscape, img.banner, .tv_prog_icon, img.photo, img.pic, img.nologo, img.weather_map {
    background-size: auto 50%;
}

.poi-image, .sp_user_img_map {
    box-shadow: 0 0 0 1px var(--fond-poi);
}

.poi-icon {
    background-color: var(--fond-poi);
}

.form_ligne {
    background: var(--fond-form);
}

.rapp_ligne, .solde_rapp, .news .text.reader, .is_playing, .news .reader_mode {
    background: var(--fond-3);
}

.a_venir_ligne, .a_venir, .search_surb {
    background: var(--fond-4);
}

.comm_gauche {
    background-color: var(--comm-gauche);
}

.comm_droite {
    background-color: var(--comm-droite);
}

.news .text h1 {
    color: var(--texte);
}

.form_comment input {
    border: none;
}

input.search_home, input.bank_ope_search {
    border: 0;
}

.listen_count {
    background: rgba(var(--blanc), 0.5) url("/img/icons/light/ecoutes.svg") no-repeat 1.5px 1.5px;
    background-size: 11px 11px;
    padding-left: 14px;
    color: #000;
}

.sous_titre.colle, .network_info {
    background: var(--fond);
}

.home_bookmark .book_icon {
    background-color: var(--fond);
}

.emoji {
    filter: var(--emoji);
}

.typewriter, .fond_commit {
    background-color: var(--fond-2);
}

.color_room {
    background-color: rgba(var(--gris), 0.1);
}

.color_person {
    background-color: rgba(var(--person), 0.1);
}

.color_lightbulb {
    background-color: rgba(var(--lightbulb), 0.1);
}

.color_plug {
    background-color: rgba(var(--plug), 0.1);
}

.color_linky, .color_eau {
    background-color: rgba(var(--linky), 0.1);
}

.color_thermostat, .color_relay, .color_humidity, .color_temp {
    background-color: rgba(var(--thermostat), 0.1);
}

.color_smokedetector {
    background-color: rgba(var(--smokedetector), 0.1);
}

.color_cellphone {
    background-color: rgba(var(--iphone), 0.1);
}

.color_tablet {
    background-color: rgba(var(--ipad), 0.1);
}

.color_watch-variant {
    background-color: rgba(var(--applewatch), 0.1);
}

.color_vacuum {
    background-color: rgba(var(--vacuum), 0.1);
}

.color_car {
    background-color: rgba(var(--car), 0.1);
}

.color_laptop, .color_desktop-tower-monitor, .color_printer, .color_server {
    background-color: rgba(var(--macbook), 0.1);
}

.color_sleep {
    background-color: rgba(var(--sleep), 0.1);
}

.color_nintendo-switch {
    background-color: rgba(var(--nintendo-switch), 0.1);
}

.color_steam {
    background-color: rgba(var(--steam), 0.1);
}

.country_flag, .flag, .sw_country_flag {
    border: 1px solid var(--flag);
}

.readme .text table {
    border-bottom: none;
}

.vert {
    color: rgba(var(--vert), 1);
}

.vert_moyen {
    color: rgba(var(--vert-moyen), 1);
}

.rouge {
    color: rgba(var(--rouge), 1);
}

.bleu {
    color: rgba(var(--bleu), 1);
}

.bleu_moyen {
    color: rgba(var(--bleu-moyen), 1);
}

.bleu_marine {
    color: rgba(var(--bleu-marine), 1);
}

.gris {
    color: rgba(var(--gris), 1);
}

.orange {
    color: rgba(var(--orange), 1);
}

.jaune {
    color: rgba(var(--jaune), 1);
}

.fond_vert {
    background: rgba(var(--vert), 0.5);
}

.fond_vert_moyen {
    background: rgba(var(--vert-moyen), 0.5);
}

.fond_rouge {
    background: rgba(var(--rouge), 0.5);
}

.fond_bleu {
    background: rgba(var(--bleu), 0.5);
}

.fond_bleu_moyen {
    background: rgba(var(--bleu-moyen), 0.5);
}

.fond_bleu_marine {
    background: rgba(var(--bleu-marine), 0.5);
}

.fond_gris {
    background: rgba(var(--gris), 0.5);
}

.fond_orange {
    background: rgba(var(--orange), 0.5);
}

.fond_jaune {
    background: rgba(var(--jaune), 0.5);
}

.couleur {
    color: var(--texte-2);
}

#retries {
    background-color:  rgba(var(--texte-base), 0.5);
} 

.news_count, .nb_mail, .drive_letter {
    box-shadow: 0 0 1px 0px rgba(var(--noir), 0.40);
}

.news_count, .nb_mail {
    background-color: rgba(var(--rouge), 1);
    color: white;
}

.drive_letter {
    background-color: var(--fond);
    color: var(--texte-3);
}