/**
 * Theme ARCM — charge avec body.theme-arcm (voir layout.php).
 * Police 'Montserrat' utilisee si installee localement sur le poste,
 * sinon fallback transparent sur system-ui (cf. font-family ci-dessous).
 * Pas de chargement externe (CSP strict, fonctionnement offline).
 */
:root {
    --bg: #ffffff;
    --page-gradient-top: #fafafa;
    --card: #ffffff;
    --text: #333333;
    --muted: #666666;
    --primary: #eb6400;
    --primary-dark: #c75300;
    --success-bg: #f0f7f1;
    --success-text: #1d5c2e;
    --error-bg: #fef2f2;
    --error-text: #991b1b;
    --border: #e8e8e8;
    --header-bg: #ffffff;
    --header-surface: #f5f5f5;
    --shadow-dropdown: 0 8px 24px rgba(0, 0, 0, 0.1);
    --radius-pill: 999px;
}

body.theme-arcm {
    font-family: 'Montserrat', system-ui, -apple-system, 'Segoe UI', sans-serif;
    font-weight: 400;
    background: linear-gradient(180deg, var(--page-gradient-top) 0%, var(--bg) 180px, var(--bg) 100%) !important;
}

.theme-arcm h1,
.theme-arcm h2,
.theme-arcm h3 {
    font-weight: 700;
    color: var(--text);
    letter-spacing: 0.02em;
}

.theme-arcm .site-header {
    background: #ffffff;
    color: #333333;
    border-bottom: none;
    box-shadow: none;
    padding-bottom: 0;
}

.theme-arcm .site-header-inner {
    border-bottom: 1px solid var(--border);
}

.theme-arcm .site-header::after {
    content: '';
    display: block;
    height: 6px;
    width: 100%;
    background: #eb6400;
}

/* Remplace la regle globale « a { color: var(--primary) } » sur le logo et la nav */
.theme-arcm .site-header .brand,
.theme-arcm .site-header a.brand {
    color: #2d2d2d;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-size: 1.05rem;
}

.theme-arcm .main-nav a {
    color: #333333;
    font-weight: 500;
}

.theme-arcm .main-nav a:hover {
    background: var(--header-surface);
    color: var(--primary);
    text-decoration: none;
}

.theme-arcm details.dropdown > summary {
    color: #333333;
    font-weight: 500;
}

.theme-arcm details.dropdown[open] > summary,
.theme-arcm details.dropdown:hover > summary {
    background: var(--header-surface);
    color: var(--primary);
}

.theme-arcm details.dropdown .dropdown-content {
    background: #ffffff;
    border: 1px solid var(--border);
    box-shadow: var(--shadow-dropdown);
}

.theme-arcm details.dropdown .dropdown-content a,
.theme-arcm details.dropdown .dropdown-content .dropdown-btn {
    color: #333333;
    font-weight: 500;
}

.theme-arcm details.dropdown .dropdown-content a:hover,
.theme-arcm details.dropdown .dropdown-content .dropdown-btn:hover {
    background: var(--header-surface);
    color: var(--primary);
}

.theme-arcm .card {
    border: 1px solid var(--border);
    box-shadow: 0 2px 10px rgba(45, 45, 45, 0.06);
    border-radius: 8px;
}

.theme-arcm button:not(.icon-btn):not(.dropdown-btn):not(.searchable-select-trigger) {
    border-radius: var(--radius-pill);
    font-weight: 600;
    padding: 10px 20px;
    font-family: inherit;
    box-shadow: none;
}

.theme-arcm button:not(.icon-btn):not(.dropdown-btn):not(.searchable-select-trigger):hover {
    background: var(--primary-dark);
}

.theme-arcm .badge {
    background: #fff4eb;
    color: #8a4100;
    border: 1px solid #ffd0a8;
    font-weight: 600;
    border-radius: var(--radius-pill);
}

.theme-arcm th {
    background: #fafafa;
    color: var(--text);
    font-weight: 600;
}

.theme-arcm tbody tr:hover td {
    background: #fafafa;
}

.theme-arcm .icon-btn {
    border-color: var(--border);
    color: #2d2d2d;
}

.theme-arcm .icon-btn:hover {
    background: var(--header-surface);
    border-color: #d0d0d0;
}

.theme-arcm .subtle {
    color: var(--muted) !important;
}
