/* ==========================================================================
   HABILLAGE V3 — applications historiques
   Num Win · Num Boom · Num Wars · Num Draft · Num Check · Num Stop
   S'appuie sur zam-num-king-v3.css (scène, décor, hauteur) et
   zam-game-generic-v3.css (couleurs du jeu). La logique et le HTML des
   applications ne changent pas : ici on ne fait que les rhabiller.
   Les !important servent à passer devant les styles en ligne d'origine.
   ========================================================================== */

/* ── Conteneur ─────────────────────────────────────────────────────────── */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 {
    font-family: var(--nk-font) !important;
    color: var(--nk-ink);
    min-height: 0 !important;
    padding-top: 8px !important;
    gap: 0;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 > .modal-overlay,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 > [id$="-modal"]:not(.nk3-decor) { position: fixed !important; z-index: 9000 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 > [id$="-session-menu"] { z-index: 9990 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 button, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 input, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 select, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 textarea { font-family: var(--nk-font); }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 footer, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .footer-credits { color: var(--nk-on, #fff) !important; opacity: .85; font-family: var(--nk-font); }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 footer a, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .footer-credits a { color: var(--nk-on, #fff) !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 > p, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #action-bar > p, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-action-bar"] > p, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-note { color: var(--nk-on, #fff) !important; opacity: .9; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 > p a, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-action-bar"] > p a { color: var(--nk-on, #fff) !important; font-weight: 800; }

/* ── En-tête : ? + session à gauche, logo au centre, compte à droite ──── */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .logo-row,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nw-logo-row {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 78px;
    margin: 0 0 6px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    position: relative !important;
    padding: 0 !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .help-icon,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nw-help-icon,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .help-btn {
    position: absolute !important;
    top: 2px !important;
    left: 0 !important; right: auto !important;
    width: 42px !important; height: 42px !important;
    margin: 0 !important;
    border-radius: 50% !important;
    border: 3px solid var(--nk-on, #fff) !important;
    background: rgba(255, 255, 255, .1) !important;
    color: var(--nk-on, #fff) !important;
    font: 900 1.3rem/1 var(--nk-font) !important;
    display: inline-flex !important; align-items: center; justify-content: center;
    box-shadow: none !important;
    cursor: pointer;
    transform: none !important;
    z-index: 5;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .help-icon:hover, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nw-help-icon:hover, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .help-btn:hover { background: rgba(255, 255, 255, .22) !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-session-btn"] { left: 50px !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-session-btn"] svg { width: 19px; height: 19px; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-session-btn"][style*="27ae60"],
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-session-btn"][style*="2ecc71"],
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-session-btn"].active { background: var(--nk-green-2) !important; box-shadow: 0 0 0 4px rgba(52, 211, 106, .35) !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .header-logo,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .logo-top,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-logo {
    width: auto !important;
    max-width: min(170px, 42vw) !important;
    max-height: 74px !important;
    height: auto !important;
    margin: 0 !important;
    object-fit: contain;
    filter: drop-shadow(0 6px 10px rgba(5, 20, 70, .4));
    cursor: pointer;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .header-main { width: 100% !important; margin: 0 0 4px !important; }

/* Compte (Connexion / pseudo) : carte blanche comme sur Num King V3 */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zam-app-user-corner { top: 10px !important; right: 18px !important; z-index: 60 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zam-app-user-btn {
    display: inline-flex !important; align-items: center; gap: 7px;
    padding: 9px 13px !important;
    border-radius: 15px !important;
    background: rgba(255, 255, 255, .94) !important;
    border: none !important;
    color: var(--nk-ink) !important;
    font: 800 .86rem/1.1 var(--nk-font) !important;
    box-shadow: 0 6px 16px rgba(5, 20, 70, .25) !important;
    max-width: 150px;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zam-app-user-btn span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zam-app-dropdown { color: #2c3e50; font-family: var(--nk-font); }

/* ── Pastilles (manche, règle du jeu, mode) ────────────────────────────── */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-badges,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .manche-badge + .roles-badge { gap: 6px !important; flex-wrap: wrap; justify-content: center; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-badges {
    display: inline-flex !important;
    align-items: center;
    padding: 6px !important;
    margin: 0 0 10px !important;
    border-radius: 22px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 10px 26px rgba(5, 20, 70, .28);
    max-width: 100%;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .manche-badge,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .roles-badge,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .session-counter {
    display: inline-flex !important; align-items: center; gap: 6px;
    margin: 0 !important;
    padding: 7px 14px !important;
    border-radius: 999px !important;
    background: var(--nk-soft) !important;
    color: var(--nk-ink) !important;
    font: 800 .88rem/1.1 var(--nk-font) !important;
    border: none !important;
    box-shadow: none !important;
    white-space: nowrap;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .manche-badge[style*="fdebd0"] { background: #fff4e0 !important; color: #c25e00 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .roles-badge { color: var(--nk-accent) !important; cursor: pointer; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .manche-badge + button[title] { font-size: 1.25rem !important; }

/* Bouton « Mes joueurs » */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-pick-players"],
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #zam-nb-config-players {
    background: rgba(255, 255, 255, .94) !important;
    border: none !important;
    color: var(--nk-accent) !important;
    font: 900 .84rem/1 var(--nk-font) !important;
    padding: 9px 16px !important;
    border-radius: 999px !important;
    box-shadow: 0 6px 16px rgba(5, 20, 70, .22);
}

/* Sélecteurs de mode (Classique / Découverte / Famille) */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nd-mode-btn, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-mode-btn, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .btn-mode {
    padding: 8px 14px !important;
    border-radius: 999px !important;
    border: 2px solid rgba(255, 255, 255, .7) !important;
    background: rgba(255, 255, 255, .14) !important;
    color: var(--nk-on, #fff) !important;
    font: 900 .82rem/1 var(--nk-font) !important;
    box-shadow: none !important;
    cursor: pointer;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nd-mode-btn.nd-mode-active, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-mode-btn.ns-mode-active, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .btn-mode.active {
    background: #fff !important;
    color: var(--nk-accent) !important;
    border-color: #fff !important;
    box-shadow: 0 6px 16px rgba(5, 20, 70, .25) !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .mode-selector { justify-content: center; flex-wrap: wrap; margin: 4px 0 10px !important; }

/* ── Joueurs : panneau « Mes joueurs » identique à Num King V3 ────────── */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-grid-wrap { width: 100% !important; max-width: 100% !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-players { width: 100% !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 9px !important;
    padding: 4px 6px 12px !important;
    margin: 0 !important;
    width: auto !important;
    max-width: none !important;
    background: none !important;
    box-shadow: none !important;
    border: none !important;
    justify-content: flex-start !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track .zv3-hide { display: none !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track > .nk3-pc {
    --cw: 84px;
    position: relative !important;
    flex: 0 0 var(--cw) !important;
    width: var(--cw) !important;
    min-width: 0 !important;
    max-width: none !important;
    height: calc(var(--cw) * 1.25) !important;
    margin: 0 !important;
    padding: 10px 4px 8px !important;
    border-radius: 12px !important;
    border: none !important;
    opacity: 1 !important;
    filter: none !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    color: #fff !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .25), 0 8px 18px rgba(5, 20, 70, .22) !important;
    scroll-snap-align: start;
    overflow: visible !important;
    text-align: center;
    font-family: var(--nk-font);
    cursor: pointer;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track > .nk3-pc--add {
    order: 99;
    background: #fff8dc !important;
    border: 2px dashed #f5c542 !important;
    box-shadow: none !important;
    color: #e0a400 !important;
    gap: 3px !important;
    padding: 8px 4px !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track .nk3-pc-ico {
    width: var(--ic) !important; height: var(--ic) !important;
    font-size: calc(var(--ic) * .62) !important;
    line-height: 1 !important;
    margin: 0 0 3px !important;
    padding: 0 !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track .nk3-pc-name {
    max-width: 100%;
    margin: 0 !important;
    font: 900 .74rem/1.15 var(--nk-font) !important;
    color: #fff !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .45);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track .nk3-pc-pts {
    margin: 0 !important;
    font: 900 .88rem/1.1 var(--nk-font) !important;
    color: #fff !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .35);
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track .nk3-pc-edit { position: absolute !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track .ns-bonus-badges { position: absolute !important; bottom: -6px; left: 50%; transform: translateX(-50%); display: flex; gap: 2px; z-index: 3; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track .zv3-pc-live {
    position: absolute !important;
    bottom: -7px; left: 50%;
    transform: translateX(-50%);
    z-index: 3;
    padding: 3px 7px;
    border-radius: 999px;
    background: #ffd34d;
    color: #3b2a00;
    font: 900 .68rem/1 var(--nk-font);
    white-space: nowrap;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .25);
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-player-banner"]:empty { background: transparent !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; box-shadow: none !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-player-banner"]:not(:empty) {
    background: rgba(255, 255, 255, .96) !important;
    color: var(--nk-ink) !important;
    border-radius: 16px !important;
    padding: 8px 12px !important;
    margin: 0 0 8px !important;
    font-weight: 800;
    box-shadow: 0 6px 16px rgba(5, 20, 70, .2);
    border: none !important;
}

/* ── Panneaux blancs : tableaux, zones de jeu ──────────────────────────── */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .score-table,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 table[id$="-score-table"] {
    width: 100% !important;
    max-width: 100% !important;
    background: rgba(255, 255, 255, .97);
    border-radius: 22px !important;
    border-collapse: separate !important;
    border-spacing: 0;
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(5, 20, 70, .28);
    margin: 4px 0 10px !important;
    font-family: var(--nk-font);
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .score-table th,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 table[id$="-score-table"] th {
    background: transparent !important;
    color: var(--nk-muted) !important;
    font: 900 .78rem/1.2 var(--nk-font) !important;
    padding: 12px 8px 8px !important;
    border-bottom: 2px solid var(--nk-soft) !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .score-table td,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 table[id$="-score-table"] td { padding: 9px 8px !important; border-bottom: 1px solid #eef1f7 !important; font-weight: 800; color: var(--nk-ink); }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .score-table tr:last-child td,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 table[id$="-score-table"] tr:last-child td { border-bottom: none !important; }

:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-game-zone"] { gap: 10px; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-panel,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nd-tri-wrap,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #detail-panel:not(:empty),
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-scorecard,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .combo-grid,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nc-history:not(:empty),
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nc-refentry,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #nwars-detail-panel:not(:empty),
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .hand-container,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #results-area:not(.hidden) {
    background: rgba(255, 255, 255, .97) !important;
    border-radius: 22px !important;
    box-shadow: 0 12px 30px rgba(5, 20, 70, .26) !important;
    border: none !important;
    color: var(--nk-ink);
    box-sizing: border-box;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nd-tri-wrap, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-scorecard, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .combo-grid, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .hand-container, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nc-refentry { padding: 12px !important; width: 100% !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #detail-panel:not(:empty), :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nc-history:not(:empty), :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #nwars-detail-panel:not(:empty) { padding: 12px !important; width: 100% !important; margin-top: 4px; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #score-display {
    background: rgba(255, 255, 255, .96) !important;
    color: var(--nk-accent) !important;
    border-radius: 999px !important;
    padding: 6px 22px !important;
    font: 900 1.6rem/1.1 var(--nk-font) !important;
    box-shadow: 0 8px 20px rgba(5, 20, 70, .25);
    border: none !important;
    -webkit-text-fill-color: currentColor;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nc-progress, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nc-tier-legend { color: var(--nk-on, #fff) !important; font-weight: 800; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nc-tier-legend span { color: inherit !important; }

/* ── Boutons d'action ──────────────────────────────────────────────────── */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .btn-primary, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .btn-danger, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .btn-secondary, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .btn-gold, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .btn-blue,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nd-btn, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-btn, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ncol-btn, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nw-btn-main,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-action-bar"] > button,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .main-btn, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .rank-new-btn,
.zv3-scope :is(.btn-primary, .btn-danger, .btn-secondary, .btn-gold, .btn-blue, .nd-btn, .ns-btn, .ncol-btn, .nw-btn-main) {
    border: none !important;
    border-radius: 16px !important;
    padding: 13px 16px !important;
    font: 900 .98rem/1.15 var(--nk-font) !important;
    color: #fff !important;
    cursor: pointer;
    transition: transform .1s ease, filter .15s ease;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .15);
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 :is(.btn-primary, .nd-btn-primary, .ns-btn-primary, .main-btn),
.zv3-scope :is(.btn-primary, .nd-btn-primary, .ns-btn-primary) {
    background: linear-gradient(180deg, var(--nk-green-1), var(--nk-green-3)) !important;
    box-shadow: 0 4px 0 #0d6b30 !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 :is(.btn-danger, .nd-btn-danger, .ns-btn-danger, .ncol-btn-danger),
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-btn-terminer"],
.zv3-scope :is(.btn-danger, .nd-btn-danger, .ns-btn-danger, .ncol-btn-danger) {
    background: linear-gradient(180deg, var(--nk-red-1), var(--nk-red-2)) !important;
    box-shadow: 0 4px 0 #a3150f !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 :is(.nd-btn-secondary, .ns-btn-secondary, .ncol-btn:not(.ncol-btn-danger):not(.ncol-btn-secondary), .nw-btn-main),
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #next-manche-btn,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-btn-manche"],
.zv3-scope :is(.nd-btn-secondary, .ns-btn-secondary, .nw-btn-main) {
    background: linear-gradient(180deg, var(--nk-btn-1, var(--nk-blue-1)), var(--nk-btn-2, var(--nk-blue-2)) 55%, var(--nk-btn-3, var(--nk-blue-3))) !important;
    box-shadow: 0 4px 0 var(--nk-btn-3, var(--nk-blue-4)) !important;
    color: var(--nk-btn-on, #fff) !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 :is(.btn-secondary, .ncol-btn-secondary):not(#next-manche-btn),
.zv3-scope :is(.btn-secondary, .ncol-btn-secondary) {
    background: var(--nk-soft) !important;
    color: var(--nk-ink) !important;
    box-shadow: none !important;
    text-shadow: none;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .btn-gold, .zv3-scope .btn-gold, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .rank-new-btn {
    background: linear-gradient(180deg, #ffe589, #f5b301) !important;
    color: #3b2a00 !important;
    box-shadow: 0 4px 0 #b7791f !important;
    text-shadow: none;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 :is(.btn-primary, .btn-danger, .btn-secondary, .btn-gold, .nd-btn, .ns-btn, .ncol-btn, .nw-btn-main, .main-btn, [id$="-action-bar"] > button):active { transform: translateY(2px); }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 :is(.nd-btn, .ns-btn, .ncol-btn, .main-btn, [id$="-action-bar"] > button, #next-manche-btn):disabled { opacity: .45 !important; filter: grayscale(.3); cursor: not-allowed; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nd-actions, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-actions, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ncol-actions { width: 100% !important; gap: 8px !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #action-bar, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-action-bar"] { width: 100% !important; max-width: 100% !important; gap: 10px !important; margin-top: 4px !important; }

/* ── Modales ───────────────────────────────────────────────────────────── */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .modal-overlay, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nw-modal-overlay,
.zv3-scope.modal-overlay, .zv3-scope.nw-modal-overlay, .zv3-scope[id$="-join-modal"] {
    background: rgba(10, 20, 60, .55) !important;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .config-box, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nw-config-box,
.zv3-scope .config-box, .zv3-scope .nw-config-box,
.zv3-scope[id$="-join-modal"] > div,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #nb-config-modal .nb-config-box, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .popup-box, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .help-box {
    border-radius: 26px !important;
    border: none !important;
    box-shadow: 0 24px 60px rgba(5, 20, 70, .45) !important;
    font-family: var(--nk-font) !important;
    color: var(--nk-ink);
}
.zv3-scope, .zv3-scope * { font-family: var(--nk-font); }
.zv3-scope[id$="-session-menu"] { border-radius: 22px !important; border: none !important; box-shadow: 0 16px 40px rgba(5, 20, 70, .35) !important; }

/* Bouton « J'ai compris » des aides : couleur du jeu */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="help-modal"] button[style*="background:#333"],
.zv3-scope[id$="help-modal"] button[style*="background:#333"] {
    background: linear-gradient(180deg, var(--nk-btn-1, var(--nk-blue-1)), var(--nk-btn-2, var(--nk-blue-2)) 55%, var(--nk-btn-3, var(--nk-blue-3))) !important;
    box-shadow: 0 4px 0 var(--nk-btn-3, var(--nk-blue-4)) !important;
    color: var(--nk-btn-on, #fff) !important;
    border: none !important;
    border-radius: 16px !important;
    font: 900 1rem/1.1 var(--nk-font) !important;
}
/* Num Boom : les fenêtres plein écran passent devant le bouton Connexion */
#zam-num-boom.zv3:has(#help-overlay.open, #ranking-overlay.open, #player-popup.open, #nb-config-modal.open) > .zam-app-user-corner { z-index: 1 !important; }

/* ── Petits écrans ─────────────────────────────────────────────────────── */
@media (max-width: 560px) {
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .logo-row, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nw-logo-row { min-height: 64px; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .help-icon, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nw-help-icon, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .help-btn { width: 38px !important; height: 38px !important; font-size: 1.15rem !important; border-width: 2.5px !important; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-session-btn"] { left: 45px !important; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .header-logo, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .logo-top, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-logo { max-width: min(130px, 36vw) !important; max-height: 60px !important; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zam-app-user-corner { right: 10px !important; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zam-app-user-btn { padding: 8px !important; max-width: 44px; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zam-app-user-btn span { display: none; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zam-app-user-btn svg { width: 18px; height: 18px; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zam-app-user-btn .zam-app-caret { display: none; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track { gap: 7px !important; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track > .nk3-pc { --cw: 64px; border-radius: 10px !important; padding: 9px 2px 6px !important; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track .nk3-pc-name { font-size: .64rem !important; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-track .nk3-pc-pts { font-size: .72rem !important; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-badges .manche-badge { padding: 6px 10px !important; font-size: .76rem !important; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .manche-badge, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .roles-badge { font-size: .8rem !important; padding: 6px 11px !important; }
    :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .score-table td, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 table[id$="-score-table"] td { padding: 8px 5px !important; }
}


/* ── Num Boom : barre de réglages ──────────────────────────────────────── */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .session-counter:not(.hidden) { position: absolute !important; left: 46px !important; right: auto !important; top: 10px !important; padding: 5px 9px !important; font-size: .72rem !important; background: rgba(255, 255, 255, .94) !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .controls-row { gap: 6px !important; margin-top: 2px; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .controls-row select,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .controls-row .punch-cycle,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .controls-row .audio-cycle {
    height: 44px;
    border-radius: 14px !important;
    border: none !important;
    background: rgba(255, 255, 255, .95) !important;
    color: var(--nk-ink) !important;
    font: 800 .9rem/1 var(--nk-font) !important;
    box-shadow: 0 6px 14px rgba(5, 20, 70, .2);
    font-size: 16px !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .controls-row .btn-top {
    height: 44px;
    border-radius: 14px !important;
    background: linear-gradient(180deg, var(--nk-btn-1), var(--nk-btn-2) 55%, var(--nk-btn-3)) !important;
    box-shadow: 0 4px 0 var(--nk-btn-3) !important;
    color: var(--nk-btn-on, #fff) !important;
    font: 900 .95rem/1 var(--nk-font) !important;
}
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .card { border-radius: 12px !important; box-shadow: 0 6px 14px rgba(5, 20, 70, .3); border: 2px solid #fff; font-family: var(--nk-font) !important; font-weight: 900 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .target-value, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .timer-display { font-family: var(--nk-font) !important; color: var(--nk-on, #fff) !important; text-shadow: 0 4px 14px rgba(5, 20, 70, .35); }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .sticky-target { font-family: var(--nk-font) !important; border-radius: 999px !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #results-area:not(.hidden) { padding: 10px !important; width: 100%; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .bg-logo-blur { opacity: .14 !important; }

/* Mentions « Scores conservés 48h » posées sur le fond coloré */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 p[style*="#999"]:not(:is(.config-box, .nw-config-box, .ns-scorecard, .nd-tri-wrap) *),
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 p[style*="#999"]:not(:is(.config-box, .nw-config-box, .ns-scorecard, .nd-tri-wrap) *) a { color: var(--nk-on, #fff) !important; opacity: .92; font-weight: 700; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 p[style*="#999"] a { text-decoration: underline; font-weight: 900; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 > :is(div, p)[style*="color:#95a5a6"], :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 > :is(div, p)[style*="color:#7f8c8d"], :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 > :is(div, p)[style*="color:#999"],
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-game-zone"] > :is(div, p)[style*="color:#95a5a6"], :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-game-zone"] > :is(div, p)[style*="color:#7f8c8d"], :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 [id$="-game-zone"] > :is(div, p)[style*="color:#999"] { color: var(--nk-on, #fff) !important; opacity: .92; font-weight: 700; }

/* ── Num Stop : combinaisons lisibles et colorées par famille ──────────── */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-row { border-left: 5px solid #cbd5e1 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-paren, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-breakdown { color: #3b4660 !important; font-weight: 700 !important; opacity: 1 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-fam { font-weight: 900 !important; border-radius: 999px !important; padding: 3px 8px !important; opacity: 1 !important; letter-spacing: .03em; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-row[data-fam="valeur"]      { border-left-color: #2563eb !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-row[data-fam="valeur"] .ns-obj-fam      { background: #dbeafe !important; color: #1d4ed8 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-row[data-fam="couleur"]     { border-left-color: #db2777 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-row[data-fam="couleur"] .ns-obj-fam     { background: #fce7f3 !important; color: #be185d !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-row[data-fam="suite"]       { border-left-color: #059669 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-row[data-fam="suite"] .ns-obj-fam       { background: #d1fae5 !important; color: #047857 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-row[data-fam="independant"] { border-left-color: #d97706 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .ns-obj-row[data-fam="independant"] .ns-obj-fam { background: #fef3c7 !important; color: #b45309 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .combo-comp, :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .nc-cheatsheet { color: #3b4660 !important; font-weight: 700; }

/* .hidden des applis d'origine reste prioritaire */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .hidden { display: none !important; }

/* ── Num Boom : cartes joueurs = couleurs, édition via la popin d'origine ── */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-cfg svg { width: 16px; height: 16px; }
@media (max-width: 560px) { :is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-cfg::after { content: "Modifier" !important; } }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #nb-config-modal .nb-config-row.is-focus { background: #fff6d6 !important; border-radius: 14px; box-shadow: 0 0 0 2px #f5c542; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 #nb-main-grid > .nk3-pc .nk3-pc-ico img { width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; }
/* Num Boom : panneau joueurs replié pendant une manche (en-tête + bouton Modifier seuls) */
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-players.is-collapsed { padding-bottom: 10px !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-players.is-collapsed .nk3-panel-head { margin-bottom: 0 !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-players.is-collapsed .nk3-carousel,
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-players.is-collapsed .nk3-dots { display: none !important; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-h-toggle { cursor: pointer; user-select: none; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-h-toggle::after { content: "\25B4"; font-size: .8em; margin-left: 2px; color: var(--nk-muted, #7a86a0); transition: transform .2s ease; }
:is(#zam-num-win, #zam-num-boom, #zam-num-wars, #zam-num-draft, #zam-num-check, #zam-num-stop).zv3 .zv3-players.is-collapsed .zv3-h-toggle::after { transform: rotate(180deg); }
