/*
 * Copyright (c) 2025-2026.
 * kwargs SRL – Ingénierie logicielle, Bruxelles
 * Tous droits réservés.
 */

/* ── KWARGS SRL : PALETTE ─────────────────────────────────────────── */
/*                                                                      */
/*  Identité visuelle kwargs SRL – vibrant, contemporain, technique.    */
/*  Écrase la palette poesie par cascade CSS.                           */
/*                                                                      */
/*  CONTRASTE : toutes les couleurs vives (cyan, green, saffron,        */
/*  yellow) ont un contraste insuffisant avec du texte blanc.           */
/*  Le texte sur ces fonds doit être sombre (--ks-night).               */
/*                                                                      */
/* ─────────────────────────────────────────────────────────────────── */

:root {

    /* ── 1. Les 8 couleurs ──────────────────────────────────────── */

    --ks-chalk:         #f4f1eb;   /* craie – fond chaud, ancre claire          */
    --ks-night:         #0f1b2d;   /* encre – autorité, ancre sombre            */
    --ks-orange:        #e53d00;   /* spicy orange – impact, accent principal    */
    --ks-cyan:          #24dfe2;   /* strong cyan – technique, info             */
    --ks-green:         #b4ff2b;   /* green yellow – succès, validation         */
    --ks-saffron:       #ff9400;   /* deep saffron – alerte, attention          */
    --ks-yellow:        #ffee00;   /* sunbeam yellow – signal, warning          */
    --ks-night-light:   #2a3a52;   /* nuit éclaircie – secondaire, sobre        */

    /* ── 2. Assignation des rôles ───────────────────────────────── */

    --ks-surface-light: var(--ks-chalk);
    --ks-surface-dark:  var(--ks-night);

    --ks-primary:       var(--ks-orange);
    --ks-primary-rgb:   229, 61, 0;

    --ks-secondary:     var(--ks-night-light);
    --ks-secondary-rgb: 42, 58, 82;

    --ks-success:       var(--ks-green);
    --ks-success-rgb:   180, 255, 43;

    --ks-danger:        var(--ks-saffron);
    --ks-danger-rgb:    255, 148, 0;

    --ks-warning:       var(--ks-yellow);
    --ks-warning-rgb:   255, 238, 0;

    --ks-info:          var(--ks-cyan);
    --ks-info-rgb:      36, 223, 226;

    /* ── 3. Forme ─────────────────────────────────────────────────── */

    --ks-border-radius: 0;

    /* ── 4. Logo typographique ────────────────────────────────── */

    --ks-brand-accent:  var(--ks-orange);
}

/* ═══════════════════════════════════════════════════════════════════ */
/* SURCHARGES CONTRASTE – THÈME CLAIR                                 */
/* Texte sombre sur tous les fonds clairs (WCAG AA)                   */
/* ═══════════════════════════════════════════════════════════════════ */

[data-bs-theme="light"] .btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-hover-color: #fff;
}

[data-bs-theme="light"] .btn-success,
[data-bs-theme="light"] .btn-danger,
[data-bs-theme="light"] .btn-warning,
[data-bs-theme="light"] .btn-info {
    --bs-btn-color: var(--ks-night);
    --bs-btn-hover-color: var(--ks-night);
    --bs-btn-active-color: var(--ks-night);
}

/* Alertes – texte sombre sur fond clair */
[data-bs-theme="light"] .alert-success,
[data-bs-theme="light"] .alert-info,
[data-bs-theme="light"] .alert-warning,
[data-bs-theme="light"] .alert-danger {
    --bs-alert-color: var(--ks-night);
}

/* Badges – texte sombre sur fond vif */
[data-bs-theme="light"] .text-bg-success,
[data-bs-theme="light"] .text-bg-info,
[data-bs-theme="light"] .text-bg-warning,
[data-bs-theme="light"] .text-bg-danger {
    color: var(--ks-night) !important;
}

/* ═══════════════════════════════════════════════════════════════════ */
/* SURCHARGES CONTRASTE – THÈME SOMBRE                                */
/* Texte sombre sur les couleurs vives (elles restent lumineuses)      */
/* ═══════════════════════════════════════════════════════════════════ */

[data-bs-theme="dark"] {
    --ks-brand-accent: var(--ks-orange);
}

[data-bs-theme="dark"] .btn-success,
[data-bs-theme="dark"] .btn-warning,
[data-bs-theme="dark"] .btn-info {
    --bs-btn-color: var(--ks-night);
    --bs-btn-hover-color: var(--ks-night);
    --bs-btn-active-color: var(--ks-night);
}

[data-bs-theme="dark"] .btn-danger {
    --bs-btn-color: #fff;
    --bs-btn-hover-color: #fff;
}

/* ═══════════════════════════════════════════════════════════════════ */
/* SURCHARGES COMPOSANTS                                              */
/* ═══════════════════════════════════════════════════════════════════ */

#btn-back-to-top {
    background-color: var(--ks-orange);
}

#btn-back-to-top:hover {
    background-color: var(--ks-cyan);
    color: var(--ks-night);
}

#btn-back-to-top:focus-visible {
    outline-color: var(--ks-orange);
}
