body {
    background: -moz-linear-gradient(to bottom right, #3366cc 0%, #99ccff 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,#3366cc), color-stop(100%,#99ccff));
    background: -webkit-linear-gradient(left, #0572CE 11%,#65b9fd 50%,#0572CE 89%);
    background: -o-linear-gradient(to bottom right, #3366cc 0%, #99ccff 100%);
    background: -ms-linear-gradient(to bottom right, #3366cc 0%, #99ccff 100%);
    background: linear-gradient(to bottom right, #3366cc 0%, #99ccff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3366cc', endColorstr='#99ccff',GradientType=1 ); 
}

.t-Footer { display: none; }

header/*, div.t-Body-nav*/ {
    /* position: relative !important; */
    min-height: 1px;
    padding-left: 10px;
    padding-right: 10px;
}

.t-Header-branding {
    background: rgba(255,255,255,0.2);
    /* background: url('&CUSTOM_PATH./img/bt_cubs.png') left top repeat !important; */
    height: 50px !important;
    min-height: 50px !important;
    /* background-color: #133959 !important; */
    -moz-border-radius: 0px 0px 3px 3px  !important;
    -webkit-border-radius: 0px 0px 3px 3px  !important;
    border-radius: 0px 0px 3px 3px  !important;
    -moz-box-shadow: 0px 2px 3px rgba(0,0,0,0.3) !important;
    -webkit-box-shadow: 0px 2px 3px rgba(0,0,0,0.3) !important;
    box-shadow: 0px 2px 3px rgba(0,0,0,0.3) !important;
    box-sizing: border-box !important;
    /* margin: 0px 0px 20px 0px; */
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
}

.t-Header .t-Button--header {
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
}

div.t-Body-nav {
    top: 58px !important;
    background-color: transparent;
    margin-left: 10px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
     -moz-border-top-right-radius: 0;
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
} 

div.t-TreeNav {
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -moz-border-top-right-radius: 0;
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
    background: rgba(255,255,255,0.2);
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
}

div.t-Body-main {
    margin-top: 58px !important;
}

div.t-Body-title {
    border-top: 1px solid rgba(0,0,0,.075);
    border-right: 1px solid rgba(0,0,0,.075);
    top: 58px !important;
    margin: 0 10px;
    -moz-border-radius: 0 3px 3px 0;
    -webkit-border-radius: 0 3px 3px 0;
    border-radius: 0 3px 3px 0;
}

div.t-Body-side {
    top: 58px !important;
	margin: 0 10px;
}

@media only screen and (min-width: 641px) {
    :not(.u-RTL) .apex-side-nav.js-navCollapsed .t-Body-content,
    :not(.u-RTL) .apex-side-nav.js-navCollapsed .t-Body-title, 
    :not(.u-RTL) .apex-side-nav.js-navCollapsed .t-Body-side {
        left: 58px;
    }
}

@media (max-width: 640px) {
    :not(.u-RTL) .apex-side-nav.js-navCollapsed .t-Body-content,
    :not(.u-RTL) .apex-side-nav.js-navCollapsed .t-Body-title, 
    :not(.u-RTL) .apex-side-nav.js-navCollapsed .t-Body-side {
        margin-left: 58px;
    }
}

.t-TreeNav .a-TreeView-node--topLevel .a-TreeView-row.is-hover {
    background-color: rgba(0, 0, 0, 0.4) !important;
}

.t-TreeNav .a-TreeView-node--topLevel .a-TreeView-row.is-focused {
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
}

.t-TreeNav .a-TreeView-node--topLevel .a-TreeView-row.is-current--top, 
.t-TreeNav .a-TreeView-node--topLevel.is-collapsible > .a-TreeView-row, 
.t-TreeNav .a-TreeView-node--topLevel ul {
    background-color: rgba(0, 0, 0, 0.2);
}

.t-TreeNav .a-TreeView-node--topLevel .a-TreeView-row.is-selected, 
.t-TreeNav .a-TreeView-node--topLevel .a-TreeView-row.is-current--top.is-selected {
    background-color: rgba(0, 0, 0, 0.25);
}

.t-TreeNav .a-TreeView-node--topLevel .a-TreeView-content .fa {
    margin-right: 5px;
}

.apex-item-select:focus, .apex-item-text:focus, .apex-item-textarea:focus {
    	border: 1.1px solid #dfdfdf;
}

.btn-violet {
    background: transparent !important;
    border: 1px solid #7E57C2 !important;
    box-shadow: none !important;
    color: #7E57C2 !important;
    border-radius: 4px !important;

    /* Animation fluide */
    transition: all 0.25s ease-in-out !important;
    transform: translateY(0);
}

/* Survol */
a.btn-violet:hover {
    background-color: #7E57C2 !important;
    border-color: #7E57C2 !important;
    color: #FFFFFF !important;

    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 4px 10px rgba(126, 87, 194, 0.30) !important;
}

/* Clic */
a.btn-violet:active {
    transform: translateY(0) scale(0.96);
    box-shadow: 0 2px 4px rgba(126, 87, 194, 0.20) !important;
}

/* Focus clavier */
a.btn-violet:focus-visible {
    outline: 2px solid #7E57C2 !important;
    outline-offset: 3px;
}



/* Animation commune à tous les boutons APEX */
.t-Button {
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        filter 0.25s ease !important;
}

/* Survol */
.t-Button:hover {
    transform: translateY(-2px) scale(1.03);
    filter: brightness(1.05);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

/* Clic */
.t-Button:active {
    transform: translateY(0) scale(0.97);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12);
}

/* Focus clavier */
.t-Button:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
}



/* ===== Base commune des boutons ===== */
a.btn-delete,
a.btn-modify,
a.btn-consult,
a.btn-success,
a.btn-purple
 {
    --c1: #333; --c2: #555; --c3: #777; --c4: #999; --c5: #bbb;
    --shadow: rgba(0, 0, 0, 0.4);

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center;
    gap: 0.4rem;
    width: fit-content !important;
    height: 26px !important;
    padding: 0 12px !important;
    cursor: pointer;
    font-size: 11px;
    font-weight: bold;
    text-decoration: none !important;
    color: #fff !important;
    text-shadow: 1px 1px 2px var(--shadow);
    border: none !important;
    border-radius: 30px !important;

    background: linear-gradient(15deg,
        var(--c1), var(--c2), var(--c3), var(--c4), var(--c5),
        var(--c4), var(--c3), var(--c2), var(--c1)) no-repeat !important;
    background-size: 300% !important;
    background-position: left center !important;
    box-shadow: 0 10px 8px -8px rgba(0, 0, 0, 0.25) !important;
    transition: background 0.3s ease !important;
}

a.btn-delete:hover,
a.btn-modify:hover,
a.btn-consult:hover,
a.btn-success:hover,
a.btn-purple
 {
    background-size: 320% !important;
    background-position: right center !important;
}

/* Icône */
a.btn-delete .fa, a.btn-delete .t-Icon,
a.btn-modify .fa, a.btn-modify .t-Icon,
a.btn-consult .fa,a.btn-consult .t-Icon,
a.btn-success .fa,a.btn-success .t-Icon,
a.btn-purple .fa, a.btn-purple .t-Icon
 {
    font-size: 12px !important;
    color: #fff !important;
    transition: transform 0.3s ease;
}
a.btn-delete:hover .fa, a.btn-modify:hover .fa,
a.btn-consult:hover .fa,   
a.btn-success:hover .fa,
a.btn-purple:hover .fa
{
    transform: scale(1.2);
}

/* Clic + focus clavier */
a.btn-delete:active, a.btn-modify:active,
a.btn-consult:active,   a.btn-success:active,
a.btn-purple:active
{
    transform: scale(0.96);
}
a.btn-delete:focus-visible, a.btn-modify:focus-visible,
a.btn-consult:focus-visible,   a.btn-success:focus-visible,
a.btn-purple:focus-visible {
    outline: 2px solid #0572ce;
    outline-offset: 3px;
}

/* ===== SUPPRIMER : rouge ===== */
a.btn-delete {
    --c1: #8b0000; --c2: #b3121b; --c3: #e62222; --c4: #ff5a4d; --c5: #ff8a65;
    --shadow: rgba(139, 0, 0, 0.5);
}
a.btn-delete::after { content: "Supprimer"; }

/* ===== MODIFIER : orange / ambre ===== */
a.btn-modify {
    --c1: #b45309; --c2: #d97706; --c3: #f59e0b; --c4: #fbbf24; --c5: #fcd34d;
    --shadow: rgba(120, 53, 15, 0.55);
}
a.btn-modify::after { content: "Modifier"; }

/* ===== VOIR : bleu ===== */
a.btn-consult {
    --c1: #2c3e63; --c2: #3d5688; --c3: #5273AF; --c4: #7b97c9; --c5: #aebfdf;
    --shadow: rgba(44, 62, 99, 0.55);
    /* --c1: #115e59; --c2: #0f766e;  --c3: #0ea5e9; --c4: #38bdf8; --c5: #7dd3fc;
    --shadow: rgba(4, 86, 155, 0.5);*/
}
a.btn-consult::after { content: "Voir"; }

/* ===== VOIR : vert ===== */

a.btn-success {
    --c1: #14532d; --c2: #16a34a; --c3: #22c55e; --c4: #4ade80; --c5: #bbf7d0;
    --shadow: rgba(20, 83, 45, 0.55);
}

/* ===== VOIR : violet ===== */
a.btn-purple {
    --c1: #4c1d95; --c2: #6d28d9; --c3: #8b5cf6; --c4: #a78bfa; --c5: #ddd6fe;
    --shadow: rgba(76, 29, 149, 0.55);
}

/* ===== Palette (à modifier facilement) ===== */
.table-moderne {
    --tm-main: #3E5C96;
    --tm-main-dark: #3E5C96;
    --tm-line: #dde6f0;
    --tm-zebra: #f5f9fd;
    --tm-hover: #e3f0fc;
    --tm-text: #2b3a4a;
}

/* ===== Table : lignes séparées ===== */
/* ===== Table ===== */
.table-moderne .a-IRR-table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    width: 100%;
    font-family: 'Segoe UI', Roboto, Arial, sans-serif;
    font-size: 11.5px;
    line-height: 1.25;
    background: #fff !important;
    border: 1px solid var(--tm-line) !important;
    border-radius: 6px;
}

/* ===== En-têtes ===== */
.table-moderne .a-IRR-header {
    background: linear-gradient(180deg, var(--tm-main), var(--tm-main-dark)) !important;
    color: #fff !important;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    padding: 6px 8px !important;
    border: none !important;
    border-right: 1px solid rgba(255, 255, 255, 0.25) !important;
    text-align: center;
}
.table-moderne .a-IRR-header:first-child { border-top-left-radius: 5px; }
.table-moderne .a-IRR-header:last-child  { border-top-right-radius: 5px; border-right: none !important; }

.table-moderne .a-IRR-headerLink,
.table-moderne .a-IRR-headerLink:hover,
.table-moderne .a-IRR-headerLink:visited {
    color: #fff !important;
    text-decoration: none;
}

/* ===== Cellules ===== */
.table-moderne .a-IRR-table tbody td {
    background: #fff !important;
    color: var(--tm-text);
    padding: 4px 8px !important;
    border: none !important;
    border-right: 1px solid var(--tm-line) !important;
    border-bottom: 1px solid var(--tm-line) !important;
    vertical-align: middle;
    transition: background 0.15s ease;
}
.table-moderne .a-IRR-table tbody td:last-child {
    border-right: none !important;
}
.table-moderne .a-IRR-table tbody tr:last-child td {
    border-bottom: none !important;
}

/* Zébrage */
.table-moderne .a-IRR-table tbody tr:nth-child(even) td {
    background: var(--tm-zebra) !important;
}

/* Survol */
.table-moderne .a-IRR-table tbody tr:hover td {
    background: var(--tm-hover) !important;
}
.table-moderne .a-IRR-table tbody tr:hover td:first-child {
    box-shadow: inset 3px 0 0 #FDB813;
}

/* ===== Barre de recherche / actions ===== */
.table-moderne .a-IRR-controls input[type="text"] {
    border-radius: 5px 0 0 5px;
    border: 1px solid #c3d1e0;
    font-size: 12px;
}
.table-moderne .a-IRR-controls .a-Button {
    border-radius: 5px;
    font-size: 12px;
    font-weight: 600;
}
.table-moderne .a-IRR-pagination-label {
    color: #64748b;
    font-size: 11px;
}

