/* ── Sliders ──────────────────────────────────────────────── */
input[type=range]{-webkit-appearance:none;appearance:none;height:6px;border-radius:3px;background:#e5e7eb;outline:none;width:100%}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#4f46e5;cursor:pointer;border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.2)}
input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#4f46e5;cursor:pointer;border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.2)}

/* ── Checkbox cards ───────────────────────────────────────── */
.chk-card{display:flex;align-items:center;gap:8px;border:1.5px solid #e5e7eb;border-radius:12px;padding:10px 16px;cursor:pointer;transition:all .15s;user-select:none}
.chk-card:hover:not(.selected){border-color:#a5b4fc;background:#f5f3ff}
.chk-card.selected{border-color:#4f46e5;background:#eef2ff}
.chk-card.selected .chk-icon{color:#4f46e5}

/* ── Slot cells ───────────────────────────────────────────── */
.slot-cell{cursor:pointer;user-select:none;transition:all .15s;border:1.5px solid #e5e7eb;border-radius:10px;text-align:center;padding:10px 6px;min-width:62px}
.slot-cell:hover:not(.active){background:#eef2ff;border-color:#a5b4fc}
.slot-cell.active{background:#4f46e5;border-color:#4f46e5;color:#fff}
.slot-cell:not(.active){color:#d1d5db}

/* ── Tag badges (multi-select pills) ─────────────────────── */
.tag-badge{cursor:pointer;user-select:none;transition:all .15s;border:1.5px solid #e5e7eb;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:500;color:#6b7280;display:inline-flex;align-items:center;gap:6px}
.tag-badge:hover:not(.selected):not(.disabled){border-color:#a5b4fc;background:#f5f3ff;color:#4f46e5}
.tag-badge.selected{background:#4f46e5;border-color:#4f46e5;color:#fff}
.tag-badge.disabled:not(.selected){opacity:.4;cursor:not-allowed}

/* ── Barre de progression ─────────────────────────────────── */
.prog-line{position:absolute;top:18px;left:50%;width:100%;height:2px;background:#e5e7eb;z-index:0;transition:background .3s}
.prog-line.done{background:#86efac}

/* ── Indicateur auto-save ─────────────────────────────────── */
@keyframes saveFade{0%{opacity:0}10%{opacity:1}80%{opacity:1}100%{opacity:0}}
.save-fade{animation:saveFade 3s ease forwards}

/* ── Boutons navigation ───────────────────────────────────── */
.btn-prev{display:inline-flex;align-items:center;gap:8px;color:#4b5563;font-weight:500;font-size:.875rem;padding:10px 20px;border-radius:12px;border:1.5px solid #e5e7eb;transition:all .15s;cursor:pointer;background:#fff}
.btn-prev:hover{border-color:#d1d5db;color:#1f2937}
.btn-next{display:inline-flex;align-items:center;gap:8px;background:#4f46e5;color:#fff;font-weight:600;font-size:.875rem;padding:10px 24px;border-radius:12px;transition:all .15s;cursor:pointer;box-shadow:0 4px 6px -1px rgba(79,70,229,.25)}
.btn-next:hover{background:#4338ca}
