/**
 * Journal Synchro — Styles du journal de synchronisation
 *
 * Filtres, tableau paginé et mise en forme du journal
 * des changements de taxonomie et d'archivage produits.
 *
 * @file        cc-synchro-journal.css
 * @package     CaisseConnect
 * @subpackage  CSS\Pages
 * @since       0.9
 * @version     1.1.0
 * @author      Microlibre <contact@microlibre.net>
 * @copyright   2026 Microlibre
 * @license     GPL-2.0+ https://www.gnu.org/licenses/gpl-2.0.html
 * @link        https://microlibre.net/caisse-connect
 */

/* === LAYOUT === */
.cc-journal-wrapper {
    margin-top: var(--cc-spacing-md, 15px);
}

/* === FILTRES === */
.cc-journal-filtres {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--cc-spacing-md, 15px);
    padding: var(--cc-spacing-sm, 10px);
    background: var(--cc-gray-200, #f5f5f5);
    border-radius: var(--cc-border-radius, 4px);
}

.cc-journal-filtres-gauche {
    font-weight: 600;
    color: var(--cc-text-light, #555);
}

.cc-journal-filtres-droite {
    display: flex;
    align-items: center;
    gap: 8px;
}

.cc-journal-filtres select,
.cc-journal-filtres .button {
    height: 28px;
    line-height: 26px;
    padding: 0 8px;
    box-sizing: border-box;
}

.cc-journal-filtres .button {
    font-size: var(--cc-font-size-sm, 12px);
}

.cc-journal-filtres select {
    border: 1px solid var(--cc-wp-border, #8c8f94);
    border-radius: var(--cc-border-radius, 4px);
    background: var(--cc-white, #fff);
    cursor: pointer;
}

/* === TABLE === */
.cc-journal-table.fixed {
    margin-top: 0;
    table-layout: auto;
}

.cc-journal-col-date {
    width: 1%;
    white-space: nowrap;
}

.cc-journal-col-source {
    width: 1%;
    white-space: nowrap;
    text-align: center;
}

.cc-journal-col-user {
    width: 1%;
    white-space: nowrap;
}

.cc-journal-col-type {
    width: 1%;
    white-space: nowrap;
}

.cc-journal-col-detail {
    width: 100%;
}

/* === BADGES SOURCE === */
.cc-journal-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: var(--cc-font-size-sm, 12px);
    font-weight: 600;
}

.cc-journal-badge-caisse {
    background-color: var(--cc-info-bg, #e7f3ff);
    color: var(--cc-info, #0073aa);
}

.cc-journal-badge-site {
    background-color: var(--cc-success-bg, #d4edda);
    color: var(--cc-success-text, #155724);
}

/* === TYPE ÉVÉNEMENT === */
.cc-journal-type {
    display: inline-block;
    padding: 2px 8px;
    border-radius: var(--cc-border-radius-sm, 3px);
    font-size: var(--cc-font-size-sm, 12px);
    font-weight: 600;
}

.cc-journal-type-suppression,
.cc-journal-type-suppression_selection {
    background-color: var(--cc-error-bg, #f8d7da);
    color: var(--cc-error-text, #721c24);
}

.cc-journal-type-ajout,
.cc-journal-type-ajout_selection {
    background-color: var(--cc-success-bg, #d4edda);
    color: var(--cc-success-text, #155724);
}

.cc-journal-type-renommage {
    background-color: var(--cc-warning-bg, #fff3cd);
    color: var(--cc-warning-text, #856404);
}

.cc-journal-type-deplacement,
.cc-journal-type-reassignation {
    background-color: var(--cc-purple-bg, #f3e5f5);
    color: var(--cc-purple-dark, #7b1fa2);
}

.cc-journal-type-archivage_produit,
.cc-journal-type-retrait_categorie {
    background-color: var(--cc-error-bg, #f8d7da);
    color: var(--cc-error, #dc3545);
    font-weight: bold;
}

/* === LIGNES COLORÉES (bordure latérale subtile) === */
.cc-journal-ligne-suppression td:first-child {
    border-left: 3px solid var(--cc-error, #dc3545);
}

.cc-journal-ligne-archivage td:first-child {
    border-left: 3px solid var(--cc-error-dark, #c82333);
}

.cc-journal-ligne-ajout td:first-child {
    border-left: 3px solid var(--cc-success, #28a745);
}

.cc-journal-ligne-renommage td:first-child {
    border-left: 3px solid var(--cc-warning, #ffc107);
}

.cc-journal-ligne-deplacement td:first-child {
    border-left: 3px solid var(--cc-purple, #826eb4);
}

/* === DÉTAIL === */
.cc-journal-col-detail code {
    background: var(--cc-gray-200, #f5f5f5);
    padding: 1px 5px;
    border-radius: var(--cc-border-radius-sm, 3px);
    font-family: var(--cc-font-mono, monospace);
    font-size: var(--cc-font-size-sm, 12px);
}

.cc-journal-col-detail em {
    color: var(--cc-text-light, #555);
}

/* === PAGINATION === */
.cc-journal-pagination {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 5px;
    margin-top: var(--cc-spacing-md, 15px);
}

.cc-journal-pagination .cc-nav-pages {
    padding: 0 var(--cc-spacing-sm, 10px);
    font-weight: 600;
}

/* === MODAL JOURNAL === */
.cc-modal-journal-content {
    width: 80vw;
    max-width: none;
}

.cc-modal-journal-body {
    max-height: 70vh;
    overflow-y: auto;
}

.cc-journal-chargement {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
    padding: 40px 20px;
    color: var(--cc-text-light, #555);
}
