.report-container {
    background: white;
    padding: 5px;
    border-radius: 12px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
}
img {
    max-width: 80%;
    height: auto;
    border-radius: 8px;
    margin-bottom: 10px;
}
h2, h3 {
    margin-top: 10px; }

body {
    margin: 0;
    font-family: sans-serif;
}
.tab-container {
    width: 100%;
    margin-bottom: 10px;
}

.tabs {
    display: flex;
    border-bottom: 2px solid #ddd;
}

.tab {
    padding: 5px 5px;
    cursor: pointer;
    border: 1px solid #ddd;
    border-bottom: none;
    background: #f5f5f5;
    margin-right: 5px;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
}

.tab.active {
    background: white;
    font-weight: bold;
}

.tabcontent {
    display: none;
    padding: 5px;
    background: white;
    border: 1px solid #ddd;
    border-radius: 6px;
    margin-bottom: 10px;
}

.tabcontent.active {
    display: block;
}

.sub-tabs {
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
}

.sub-tab {
    padding: 6px 12px;
    border-radius: 6px;
    border: none;
    background: #eee;
    cursor: pointer;
    font-size: 14px;
}

.sub-tab.active {
    background: #007bff;
    color: white;
}

.sub-tabcontent {
    display: none;
}

.sub-tabcontent.active {
    display: block;
}


img {
    max-width: 100%;
    height: auto;
    border: 1px solid #ccc;
    border-radius: 6px;
    padding-right: 10px;
    padding-left: 10px;
}

.report-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 5px;
    margin-bottom: 10px;
    table-layout: fixed;  
}

.report-table th {
    background: #efefef;
    padding: 3px;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    font-size: 12px;
}

.report-table td {
    border-bottom: 1px solid #ccc;
    padding: 1px;
    white-space: normal;
    font-size: 14px;
}

.report-block {
    width: 100%;
    border: 1px solid #ccc;
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 10px;
    border-radius: 6px;
    overflow-x: auto;   /* Scroll horizontal si nécessaire */
    -webkit-overflow-scrolling: touch;
}

.report-table td:first-child,
.report-table th:first-child {
    width: 45%;
    padding-left: 10px;
    padding-right: 6px;
    font-weight: 300;
}
.chart-row {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;   /* mobile friendly */
    /* border: 1px solid #ccc; */
    min-height: 200px;
}

.chart-box {
    position: relative;
    width: 400px;
    height: 200px;
    border: 2px solid #ccc;
    padding: 10px;
    margin: 2px;
}

.chart-box canvas {
    width: 100% !important;
    height: 100% !important;
    /* border: 1px solid #ccc; */
}
.instant-row {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;   /* mobile friendly */
    /* border: 1px solid #ccc; */
    min-height: 300px;
}
.stats-row {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;   /* mobile friendly */
    /* border: 1px solid #ccc; */
    min-height: 200px;
}
.stats-box {
    position: relative;
    width: 600px;
    height: 350px;
    border: 2px solid #ccc;
    padding: 2px;
    margin: 2px;
}

.stats-box canvas {
    width: 100% !important;
    height: 100% !important;
    /* border: 1px solid #ccc; */
}

.gauges-row {
    display: flex;
    align-items: center;
    gap: 2px;
    width: 300px;
    height: 150px;
    
   /* border: 1px solid #ccc; */
}
.gauges-row canvas {
    border: 1px solid #ccc; 
    width: 100% !important;
    height: 100% !important;
}
.stats-buttons {
    padding:5px 5px; 
    font-size:14px; 
    background:#007bff; 
    color:white; 
    border:3px solid #0000ff; 
    border-radius:6px; 
    cursor:pointer;
    margin: 2px;
}


.gauge-container {
    display: flex;
    height: 200px;
    flex-direction: row;          /* FORCE la mise en ligne */
    justify-content: space-around;
    align-items: center;
    gap: 10px;
    border: 2px solid #ccc;
    width: 100%;
    max-width: 400px;              /* limite la largeur globale */
    padding: 10px;
    margin: 2px;
    /* centre le container */
}

.gauge-container canvas {
    flex: 1 1 45%;                 /* deux gauges équilibrées */
    max-width: 180px;              /* limite la taille */
    height: 160px;                 /* hauteur maîtrisée */
}

.gauge-title {
    font-size: 18px;
    margin-bottom: 5px;
}